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 skills add guimatheus92/pr-review --skill validate-recipegit clone --depth 1 https://github.com/guimatheus92/pr-reviewWrote 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/guimatheus92/pr-review/validate-recipe)<a href="https://agentmods.dev/skills/guimatheus92/pr-review/validate-recipe"><img src="https://agentmods.dev/badge/skills/guimatheus92/pr-review/validate-recipe/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/guimatheus92/pr-review/validate-recipe"><img src="https://agentmods.dev/badge/skills/guimatheus92/pr-review/validate-recipe.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.00035 | $0.06269 |
| Opus 5.5 | $0.00014 | $0.02508 |
| Sonnet 5.5 | $0.00007 | $0.01254 |
| Haiku 4.5 | $0.00003 | $0.00627 |
Grade C, and why
validate-recipe scanned grade C with 2 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 10d 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.
Recursive force deletehighDestructive command
rm -rf with a variable or a broad path is one typo away from removing the wrong tree.
- Render: Playwright MCP on `https://github.com/<owner>/<repo>/blob/<branch>/README.md` (add `#<anchor>` to land on a section). It blocks `file:` URLs — serve local previews with a one-line node http server. Screenshots Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
- Badges: `curl -s https://img.shields.io/<path> | grep -o '<title>[^<]*</title>'` — the title is the rendered text (`CI: passing`, `release: v0.10.0`). How it starts
The opening of the file, as written. The whole thing — 89 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Validation recipe — pr-review
Stack
TypeScript CLI (Node >= 20), esbuild single-file bundle at dist/cli.cjs; tests via node:test + tsx.
Tier 1 — static
npm run build# tsc typecheck + esbuild bundle; no separate lint script exists
Tier 2 — tests
- Full suite:
npm run test# scripts/test.mjs → node --test --import tsx, recursive over tests/**/*.test.ts - One file:
node --test --import tsx tests/<file>.test.ts
Tier 3 — runtime
- The surface is the bundled CLI:
node dist/cli.cjs <command>(rebuild first). - Publication-policy offline fixtures: after building,
node --test --import tsx tests/exit-code.test.tsdrives the bundled CLI with a deterministic attempt-writing runtime, all five severities, full verifier/dedupe/artifact flow andverify --offline. It also drives standalonepostthrough mocked HTTP for all three input shapes and proves input bytes stay unchanged. Verified locally: 9 tests pass. These are not real-provider publication evidence; thepublicationacceptance case inevals/acceptance/README.mdstill needs authorized provider credentials. - Offline full-pipeline dogfood (no PR, no network beyond packs):
npm run buildthennpm run dogfood -- --base origin/main— converts the branch diff into a synthetic gather and drives the real bundle with--from-gather --dry-run. Add--context-onlyfor routing only. Refuses a stale bundle, so build first. URL-based companions are off here by design. - Full pipeline with no LLM — a stub runtime.
--copilot <path>overrides the binary and pins the copilot runtime, so a stub does the whole real run:node dist/cli.cjs review <url> --from-gather <gather.json> --dry-run --no-codex --no-companions --copilot <stub.cmd>. On win32 the stub is a.cmddoingnode "%~dp0stub.mjs" %*—%~dp0is right ONLY when the stub is launched by path, as--copilot <stub.cmd>does; a stub found through PATH (aclaude.cmdfor companion detection, see the 2026-10-15 addenda) must name its script by absolute path; the stub reads--add-dirfrom argv to find the run dir, parsesdispatch-plan.json, and writesattempt-<n>.jsonunder eachreviewer.attemptsDir(plusreviewer.capabilityPathfor installed-plugin passes). Batches arrive as separate invocations — count them in a file under the run dir, since the CLI numbers attempts itself. Withhold one reviewer's attempt file to force the automatic-recovery batch. The child's stderr is captured, not passed through, so assert on run artifacts rather than on the stub's own output. This is the only way to exercise dispatch, recovery and the audit paths offline; pair it withgit show origin/main:dist/cli.cjs > <tmp>/cli-main.cjsfor a same-scenario before/after. - Side-effect-free smokes:
node dist/cli.cjs cache clear --pr <url>(proves URL parse end to end), a bad URL with--detach(must fail foreground, exit 2, no new dir under ~/.pr-review/runs),node dist/cli.cjs packs sync/packs list/doctor(packs clone + freshness + Linguist cache, no PR needed). - Offline pass-selection smoke: in a temp repo with
.pr-review.yamlcontainingskill_packs: [], runnode dist/cli.cjs review <url> --context-only— must exit 2 (zero passes on a code PR) while still rendering the## Stacksection. - Live smokes (gated on credentials — gh/az):
--context-onlyagainst 1 real GitHub PR and 1 real ADO PR — must exit 0,## Stackplausible for the diff,## Passesnon-empty with the expected glob hits. - File-list completeness smoke (gh only, read-only, ~30 API calls): from a directory that is NOT a checkout,
node dist/cli.cjs gather https://github.com/OpenAPITools/openapi-generator/pull/24767 --no-cachemust exit 1 withgithub listed 3000 of 9782 changed files — file list truncated … run git fetch origin master refs/pull/24767/head there and retryand leave nothing under~/.pr-review/cache/github/OpenAPITools__openapi-generator/. - Completion-path live proof (not run here — needs a clone of a >3000-file PR): clone
OpenAPITools/openapi-generator,git fetch origin master refs/pull/24767/head, then the samegathercommand from the clone — PASS when stderr sayscompleted 6782 file(s) from git at <root>and the JSON holds 9782 entries. Until someone runs it, the completion path's live evidence is the temp-git-repo tests intests/gather-cache.test.ts. - Cache-marker smoke: after a cached gather of a real PR, delete
changedFilesCompletefrom the entry under~/.pr-review/cache/<provider>/<scope>/<n>/, rungather <url>again — stderr must saycache entry predates the file-list completeness check — refetching, the entry is rewritten with the marker, and a third run is acache hit. pr-review-gather.jsonafter a GitHub gather with--no-cache:metadata.changedFileCountequalschangedFiles.length,changedFilesCompleteistrue, and there is nofullDiffkey (retired in #26). Only on a fresh gather — a cache hit returns the stored payload verbatim, so an entry written by <= 0.11 still yields afullDiff, which is expected and harmless.- Real (dispatching) reviews need provider auth AND a runtime on PATH — treat as not locally verifiable unless both exist. Run them from a COPY of the bundle (
cp dist/cli.cjs $TEMP/cli-x.cjs) so a later rebuild cannot abort the run. - Config-dependent CLI smokes without touching the real
~/.pr-review: run the bundle withUSERPROFILE=<tmp-home> HOME=<tmp-home>(Node'shomedir()follows USERPROFILE on Windows) and a.pr-review/config.yamlwritten under it;env -u GITHUB_TOKEN -u GH_TOKEN …makes the auth outcome deterministic. Before/after against the pre-change bundle:git show origin/main:dist/cli.cjs > <tmp>/cli-main.cjs— the committed bundle is fresh by CI contract, so no worktree build is needed.
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.
- 10d ago Changed · +6 lines bd74af2b1555
- 12d ago Changed · +9 lines 2711c0222c0c
- 29d ago Changed · +18 lines e933e931c8ea
- 1mo ago Changed · +1 lines e55f97cea45c
- 1mo ago Changed · +6 lines 3799719f79c7
- 1mo ago Changed · +7 lines e8604ce681ed
- 1mo ago Changed · +6 lines scan A → C 1a088a0abff7
- 1mo ago First seen · 36 lines · 35 tokens per session scan A f092bc448b3d
validate-recipe is a skill published in the GitHub repository guimatheus92/pr-review (3 stars, last pushed 10d ago), licensed MIT. It adds 35 tokens to every session and 6,269 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it C with 2 findings (recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
remove-ai-slops
Removes AI-generated code smells from branch changes or an explicit file list behind regression tests. Use when the user asks to clean up, deslop, or remove AI-slop patterns from recent changes.
review-work
Post-implementation gate review: run manual QA on the real surface yourself, then launch ONE gate reviewer (never a panel) to audit goal, constraints, code quality, security, missed context, and QA evidence. Use before a PR handoff or when the user explicitly asks to review completed work.
include-test-files-that-assert-on-behavior-being-changed-in-decl
When delegating a task affected by this skill, include.
check
Auto-fix lint and formatting, then report types and tests. Run before every commit.
code-guidelines-go
Go 1.24–1.27 coding guidelines for the dimetron/pi-go AI agent runtime. Use this skill whenever writing, reviewing, or refactoring ANY Go code in pi-go. This covers idiomatic style, error handling, concurrency, project layout, testing (table-driven, fuzz, benchmarks, synctest), new stdlib usage, golangci-lint v2…
vhs-e2e-gif
Record a test run, a TUI session, or any terminal command as a GIF with VHS and attach it to a GitHub PR as a release-hosted asset, never a repo commit. Use when asked to record an e2e run, demo a fix on a PR, attach a GIF or screen recording to a pull request, show a test passing visually, or produce a terminal…