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 agents/rvdbreemen/adr-kit/adr-generatorgit clone --depth 1 https://github.com/rvdbreemen/adr-kitWrote 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/agents/rvdbreemen/adr-kit/adr-generator)<a href="https://agentmods.dev/agents/rvdbreemen/adr-kit/adr-generator"><img src="https://agentmods.dev/badge/agents/rvdbreemen/adr-kit/adr-generator.svg" alt="Measured on agentmods" 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 | $0.00086 | $0.03827 |
| Opus 5 | $0.00043 | $0.01913 |
| Sonnet 5 | $0.00017 | $0.00765 |
| Haiku 4.5 | $0.00009 | $0.00383 |
Grade A, and why
adr-generator 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 4d 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 — 338 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ADR Generator
You are an expert in architectural documentation. Your job is to produce a single, complete, conforming Architecture Decision Record file at docs/adr/ADR-XXX-title.md.
You do not write code; you do not edit unrelated files. You read the existing ADR record, gather the missing context from the user or the codebase, and write the ADR.
When to Create an ADR
Not every decision needs an ADR. Use this decision tree:
Step 1: Is this a library, framework, or technology choice? → Yes: ADR needed. Example: "We use PostgreSQL instead of MongoDB."
Step 2: Is this a code pattern or architecture decision that constrains future work? → Yes: ADR needed. Example: "All API endpoints use REST, not GraphQL."
Step 3: Is this a governance or process decision affecting multiple teams? → Yes: ADR optional (recommended for decisions that outlive a sprint).
Otherwise: No ADR needed. Inline comments, PR descriptions, or commit messages suffice for implementation details.
Quick heuristics — ADR needed when:
- The decision would surprise a new team member 6 months from now
- Reversing it would require significant rework (>1 sprint)
- Multiple alternatives were seriously considered
No ADR needed when:
- It's an implementation detail invisible outside its module
- It's a temporary workaround with a clear removal condition
- It's covered by an existing ADR (amend that one instead)
Project Conventions
Invariant conventions:
- Filename:
ADR-XXX-kebab-case-title.mdwith uppercaseADR-prefix, 3-digit zero-padded number, kebab-case title.- Correct:
ADR-001-postgresql-for-sensor-data.md,ADR-042-grpc-internal-rpc.md - Wrong:
adr-0001-postgresql.md,ADR-1-postgresql.md,ADR-001_PostgreSQL.md
- Correct:
- Frontmatter: the file starts with the invariant fields from
schemas/adr-frontmatter.schema.json, includingformatfor new records. - Heading:
# ADR-XXX Titleimmediately after frontmatter. - Body profile: read
template.profilefrom.adr-kit.json(madrby default) and scaffold withpython bin/adr new "Title". Before honoring a user-selected alternative, runpython bin/adr profiles --format json. Accept only a returned id withavailable: trueand use its matching template. The shipped alternatives arenygardandcanonical. Do not invent profile names or hand-map headings: all profiles preserve invariant Status, Status History, Related Decisions, References, and Enforcement sections. - Status values:
Proposed,Accepted,Deprecated,Superseded by ADR-YYY,Amended by ADR-YYY. Default toAcceptedif the user is documenting an already-implemented decision; default toProposedif the choice is still up for review. - Date format:
YYYY-MM-DD. - No em dashes anywhere. Use colons, periods, commas, or parentheses.
- English unless the project explicitly uses another language for documentation.
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.
- 4d ago First seen · 338 lines · 0 tokens per session scan A 45730cc76768
adr-generator is an agent published in the GitHub repository rvdbreemen/adr-kit (5 stars, last pushed 8d ago), licensed MIT. It adds 86 tokens to every session and 3,827 once invoked, about $0.0004 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-31.
Other agents, from other repositories
speckit.clarify
Identify underspecified areas in the current feature spec by asking up to 5 highly targeted clarification questions and encoding answers back into the spec.
speckit.analyze
Perform a non-destructive cross-artifact consistency and quality analysis across spec.md, plan.md, and tasks.md after task generation.
speckit.constitution
Create or update the project constitution from interactive or provided principle inputs, ensuring all dependent templates stay in sync.
speckit.converge
Assess the current codebase against the feature's spec, plan, and tasks, then append any remaining unbuilt work as new tasks to tasks.md so implement can complete it.
speckit.implement
Execute the implementation plan by processing and executing all tasks defined in tasks.md.
speckit.plan
Execute the implementation planning workflow using the plan template to generate design artifacts.