retro — Claude Code skill: what it does, how to install
Reviews a coding session and suggests changes to the agent environment for later runs. Use it after mistakes, slow repository navigation, or costly tool calls.
/plugin marketplace add mattpocock/skills
/plugin install mattpocock-skills@mattpocockWhat retro does
retro reads the sources for the requested coding session, or the current session when none is named. It then looks for environment changes behind agent friction: hard-to-find files, missing checks, weak review rules, oversized AGENTS.md files, expensive tool calls, and gaps in information access.
The skill calls writing-for-agents, inspects session logs, and checks the repository’s own lint and check scripts, CI workflow, and pre-commit hooks. It favors a linter, hook, or CI job for mechanical violations, while keeping CODING_STANDARDS.md for judgement that cannot be turned into a check. Findings are ordered by severity.
Install it if your team reviews agent coding runs regularly. For a one-off edit with no session history, there is little for it to inspect.
What it helps with
- find hidden dependencies between files
- add a check for an agent mistake
- move a mechanical rule into linting or CI
- trim oversized AGENTS.md instructions
- spot costly tool calls
Example prompts for the agent
- Conduct a retrospective on the current coding session.
- Review this session and suggest checks that would have caught the agent’s mistakes.
- Conduct a retrospective and check whether AGENTS.md should be shortened.
How to install retro
1Plugin marketplace
/plugin marketplace add mattpocock/skills/plugin install mattpocock-skills@mattpocockThis installs the whole mattpocock-skills plugin with all its skills
2Skills CLI (Vercel)
npx skills add mattpocock/skills --skill retro -a claude-code3Manually: put the files in place
~/.claude/skills/retro/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/retro/
Manually: put the files in place
.agents/skills/retro/SKILL.mdFor all projects use ~/.agents/skills/
Manually: put the files in place
.cursor/skills/retro/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install mattpocock/skills retro2Manually: put the files in place
.github/skills/retro/SKILL.mdPlatform CLI
gemini skills install https://github.com/mattpocock/skills --path skills/engineering/retroManually: put the files in place
.devin/skills/retro/SKILL.mdThe legacy .windsurf/skills/ path still works
Claude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set32
The whole set →Similar
Questions about retro
How do I install retro in Claude Code?
Add the marketplace with /plugin marketplace add mattpocock/skills, then install the plugin with /plugin install mattpocock-skills@mattpocock.
What does retro do?
It reviews a coding session and suggests changes to the agent environment. It examines navigation, automated checks, review rules, steering files, and information access.
Which session does retro review?
It reads the sources for the session the user names. If no session is named, it uses the current one and can search session logs on the machine.
Source text
SKILL.md · MIT
--- name: retro description: "Conduct a retrospective on a coding session." disable-model-invocation: true --- The user has asked for a **retrospective**. You are suggesting improvements to the coding agent's **environment** to improve future runs. ## Steps 1. Call the Skill tool with `writing-for-agents` for the writing style guide. 2. Read the primary sources for the session the user specifies. This may mean searching through session logs on this machine. If the user doesn't specify a session, default to the current one. 3. Look for candidates for improvement in these categories. - **Navigation**: how easy was it for the agent to find the right files? Are there hidden dependencies between files? Would a **navigation pointer** make it easier? _Use when_ the session took a long time to find a piece of information. - **Automated checks**: are there automated checks that could catch errors the agent made? Linting, typing, tests, filesystem linters? Read the repo's own check command first (its `package.json`/build-tool `lint`/`check` scripts, its CI workflow), so a check that already exists but sits unwired or silently broken is the finding, not a reinvention. A repo with no **guardrail** (no pre-commit hook and no CI job running its lint/typecheck/test command) is itself a finding: an un-linted repo is a standing missed opportunity, not a neutral default. _Use when_ the agent made a mistake an automated check could have caught, or the repo has no guardrail at all. - **Coding standards**: should the **reviewer agent** be given a new rule to enforce? Should an existing rule be removed or clarified? Classify the violation first: a **mechanical** one (a fixed syntactic pattern, a banned API, an import shape, a file-location rule) gets a deterministic check, full stop: a custom rule in the repo's own linter, a new pre-commit hook, or a new CI job, whichever the repo's language and existing guardrail make cheapest. Default to building the check over writing the rule. Reserve `CODING_STANDARDS.md` for genuine **judgement calls** (cross-file consistency, "matches the surrounding style," anything no guardrail could ever substitute for). _Use when_ the reviewer agent failed to catch a mistake. - **Global AGENTS.md**: are there any steering instructions that should be moved to coding standards (or automated checks) instead? _Use when_ the AGENTS.md file is particularly large - in the repo OR the user's global scope. - **Tool economy**: did the agent make expensive tool calls that could be streamlined? Is there any custom tooling (CLI's, MCP's) that is particularly token-inefficient? _Use when_ the agent made an expensive tool call. - **No-ops**: look for instructions in steering files that don't modify the agent's behavior. _Use when_ the steering files are large and unwieldy. - **Information access**: look for opportunities to increase the agent's access to information. Teeing dev server logs, readonly access to third-party services. _Use when_ a crucial piece of information was not available to the agent. 4. Present these candidates to the user, in order of severity. ## Reference ### Implementation vs Review Remember that all work goes through two stages: implementation and review. The implementation agent has the most **context pressure**. They are responsible for exploration, writing code, and debugging failures. The review agent has the least context pressure - it receives a diff, so no exploration needed. It often does not need to write code or debug. This means that the review agent should be responsible for imposing coding standards, not the implementation agent. ### Files You have access to several files in the repo: - `CLAUDE.md`/`AGENTS.md`: these files are pushed to the context window of any agent working in this repo. They should be used incredibly sparingly, usually only for **navigation pointers** to other files. - `CODING_STANDARDS.md`: this file is read during review, not implementation. Add **navigation pointers** to docs folders if the standards file gets more than 1,000 lines long. - Docs: use docs as references files, pointed to by other files. Look for existing docs before writing new ones. - Skills: use skills for docs (since their description goes into the agent's context window), or for user-invoked commands. Follow the advice in the `writing-for-agents` skill.
© Matt Pocock · MIT · mattpocock/skills