| name | add-retro |
| description | [ADD v0.11.0] Run a retrospective โ context-aware, data-driven review with pre-populated tables |
| argument-hint | [--agent-summary] [--since YYYY-MM-DD] [--scope feature|sprint|session] [--dry-run] |
Codex interaction mode notice (ADD)
This skill depends on structured question/answer turns. Behavior depends on
Codex's current mode:
- Plan mode: call the
ask_user_question tool for each prompt below.
One question per call. Wait for the user's answer before moving on.
- Default mode (no
ask_user_question available): emit the questions
inline as a numbered list, then halt and wait for the user's next
prompt. Do not improvise, infer, or fabricate answers โ this skill
fails closed if required input is missing. Resume only after the user
replies.
The skill body below defines what to ask; the shim only governs how to ask.
ADD Retro Command v0.11.0
Context-aware retrospective that auto-gathers data, classifies human directives and agent observations into scoped tables, and presents pre-populated findings for the human to refine โ not recall from scratch.
Two modes:
- Interactive retro (default) โ Data-driven review with pre-populated tables
- Agent summary (
--agent-summary) โ Quick non-interactive observations review
Pre-Flight
- Read
.add/config.json for project context (name, maturity, stack)
- Read all 3 knowledge tiers:
a. Tier 1: Read
~/.codex/add/knowledge/global.md
b. Tier 2: Read ~/.claude/add/library.json (fall back to library.md)
c. Tier 3: Read .add/learnings.json (fall back to learnings.md)
- Read
~/.claude/add/profile.md if it exists
- Determine the retro window:
- If
--since provided, use that date
- If previous retro exists in
.add/retros/, use that date as start
- Otherwise, use project creation date from config
- Check for session handoff โ per the Session-Handoff Preflight in
~/.codex/add/references/skill-epilogue.md
Mode 1: Interactive Retro (default)
Phase 1: Detect Session Context
Determine how the human spent the retro window:
- Read
.add/away-logs/ โ count away sessions, total autonomous hours
- Read git log โ count commits, branches, PRs merged
- Read
.add/handoff.md โ check for interactive session indicators
- Classify context:
- Autonomous: >70% of retro window was away-mode sessions
- Collaborative: <30% away-mode, active interactive exchanges
- Mixed: between 30-70% away-mode
The context classification affects the flow:
- Autonomous: Human has less context โ skip "what went well", reduce questions
- Collaborative/Mixed: Full question set
Phase 2: Auto-Gather Metrics
Collect data for the retro window from all sources:
- Git log: commit count, branches merged, PRs
- Specs: count completed (status: Complete) in
specs/
- Learnings: count new entries in
.add/learnings.json since last retro (by date field)
- Workstation learnings: count new entries in
~/.claude/add/library.json since last retro
- Observations: read
.add/observations.md entries since last retro
- Away logs: count sessions, total duration from
.add/away-logs/
- Handoff: current state from
.add/handoff.md
Present the summary:
RETROSPECTIVE โ {PROJECT_NAME}
Period: {start_date} โ {today}
Context: {Collaborative|Autonomous|Mixed} ({detail})
During this period:
Specs completed: {N}
Commits: {N}
Agent learnings recorded: {N} ({N} project, {N} workstation)
Human directives captured: {N}
Away-mode sessions: {N}
Phase 3: Human Directives (Table 1)
Extract directives the human gave during the retro window from:
- Handoff files โ decisions, explicit instructions
- Learnings entries with
classified_by: "human" โ human-reclassified knowledge
.add/observations.md โ entries recording human feedback or directives
- Conversation context โ explicit instructions from the current or recent sessions
For each directive, classify scope:
| Scope | Signal |
|---|
| project | References specific files, config, routes, schemas unique to this project |
| workstation | References tools, libraries, workflows that apply across projects |
| organization | References team, org, or company patterns (stub โ accept but note "future tier") |
| community | References universal methodology insights (stub โ accept but note "future tier") |
If no directives found: Skip Table 1 entirely, move to Phase 4. Do not show an empty table.
If directives found: Present:
In our recent sessions, you provided some key insights:
โโโ TABLE 1: YOUR DIRECTIVES โโโ
| # | Directive | Scope | Source |
|---|-----------|-------|--------|
| 1 | {directive text} | {scope} | {source} |
| 2 | {directive text} | {scope} | {source} |
Are these captured correctly in learnings? Any to add, remove, or reclassify?
Wait for human confirmation. Apply any changes to learnings JSON files.
Phase 4: Agent Observations (Tables 2 & 3)
Read agent-generated entries since last retro:
- Table 2 (Project): Entries from
.add/learnings.json where classified_by: "agent" and date within retro window
- Table 3 (Workstation): Entries from
~/.claude/add/library.json where classified_by: "agent" and date within retro window
Skip any table that has zero entries. Do not show empty tables.
ADD Methodology Adherence Self-Assessment:
Include in the agent observations a self-assessment of how well ADD methodology was followed during the retro window. Check each rule:
| Rule | How to Assess |
|---|
| Spec-before-code | Were any features implemented without a spec? Check git log for implementation commits vs spec dates |
| TDD cycles | Were tests written before implementation? (N/A for markdown-only plugins) |
| Auto-handoffs | Were handoffs written after commits and major work? Check .add/handoff.md timestamps vs git log |
| Learning checkpoints | Were learnings recorded at trigger points (post-verify, post-tdd, post-deploy, post-away)? Count expected vs actual |
| Quality gates | Were /add-verify runs done? Did they pass first time? |
| Source control | Were conventional commits used? Check last N commits for pattern compliance |
Format methodology adherence as a table (not inline checkmarks โ tables are easier to scan):
โโโ TABLE 2: AGENT OBSERVATIONS (PROJECT) โโโ
| # | Observation | Severity |
|---|-------------|----------|
| 1 | {observation} | {severity} |
ADD Methodology Adherence:
| Rule | Status | Detail |
|------|--------|--------|
| Spec-before-code | โ Pass | {assessment} |
| Auto-handoffs | โ Pass | {assessment} |
| Learning checkpoints | โ Fail | {assessment with specifics} |
Do NOT show Table 3 if it has zero entries. Skip it silently โ no heading, no empty table, no mention.
Then ask:
Help me polish these. Do you disagree or wish to modify any of these learnings?
Wait for human input. If the human identifies data gaps (missing checkpoints, incorrect entries), fix them in the background โ queue the writes and continue the retro flow immediately. Do not block the human while writing JSON entries or regenerating markdown views.
Phase 5: Targeted Questions
Ask one at a time. Adapt based on session context:
Q1 (skip if Autonomous context): "What went well?"
โ Only ask if the human had enough interactive context to answer meaningfully.
Q2: "What needed improvement that was not included already in our learnings?"
โ Scoped to gaps โ the tables already surfaced known issues.
Q3 (rate-limited โ 1x per calendar day): "On a scale of 0.0 to 9.0, how well are we working together?"
โ To check rate limit: read .add/retros/ for any file matching retro-{today's date}*.md that already has a Human Collaboration score populated. If found, skip this question.
Q4 (rate-limited โ 1x per calendar day): "Any improvements for Agent Driven Development you would suggest?"
โ Same rate-limit check as Q3. These two are always asked/skipped together.
Phase 6: Agent Self-Assessment Scores
The agent provides two self-assessed scores with evidence. These are NOT asked of the human โ the agent generates them from data.
ADD Methodology Effectiveness (0.0-9.0):
- Based on methodology adherence from Phase 4
- Consider: spec coverage, TDD compliance, handoff discipline, checkpoint completeness, quality gate usage
- Must cite specific evidence (not vague claims)
Swarm Effectiveness (0.0-9.0):
- How well did agents collectively build together?
- Consider: parallel subagent usage, context handoff quality between sessions, duplicate work avoided, session continuity
- Must cite specific evidence
Format:
โโโ AGENT SELF-ASSESSMENT โโโ
ADD Methodology Effectiveness: {X.X} / 9.0
Evidence: {specific evidence from the retro window}
Swarm Effectiveness: {X.X} / 9.0
Evidence: {specific evidence from the retro window}
Scores must be justified by evidence. If the agent detects its own score seems inflated relative to evidence, adjust downward. Honesty over optimism.
Phase 7: Record and Update
-
Write retro archive:
Use ~/.codex/add/templates/retro.md.template as structure.
Write to .add/retros/retro-{date}.md (create directory if needed).
Fill all sections with data from the retro.
-
Store scores:
Read .add/retro-scores.json (create from ~/.codex/add/templates/retro-scores.json.template if doesn't exist).
Append entry:
{
"date": "{YYYY-MM-DD}",
"collab_score": {X.X},
"add_effectiveness": {X.X},
"swarm_effectiveness": {X.X},
"retro_file": ".add/retros/retro-{date}.md",
"context": "{collaborative|autonomous|mixed}"
}
If collab score was rate-limited (skipped), use null for collab_score.
-
Store ADD feedback:
If the human provided ADD improvement suggestions, append to .add/add-feedback.md:
## {YYYY-MM-DD}
- **Suggestion:** {text}
- **Retro:** .add/retros/retro-{date}.md
- **Streamed:** false
Create the file with # ADD Methodology Feedback header if it doesn't exist.
-
Update learnings:
Write new learning entries from the retro as structured JSON to the appropriate file (.add/learnings.json or ~/.claude/add/library.json). Follow the checkpoint process in ~/.codex/add/references/learning-reference.md:
- Classify scope for each new learning
- Write to the appropriate JSON file
- Regenerate the corresponding markdown view
-
Scope review and reclassification:
Review entries classified by agents since the last retro:
SCOPE REVIEW โ Agent-classified entries since last retro:
L-{NNN}: "{title}" โ classified as {scope} by agent
WL-{NNN}: "{title}" โ classified as {scope} by agent
Any reclassifications needed?
For each reclassification the human approves:
- Move the entry between JSON files
- Update
scope field and classified_by to "human"
- Assign new ID appropriate to target file
- Regenerate both markdown views
Auto-promotion proposals (batch):
In addition to asking per-entry, scan .add/learnings.json entries since the last retro and auto-propose workstation promotion candidates โ entries that look universal enough to belong in ~/.claude/add/library.json for cross-project use.
Promotion signals (ANY of):
severity >= "high" AND category = "anti-pattern"
- Body contains "always", "never", "every time", "on every", "default" โ language indicating a general rule rather than a project-specific fact
stack entries describe tooling that the user's other projects in ~/.claude/add/projects/ also use (check registry stacks)
- Body references generic cloud/infra primitives (GCE, AWS, GKE, EKS, ArgoCD, cert-manager, etc.) without project-specific identifiers
Present the candidates as one batch table:
PROMOTION CANDIDATES โ cross-project workstation learnings
| # | Entry | Signal | Promote? |
|---|-------|--------|----------|
| 1 | L-{NNN}: "{title}" | {signal that matched} | [y/n] |
| 2 | L-{NNN}: "{title}" | {signal that matched} | [y/n] |
...
Reply with the numbers to promote (e.g., "1,3,5" or "all" or "none").
For each approved promotion:
- Copy entry to
~/.claude/add/library.json with a new WL-{NNN} ID
- Set
source to the project name
- Set
classified_by to "human"
- Leave original entry in
.add/learnings.json (projects may still reference it)
- Regenerate both markdown views at the end
Why this exists: the agentVoice retro (2026-04-12) surfaced 8 clearly-universal lessons (ArgoCD, CI-disabled, Cloud Build, WebSocket timeout, E2E skip ban) that sat in project markdown for 40 days without promotion. A batch proposal at retro time closes that gap.
-
Update cross-project persistence:
a. Profile updates (~/.claude/add/profile.md): If retro reveals preferences that carry to other projects, ask: "Add to your ADD profile?"
b. Project index (~/.claude/add/projects/{name}.json): Update last_retro date and learnings_count.
-
Promote to plugin-global (ADD dev project only):
If running inside the ADD plugin project (detected by knowledge/global.md existing as a local file), present Tier 1 promotion candidates.
-
Apply config/template changes: If agreed changes affect the process, make edits now.
-
Deduplicate knowledge stores:
Check all stores for duplicates or misplaced entries. Report: "{N} duplicates consolidated, {N} entries relocated."
-
Prune stale entries:
- Observations >30 days old without
[synthesized M-{NNN}] โ archive
- Learnings >90 days old without references โ flag for human review (never auto-delete)
-
Regenerate markdown views after all JSON modifications.
Phase 8: Observation Synthesis
Read .add/observations.md and synthesize:
- Group observations by operation type
- Identify patterns (3+ similar = a pattern)
- For each pattern, propose a process mutation:
### Proposed Mutation: {title}
**Skill:** /add-{skill-name}
**Change:** {concrete change to the skill}
**Evidence:** {observation timestamps and summaries}
**Expected outcome:** {what should improve}
- Present proposals to human for approval. Only apply approved mutations.
Phase 9: Apply Approved Mutations
For each human-approved mutation:
- Read the target skill's SKILL.md
- Apply the change
- Log in
.add/mutations.md
- Mark source observations as synthesized
Phase 10: Process Health Assessment
Review .add/mutations.md for previously applied mutations:
- Did the problem recur? โ Strengthen mutation
- Did the problem stop? โ Note positive outcome
- New side effects? โ Adjust mutation
- Report process health summary
Phase 11: Maturity Promotion Assessment
If the retro surfaces a promotion request, run an evidence-based check. See maturity promotion criteria:
POC โ Alpha: At least 3 evidence items (specs, tests, CI, commits, etc.) + core concept validated
Alpha โ Beta: Feature specs exist, coverage >50%, CI/CD configured, PR workflow, 2+ environments, conventional commits, TDD evidence
Beta โ GA: Coverage >80%, protected branches, release tags, 3+ environments, all gates blocking, 30+ days stability, SLAs defined
Do NOT promote without evidence. Promotion requires proof, not aspiration.
Mode 2: Agent Summary (--agent-summary)
Quick, non-interactive mode. Present accumulated observations without a full retro.
- Read
.add/learnings.json and ~/.claude/add/library.json
- Filter entries since last retro
- Present structured summary:
AGENT OBSERVATIONS โ since {last_retro_date}
TECHNICAL DISCOVERIES ({N} entries):
- {discovery with date}
ARCHITECTURE DECISIONS ({N} entries):
- {decision with rationale}
ADD METHODOLOGY ADHERENCE:
{self-assessment checklist}
WHAT WORKED:
- {positive pattern}
WHAT DIDN'T:
- {negative pattern}
SUGGESTED CHANGES:
1. {suggestion with rationale}
These are observations only โ no changes applied.
Run /add-retro for a full interactive retrospective.
Retro Frequency Guidance
Display during the first retro:
RECOMMENDED RETRO CADENCE:
- Agent auto-checkpoints: Continuous (after each verify, cycle, away session)
- Agent summary (/add-retro --agent-summary): Weekly or before planning
- Full interactive retro (/add-retro): After each feature/sprint completion,
or every 2 weeks โ whichever comes first
Score Semantics
All scores use 0.0-9.0 scale with 1 decimal precision:
| Range | Meaning |
|---|
| 0.0-2.0 | Poor โ process not working, significant friction |
| 2.1-4.0 | Below average โ notable gaps, frequent workarounds |
| 4.1-6.0 | Adequate โ functional but room for improvement |
| 6.1-8.0 | Good โ effective with minor issues |
| 8.1-9.0 | Excellent โ highly effective, minimal friction |
End-of-skill epilogue: follow ~/.codex/add/references/skill-epilogue.md (observation + learning checkpoint + progress tracking). The retro's Phase 7 already records its learnings โ do not duplicate them; the epilogue's observation line still applies.