Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/zircote-plugins/adrnpx agentmods add skills/zircote-plugins/adr/adr-integrationWrote 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/zircote-plugins/adr/adr-integration)<a href="https://agentmods.dev/skills/zircote-plugins/adr/adr-integration"><img src="https://agentmods.dev/badge/skills/zircote-plugins/adr/adr-integration/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/zircote-plugins/adr/adr-integration"><img src="https://agentmods.dev/badge/skills/zircote-plugins/adr/adr-integration.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.00059 | $0.03305 |
| Opus 5.5 | $0.00024 | $0.01322 |
| Sonnet 5.5 | $0.00012 | $0.00661 |
| Haiku 4.5 | $0.00006 | $0.00331 |
Grade A, and why
adr-integration 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.
How it starts
The opening of the file, as written. The whole thing — 532 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ADR Integration
This skill provides guidance on integrating ADRs with CI/CD pipelines, documentation sites, and other development tools for automated workflows and better discoverability.
CI/CD Integration
GitHub Actions
# .github/workflows/adr-validation.yml
name: ADR Validation
on:
pull_request:
paths:
- 'docs/adr/**'
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Validate ADR Format
run: |
for file in docs/adr/[0-9]*.md; do
[ -f "$file" ] || continue
echo "Validating $file..."
# Check for required sections
if ! grep -q "^## Status" "$file"; then
echo "::error file=$file::Missing Status section"
exit 1
fi
if ! grep -q "^## Context" "$file" && ! grep -q "^## Context and Problem Statement" "$file"; then
echo "::error file=$file::Missing Context section"
exit 1
fi
if ! grep -q "^## Decision" "$file" && ! grep -q "^## Decision Outcome" "$file"; then
echo "::error file=$file::Missing Decision section"
exit 1
fi
done
echo "All ADRs validated successfully"
- name: Check ADR Numbering
run: |
LAST_NUM=0
for file in docs/adr/[0-9]*.md; do
NUM=$(basename "$file" | grep -oE '^[0-9]+')
NUM=$((10#$NUM))
if [ $NUM -le $LAST_NUM ]; then
echo "::error::ADR numbering issue: $file"
exit 1
fi
LAST_NUM=$NUM
done
GitLab CI
# .gitlab-ci.yml
stages:
- validate
- compliance
- publish
variables:
ADR_PATH: docs/adr
adr-validate:
stage: validate
rules:
- changes:
- docs/adr/**
script:
- |
for file in $ADR_PATH/[0-9]*.md; do
echo "Validating $file"
grep -q "^## Status" "$file" || (echo "Missing Status in $file" && exit 1)
grep -q "^## Context" "$file" || grep -q "^## Context and Problem Statement" "$file" || (echo "Missing Context in $file" && exit 1)
grep -q "^## Decision" "$file" || grep -q "^## Decision Outcome" "$file" || (echo "Missing Decision in $file" && exit 1)
done
adr-compliance:
stage: compliance
rules:
- changes:
- src/**
script:
- ./scripts/adr-compliance.sh
allow_failure: true
adr-publish:
stage: publish
rules:
- if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH
changes:
- docs/adr/**
script:
- ./scripts/generate-adr-index.sh
artifacts:
paths:
- docs/adr/README.md
What ships with it
4 files 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 · 532 lines · 59 tokens per session scan A a402a19cb3d4
adr-integration is a skill published in the GitHub repository zircote-plugins/adr (5 stars, last pushed 1mo ago), licensed MIT. It adds 59 tokens to every session and 3,305 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-31.
Other skills, from other repositories
bootstrap
Scaffold or retrofit documentation-led conventions (AGENTS.md, CLAUDE.md, CONVENTIONS.md, ADR catalogue, plan/ queue, agent/ coordination) into a repo. Use when the user asks to "set up conventions", "bootstrap ADRs", "scaffold the documentation-led layout", or "add AGENTS.md and a plan queue". Works on fresh repos…
agent-wave
Run a bounded wave over the plan/todo queue in a documentation-led repo, using available parallel agents or sequential execution. Establishes width, budget and supervision; isolates work and collects verified outcomes. Use for "spawn a wave of agents", "run the queue in parallel", "fan out the work", or "agent wave"…
new-plan
Queue a UNIT OF WORK in the plan/todo queue of a documentation-led repo, tracing to an existing ADR — names the owning ADR(s), scope, exit criteria mapped to acceptance criteria, dependencies, and queue position. Use when the user says "add a plan item", "queue this work", "create a todo for ADR X", "new plan", "put…
audit
Audit a documentation-led repo against its own conventions — contiguous ADR numbering, INDEX sync, plan/ coverage, required sections, status validity, cross-reference resolution, language mandate, ADR-privacy leaks into user-visible code, cross-worktree collisions (duplicate numbers, duplicate plan ownership, same ADR…
add-convention
Assess and add a CONVENTION (a reusable rule, practice, or naming/process standard) to a documentation-led repo — decides FIRST whether it is worth codifying at all, then routes it to the right home (AGENTS.md hard rule, CONVENTIONS.md guidance, GLOSSARY term, or to /new-adr if it is really a one-off decision). Pushes…
new-adr
Author a new ADR — record a DECISION (what the system must do, or how it is built) in a documentation-led repo. Picks the next contiguous number, chooses the shape (capability vs technology), fills the template, sets status Proposed, regenerates INDEX, updates domain READMEs, handles supersede/deprecate linkage…