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 agentmods add instructions/eqtylab/cupcake/claude-mdgit clone --depth 1 https://github.com/eqtylab/cupcakeWhat 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 | $0.00855 | $0.00855 |
| Opus 5 | $0.00428 | $0.00428 |
| Sonnet 5 | $0.00171 | $0.00171 |
| Haiku 4.5 | $0.00085 | $0.00085 |
Grade A, and why
cupcake CLAUDE.md 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 2d 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.
How it starts
The opening of the file, as written. The whole thing — 59 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Cupcake System Overview
- Function: A policy engine for AI coding agents (like Claude Code, Cursor, OpenCode) that intercepts tool calls, evaluates them against user-defined OPA Rego policies, and returns
Allow,Block, orWarndecisions. - Core Flow: $$\text{Event Input} \rightarrow \text{Route (O(1))} \rightarrow \text{Gather Signals} \rightarrow \text{Evaluate (WASM)} \rightarrow \text{Synthesize} \rightarrow \text{Response}$$
- Hybrid Model: Rego (WASM) declares rules/aggregates verbs; Rust (Engine) handles routing, signal gathering, and final decision synthesis.
- Two-Phase Evaluation:
- Phase 1 (Global Policies): Evaluated first (early termination on block). Organization-wide governance from
~/.cupcake/rulebook.yml. - Phase 2 (Project Policies): Evaluated only if Phase 1 allows. Project-specific rules from
.cupcake/rulebook.yml.
- Phase 1 (Global Policies): Evaluated first (early termination on block). Organization-wide governance from
Policy Engine (WASM/Rego) Details
1. Routing vs. Policy Execution (CRITICAL)
- Routing is an optimization layer, not a selector.
- Controls: Early exit if no policies match event criteria, and which signals to collect.
- Does NOT Control: Which Rego rules execute inside WASM. All compiled policies run via the single entrypoint
cupcake.system.evaluate.
- Policy Self-Filtering (MANDATORY): Policies MUST include event and tool checks in their Rego logic.
deny contains decision if { input.hook_event_name == "PreToolUse" # REQUIRED input.tool_name == "Bash" # REQUIRED # ... your logic }
2. OPA Rego v1 Migration (CRITICAL)
Cupcake uses OPA v1.71.0+ where Rego v1 is the default syntax.
| Area | Old (Rego v0) | New (Rego v1 / Best Practice) | Notes |
|---|---|---|---|
| Object Key Membership | "key" in my_object |
"key" in object.keys(my_object) |
CRITICAL: Old syntax silently fails by returning false. |
| Decision Verbs | deny[decision] { ... } |
deny contains decision if { ... } |
Use contains with if. |
| Ask Decision | N/A | Must include reason and question fields. |
|
| Metadata Placement | Allowed anywhere | scope: package metadata MUST be the FIRST thing in the file (before package declaration). |
Enforced by OPA linter/compiler. |
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.
- 2d ago First seen · 59 lines · 855 tokens per session scan A 57fa89526c6c
cupcake CLAUDE.md is an instructions file published in the GitHub repository eqtylab/cupcake (288 stars, last pushed 6mo ago), licensed Apache-2.0. It adds 855 tokens to every session, about $0.0043 per session on Opus 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 instructions, from other repositories
kagi-skills AGENTS.md
Instructions for joelazar/kagi-skills: Multi-module monorepo. Each skill lives in its own directory with its own go.mod.
agent-hook-schemas CLAUDE.md
Claude Code instructions for mherod/agent-hook-schemas, covering claude.md, build & test commands, npm publish, architecture and key patterns.
skills CLAUDE.md
Instructions for lovstudio/skills, covering claude.md, what this is, repo layout, how users install and skills.yaml schema.
Dragon-Brain CLAUDE.md
Instructions for iikarus/Dragon-Brain, covering dragon brain — claude.md, the harness, audit remediation (april–may 2026, complete 2026-05-09), the lie this audit closed and the contract that matters now.
coral CLAUDE.md
Instructions for cdknorow/coral, covering claude.md - coral go, mission, testing, go unit tests and legacy parity tools (historical reference).
cli-continues parsers.instructions.md
Instructions for yigitkonur/cli-continues, covering parser review guidelines, crash safety (critical), required exports, jsonl streaming and tool summarizer.