What is Enact?
You just gave an LLM access to real APIs. What happens when it does something stupid? It already has. Replit’s agent deleted a production database. Amazon Kiro caused a 13-hour AWS outage. Claude Code ranrm -rf on a home directory. These weren’t bugs — the agents did exactly what they were told. The problem: nothing was checking whether they should.
Enact is the missing layer between your agent and the real world:
- Block dangerous actions before they fire — Python policies run before anything executes. Agent tries to push to
main? Blocked. Tries toDELETEwithout aWHEREclause? Blocked. - Execute deterministically — Policies and workflows are plain Python: unit-testable,
git diff’able, reviewable in a PR. LLM-generated actions are not. - Prove what happened — Every run (PASS or BLOCK) writes a cryptographically-signed receipt: who ran what, which policies passed, what changed.
- Roll back in one call —
enact.rollback(run_id)reverses the damage. Deleted rows restored. Wrong branches recreated.
Install
Quickstart (30 seconds)
python examples/demo.py runs a 3-act scenario: an agent blocked from pushing to main, a normal PR workflow, and a database wipe rolled back in one command.
Next Steps
How It Works
The foreman analogy — policies, workflows, receipts, rollback explained.
Migrate in 10 Minutes
Already have an agent? Wrap it with Enact without changing your logic.
Connectors
GitHub, Postgres, Filesystem, Slack — pre-built with rollback support.
Built-in Policies
30 policies across 9 categories. Import and use — no writing required.