agentleFS
DoistDoist/todoist-cli/.agents/skills/review-changes/SKILL.md

review-changes

Skill331 starsChanged 8 days agoMITView on GitHub

Reviews a finished change with fresh reviewers (a task review, a blast-radius review for shared code, and Doistbot or per-check subagents), then confirms each finding before acting on it. Use when the owner says a change is "ready for a PR", "ready to merge" or ready for a release, or asks for "a review".

  • Reads credentials

34 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

Used with

Projects with it also use explore-codebase, debug-issue and 7 more.

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.
  • srclightSkill

    explore-codebase

    This skill should be used when the user asks to "explore this codebase", "understand this project", "give me an overview", "how does this work", "onboard me", "walk me through the architecture", "map the codebase", or any request to understand a codebase's structure, architecture, or design.

    Also in 4 projects that use this

  • NVIDIASkill

    debug-issue

    Use when the user asks to debug, investigate, or fix a GitHub issue or supplies a repository bug report.

    Also in 4 projects that use this

  • srclightSkill

    refactor-safely

    This skill should be used when the user asks to "refactor", "rename", "move", "change a function signature", "extract a method", "delete unused code", "clean up", or any modification that could break callers or dependents. Provides a pre-change safety checklist using srclight's graph tools to assess blast radius before touching code.

    Also in 4 projects that use this

  • GoogleSkill

    to-tickets

    Break a plan, spec, or the current conversation into a set of tracer-bullet tickets, each declaring its blocking edges, published to the configured tracker — edges as text in one file per ticket locally, or native blocking links on a real tracker.

    Also in 3 projects that use this

  • GoogleSkill

    to-spec

    Turn the current conversation into a spec and publish it to the project issue tracker — no interview, just synthesis of what you've already discussed.

    Also in 3 projects that use this

  • MicrosoftSkill

    writing-for-agents

    Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.

    Also in 3 projects that use this

  • +3 more from google

The file

We split this skill into the rules it gives an agent

5 rules. 0 are common, 2 are distinctive, and 3 are very specific to this project.

  • 0

    Common

    Most of the 33 edited versions we read keep these.

  • 2

    Distinctive

    This author's own choices. Worth a look.

  • 3

    Very specific

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

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Write the brief from references/reviewer-brief.md: the task in the owner's words, what done means, the decisions made.

    line 14
  2. Very specific:

    Every brief says: the shared working tree is read-only.

    line 24
  3. Very specific:

    Use it when doistbot --version prints 1.0.12 or newer and doistbot doctor succeeds.

    line 28
  4. Very specific:

    Read status, verified and providerFailures first.

    line 32
  5. Distinctive:

    Look again when new evidence appears.

    line 43

“Common” is measured: kept by at least 6 in 10 of the 33 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

Review a change

Reviews cost several agent runs. Run them when the owner says the change is ready, or asks. During work, npm run verify is the check.

1. Prepare

  1. npm run verify passes.
  2. List the untracked files (git ls-files --others --exclude-standard): they reach the reviewers and Doistbot's model providers. Gitignored files (.env, .tmp/) are not listed, and npm run review:worktree never copies them. Check every listed file for credentials, tokens and personal data; send none that holds them, and ask the owner about any file that does or that doesn't belong to the change. Never git add -A to tidy up.
  3. Write the brief from references/reviewer-brief.md: the task in the owner's words, what done means, the decisions made. Never your own opinion of the change, or your reasoning.

Done when the brief is written and the tree holds only the change, with no secrets or personal data in it.

2. Run the reviews in parallel

  • Task review, always: a fresh subagent with the brief and the diff. It looks for missing pieces, unrequested changes, unhandled cases, tests that would pass with the feature broken, and, in a refactor, any changed test input or assertion. Doistbot can't do this: it never sees the task.
  • Blast-radius review, when the change alters code others rely on: src/lib/, command registration, global flags or argv handling in src/index.ts, the @doist/cli-core or @doist/todoist-sdk version, other package.json dependencies, build or CI config. It names the one fact that makes the change safe and proves it by running code. It looks where text search stops: library versions in package-lock.json, the shape of API responses, scripts and installed skills reading --json output, extensions receiving TD_* variables.
  • Code review: Doistbot if it is set up (below). Otherwise one subagent per relevant check in .agents/checks/, each with the brief and that check.

Every brief says: the shared working tree is read-only. A reviewer that needs to run or break code makes its own copy with npm run review:worktree -- <dir>, then npm ci in it, and removes it after.

3. Doistbot locally

Use it when doistbot --version prints 1.0.12 or newer and doistbot doctor succeeds. Otherwise use the per-check subagents and tell the owner Doistbot was skipped.

  • Off the default branch: doistbot review --json. In a stack: doistbot review --base <branch below> --json. Both cover commits, staged and unstaged edits, and untracked files. Nothing needs staging.
  • Not doistbot review staged: it skips the branch's commits and still reports verified.
  • Read status, verified and providerFailures first. An unverified review, or one with a failed provider, is partial: say so, and cover that gap with a subagent.
  • It runs before the Doistbot review on the pull request, not instead of it.

4. Confirm each finding

Reviewers rate findings on the verify ladder. Take each to the rung its claim needs: the cited line for what the diff shows, a failing test or command for a behaviour claim. Then:

  • fix it,
  • dismiss it with evidence at that rung (the line, the test output), never an argument, or
  • leave it open for the owner, saying what would settle it.

Look again when new evidence appears. Done when every finding has one of the three.

5. Fix, verify, re-review

Fix, then npm run verify. A large fix gets its own task review. Report the findings with what happened to each, in the verify report format.

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.