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 skilletmd/skillet --skill review-a-diffgit clone --depth 1 https://github.com/skilletmd/skilletWrote 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/skilletmd/skillet/review-a-diff)<a href="https://agentmods.dev/skills/skilletmd/skillet/review-a-diff"><img src="https://agentmods.dev/badge/skills/skilletmd/skillet/review-a-diff.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.00047 | $0.00688 |
| Opus 5 | $0.00023 | $0.00344 |
| Sonnet 5 | $0.00009 | $0.00138 |
| Haiku 4.5 | $0.00005 | $0.00069 |
Grade A, and why
review-a-diff 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 8d 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 — 65 lines — stays where its author put it; the contents beside it link to each section on GitHub.
review-a-diff
Most review feedback is noise a linter should have caught. This skill spends your attention where it pays: correctness, security, and the tests that prove the change works. Read the diff three times, once per lens, instead of once for everything.
When to use
Reviewing a PR, or checking your own branch before git push. Works on any language.
Get the diff
git diff main...HEAD # your changes since you branched from main
git diff main...HEAD --stat # files touched, at a glance
Read the --stat first. A change that touches 40 files for a "small fix" is the first finding.
Lens 1 — Correctness
Read the diff as if it will run with the worst possible input.
- Off-by-one, wrong comparison operator, inverted boolean.
- Null / undefined / empty: what happens when the list is empty, the map misses, the call returns nothing?
- Error paths: is the error swallowed, logged, or propagated? Does a failed write leave half-written state?
- Concurrency: shared state touched without a lock, an
awaitthat races a later read. - The change does what the PR says — and nothing the PR doesn't say.
Lens 2 — Security
# Which files touch sensitive surfaces (matches filenames)?
git diff main...HEAD --name-only | grep -iE "auth|sign|cred|token|secret|crypto|sql"
# Are there secrets in the added lines themselves (matches diff content)?
git diff main...HEAD | grep -nE "^\+" | grep -iE "api.?key|secret|token|password|BEGIN [A-Z ]*PRIVATE KEY"
If either matches, slow down. Check for:
- User input reaching a query, shell, file path, or
evalwithout validation. - Secrets committed in the added lines — keys, tokens, passwords,
.envvalues. - Authorization checks that are missing, not just authentication (is the user allowed to touch this record?).
- Logging that prints tokens, passwords, or full request bodies.
Lens 3 — Tests
A change without a test is a claim without proof.
- Is there a test that fails before this change and passes after?
- Does it cover the edge case the change is about, or just the happy path?
- If there's no test, the PR should say why ("config-only", "covered by the integration suite") — not stay silent.
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.
- 8d ago First seen · 65 lines · 47 tokens per session scan A 91db7ab0fe9a
review-a-diff is a skill published in the GitHub repository skilletmd/skillet (3 stars, last pushed 9d ago), licensed Apache-2.0. It adds 47 tokens to every session and 688 once invoked, about $0.0002 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 skills, from other repositories
sdd-apply
Skill "sdd-apply" from Gentleman-Programming/gentle-ai, covering execution role, language domain contract, purpose, what you receive and execution and persistence contract.
gentle-ai-collab-perfect
Trigger: contributing to Gentleman-Programming/gentle-ai as an external collaborator. Strict issue-first workflow, honest PR bodies, contributor-vs-maintainer scope, chained-PR strategy, verification protocol, docstring coverage. Load whenever the active repo is Gentleman-Programming/gentle-ai and any part of the…
sdd-verify
Skill "sdd-verify" from Gentleman-Programming/gentle-ai, covering execution role, language domain contract, activation contract, hard rules and decision gates.
issue-creation
Trigger: issue creation, bug reports, feature requests, or issue approval. Create and triage GitHub issues from repository evidence.
sdd-spec
Write SDD delta specs with requirements and scenarios. Trigger: orchestrator launches spec work for a change.
sdd-tasks
Break an SDD change into implementation tasks. Trigger: orchestrator launches task planning for a change.