swarmkit-runtime
Python runtime for SwarmKit. Interprets topology files, compiles them into LangGraph StateGraphs, enforces governance via the GovernanceProvider abstraction (AGT-backed in v1.0), and exposes the swarmkit CLI plus a persistent HTTP server.
Layout
src/swarmkit_runtime/
├── cli/ # Typer-based CLI: init, author, run, serve, eject
├── topology/ # Topology loader, validator, resolver (archetype + skill refs)
├── skills/ # Skill registry, category-specific semantics, composition
├── archetypes/ # Archetype registry and instantiation
├── governance/ # GovernanceProvider interface + AGTGovernanceProvider impl
├── langgraph_compiler/ # Topology → StateGraph compilation (design §14.3)
├── mcp/ # MCP client, server lifecycle, sandbox supervision
└── audit/ # Append-only audit log adapters, skill gap log surfacing
Design references
- §7 Architectural Principles —
topology as data,eject, never lock-in - §8 Separation of Powers —
governance/module is the SwarmKit side; AGT is the implementation - §9 System Architecture — this package is component #1 of 3
- §14 Runtime Architecture — three execution modes (one-shot, persistent, scheduled)
Entry points (design §14.2)
| Command | What it does |
|---|---|
swarmkit init |
Launch Workspace Authoring Swarm in terminal chat mode |
swarmkit author topology [name] |
Launch Topology Authoring variant |
swarmkit author skill [name] |
Launch Skill Authoring Swarm |
swarmkit author archetype [name] |
Launch Archetype Authoring variant |
swarmkit run topology.yaml |
One-shot execution |
swarmkit serve workspace/ |
Persistent / scheduled mode |
swarmkit eject topology.yaml |
Export LangGraph code |
Development
uv sync --package swarmkit-runtime
uv run pytest packages/runtime/tests
uv run swarmkit --help
Release files for swarmkit-runtime 1.78.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| swarmkit_runtime-1.78.0.tar.gz | 434.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| swarmkit_runtime-1.78.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:820.4 kB
Release files / swarmkit_runtime-1.78.0.tar.gz
| Download URL | swarmkit_runtime-1.78.0.tar.gz |
|---|---|
| Size | 434.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
56ea1748e5a2de93368b42a9261653fa306a0966e593415c7a9c87c8ecdca774
|
|
BLAKE2b-256 checksum How to use checksums |
62f27a820f9d2bc050d521d539581504033500d235c6a3921a43be3af20c1e22
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / swarmkit_runtime-1.78.0-py3-none-any.whl
| Download URL | swarmkit_runtime-1.78.0-py3-none-any.whl |
|---|---|
| Size | 385.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
aa74838e20ebbd783415d72de8cd1a87812bcc5b0c3749e6d47c137bba50dac2
|
|
BLAKE2b-256 checksum How to use checksums |
7575ac2d535e19e81ff2fe8ebd83c62d5cc344e599c2687a75265ed8c44b10d4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|