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.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 35.5 MB
Release files / waxell-0.1.3-cp314-cp314-win_amd64.whl
| Download URL | waxell-0.1.3-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ed1a0f6e316584203e6f56af902488f614b84f94e13ee5dcc72f302df4bcb0e3
|
|
BLAKE2b-256 checksum How to use checksums |
8f62d28b7fb10c5d4b839a47282ccea1ef8ec6a6ad27f41d8b6a567b91fecd4e
|
| 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.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.3-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
0579506bc06d679ebacaa369d134d6d010a19e201e685516003ce728d4711772
|
|
BLAKE2b-256 checksum How to use checksums |
a496ada2e5349373d6848c7af4c69d5d60ca4c5018884f523484c35c6f3937b7
|
| 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.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.3-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
fdfd00533b5745f8caed6088f1b69cbd584d4a40ab5b653501c9a3daddc76ceb
|
|
BLAKE2b-256 checksum How to use checksums |
07309c52d0a13a79b5af543df44547bfced550748da1d3ccc978e3e750fd1a4e
|
| 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.3-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.3-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 |
464375a99fa580a4f0b084d7d1f5025ad2d78c966ca17fb5f0c81194d950f23f
|
|
BLAKE2b-256 checksum How to use checksums |
4bb94e338da26d340d11e98ba8a9cfbf8cd4293b5d24ffc0c6d5ab56637ed7df
|
| 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.3-cp314-cp314-macosx_10_15_x86_64.whl
| Download URL | waxell-0.1.3-cp314-cp314-macosx_10_15_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.14 macOS 10.15+ x86-64 |
|
SHA-256 checksum How to use checksums |
e26aaa14458c5bac099e4ef2fe4089c9afdf70b723f1e18fd0a6e50b0dab396c
|
|
BLAKE2b-256 checksum How to use checksums |
08894a8b363cec71012be51a05e8431092807fa9486f23dcf28a6068e33b1903
|
| 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.3-cp313-cp313-win_amd64.whl
| Download URL | waxell-0.1.3-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
59aabd2f99c232eeee231d45d580a630329dccb385af45114046e429e1536133
|
|
BLAKE2b-256 checksum How to use checksums |
743b3fd26b5854181f2ebc8d37e5f65c25f79338bbe0f37692720d1430a13932
|
| 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.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
18b0394dd3a9fb63b680c86e91e497a31e312fe5cfd814c63af8d7658410b1d4
|
|
BLAKE2b-256 checksum How to use checksums |
8e50bb1a26ecad04dc95b6c1531b80f31100112bb17737dfd2db7999d1f9bbbe
|
| 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.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
799e3299925656b20b5123dbbc411e9ed6efac7ddf87db2ac153924983a1c3f6
|
|
BLAKE2b-256 checksum How to use checksums |
548186d08e056bd9192d94ff87bdb9108b59b1976b6ca236019f849c286db451
|
| 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.3-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.3-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 |
51291378cb50bfa03fcf0d4b8e2322d4b71dbcf436dc09b74ffefc31a649c981
|
|
BLAKE2b-256 checksum How to use checksums |
fa6ccb197739ce230fc6e5678a3e5142c56e702a79cfdc23db0f28a1bf5b5067
|
| 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.3-cp313-cp313-macosx_10_13_x86_64.whl
| Download URL | waxell-0.1.3-cp313-cp313-macosx_10_13_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.13 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
9155424451bc89de78dffa75b3d8b42d27ce378b5cf208477a245511be436096
|
|
BLAKE2b-256 checksum How to use checksums |
3ec5ef34f91bd56de46bbe8ade039c9c787d8633abf7303733eb259e156af94c
|
| 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.3-cp312-cp312-win_amd64.whl
| Download URL | waxell-0.1.3-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
dab4e55ec5908ed4c90158d90b42087586e4f892ce978c8a09a35f50df2c865f
|
|
BLAKE2b-256 checksum How to use checksums |
11c8b2d036bed6de560e9397d8a8f80da4aa4143802f2f8f36824da7ae45bcaa
|
| 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.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
5a73aa351c3f7eb3a7cd85e3d00eb2461b434c2295d83fc231ada4ee5f7ad66e
|
|
BLAKE2b-256 checksum How to use checksums |
ec53d12b4da8209e95bd59861ee6495d5b474daa22abb85070b6cf876ac60d40
|
| 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.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.3-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
525e5e21dbc5fbcab8f04f5635c6ad28f5853f952b182ef55feee253047a0a35
|
|
BLAKE2b-256 checksum How to use checksums |
ffafd1bd918ea4a8b28a21549a518b5093a722d8ec186d3aea60487172c0ef84
|
| 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.3-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.3-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 |
5f3f80b994eb8fb2215f78dd8843f62d166c3a7b382f2f2617a07d353686af09
|
|
BLAKE2b-256 checksum How to use checksums |
c1af61d2fc21b312772ea1b9a4cfcdb4ea3aae9df35f0e0ec70e81772d8700ce
|
| 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.3-cp312-cp312-macosx_10_13_x86_64.whl
| Download URL | waxell-0.1.3-cp312-cp312-macosx_10_13_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.12 macOS 10.13+ x86-64 |
|
SHA-256 checksum How to use checksums |
749beb6db7f54f570ff78101a34bd0cf7893bc4abea4fb3576b291bcc63286fc
|
|
BLAKE2b-256 checksum How to use checksums |
2fb658561da1a1440a98757288c8e74bc7d6fe8beffd69c2e2982f2cd69414cf
|
| 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.3-cp311-cp311-win_amd64.whl
| Download URL | waxell-0.1.3-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
64dfcf61b79e59a5086c55b9af06d11289209dae41fbba1c148fde9560310e12
|
|
BLAKE2b-256 checksum How to use checksums |
fd3be5d69d3da4f8cf427656bd9de3dccf02f327621e435b67ed4907366e8460
|
| 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.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.3-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d1fc52cfd9449245e4c9ac2f2a7c4a35799e06c713284644b0bbaa2c616e4b45
|
|
BLAKE2b-256 checksum How to use checksums |
0a73a25fa33bbd387791c85bde29d37a9b7ed3231730eb487faed2d275cd59ed
|
| 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.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.3-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
6c042b68681e6a3432efea53aadae866769d66b4b0f79716885afea36cf4f19f
|
|
BLAKE2b-256 checksum How to use checksums |
0dbdfdd6c61382b2f27a19280b914a1df4dd2db3afa01653cecfe001bfa4c7f3
|
| 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.3-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.3-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 |
b4e899f6983636a01843319b55c4ffc6b6584a92613ee3d8edc19964ec5d296b
|
|
BLAKE2b-256 checksum How to use checksums |
cecb5e3adf4d256fc8e09b794891b75b1b0d7a35e24403295f1f12f46043ff5a
|
| 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.3-cp311-cp311-macosx_10_9_x86_64.whl
| Download URL | waxell-0.1.3-cp311-cp311-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.11 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
657431c21996014ad647e3f0da3b5a222bf01d1e3c82c5519a1496aa1ce25e76
|
|
BLAKE2b-256 checksum How to use checksums |
9dd049ac9ae30abb7737b256759577e9b7a4457fb981d859be4dc038ee9d8424
|
| 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.3-cp310-cp310-win_amd64.whl
| Download URL | waxell-0.1.3-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5e4b842303415f62af16530d641ba104e4bdf0e8e86b176e82ad090b541aa9d0
|
|
BLAKE2b-256 checksum How to use checksums |
b8a07aa1ca0ef89752b12d4ece54f9102d122443fdf7429c4739541800466cd7
|
| 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.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
| Download URL | waxell-0.1.3-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
490ca06f8a6ce165dbc1638dcbb8cba6e21d122bbb6b422e7f32aa5352b63ac9
|
|
BLAKE2b-256 checksum How to use checksums |
c7f4b318689722863f8f10eb369eca836f35178952ab5b7419ef831e6b0b4ef9
|
| 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.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
| Download URL | waxell-0.1.3-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 1.1 MB |
| Tags | CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
9f41d9cf12f32f2681215e1e637984e9c4771dec4e90eaa79c96b712c128d329
|
|
BLAKE2b-256 checksum How to use checksums |
5b7fca538f4944ce7494b18a5fe227de884f3e7592581e269a54bfc560a1f35d
|
| 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.3-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | waxell-0.1.3-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 |
5ec791473d675ea275e6f34ced367eec63ef9b59792b3104db8bf8e41577ccc9
|
|
BLAKE2b-256 checksum How to use checksums |
9f7544f684f4e8ffac57bbb1f75aff143bda437b6ff20b644ecc066e2ef4da97
|
| 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.3-cp310-cp310-macosx_10_9_x86_64.whl
| Download URL | waxell-0.1.3-cp310-cp310-macosx_10_9_x86_64.whl |
|---|---|
| Size | 1.5 MB |
| Tags | CPython 3.10 macOS 10.9+ x86-64 |
|
SHA-256 checksum How to use checksums |
b498ce7f0623096626d09b6d7191a85dc3967fef9b944dccf204f385c43d8dd9
|
|
BLAKE2b-256 checksum How to use checksums |
c59e565300fd34e296b4f4caa69f8cb2a45e606853b40d92fe8dd92b29a10a9f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|