retrospective

Retrospective based on a 6-stage process (input → interpretation → planning → action → inspection → output). Surfaces problems bottom-up from outputs and applies fixes top-down from upstream. Holes plugged upstream are not plugged again downstream. Use this skill after finishing a task, before creating a PR, or whenever the user says 'retrospective', 'wrap up learnings', 'identify improvements', or similar.

15 stars

Best use case

retrospective is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Retrospective based on a 6-stage process (input → interpretation → planning → action → inspection → output). Surfaces problems bottom-up from outputs and applies fixes top-down from upstream. Holes plugged upstream are not plugged again downstream. Use this skill after finishing a task, before creating a PR, or whenever the user says 'retrospective', 'wrap up learnings', 'identify improvements', or similar.

Teams using retrospective should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/retrospective/SKILL.md --create-dirs "https://raw.githubusercontent.com/sushichan044/dotfiles/main/.agents/skills/retrospective/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/retrospective/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How retrospective Compares

Feature / AgentretrospectiveStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Retrospective based on a 6-stage process (input → interpretation → planning → action → inspection → output). Surfaces problems bottom-up from outputs and applies fixes top-down from upstream. Holes plugged upstream are not plugged again downstream. Use this skill after finishing a task, before creating a PR, or whenever the user says 'retrospective', 'wrap up learnings', 'identify improvements', or similar.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Retrospective

Run this skill before a commit or PR is created.

An agent's task execution proceeds through 6 stages:

**Input → Interpretation → Planning → Action → Inspection → Output**

A retrospective lifts **Problems bottom-up** from downstream to upstream, and applies **Tries top-down** from upstream to downstream. **A hole plugged upstream is not plugged again downstream.** Layered defenses are added only when upstream countermeasures are low-confidence.

## The 6 stages

- **Input**: Receiving instructions, context, skills, CLAUDE.md, tool descriptions, and actively collecting information via Read/Grep/Glob/WebFetch, etc.
- **Interpretation**: Reading the meaning, intent, and premises of the input
- **Planning**: Task decomposition, ordering, tool selection, scope definition
- **Action**: Tool invocation, file edits, command execution
- **Inspection**: Verifying results and judging pass/fail
- **Output**: Reporting to the user and deciding what to persist

## Phase 1: Fact recording

Record the facts that occurred at each of the 6 stages, in chronological order. Do not mix in interpretation or evaluation.

- **Input**: Instructions received / information collected and its primacy
- **Interpretation**: Intent read / premises assumed
- **Planning**: Steps broken down / tools selected / scope fixed
- **Action**: Operations executed / side effects that occurred / places redone
- **Inspection**: Verifications performed / acceptance criteria adopted
- **Output**: Content reported / whether it was persisted / user reaction (dissatisfaction, satisfaction)

## Phase 2: Bottom-up Problem surfacing (Output → Input)

From downstream to upstream, surface Problems at each stage. At every stage, ask:

1. What Problem occurred at this stage?
2. Could this stage have detected or corrected the downstream Problem?
3. Is the true cause here, or further upstream?

Order (reverse):

1. **Output**: Excess or missing in the report / missing persistence / specifics of user dissatisfaction
2. **Inspection**: Verification skipped / wrong acceptance criteria / inappropriate verification method
3. **Action**: Tool misuse / wrong arguments / missed side effects / environment misrecognition
4. **Planning**: Wrong decomposition granularity / wrong order / scope drift
5. **Interpretation**: Misreading of intent / swapping of premises / overlooked contradictions
6. **Input**: Insufficient information / contaminated information / insufficient collection / primary source not consulted

### Are existing rules themselves inducing the Problem?

If a description in CLAUDE.md or a skill invites a literal interpretation that causes runaway behavior, the rule itself has a defect in wording or granularity. Do not stop at blaming only your own interpretation.

### Input errors are an independent factor alongside insufficiency

"Insufficient information" and "contaminated information" are different. Countermeasures differ too. Identify the source of contamination (outdated skill, stale CLAUDE.md, tool description divergent from implementation, secondary source treated as primary, hallucinated memory, distorted previous-session summary).

## Phase 3: Extracting Keeps

At each stage, extract the success patterns worth keeping.

- Which stage had what working?
- Can it be abstracted into a reusable form?

Quality bar:

- Not specific to this case; applicable to similar situations
- Not "verified X" but at the level of "did not place a premise without verification"

## Phase 4: Top-down Try rollout (Input → Output)

For the true causes identified in Phase 2, establish Tries from upstream downward. **A hole plugged upstream is not plugged again downstream.**

Before establishing a Try at each stage, ask:

- If the true cause was already cut off upstream, no countermeasure is needed at this stage
- Layered defense is applied only when the upstream countermeasure is low-confidence

Order (forward):

1. **Input**: Define information source priority / discipline active collection / fix stale skills, CLAUDE.md, tool descriptions
2. **Interpretation**: Add confirmation conditions / surface premises / discipline contradiction detection
3. **Planning**: Templatize plans / discipline decomposition granularity / define scope
4. **Action**: Tool selection criteria / turn operation patterns into skills / enumerate side effects in advance
5. **Inspection**: Document inspection items / define acceptance criteria
6. **Output**: Report format / discipline persistence decisions

### Continuously recurring work patterns

Among the Problems from Phase 2, ones that satisfy all of the following are skill candidates:

- Consist of multiple steps
- Will recur in the future
- Not already covered by an existing skill, or can be handled by extending one

Bad example: "Procedure for the specific files edited this time" (too local)
Good example: "Post-merge workflow after a PR is merged (delete branch → retrospective → update handover)"

### Quality bar for principles

Bad example: "Verify Gemini API `oneOf` support in advance"
Good example: "Do not use secondary information as a basis for causal reasoning. Back it up with an actual check or a primary source."

## Phase 5: Improvement implementation flow

Process each Try from Phase 4 via the following flow. **Always judge from Step 1 in order.** At each step ask "can this means address it?" — if yes, apply it and end the flow. If no, proceed to the next step. Do not skip ahead.

### Step 1: Can it be eliminated?

Ask whether the rule or work itself can be prevented from arising: architectural change, automation that removes the step, design that structurally prevents the problem.

- Yes → apply and end the flow
- No → proceed to Step 2. Record why you judged it impossible

### Step 2: Can a deterministic guardrail enforce it?

Ask whether a machine can enforce or detect it: lint, typecheck, CI, pre-commit hooks, `settings.json` hooks, etc.

- Yes → apply and end the flow
- No → proceed to Step 3. Record why you judged it impossible

### Step 3: Can it become a skill?

If it is a continuously recurring work pattern, separate it into a `SKILL.md` as a procedure. If an existing skill covers it, extend that one.

Placement layer:

- Workspace-specific work pattern → workspace `<workspace>/.claude/skills/<name>/SKILL.md`

Judgment:

- Target is a work pattern → must be handled here (no exceptions). End the flow
- Target is a principle that cannot be expressed as a skill → proceed to Step 4

### Step 4: Can it be expressed in an agent prompt?

Ask whether it can be defined as the behavior of a specific agent.

Placement layer:

- Workspace-specific agent behavior → workspace `<workspace>/.claude/agents/<name>.md`

Judgment:

- Yes → apply and end the flow
- No → proceed to Step 5. Record why you judged it impossible

### Step 5: Append to workspace CLAUDE.md (last resort)

Only when Steps 1–4 are all judged impossible. The target is concrete work, problem-solving, workflows, or domain knowledge specific to that workspace.

**Why CLAUDE.md is the worst option: it is not modular and has no separation of concerns.** Steps 1–4 each carry a module boundary (design unit, guardrail unit, skill unit, agent unit). CLAUDE.md piles all responsibilities into a single file, causing bloat, context pollution, and responsibility mixing.

### Handling the global layer

**As a retrospective outcome, do not modify the global layer (everything under `~/.claude/`: CLAUDE.md, skills, agents, settings.json, etc.).** Additions, deletions, and modifications are all forbidden.

Extraction to the global layer is **overreach**. Even if a Phase 4 target is judged to have universal applicability, the retrospective does not write to the global layer. Present it to the user as a "candidate for promotion to global" and execute it as an independent task only after receiving explicit instruction. It is outside the retrospective's scope.

All retrospective outcomes are written to workspace-local locations only. Placements are workspace CLAUDE.md, skills, or agents.

### Discipline (common to CLAUDE.md edits)

- If a Problem recurs that an existing rule should cover, revise that rule's wording, placement, or priority. Do not leave a non-functional rule in place while stacking similar rules on top
- Do not feel you have handled a problem just by adding a rule. Recurrence is evidence of a defect in an existing rule; face the cause (wording, placement, priority)
- One principle per line. Examples minimized
- Merge similar items. Do not let it bloat
- Do not mix layers. Do not write concrete work into the global layer

### Step 6: Retroactively apply new rules to session artifacts

Once Steps 1–5 produce a new rule / skill / guardrail, retroactively check the artifacts already produced in this session (issues, MR descriptions, comments, docs, code, commit messages) against the new rule.

- Establishment and application are separate steps. Creation alone does not improve recent outputs
- When you detect a violation of the new rule, update the original artifact (GitLab / GitHub / file)
- When you confirm no violations, include "confirmed" in the retrospective submission

If artifacts that violate a rule you just established remain as is, the retrospective's outcome is empty.

## Submission

Present the results of Phases 1–5 to the user and apply the improvements. After application, if there are uncommitted changes, autonomously commit and push.

Related Skills

typescript-performance

15
from sushichan044/dotfiles

Comprehensive TypeScript performance analysis and optimization. Use when users report slow TypeScript compilation, slow editor experience, or want to investigate TypeScript performance issues. This skill provides diagnostic tools, trace analysis workflows, and optimization strategies. Key triggers include mentions of slow builds, type-checking delays, tsc performance, editor lag with TypeScript, or requests to analyze/improve TypeScript performance. Always prioritize data-driven analysis using --extendedDiagnostics, --generateTrace, and TS Server logs before making optimization recommendations.

watch-ci

15
from sushichan044/dotfiles

CI を監視し、失敗したら自律的に修正してパスするまでループするスキル。push 後・PR 作成後・rebase 後に CI が通るか確認したいとき、CI が落ちていたら直してほしいとき、CI の結果を待ちたいときに使う。「CI 監視して」「CI が通るまで待って」「CI 直して」「push したので CI を見ておいて」など、CI の状態確認・自動修正が必要な場面では必ずこのスキルを呼び出すこと。

vue-style-guide

15
from sushichan044/dotfiles

Vue を書くときは基本的に参考にしてください。 個人的に気に入っている ubgeeei 氏の Vue.js のスタイルガイドです。

vitess

15
from sushichan044/dotfiles

Vitess best practices, query optimization, and connection troubleshooting for PlanetScale Vitess databases. Load when working with Vitess databases, sharding, VSchema configuration, keyspace management, or MySQL scaling issues.

triage-pr-reviews

15
from sushichan044/dotfiles

Triages unresolved PR review comments using gh-pr-reviews. Analyzes code context and classifies each comment as Agree / Partially Agree / Disagree. Walks through each comment one-by-one, asking the user what action to take. Use when the user wants to triage, review, or analyze unresolved PR comments.

terraform-test

15
from sushichan044/dotfiles

Comprehensive guide for writing and running Terraform tests. Use when creating test files (.tftest.hcl), writing test scenarios with run blocks, validating infrastructure behavior with assertions, mocking providers and data sources, testing module outputs and resource configurations, or troubleshooting Terraform test syntax and execution.

terraform-style-guide

15
from sushichan044/dotfiles

Generate Terraform HCL code following HashiCorp's official style conventions and best practices. Use when writing, reviewing, or generating Terraform configurations.

terraform-stacks

15
from sushichan044/dotfiles

Comprehensive guide for working with HashiCorp Terraform Stacks. Use when creating, modifying, or validating Terraform Stack configurations (.tfcomponent.hcl, .tfdeploy.hcl files), working with stack components and deployments from local modules, public registry, or private registry sources, managing multi-region or multi-environment infrastructure, or troubleshooting Terraform Stacks syntax and structure.

teach-impeccable

15
from sushichan044/dotfiles

One-time setup that gathers design context for your project and saves it to your AI config file. Run once to establish persistent design guidelines.

stacked-pr

15
from sushichan044/dotfiles

依存関係のある複数の PR を管理・同期するためのスキル。stacked PR のカスケード rebase、PR 間の依存検出、base branch 管理、CI の上流優先修正を行う。PR が別の PR に依存している状況全般で使う — cascade rebase、スタック sync、依存先 PR 更新後のメンテ、PR チェーンの整合性確認などをするときなど。

smart-compact

15
from sushichan044/dotfiles

セッションのコンテキストを分析し、重要な情報を保持するためのプロンプトを生成して /compact コマンドの実行を支援するスキル。コンテキストウィンドウが逼迫してきた時や、セッションを整理したい時に使用。

skill-creator

15
from sushichan044/dotfiles

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.