postmortem
Skill2 starsChanged 6 months agoMITView on GitHub
Use this skill when the user wants help writing up a resolved production incident, outage, or failure. This is the go-to skill for any request that involves turning "something broke and we fixed it" into a written document — whether the user calls it a postmortem, post-incident review, post-incident analysis, PIR, incident retrospective, blameless review, no-blame writeup, lessons learned, or just describes what broke (deploy, database, auth, payment, storage, backup, replication, service outage) along with details like severity, duration, users affected, or rollback, and asks for help documenting it. Also use when the user''s goal is team learning or capturing details before they''re forgotten from a past incident. Output is a blameless document with timeline, contributing factors, what went well, and action items. Do not use for active/ongoing incidents, sprint or agile retrospectives, code reviews, general project retros, problem records for recurring issues, change requests, or meeting agendas.
44 other projects use a version of this.
Adopted by
Most recently taken up by
- mehboobali98/rmine-skillstheir own version, first seen Nov 6, 2026
- SethGammon/Citadeltheir own version, first seen Nov 4, 2026
- flonat/flonat-researchtheir own version, first seen Nov 3, 2026
- jp-solumhealth/jpstacktheir own version, first seen Nov 1, 2026
- MakiDevelop/claude-skillstheir own version, first seen Nov 1, 2026
- Dimon94/dveritytheir own version, first seen Oct 28, 2026
Used with
Projects with it also use hypothesis-driven-debugging, status-report and 10 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.
Sturla22Skillhypothesis-driven-debugging
Debug by ranking concrete hypotheses and running discriminating checks. Use when a bug is hard to localize, many plausible failure points exist, logs are noisy or misleading, a symptom appears intermittently, or trial-and-error edits haven't worked.
Also in 3 projects that use this
AnthropicSkillstatus-report
Generate a status report with KPIs, risks, and action items. Use when writing a weekly or monthly update for leadership, summarizing project health with green/yellow/red status, surfacing risks and decisions that need stakeholder attention, or turning a pile of project tracker activity into a readable narrative.
Also in 3 projects that use this
seongjaeryuSkillorganize
Organize knowledge into Sets
Also in 3 projects that use this
SaluteYBSkillskill-eval
Evaluate, tune, and regression-check AgentSkills. Use when creating a new skill or improving an existing one and you need structured should-trigger, should-not-trigger, boundary-case, and execution-quality examples. Also use when auditing overlapping skills and sharpening trigger descriptions before release.
Also in 3 projects that use this
neurofooSkillpremortem
Pre-mortem analysis that imagines a plan has failed, then works backward to identify causes and preventions. Use before launches, major decisions, or risky initiatives to surface hidden risks.
Also in 3 projects that use this
AnthropicSkillincident-response
Run an incident response workflow — triage, communicate, and write postmortem. Trigger with "we have an incident", "production is down", an alert that needs severity assessment, a status update mid-incident, or when writing a blameless postmortem after resolution.
Also in 4 projects that use this
Other versions44 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 44
- dotnet/fsharp★ 4.3ksame name
- SethGammon/Citadel★ 927same name
- boshu2/agentops★ 453same name
- flonat/flonat-research★ 150same name
- neurofoo/agent-skills★ 111same name
- Dimon94/dverity★ 107same name
- Dimon94/skills★ 107same name
- EthanReedLabs/sulde★ 99same name
- Hongyu-yu/matsci-ai-skills★ 19same name
- Hassaan146/claude-skills★ 18same name
34 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository8 other files it gives its agents.
- ai-changeSkill
- change-requestSkill
- commsSkill
- done-opsSkill
- incidentSkill
- itilSkill
- problemSkill
- statuspageSkill
The file
We split this skill into the rules it gives an agent
9 rules. 0 are common, 7 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 40 edited versions we read keep these.
7
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 45
Default output directory: ./postmortems/.
- Distinctive: line 47
All postmortem documents are written in English.
- Distinctive: line 67
Before starting the postmortem, confirm the incident is fully resolved.
- Very specific: line 69
If an incident report exists (from /incident skill), read it for the timeline, classification, and resolution details.
- Distinctive: line 90
Use role labels (e.g., "On-call engineer", "Deployment automation") rather than individual names where possible.
- Distinctive: line 123
MUST follow this exact structure:
- Distinctive: line 186
Check that each action item is actionable and owned
- Distinctive: line 188
After publishing, share with the team — transparency is a core principle of blameless culture
- Distinctive: line 194
Do not start the postmortem while the incident is still active — active incidents need resolution focus, not learning focus
“Common” is measured: kept by at least 6 in 10 of the 40 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.
Files
Blameless Postmortem Workflow
Structured post-incident learning following Google SRE blameless postmortem culture. Produces a postmortem document that focuses on systemic contributing factors and actionable improvements — not individual blame.
Related Skills (auto-loaded)
- itil — reads
references/sre-integration.mdfor blameless culture principles and error budget context - done-ops — confirmation that the incident is fully resolved before starting the postmortem
Blameless Culture — Why It Matters
Traditional post-incident reviews can become blame-focused, which creates incentives to hide mistakes. Blameless postmortems assume:
Everyone involved was acting in good faith with the information and tools available to them at the time.
The goal is to find what made the failure possible at the system level — and fix those things. People don't fail; systems create conditions where failures become likely.
For full blameless culture guidance, read references/blameless-templates.md.
Output
File: {OUTPUT_DIR}/postmortem-{YYYY-MM-DD}-{slug}.md
- slug: kebab-case summary of the incident, e.g.
payment-api-timeout,auth-service-outage - Link to the incident report if one exists from the
/incidentskill
Default output directory: ./postmortems/. If a docs/postmortems/ directory exists, use that instead.
All postmortem documents are written in English. Preview for the user in their preferred language before writing.
When to Use Each Review Type
| Situation | Use |
| SEV-1 or SEV-2 incident, regardless of root cause | /postmortem (mandatory) |
| SEV-3 with complex contributing factors | /postmortem (recommended) |
| Root cause unknown, likely to recur | /problem (for technical tracking) + /postmortem (for learning) |
| Formal compliance/regulatory PIR required | Traditional ITIL PIR (can run alongside /postmortem) |
| Sprint retrospective | Use team's agile retro format — not this skill |
Workflow
Step 1: Confirm Incident is Resolved
Before starting the postmortem, confirm the incident is fully resolved. If not, stop — do not start the postmortem while the incident is still active. Ask the user to confirm.
If an incident report exists (from /incident skill), read it for the timeline, classification, and resolution details.
Step 2: Gather Facts
Collect the following (use AskUserQuestion for missing items):
| Field | Required | Example |
| Incident summary | Yes | "Payment API returned 500s for 23 minutes affecting checkout" |
| When it started and ended | Yes | "09:47 – 10:10 UTC" |
| Detection method | Yes | "Customer complaint, then monitoring alert at 09:52" |
| Impact | Yes | "~2,400 failed transactions, 12% of users during the window" |
| What was done to fix it | Yes | "Rolled back deploy v2.1.4 to v2.1.3" |
| Who was involved | No | Roles only, not names in the document |
Important: Record facts, not interpretations. "The deploy pipeline did not run smoke tests" — not "the team skipped testing."
Step 3: Build the Timeline
Construct a neutral, fact-based timeline. Each entry states what happened, not who did what wrong.
Use role labels (e.g., "On-call engineer", "Deployment automation") rather than individual names where possible. Names are acceptable but should be used only to attribute observations, not to assign fault.
| Time (UTC) | Event |
|---|---|
| 09:47 | Deploy v2.1.4 completed via CI/CD pipeline |
| 09:52 | Monitoring alert: payment API error rate > 5% |
| 09:55 | On-call acknowledged alert, began investigation |
| 10:03 | Root cause identified: breaking DB schema change in v2.1.4 |
| 10:07 | Rollback initiated |
| 10:10 | Error rate returned to baseline, incident resolved |Step 4: Contributing Factors
Identify what made this failure possible. This is not "root cause" — it is a multi-factor analysis. Multiple factors contributed; removing any single one might have prevented the incident.
Format each factor as a system condition, not a personal action:
Contributing factors:
- The CI/CD pipeline did not include an integration test for schema migrations
- The staging environment schema was out of sync with production at the time of the deploy
- The deploy monitoring threshold for error rate was set to 5% — lower than the actual impact threshold for user-facing failures
- No automatic rollback was configured for deploy error spikesAvoid: "Alice didn't test", "Bob forgot", "the team was careless"
For factor analysis techniques, read references/blameless-templates.md.
Step 5: Create the Postmortem Document
MUST follow this exact structure:
# Postmortem: {INCIDENT TITLE}
| Field | Value |
|---|---|
| Date | {YYYY-MM-DD} |
| Duration | {HH:MM} – {HH:MM} ({TZ}) — {total minutes} |
| Severity | SEV-{1/2/3} |
| Incident ID | {INC-ID or "N/A"} |
| Services Affected | {List} |
| User Impact | {Estimated users / transactions affected} |
| Status | Draft / Published |
## Summary
{2–3 sentence summary: what happened, for how long, what was the impact. Written for an audience unfamiliar with the incident.}
## Timeline
| Time (UTC) | Event |
|---|---|
| {HH:MM} | {Neutral event description} |
## Contributing Factors
{Bulleted list of system/process conditions that made this failure possible. No blame language.}
## What Went Well
{Things that worked as intended and helped limit impact or speed recovery. Be genuine — this is not a formality.}
## What Could Be Improved
{Areas where systems, processes, or tools could have detected, prevented, or limited the incident.}
## Action Items
| Action | Owner (Role) | Due Date | Status |
|---|---|---|---|
| {Specific, measurable action} | {Role title} | {YYYY-MM-DD} | Open |
## Appendix
{Optional: relevant logs, screenshots, graphs, or additional technical detail for reference.}Step 6: Action Items
Action items are the most important output of a postmortem. Each one must be:
- Specific: "Add integration test for DB schema migrations to CI pipeline" — not "improve testing"
- Measurable: the outcome must be verifiable (test exists, threshold changed, runbook updated)
- Owned: assign to a role or team, not an individual by name
- Time-bounded: a realistic due date
- Tracked: link to an issue tracker ticket where possible
For action item patterns and prioritization guidance, read references/action-item-patterns.md.
Step 7: Review and Publish
- Review the draft with the user — does the language remain blameless throughout?
- Check that each action item is actionable and owned
- Present for user confirmation before writing to file
- After publishing, share with the team — transparency is a core principle of blameless culture
Gotchas
- Do not start the postmortem while the incident is still active — active incidents need resolution focus, not learning focus
- "What went well" is not filler — genuine acknowledgment of what worked builds trust and reinforces good practices
- Action items without owners and due dates will not get done — every item needs both
- The postmortem is not a punishment document — if it reads like a trial transcript, rewrite it
- For recurring incidents, the postmortem action items should link to a Problem record (
/problem) for long-term tracking - Postmortems should be published internally — the learning only compounds if others can read and contribute
- Senior leaders should not be identified as the "cause" — if a leader's decision contributed, frame it as a process gap (e.g., "the approval process did not surface the risk before the decision")
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
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.

