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.96.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.96.0.tar.gz | 489.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| swarmkit_runtime-1.96.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:910.4 kB
Release files / swarmkit_runtime-1.96.0.tar.gz
| Download URL | swarmkit_runtime-1.96.0.tar.gz |
|---|---|
| Size | 489.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a848b36eb47fba0e77ac21747e67a42e30c2974c8ad50d6cc20b8640cd549b6f
|
|
BLAKE2b-256 checksum How to use checksums |
b9a461b94ddf1f29ee1aefe55b7d54b8a19b703ac77c8bb2b8637032fb5cbc48
|
| 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.96.0-py3-none-any.whl
| Download URL | swarmkit_runtime-1.96.0-py3-none-any.whl |
|---|---|
| Size | 421.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
4b9a04f9e22bac6bf61f169159995c941611b4da3886362a30ebf260da0fd7de
|
|
BLAKE2b-256 checksum How to use checksums |
05bbc5ecac786c7035ac2ceab2b8b425055d13d83c11218e335f2e5f9f65d8fa
|
| 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}
|