Progressive Governance¶
Start with one native ACS manifest, then add host controls only when the risk requires them.
Level 1¶
Create a manifest and evaluate it through AgentControl.
from agent_control_specification import AgentControl, HostSession
runtime = AgentControl.from_path("policies/manifest.yaml")
session = HostSession(
runtime,
agent_id="agent-1",
session_id="session-1",
)
evaluation = session.pre_tool_call(
tool_name="delete_file",
args={"path": "report.txt"},
)
assert not evaluation.verdict.decision.permits
The manifest owns policy definitions, tool catalogs, intervention-point bindings, budgets, transforms, and approval.
Level 2¶
Add version-controlled Rego or Cedar bundles and use ACS extends to compose resolved manifests. Run agt lint-policy and agt test in CI.
Level 3¶
Use an Agent OS framework adapter. Pass the same runtime through runtime= so model, tool, and output paths are mediated by the manifest.
Level 4¶
Add AgentMesh identity, trust, and transport controls for multi-agent systems. These controls remain separate from ACS policy evaluation.
Level 5¶
Add sandbox isolation, SRE controls, approval services, and centralized audit. Sandbox resources and egress belong in SandboxConfig, not in policy objects.
| Level | Add when you need |
|---|---|
| 1 | Deterministic policy checks |
| 2 | Reviewed bundles and replay |
| 3 | Framework lifecycle mediation |
| 4 | Multi-agent identity and trust |
| 5 | Isolation, resilience, and operations |