Bernstein is an open-source governance layer for AI agents that applies written policies, schedules agent work deterministically, controls approvals, and records verifiable execution history. It is used to coordinate CLI coding agents and other agent workloads, including parallel runs and offline review, while the catalogue entries provide its agent workflows and controls.
Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add sipyourdrink-ltd/bernstein --skill bernstein-approvegit clone --depth 1 https://github.com/sipyourdrink-ltd/bernsteinWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/sipyourdrink-ltd/bernstein/bernstein-approve)<a href="https://agentmods.dev/skills/sipyourdrink-ltd/bernstein/bernstein-approve"><img src="https://agentmods.dev/badge/skills/sipyourdrink-ltd/bernstein/bernstein-approve/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/sipyourdrink-ltd/bernstein/bernstein-approve"><img src="https://agentmods.dev/badge/skills/sipyourdrink-ltd/bernstein/bernstein-approve.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00043 | $0.00401 |
| Opus 5.5 | $0.00017 | $0.00160 |
| Sonnet 5.5 | $0.00009 | $0.00080 |
| Haiku 4.5 | $0.00004 | $0.00040 |
Grade A, and why
bernstein-approve scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Bernstein Approvals
Review pending approvals and plans, then approve or reject them.
When to Use
- User asks "any pending approvals?" or "what needs my review?"
- User wants to approve or reject a completed task
- User wants to review and approve/reject a plan before agents execute it
- User says "approve that" or "reject task X"
Instructions
List pending approvals
- Run
scripts/approvals.sh listto fetch pending approvals and plans. - Present each item with its diff summary and test results:
## Pending Approvals
### Task TASK-042: Fix auth middleware
**Agent:** claude-backend-01 | **Role:** backend
**Files changed:** src/auth/middleware.py (+42 -8)
**Tests:** 14/14 passing
[Approve] [Reject]
Approve or reject
-
When the user decides:
- Approve:
scripts/approvals.sh approve <task_id> "reason" - Reject:
scripts/approvals.sh reject <task_id> "reason"
- Approve:
-
For plans (multi-task proposals):
- List plans:
scripts/approvals.sh plans - Approve plan:
scripts/approvals.sh approve-plan <plan_id> - Reject plan:
scripts/approvals.sh reject-plan <plan_id>
- List plans:
After approval
- Confirm the action and note what happens next:
- Approved tasks → agent commits and merges
- Approved plans → planned tasks promoted to open, agents start picking them up
- Rejected → task goes back to open for retry, or gets cancelled
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 55 lines · 43 tokens per session scan A fbd9a881bfe9
bernstein-approve is a skill published in the GitHub repository sipyourdrink-ltd/bernstein (1,384 stars, last pushed today), licensed Apache-2.0. It adds 43 tokens to every session and 401 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
ara-research-manager
Records research provenance as a post-task epilogue, scanning conversation history at the end of a coding or research session to extract decisions, experiments, dead ends, claims, heuristics, and pivots, and writing them into the ara/ directory with user-vs-AI provenance tags. Use as a session epilogue — never during…
review-task
Task status / backlog progress report; identifies tasks ready to start. Triggers: "revisar tarefas", "status das tarefas", "progresso do projeto", "review tasks". Skip for executing (execute-task) or creating tasks (create-tasks).
create-tasks
Decompose scope or spec into task backlog with phases, dependencies, criticality. Triggers: "criar tarefas", "backlog", "task list", "decomposicao". Skip for executing tasks (use execute-task) or technical plan (use plan).
execute-task
Execute one backlog task end-to-end following the project mandatory step-by-step workflow with hard gates. Triggers: "executar tarefa", "execute task {id}", "implementar tarefa". Skip for building the backlog (create-tasks), technical planning (plan), or bug investigation (bugfix).
jira-convert
Converte uma feature documentada localmente (spec.md + tasks.md) num Epic do Jira com Tasks e Sub-tasks correspondentes, gravando o mapeamento entre local e Jira (jira-map.tsv). Reexecucao cria apenas o que falta. Triggers: "jira-convert", "converter para jira", "criar epic no jira", "sincronizar backlog com jira"…
jira-setup
Guided setup of the cstk-jira plugin for a target project: Jira site, project key, credential (own terminal, never chat), issue-type mapping (Epic/Task/Sub-task) and status workflow mapping (pending/inprogress/pass/fail), plus filter+board. Triggers: "jira-setup", "configurar jira", "conectar projeto ao jira", "setup…