waxell
Docs · Quickstart · CLI Reference · Observability · Coming from LangChain/CrewAI?
Build and run governed AI agents. One install gets you the durable execution
engine (spawn/suspend, budget enforcement, governance hooks, lineage), the
authoring decorators, the wax CLI, and observability:
pip install waxell
Using another agent framework and just want observability + governance on top? That's the standalone observe SDK:
pip install waxell-observe # LangChain, OpenAI Agents, CrewAI, … — no runtime needed
What you get
| Piece | What it is | How you touch it | Docs |
|---|---|---|---|
waxell |
The library — author + run agents | from waxell import agent, workflow, tool |
Runtime quickstart |
wax |
The CLI — push, observe, govern from the terminal | wax push, wax runs, wax traces, … |
CLI reference |
waxell.observe |
Observability SDK (the waxell-observe package) |
mostly automatic | Observe overview |
Quick start
from waxell import agent, workflow
@agent(name="lead_research", description="Research a lead and draft outreach")
class LeadResearch:
@workflow("draft_email")
async def draft(self, ctx, domain: str):
company = await ctx.tool("fetch_company", domain=domain)
email = await ctx.llm.generate(
prompt=f"Write a 3-sentence intro for {company['name']}",
task="outreach_email",
)
return {"email": email, "company": company["name"]}
Then push and observe it with the CLI (full command reference):
wax login # authenticate (or: wax config init)
wax push ./my-agents # push agents, tools, workflows, and skills
wax runs # browse execution runs
wax traces # explore distributed traces
Full walkthrough: runtime quickstart · agent/workflow/tool spec reference: SDK docs
What's in the box
-
Execution engine —
ExecutionContext,WorkflowEnvelope, durableStep, checkpoint/resume,ctx.spawn/ctx.spawn_many, tree-budget enforcement. -
Governance — pluggable
GovernanceHook, in-runtime policy bridge, AXID mint/verify, lineage. -
Framework adapters — run governed LangGraph, CrewAI, Pydantic AI, AutoGen, and Claude Agent SDK agents (migration guides). Each adapter's framework dependency is optional:
pip install "waxell[langgraph]" pip install "waxell[all]" # every adapter
-
Authoring —
agent,workflow,router,tool,policydecorators, spec types, memory helpers, and typedContextobjects for IDE autocomplete. -
Observability — every run traced; cost, tokens, and policy decisions in the Waxell dashboard via
waxell.observe.
Import aliases: from waxell import agent is the documented path;
from waxell_runtime import agent works too and is kept forever. The internal
waxell_sdk package bundled in this wheel is an implementation detail — never
import it directly.
Development (monorepo)
# Editable install keeps protected modules as readable .py (no Cython)
pip install -e runtime/waxell-runtime
# The internal waxell_sdk is synced into src/ at build/install time from
# ../../sdk/waxell-sdk — that synced copy is gitignored. Source of truth is
# agentforge/sdk/waxell-sdk/.
cd runtime/waxell-runtime && hatch run types:check
pytest runtime/waxell-runtime/tests/ -v
License
waxell is distributed under the terms of the MIT license.
Metadata
Release files for waxell 0.1.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 49.3 MB
Release files / waxell-0.1.7-cp314-cp314-win_amd64.whl
| Download URL | waxell-0.1.7-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
70b530ebbaad04ecf8405acc470380cb43b28ea0af1e99fe8bfcb7985a1bdd39
|
|
BLAKE2b-256 checksum How to use checksums |
8fc45244258b5b5b415b570e1a073fc2bf80b86252af345d2c926be8c823d1cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / waxell-0.1.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
ac533f9ec9f9b10259b0dad6a75f1d5ea1138ee8189ad617a1d5c46a3453787a
|
|
BLAKE2b-256 checksum How to use checksums |
b566b36289c6ff7fc85b58fc32bb093e2a2a0ca7e746b1a572a875e22bb694ae
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.7-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
1defc3a93ffdba1b6ba1f50ac57e0eae71a0f36ab7bad12140d66727c3a8b3a4
|
|
BLAKE2b-256 checksum How to use checksums |
923232c8d79db81f5290cb38e023b0ba06325352b2789b106c2e3b786eb77f34
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp314-cp314-macosx_11_0_x86_64.whl
| Download URL | waxell-0.1.7-cp314-cp314-macosx_11_0_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
1ed7950866c53deebd8aaead2bed1c416c8a9e56ab0ac9e1eec16ddba7bd187b
|
|
BLAKE2b-256 checksum How to use checksums |
38e797f39f6893b0afbecd0dd37d5036e3dcec2da0c3fa72f7433d431cbeb941
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.7-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
c57c4e034fa8074b00b201f4f67c1eb8fac3110a5b8dee53a869beefeffa40c3
|
|
BLAKE2b-256 checksum How to use checksums |
6e490b69337c7cfaee4bf847884f039759977e83d7220d471058a8af2848e5a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp313-cp313-win_amd64.whl
| Download URL | waxell-0.1.7-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a93625ca6bd8d903f2342792b6602f9c5afdb55d171f46929e8469a5e2fea12f
|
|
BLAKE2b-256 checksum How to use checksums |
9bf5d6f136743743b2bd3bf529e4fd42614af76fabe7dcc0faf99acebe25d00d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / waxell-0.1.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
13fba07eabb6d964b5aaafe98ab8c64f3821a77ca497e563413fd77a5cf6480f
|
|
BLAKE2b-256 checksum How to use checksums |
cd4cacce652e10d23566f553367738738975067d780582822f57a0c0af242e6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
ad312d877d55e463a9ded2dbbcadcd85800744681c299dfa25db09adc6bc1834
|
|
BLAKE2b-256 checksum How to use checksums |
a52ff23f262184d448353513dbae3110ddeae19bd88a96395e8d980cc841850c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp313-cp313-macosx_11_0_x86_64.whl
| Download URL | waxell-0.1.7-cp313-cp313-macosx_11_0_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
bbcac3ef3eb6e7d2396dfc6694520629da5d8c8e6334cad2cb7b4c26f05a0cf1
|
|
BLAKE2b-256 checksum How to use checksums |
4abe45c438f90b9e58d5883377aaaa1093272737aa134780307e6368dc2812f2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.7-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
bb8d52ca5ed3c9e630ebcccc22c2dad42b9354a52327656ab74c5937c082bc25
|
|
BLAKE2b-256 checksum How to use checksums |
2894894da14cf64aafadef072a49156f0b19670006d9dfe9b4e3e213c8186a33
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp312-cp312-win_amd64.whl
| Download URL | waxell-0.1.7-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
aa06118cd3f7522fa17f9ea3eeb03b8acce86556eadb57fa8e8ee9d64ecb1e9d
|
|
BLAKE2b-256 checksum How to use checksums |
de2f4a1e9fc32c384a61133636c3aefd56eca136f6b2b93be629715b65393ca7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / waxell-0.1.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
0ec8cd632d6b67bf036400a64b15e53462d653def24090a989944e1ba1938cc8
|
|
BLAKE2b-256 checksum How to use checksums |
e9a7e41ab3018e698a542aa7a69faed528d1f040fe2d63bd6253ad5df536efbd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
185a2c03512554494b36265d7ecd397e6bffba76b73778f92572b5a957086bda
|
|
BLAKE2b-256 checksum How to use checksums |
b5a52a98f2dba788c109b220c8397f822acc1df8d63b86c0b7972cc3ddd4730d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp312-cp312-macosx_11_0_x86_64.whl
| Download URL | waxell-0.1.7-cp312-cp312-macosx_11_0_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
b41451b318d12c8c0a3176acfb65854c6154bed5169f773792cb2456d6a5fd06
|
|
BLAKE2b-256 checksum How to use checksums |
f97a9c2710bb40a167cfb8bf90d4675ebe327fd28e23d0142d8e159cfbfa2eaf
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.7-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
5eae6ccd4b980f5d3ce9d81b21279f0e662dbbe2d7e112a5c3e45f2e73adfbe4
|
|
BLAKE2b-256 checksum How to use checksums |
9237bba4ec33e3ea70285dea7ced2bdd5802c9b7418c64706f657d137c423aec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp311-cp311-win_amd64.whl
| Download URL | waxell-0.1.7-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
a10b86b762b9ef4c240b48b39bd50709e29bd055aadb57684125434d547c18d1
|
|
BLAKE2b-256 checksum How to use checksums |
b9defeb3b8015bfc5535e5c09eed86592ab5130a7a33cdf6d52e5c0961262178
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / waxell-0.1.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.7-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
2f8d07c40a23a444cd3b04219c29ec6c2c7d5d09e25095bb51c89d4cec9c30e1
|
|
BLAKE2b-256 checksum How to use checksums |
8d9963b1d8ea23019db1c71d360b2c7744988d75d3904b5d6ee1b41e6e17362c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.7-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 2.7 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
ed05990dd9b45945f9c46763f6a0c6c22564a54745f22072ae4a035502568bd0
|
|
BLAKE2b-256 checksum How to use checksums |
0317ce8f9e4f4c08635c9f1dd6dec1877e2c3becbd09224efbda9698f75ed507
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp311-cp311-macosx_11_0_x86_64.whl
| Download URL | waxell-0.1.7-cp311-cp311-macosx_11_0_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
4ec5af44eb57dfc876e68bf52a4b5eee58740fb9dbb92f8cb0d2e9b8a9b57cf5
|
|
BLAKE2b-256 checksum How to use checksums |
c4e2cac70be928c79f96b552fb1e445bbf623316a022f87568117f8c4706e85d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.7-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f4ffb25341eb1cab461345ac2d0167161c6b77ad834292bd947cf86bc17e405f
|
|
BLAKE2b-256 checksum How to use checksums |
2722d4dd628e5c834032f3e99338293e53d36d2918a47c20e88b5920cc678602
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp310-cp310-win_amd64.whl
| Download URL | waxell-0.1.7-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8288677ed1dc2fea7a8633b5322a9523692b352bedaf2391ae9d4bb5a3ca276f
|
|
BLAKE2b-256 checksum How to use checksums |
a706f30291366e1e95d97d65ee0bca09aa3fea578ef6f7536bc63094d3652de5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.10
|
Release files / waxell-0.1.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.7-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
2505003fc1b3038a7cfcd88b07a5fc80ed63a773e151983e3c53ac02485d819d
|
|
BLAKE2b-256 checksum How to use checksums |
cc11ab628609373f0b308ca462273e6074b46e90c4bd141df662b5607772777b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.7-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 2.6 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
d2f7cd03c813896120867d2c8401206b7a6071da5fe4c0670c4d0030208a8fda
|
|
BLAKE2b-256 checksum How to use checksums |
7aa33b496638f4ae0a621f001b9f0d9c5a06c0859fdb4c15b7f6b54bf6b3b587
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp310-cp310-macosx_11_0_x86_64.whl
| Download URL | waxell-0.1.7-cp310-cp310-macosx_11_0_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
c1f12d17f13d4d03f571218108c8f05aca40aa1d1c37fbabcd00a6ca89336cde
|
|
BLAKE2b-256 checksum How to use checksums |
49d384c182d2edfea368165f999e890b3ef405ce3b40d5914d68869061a81b83
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / waxell-0.1.7-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.7-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
b2874a9bf1d480515bd0935366ada899bb1c37ab0dd8bf496261d9bd5a7f92a2
|
|
BLAKE2b-256 checksum How to use checksums |
abbbcaab94c00a3876a7deacd5a493fb2f4a02f9897ea2c1695430e009f9c102
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Security for waxell 0.1.7
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.