From fieldwork
Triggers after a feature has shipped. Compares what was specced against what was built, captures learnings, and feeds back into future discovery. Also triggers if the user says 'run a retro', 'close out this feature', or 'post-launch review'.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fieldwork:close-featureThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Run a structured retrospective after a feature ships. The central question is not "did we build what we specced?" but "did we make the right decision, and did it solve the customer problem?" Capture what we learned about the problem, the users, and the opportunity. Feed learnings back into the project context for future discovery.
Run a structured retrospective after a feature ships. The central question is not "did we build what we specced?" but "did we make the right decision, and did it solve the customer problem?" Capture what we learned about the problem, the users, and the opportunity. Feed learnings back into the project context for future discovery.
Announce at start: "I'm using the Fieldwork close-feature skill to close out this feature."
outputs/specs/{feature-name}/spec.md.outputs/gtm/{feature-name}/gtm-plan.md if it exists.outputs/gtm/{feature-name}/launch-brief.md if it exists.outputs/opportunities/{feature-name}/opportunity.md.git log --oneline --since="{spec-approved-date}" --pretty=format:"%h %s" - check commits and PR descriptions since spec was approved. If spec-approved-date is unknown, ask the user.outputs/retros/{feature-name}/ if it does not exist.Load outputs/opportunities/{feature-name}/opportunity.md. The success metrics defined there are the primary measure of success - not spec completeness.
Before asking retrospective questions, ask: "Do you have enough data to evaluate the prediction yet - usage data, user feedback, or any signal on whether this solved the problem?"
If yes: proceed to step 3.
If no: run the deferred retro path:
status: deferred in the retro frontmatterclose-feature in [agreed timeframe]."shipped yet - leave them as approved.outputs/opportunities/{feature-name}/opportunity.md. Read it aloud: "At discovery, you predicted: [prediction]. Let's start there."Identify 3-5 concrete learnings. Each learning must be actionable - not "the spec was unclear" but "acceptance criteria for async operations need to specify timeout behaviour explicitly."
Add learnings to context/project-context.md under a "Learnings" section. Add any new constraints discovered to context/constraints.md. Do not rewrite the whole file - append only.
Load outputs/plans/{feature-name}/plan.md. If a "Definition of Done" section exists, present it to the PM: "Before we close — here's the Definition of Done for this feature. Is everything checked off?" Work through any unchecked items. If the plan file does not exist, skip this step.
Ask the PM: "Did this feature reveal anything that contradicts your current personas, channels, or positioning in product-context.md?" If yes: load context/product-context.md, show the PM the specific section that's affected, propose a targeted replacement for that section only, and wait for explicit confirmation before writing. Do not append — update in place. Do not rewrite sections that weren't mentioned.
Update frontmatter status to shipped in:
outputs/specs/{feature-name}/spec.mdoutputs/gtm/{feature-name}/gtm-plan.md (if exists)outputs/gtm/{feature-name}/launch-brief.md (if exists)Save to outputs/retros/{feature-name}/retro.md.
---
feature: {feature-name}
status: shipped
retro-date: YYYY-MM-DD
---
# Feature Retro: {Feature Name}
## Prediction vs. reality
_From opportunity.md → Prediction_
**Predicted:** [The prediction written at discovery approval]
**Observed:** [What actually happened - evidence: usage data, user feedback, support signal, qualitative observation]
**Verdict:** [Did the prediction come true? Partially? Not at all?]
## Did we solve the problem?
[What the opportunity said success looked like - and what actually happened. Evidence: user feedback, usage data, support signal, qualitative observation.]
## Was the opportunity framing right?
[Did we frame the problem correctly? What would a better framing have looked like?]
## Assumptions that were wrong
[Which assumptions from assumptions.md turned out to be incorrect - and what we now know instead]
## GTM signal
**What happened vs. the plan:**
- [Channel / tactic - planned vs. actual]
**Early user signal:**
- [Feedback, adoption signal, or qualitative observation]
## Discovery learnings
_What would have made the discovery phase sharper?_
- [Learning - specific enough to change behaviour next time]
## What to carry forward
[Follow-up opportunities, unresolved questions, or new problems surfaced - feed into the next discovery cycle]
"Retro saved to outputs/retros/{feature-name}/retro.md.
Learnings added to context/project-context.md.
All output documents updated to status: shipped.
Feature closed. The learnings are now part of the project context for future features."
npx claudepluginhub jklazinga/fieldwork --plugin fieldworkActivate for: retrospective, retro, post-mortem, post launch review, feature review, what went well, what didn't go well, lessons learned, sprint retrospective, product review, launch review, did it work, measure impact, feature retrospective, post-ship review, outcome review, product retro, evaluate feature success. NOT for: metrics dashboards (use official /metrics-review), stakeholder updates (use official /stakeholder-update), sprint planning (use official /sprint-planning).
Runs a post-release retrospective: collects session logs, test results, and scope data; analyzes delivery, quality, and process; extracts lessons; generates a retro document and optional increment request for the next iteration.
Reviews completed work to extract learnings, validate shipping, and promote insights. Activates after tasks, PR arcs, or sessions finish, or after 5+ PRs.