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 commands/jonase47/ccpr/specializegit clone --depth 1 https://github.com/jonase47/ccprWrote 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/commands/jonase47/ccpr/specialize)<a href="https://agentmods.dev/commands/jonase47/ccpr/specialize"><img src="https://agentmods.dev/badge/commands/jonase47/ccpr/specialize.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.1 | $0.00000 | $0.01950 |
| Opus 5 | $0.00000 | $0.00975 |
| Sonnet 5 | $0.00000 | $0.00390 |
| Haiku 4.5 | $0.00000 | $0.00195 |
Grade A, and why
specialize 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 — 151 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/specialize – Adapt agents to the project's tech stack
Generic CCPR agents are tech-stack-agnostic all-rounders. Once the stack is known,
this command writes project-local specialized copies under .claude/agents/
(which take precedence over ~/.claude/agents/ via Claude Code's name resolution)
and injects a Project Tech Context block carrying stack-specific correctness,
security, and idiom rules — so the developer agent knows the language's footguns
and the reviewer agent knows to check for them.
It runs in two modes from the same machinery — only the knowledge source differs:
docsmode — the stack was decided through CCPR (P3), so the knowledge is read from the architecture docs. Source of truth:docs/architecture/TECH_STACK.md, the ADRs underdocs/architecture/ADR/, and the Tech Stack / Key Decisions sections of the projectCLAUDE.md.codebasemode — an existing codebase with no CCPR history, so the knowledge is read from the code itself (dependency manifests, build/CI config, language-version files).
What this command does NOT do
- No auto-commit. It writes files and shows a diff. You review and commit.
- No blind overwrite. Hand-written agent content is never touched — only the marked auto-specialization block is created or replaced (see Marker Block).
- No invented rules. Stack facts come from the sources below. Anything plausible
but not verifiable from a source — or that may not match the pinned version — is
marked
⚠ verify, never asserted as fact.
Argument: $ARGUMENTS = [optional: comma-separated agent names to limit the run]
If empty: specialize the default agent set (see step 3).
Execution
1. Detect mode
- If
docs/architecture/TECH_STACK.mdexists →docsmode. Read it, the ADRs underdocs/architecture/ADR/, and the projectCLAUDE.mdTech-Stack / Key-Decisions. - Else →
codebasemode. Scan the repo root for stack signals and read what you find (do not guess versions you cannot read):- Language / deps:
go.mod,package.json,composer.json,requirements.txt,pyproject.toml,Cargo.toml,Gemfile,pom.xml,build.gradle - Versions:
.tool-versions, thego.modgo-directive,.nvmrc, engine fields - Build / CI / infra:
Dockerfile,docker-compose.yml,Makefile, linter configs (.golangci.yml,.eslintrc*), CI configs (.woodpecker,.github/workflows,.gitlab-ci.yml)
- Language / deps:
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 · 151 lines · 0 tokens per session scan A 7f11990c806a
specialize is a command published in the GitHub repository jonase47/ccpr (1 stars, last pushed yesterday), licensed MIT. It costs nothing until one of its globs matches a file; then it loads 1,950 tokens. 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 commands, from other repositories
stats
Show real token usage, delegation rate, and actual savings for the current Hydra session (parses Claude Code session JSONL — no AI estimation).
map
View, rebuild, or query the codebase dependency map.
debug
Systematic debugging with automated investigation and 4-phase methodology. Default: inline evidence gathering and diagnosis. --deep: spawns systematic-debugger agent for full autonomous debugging. Use for errors, stack traces, test failures, or unexpected behavior.
double-check
Comprehensive verification with automated quality gates, confession gathering, and confidence-based issue filtering. Default: self-review with gates. --deep: multi-agent review via code-reviewer agent. Use before committing, after fixing bugs, or to validate feature completeness.
checkpoint
Create, verify, or list lightweight workflow checkpoints — name + timestamp + git SHA + a metrics delta between two points.
harness-audit
Run the deterministic harness-audit scorecard (0-10 per category) over the MindForge tree, with an optional LLM soft-signal layer.