{"data":{"slug":"sipyourdrink-ltd-bernstein","name":"bernstein","tagline":"Governance and orchestration framework for AI agents","github_url":"https://github.com/sipyourdrink-ltd/bernstein","owner":"sipyourdrink-ltd","repo":"bernstein","owner_avatar_url":"https://avatars.githubusercontent.com/u/271707709?v=4","primary_language":"Python","stars":1190,"forks":164,"topics":["agent-fleet","agent-governance","agent-infrastructure","agent-orchestrator","ai-agents","ai-governance","ai-orchestration","air-gap","attestation","audit-log","audit-trail","compliance","deterministic-replay","git-worktree","llm-orchestration","orchestrator","parallel-agents","provenance","reproducibility","tamper-evident"],"archived":false,"github_pushed_at":"2026-09-18T04:23:21+00:00","maintenance_label":"Very active","stars_delta_30d":426,"url":"https://www.graphcanon.com/tools/sipyourdrink-ltd-bernstein","markdown_url":"https://www.graphcanon.com/tools/sipyourdrink-ltd-bernstein.md","api_url":"https://www.graphcanon.com/api/graphcanon/tools/sipyourdrink-ltd-bernstein","graph_url":"https://www.graphcanon.com/api/graphcanon/graph?tool=sipyourdrink-ltd-bernstein","description":"The open‑source AI Agents Governance & Orchestration framework: write the rules declaratively, Bernstein enforces them and produces the verifiable, replayable record. Free, Apache-2.0. https://bernstein.run","homepage_url":"https://bernstein.run","license":"Apache-2.0","open_issues":367,"watchers":11,"ai_summary":"Bernstein is an open-source framework for governing and orchestrating AI agents, enabling users to write rules declaratively and enforce them with verifiable and replayable records.","readme_excerpt":"### install in 30 seconds\n\n```bash\nuv tool install bernstein    # or: pipx install bernstein\nbernstein init\nbernstein doctor             # checks a CLI agent is installed and authenticated\nbernstein -g \"fix the failing test in tests/test_foo.py\"\n```\n\npipx, pip, brew, dnf, npm, and Docker are covered in the [install guide](https://bernstein.readthedocs.io/en/latest/getting-started/install/); the air-gapped wheelhouse has its own [air-gap guide](https://bernstein.readthedocs.io/en/latest/installation/air-gap/).\n\n<img alt=\"A real bernstein demo run: mock agents fix four seeded bugs, ending on the run's signed receipt verifying offline\" src=\"https://raw.githubusercontent.com/sipyourdrink-ltd/bernstein/main/docs/assets/demo-run/demo.gif\" width=\"820\">\n\nThe recording above is a real run, and it ships with its own proof. The cast, the signed run receipt derived from that run's journal, and the public key that pins it all live in [`docs/assets/demo-run/`](https://github.com/sipyourdrink-ltd/bernstein/tree/main/docs/assets/demo-run). Verify the run you just watched, offline:\n\n```bash\nbernstein verify receipt docs/assets/demo-run/run-receipt.json \\\n    --public-key docs/assets/demo-run/run-receipt.pub.pem\n```\n\nCI re-verifies the committed receipt on every push to main — and proves a tampered copy fails — so the published evidence cannot rot into a decorative file. `scripts/record_demo.sh` regenerates the recording, receipt, and key from a fresh real run; nothing inside the terminal is synthesised.\n\nA run in flight is watchable from either operator surface. Both read the same task API, so neither is a lagging mirror of the other. In `bernstein live`, the left and right columns scroll independently as whole panes, so widgets below the fold remain reachable in shorter terminals.\n\n|  |  |\n|:---:|:---:|\n| `bernstein live` — the terminal dashboard | `bernstein gui serve` — the browser dashboard |\n\n---\n\n### contributing, support, license\n\nPRs welcome; [CONTRIBUTING.md](https://github.com/sipyourdrink-ltd/bernstein/blob/main/CONTRIBUTING.md) has setup and code style. Security reports go through [SECURITY.md](https://github.com/sipyourdrink-ltd/bernstein/blob/main/SECURITY.md). If Bernstein saves you time: [GitHub Sponsors](https://github.com/sponsors/chernistry). Contact: [forte@bernstein.run](mailto:forte@bernstein.run).\n\nCitation metadata lives in [CITATION.cff](https://github.com/sipyourdrink-ltd/bernstein/blob/main/CITATION.cff). License: [Apache-2.0](https://github.com/sipyourdrink-ltd/bernstein/blob/main/LICENSE); the project name is covered separately in [TRADEMARKS.md](https://github.com/sipyourdrink-ltd/bernstein/blob/main/TRADEMARKS.md).\n\n---\n\n[Alex Chernysh](https://alexchernysh.com) &middot; [GitHub](https://github.com/chernistry) &middot; [X](https://x.com/alex_chernysh) &middot; [bernstein.run](https://bernstein.run)","github_created_at":"2026-03-22T14:52:26+00:00","created_at":"2026-07-11T11:55:03.642122+00:00","updated_at":"2026-09-20T04:31:31.757719+00:00","categories":[{"slug":"ai-agents","name":"AI Agents","url":"https://www.graphcanon.com/categories/ai-agents","markdown_url":"https://www.graphcanon.com/categories/ai-agents.md","api_url":"https://www.graphcanon.com/api/graphcanon/categories/ai-agents"}],"tags":[{"slug":"agent-governance","name":"agent-governance"},{"slug":"agent-orchestration","name":"agent-orchestration"},{"slug":"ai-agents","name":"ai-agents"},{"slug":"audit-log","name":"audit-log"},{"slug":"deterministic-replay","name":"deterministic-replay"},{"slug":"provenance","name":"provenance"},{"slug":"reproducibility","name":"reproducibility"},{"slug":"tamper-evident","name":"tamper-evident"}],"trust":{"provenance":{"is_fork":false,"github_id":1188762020,"owner_type":"Organization","methodology":"github_public_v1","parent_repo":null,"near_duplicate_slugs":[]},"computed_at":"2026-09-18T08:32:21.877Z","maintenance":{"label":"Very active","score":96,"methodology":"github_public_v1","releases_90d":30,"days_since_push":0,"last_release_at":"2026-09-10T12:47:08Z","stars_delta_30d":426,"open_issues_delta_30d":292},"security_summary":{"status":"findings","scanner":"mcp_manifest@v1","low_count":1,"high_count":0,"last_scan_at":"2026-09-18T08:32:23.546Z","medium_count":1,"scan_profile":"mcp_manifest","critical_count":0}},"capability_facts":{"mcp":{"source":"repo_scan","observed_at":"2026-09-18T08:32:20.713Z","server_manifest":false},"scan":{"source":"repo_scan","observed_at":"2026-09-18T08:32:20.713Z"},"deploy":{"source":"dockerfile:Dockerfile","self_host":true,"observed_at":"2026-09-18T08:32:20.713Z","managed_saas":false},"has_cli":{"value":true,"source":"pyproject.toml:[project.scripts]","observed_at":"2026-09-18T08:32:20.713Z"},"languages":{"value":["python"],"source":"github.language+pyproject.toml","observed_at":"2026-09-18T08:32:20.713Z"},"has_docker":{"value":true,"source":"dockerfile:Dockerfile","observed_at":"2026-09-18T08:32:20.713Z"},"license_spdx":{"value":"Apache-2.0","source":"github.license","observed_at":"2026-09-18T08:32:20.713Z"}},"decision_facts":{"hosting":null,"pricing":null,"requirements":null,"constraints":null,"when_to_use":["When you need a framework that supports the governance and orchestration of AI agents with a focus on verifiable and replayable records.","If your project requires deterministic replay and reproducibility of AI agent actions, ensuring compliance and auditability.","For environments that need to maintain tamper-evident logs and provenance records, such as air-gapped systems or highly regulated industries."],"when_not_to_use":["If your project does not require the level of governance and auditability that Bernstein provides, and simpler orchestration tools would suffice.","When working in environments where the overhead of maintaining verifiable and replayable records is not necessary or feasible.","If your team lacks the expertise to set up and maintain Bernstein's governance framework, or if the project scope is too small to justify the complexity."],"source":"enrich:decision_facts","observed_at":"2026-09-18T12:12:06.248Z"},"constraint_facets":null,"decision_summary":[{"label":"Adopt for","value":"Bernstein is an open-source framework for governing and orchestrating AI agents, allowing users to write rules declaratively and enforce them with verifiable and replayable records."}]}}