Observed since 20 Oct, 23:28 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
Open-source adaptive control plane for production AI agents
Open-source adaptive control plane for production AI agents.
AgentSpine is an embedded Python SDK that sits between your AI agents and the tools they use — enforcing policies, preventing duplicates, managing locks, scoring risk, and logging every action for full observability.
# Start infrastructure
docker compose up -d
# Install SDK
pip install agentspine[all]
import asyncio
from agentspine import AgentSpine
async def main():
spine = AgentSpine(workflow="demo")
async def local_echo(payload, context):
return {"echo": payload}
spine.register_tool("demo.echo", local_echo)
result = await spine.request_action(
agent="demo_agent",
action_type="demo.echo",
payload={"text": "Hello from AgentSpine!"},
idempotency_key="demo_001",
)
print(f"Status: {result.status}")
await spine.close()
asyncio.run(main())
If no local tool is registered for an action type, AgentSpine emits a normalized execution signal so an external worker or service can perform the real side effect and report the result back later.
from agentspine import AgentSpine
from agentspine.features import FeatureFlags
# Full mode (default) — all features on
spine = AgentSpine(workflow="my_workflow")
# Standard — no KG or judiciary
spine = AgentSpine(workflow="my_workflow", features=FeatureFlags.standard())
# Minimal — policy + events only
spine = AgentSpine(workflow="my_workflow", features=FeatureFlags.minimal())
Agent → AgentSpine SDK → Pipeline → Tool
│
├── Policy Engine (allow/deny/approve)
├── Semantic Dedupe (pgvector)
├── Risk Scorer (0-1 score)
├── Knowledge Graph (Postgres)
├── Distributed Locks (Redis)
└── Event Timeline (append-only)
See CONTRIBUTING.md for development setup and guidelines.
Apache 2.0 — See LICENSE.
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 0.1.7 | 2 May 2026 | 18 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 23:28 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:5e072c4d33d47d4d6741650e8ad70c90509b499404ee225710174ba12b94df52