agentleFS
rcdelfinrcdelfin/agentkit/skills/planning/scrutinize/SKILL.md

scrutinize

Skill2 starsChanged 3 months agoMITView on GitHub

Review plans, patches, and code changes from an outsider perspective; question scope, trace behavior, and report evidence-backed findings. Use for review, audit, sanity-check, or second-opinion requests.

7 other projects use a version of this, 3 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use management-talk and post-mortem.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • thananonSkill

    management-talk

    Rewrite engineer-to-engineer content for engineering-org leadership (VPs, directors, PMs, release managers, execs in an engineering-savvy company) and shape it for the channel it is going to — JIRA comment, Slack post, async standup line, email, or meeting talking-points. Trigger when the user asks to write/rewrite for management / exec / VP / director / PM / release manager, asks for an "executive summary / leadership update / status update", says "make this less technical / less jargony", or asks for a slack / email / standup / meeting version of work originally written engineer-to-engineer.

    Also in 3 projects that use this

  • andreluizwebSkill

    post-mortem

    Guia interativo para criar um Post-Mortem de incidente, coletando informações uma pergunta por vez

    Also in 3 projects that use this

The file

We split this skill into the rules it gives an agent

7 rules. 0 are common, 7 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 6 edited versions we read keep these.

  • 7

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Actionable, concise, with rationale: Every finding states *what to change*, *why*, and *what evidence* led you there.

    line 20
  2. Distinctive:

    Run these in order. Do not skip ahead.

    line 24
  3. Distinctive:

    Ask: is there a simpler, smaller, or more elegant way to achieve the same goal?

    line 29
  4. Distinctive:

    If a better alternative exists, name it explicitly with rationale.

    line 34
  5. Distinctive:

    How is it verified?: Do tests or static checks exercise the traced path?

    line 52
  6. Distinctive:

    Cite or it didn't happen: Every claim about the code references a specific path, file, or line.

    line 68
  7. Distinctive:

    Don't pad with style nits when there's a structural problem: If step 1 or step 2 surfaces a real issue, lead with it.

    line 71

“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Scrutinize

Stand outside the change and ask whether it should exist at all, then verify it actually does what it claims end-to-end.

Operating stance

  • Outsider. Forget who wrote it and why they think it's right. Read the artifact cold.
  • End-to-end, not diff-local. The diff is the entry point, not the scope. Trace executable changes through real code paths; trace docs/config changes through their consumers, loaders, and generated outputs.
  • Actionable, concise, with rationale. Every finding states what to change, why, and what evidence led you there. No filler, no restating the diff back.

Workflow

Run these in order. Do not skip ahead.

1. Intent — what is this actually trying to do?

  • State the goal in one sentence, in your own words. If you cannot, the artifact is underspecified — say so and stop.
  • Ask: is there a simpler, smaller, or more elegant way to achieve the same goal? Consider:
    • Doing nothing (is the problem real / load-bearing?).
    • Using something that already exists in the codebase instead of adding new surface.
    • A smaller change that solves 90% of the goal with 10% of the risk.
    • Solving it at a different layer (config vs code, framework vs app, build vs runtime).
  • If a better alternative exists, name it explicitly with rationale. This is the most valuable thing you can output — surface it before the line-by-line review.

2. Trace — walk the actual code path

  • For executable changes, trace the path end-to-end through the real code, not just the lines in the diff:
    • Entry point → call sites → branches taken → state mutated → exit / return / side effect.
    • Include unchanged code on either side of the diff. Bugs hide at the seams.
  • For a plan or design doc, trace the proposed flow against the existing system. Where does it touch reality? What does it assume that isn't true?
  • For docs, config, or tooling-only changes, trace consumers, loaders, generated outputs, and compatibility boundaries instead of inventing a call graph.
  • Note every place the trace surprises you (unexpected branch, dead code reached, state you didn't know existed). Surprises are signal.

3. Verify — does it actually do what it claims?

For each claim the change/plan makes, answer:

  • Does the code path you just traced actually produce that behavior? Walk it explicitly. "It claims X. Path: A → B → C. At C, [observation]. Therefore [holds / doesn't hold]."
  • What inputs / states would break it? Edge cases, concurrent callers, error paths, partial failures, retries, empty/null/unicode/huge inputs, ordering assumptions.
  • What does it silently change? Performance, error semantics, observability, contract for other callers, on-disk / on-wire format.
  • How is it verified? Do tests or static checks exercise the traced path? For docs/config changes, is there a loader, parser, smoke check, or smallest useful manual verification? Call out missing evidence.

4. Report

Output one tight section per finding. Order by severity (blocker → major → nit). For each:

  • Finding — one sentence, specific. Cite file:line when applicable.
  • Why it matters — the consequence, not the principle.
  • Evidence — the trace step or input that exposes it.
  • Suggested change — concrete, minimal.

Close with a one-line verdict: ship / fix-then-ship / rework / reject — with the single biggest reason.

Operating rules

  • No rubber-stamps. "LGTM" is not an output. If you genuinely find nothing, say what you traced and what you checked, so the user can judge whether your review covered the surface they cared about.
  • Cite or it didn't happen. Every claim about the code references a specific path, file, or line. No vague "this might break under load."
  • Distinguish claim from verification. "The PR says X" and "I traced X and confirmed / refuted it" are different — keep them separate in the output.
  • One simpler-alternative pass is mandatory. Even on small changes, spend one breath asking if the whole thing is necessary. Skip only if the user explicitly says "don't question scope."
  • Don't pad with style nits when there's a structural problem. If step 1 or step 2 surfaces a real issue, lead with it; defer nits or drop them.
  • No flattery, no hedging. "This is a great PR but..." adds nothing. State the finding.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.