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.
git clone --depth 1 https://github.com/bybren-llc/safe-agentic-workflowWrote 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/rules/bybren-llc/safe-agentic-workflow/21-agent-backend)<a href="https://agentmods.dev/rules/bybren-llc/safe-agentic-workflow/21-agent-backend"><img src="https://agentmods.dev/badge/rules/bybren-llc/safe-agentic-workflow/21-agent-backend/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/rules/bybren-llc/safe-agentic-workflow/21-agent-backend"><img src="https://agentmods.dev/badge/rules/bybren-llc/safe-agentic-workflow/21-agent-backend.svg" alt="Reviewed on agentmods" width="80" height="20"></a>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.00018 | $0.00614 |
| Opus 5.5 | $0.00007 | $0.00246 |
| Sonnet 5.5 | $0.00004 | $0.00123 |
| Haiku 4.5 | $0.00002 | $0.00061 |
Grade A, and why
21-agent-backend 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.
Copies of this mod
1 near-identical copy found in the catalogue:
- 21-agent-backend — 88% identical, 18 lines differ
How it starts
The opening of the file, as written. The whole thing — 74 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Backend Developer Role
Activate this rule when implementing API routes or server-side logic. See .claude/agents/be-developer.md for the full agent definition.
Precondition: Stop-the-Line Gate
Before starting ANY work:
- Verify the ticket has Acceptance Criteria or Definition of Done
- If AC/DoD is missing or unclear: STOP and route back to BSA/POPM
- You are NOT responsible for inventing AC/DoD
- Work begins ONLY when AC/DoD exists
Workflow
- Read spec:
cat specs/{{TICKET_PREFIX}}-XXX-{feature}-spec.md - Find pattern: Check the spec for a pattern reference, then read from
patterns_library/api/ - Copy and customize: Follow the pattern's customization guide
- Validate: Run the full validation suite
Available API Patterns
| Pattern | File | Use Case |
|---|---|---|
| User Context API | patterns_library/api/user-context-api.md |
User-specific CRUD |
| Admin Context API | patterns_library/api/admin-context-api.md |
Admin-only operations |
| Webhook Handler | patterns_library/api/webhook-handler.md |
External webhook events |
| Zod Validation API | patterns_library/api/zod-validation-api.md |
Type-safe input handling |
RLS Requirements (CRITICAL)
ALL database operations MUST use RLS context helpers:
with_user_context(session, user_id)-- User operationswith_admin_context(session, user_id)-- Admin operationswith_system_context(session, 'source')-- System/webhook operations
Direct ORM calls without context wrappers are forbidden.
Validation
# Run before committing
pytest tests/integration/ # Integration tests
ruff check . # Linting
mypy . # Type checking
Ownership
You own: Code changes (API routes, server-side logic), atomic commits in SAFe format.
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 · 74 lines · 18 tokens per session scan A 3bf1fc28a314
21-agent-backend is a cursor rule published in the GitHub repository bybren-llc/safe-agentic-workflow (424 stars, last pushed 3mo ago), licensed MIT. It adds 18 tokens to every session and 614 once invoked, about $0.0001 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-09-03.
Other cursor rules, from other repositories
integrations
External integration rules — providers, idempotency, bulkhead, observability.
architecture
FastAPI layer architecture rules — Router → Service → Repository with Protocol injection.
skill-ax
Agent Experience (AX) — codifica padrões para desenvolvimento assistido por IA em três planos (Discovery, Usage, Defense). Garante que todo projeto DARE exponha sinais estruturados (llms.txt, OpenAPI, --json, rate limit) que agentes de código precisam.
skill-fastapi-api
Padrões DARE para APIs REST em Python + FastAPI + Pydantic v2 + SQLAlchemy 2.0 async + alembic. Routers, dependency injection, schemas Pydantic, OAuth2+JWT, slowapi rate limit, pytest+httpx, OpenAPI auto-gerado.
skill-go-gin-api
Padrões DARE para APIs REST em Go + Gin (ou stdlib net/http) + sqlc + PostgreSQL. Handlers, services, repositories, middleware, validação via binding tags, JWT, rate limit, swag OpenAPI, testify + httptest.
skill-layered-design
Layered Design — enforce arquitetura estrita Handler→Service→Repository→Model em todos os projetos DARE, independente de linguagem. Inspirado em "Layered Design for Ruby on Rails Applications" de Vladimir Dementyev (Evil Martians).