skills/thinking-pre-mortem/SKILL.md
Imagine a project has failed and work backward to identify why. Use at project kickoffs, before major decisions, or when optimism may be obscuring risks.
npx skillsauth add tjboudreaux/cc-thinking-skills thinking-pre-mortemInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
The pre-mortem, developed by psychologist Gary Klein, uses "prospective hindsight" to improve risk identification. Instead of asking "What could go wrong?" (which triggers defensiveness), assume the project HAS failed and ask "Why did it fail?" This simple reframe improves risk identification by approximately 30%.
Core Principle: It's easier to explain failure after the fact than predict it beforehand. Use this bias productively.
Decision flow:
Starting significant work? → yes → Team confident? → yes → PRE-MORTEM ESSENTIAL
↘ no → Pre-mortem still valuable
↘ no → Standard risk assessment may suffice
Gather the team. Explain:
"Imagine we're 6 months in the future. The project has failed—not just missed a deadline, but failed spectacularly. We're in the postmortem. Your job: explain what went wrong."
Key: Use past tense. The failure has already happened.
Each person independently writes reasons for failure:
Prompt: "It's [future date]. The project failed. Write down all the reasons why."
Go around the room, each person shares ONE reason per round:
Group by theme and assess:
| Category | Risk | Likelihood | Impact | Priority | |----------|------|------------|--------|----------| | Technical | API integration fails | High | Critical | P0 | | Process | Requirements unclear | Medium | High | P1 | | People | Key person leaves | Low | Critical | P1 | | External | Vendor delays | Medium | Medium | P2 |
For top risks, define:
Risk: API integration fails
Mitigation:
- Spike on integration in week 1
- Identify fallback vendor
- Build abstraction layer for swap-ability
Owner: [Name]
Checkpoint: Week 2 review
Incorporate mitigations into project plan:
# Pre-Mortem: [Project Name]
Date: [Date]
Participants: [Names]
## The Scenario
It is [Future Date]. [Project] has failed spectacularly.
## Failure Reasons Identified
### Technical
- [Reason 1]
- [Reason 2]
### Process
- [Reason 1]
- [Reason 2]
### People/Team
- [Reason 1]
- [Reason 2]
### External/Dependencies
- [Reason 1]
- [Reason 2]
## Priority Risks and Mitigations
### P0: [Risk Name]
- **Description**: [What went wrong]
- **Mitigation**: [How to prevent]
- **Owner**: [Who]
- **Checkpoint**: [When to verify]
### P1: [Risk Name]
...
## Plan Updates
- [ ] [Action item from pre-mortem]
- [ ] [Action item from pre-mortem]
## Review Schedule
- [Date]: First risk checkpoint
- [Date]: Mid-project risk review
| Category | Example Failures | |----------|-----------------| | Requirements | Scope creep, unclear success criteria, missing stakeholder | | Technical | Wrong architecture, integration failures, scale issues | | Timeline | Underestimation, dependencies delayed, parallel work blocked | | Team | Key person unavailable, skill gaps, communication breakdown | | External | Vendor issues, regulatory changes, market shift | | Process | Insufficient testing, deployment problems, no rollback |
tools
Improve by removal rather than addition. Focus on what to stop doing, eliminate the negative, and subtract complexity. Use for system simplification, process improvement, and feature prioritization.
data-ai
Apply TRIZ (Theory of Inventive Problem Solving) methodology to resolve technical contradictions and find innovative solutions. Use for engineering design, breaking through impossible constraints, and systematic innovation.
development
Test ideas through hypothetical scenarios when empirical testing is impractical. Use for architecture evaluation, edge case analysis, ethics considerations, and strategy development.
data-ai
Identify and manage the bottleneck; improvements elsewhere don't matter until the constraint is addressed. Use for performance optimization, process improvement, and resource allocation.