Pre-Mortem Risk Identification

SkillAI & models

Guide prospective hindsight analysis to identify project risks before failure occurs. Teams imagine the project has failed spectacularly, then work backward to identify causes. Increases risk identification by 30% compared to traditional planning. Use when you say "run a pre-mortem on", "what could cause this to fail", "identify project risks", or "what could go wrong with". Do NOT use to stress-test a single decision's reasoning (use decision-critic).

Then ask your AI: use the Pre-Mortem Risk Identification skill

Details

Instructions available. Your AI can read the instructions. Execution depends on the setup they require.

Add it as a step in a pipeline you build on Ahel, or connect Ahel to Claude, ChatGPT, Cursor, Claude Code or Codex and ask your AI to use it.

What this skill tells your AI

The instructions your AI receives, as published by rjmurillo/ai-agents in .claude/skills/pre-mortem/SKILL.md and read by Ahel’s review.

When this skill activates, you become a pre-mortem facilitator. Your role is to guide users through prospective hindsight analysis, helping them identify project risks by imagining failure has already occurred.

Triggers

Activate when the user:

  • Run a pre-mortem on...
  • What could cause this project to fail?
  • Identify project risks for...
  • What could go wrong with...
  • Pre-mortem analysis

Quick Reference

PhaseDurationOutput
1. Brief2-3 minProject context documented
2. Failure Announcement30 secMindset shift established
3. Independent Analysis3-5 minIndividual failure reasons
4. Round-Robin Collection5-10 minConsolidated failure list
5. Review and Mitigate10-15 minRisk inventory with mitigations

When to Use

Use this skill when:

  • Starting a new project or feature and want to identify risks upfront
  • Team is overly optimistic and potential downsides need surfacing
  • Stakeholders need to understand risk before committing resources
  • After major scope changes to reassess risk landscape

Use threat-modeling instead when:

  • Analyzing security threats specifically (STRIDE, attack trees)
  • Need structured vulnerability assessment, not general project risk

Use decision-critic instead when:

  • Challenging a specific decision, not brainstorming broad risks

Why Pre-Mortem Works

Research by Gary Klein demonstrates that prospective hindsight (imagining an event has already occurred) increases the ability to identify reasons for outcomes by 30%.

Key psychological benefits:

  1. Reduces "damn-the-torpedoes" attitude - Acknowledging failure is possible
  2. Creates psychological safety - Dissenters can voice concerns as analysis, not criticism
  3. Surfaces hidden knowledge - People share what they know but fear saying
  4. Catches blind spots early - Before commitment and sunk costs

Process

Phase 1: Project Brief (2-3 minutes)

Input Required:

  • Project name and objective
  • Timeline and key milestones
  • Team composition (if team context)
  • Success criteria

Actions:

  1. Document the project scope clearly
  2. Identify key stakeholders
  3. Note any constraints or dependencies
  4. Confirm understanding with user

Output: Project context document

Phase 2: Failure Announcement (30 seconds)

The critical mindset shift.

Announce to the user (or team):

"The project has failed. It is [timeline endpoint]. The project did not just miss its goals, it failed spectacularly. Your task now is to identify all the reasons why it failed."

Important: Use past tense. The failure has already happened. This is not speculation about what "might" happen; it "did" happen.

Phase 3: Independent Analysis (3-5 minutes)

For individual context:

  • User writes down 5-10 reasons why the project failed
  • No filtering or evaluation yet
  • Include both obvious and "unlikely" causes
  • Consider technical, human, organizational, and external factors

For team context:

  • Each person writes independently
  • No discussion or sharing yet
  • Silent reflection maximizes diversity of thought

Prompt the user:

"Write down every reason you can think of for why this project failed. Include causes you consider unlikely. Do not filter yourself. You have 3-5 minutes."

Output: Raw list of failure reasons

Phase 4: Round-Robin Collection (5-10 minutes)

For individual context:

  • Review each failure reason
  • Group by category (see Categories below)
  • No evaluation yet, just collection

For team context:

  • Go around the room, each person shares ONE reason
  • Continue rounds until all reasons exhausted
  • Record without discussion or debate
  • No "that won't happen" or "we already thought of that"

Categories for grouping:

  1. Technical - Technology, architecture, implementation
  2. People - Skills, availability, communication
  3. Process - Methodology, workflow, coordination
  4. Organizational - Politics, priorities, resources
  5. External - Market, competitors, regulations, dependencies
  6. Unknown Unknowns - Black swan events, assumptions

Output: Categorized failure reasons

Phase 5: Review and Mitigate (10-15 minutes)

For each failure reason:

  1. Assess likelihood (1-5 scale)

    • 1: Very unlikely
    • 2: Unlikely
    • 3: Possible
    • 4: Likely
    • 5: Very likely
  2. Assess impact (1-5 scale)

    • 1: Minor inconvenience
    • 2: Delays
    • 3: Significant setback
    • 4: Major failure
    • 5: Project-killing
  3. Calculate risk score: Likelihood x Impact

  4. Identify mitigation strategies:

    • Prevention: How to stop it from happening
    • Detection: How to know early if it is happening
    • Response: What to do if it happens
  5. Assign ownership (if team context)

Prioritization:

  • Risk score 15-25: Critical, address immediately
  • Risk score 8-14: High, plan mitigation
  • Risk score 4-7: Medium, monitor
  • Risk score 1-3: Low, accept or defer

Output: Complete risk inventory (see template)

Output Template

Generate the risk inventory using this structure:

# Pre-Mortem Risk Inventory

**Project:** [Name]
**Date:** [Date]
**Participants:** [Names or "Individual Analysis"]

## Project Context

- **Objective:** [What success looks like]
- **Timeline:** [Start to end]
- **Key Dependencies:** [Critical external factors]

## Risk Summary

| Priority | Count | Top Risk |
|----------|-------|----------|
| Critical | N | [Highest scoring risk] |
| High | N | [Second highest category risk] |
| Medium | N | |
| Low | N | |

## Critical Risks (Score 15-25)

### R1: [Risk Name]

- **Category:** [Technical/People/Process/Organizational/External]
- **Failure Scenario:** [How this causes project failure]
- **Likelihood:** [1-5] | **Impact:** [1-5] | **Score:** [L x I]
- **Root Cause:** [Why this might happen]
- **Mitigation:**
  - Prevention: [How to avoid]
  - Detection: [Early warning signs]
  - Response: [Contingency plan]
- **Owner:** [Person responsible]
- **Status:** [Open/Mitigating/Accepted]

[Repeat for each critical risk]

## High Risks (Score 8-14)

[Same structure as Critical]

## Medium Risks (Score 4-7)

[Abbreviated: Name, Category, Score, One-line mitigation]

## Low Risks (Score 1-3)

[List only: Name and score]

## Action Items

| Action | Owner | Due Date | Risk Addressed |
|--------|-------|----------|----------------|
| [Specific action] | [Name] | [Date] | R1, R3 |

## Review Schedule

- **Next review:** [Date]
- **Review frequency:** [Weekly/Bi-weekly/Monthly]

Scripts

pre-mortem.py

Validates risk inventory completeness and calculates aggregate statistics.

python3 .claude/skills/pre-mortem/scripts/pre-mortem.py \
  --inventory-path "$INVENTORY_PATH" \
  --validate

Exit Codes:

  • 0: Valid inventory with all required fields
  • 1: Invalid arguments
  • 10: Validation failed (missing required sections)

Anti-Patterns

AvoidWhyInstead
Skipping Phase 2Mindset shift is critical for effectivenessAlways announce failure explicitly
Allowing discussion during Phase 3Reduces diversity of thoughtEnforce silent writing
Filtering "unlikely" causesMiss black swan eventsInclude all causes, prioritize later
Stopping at identificationRisk without mitigation is incompleteAlways complete Phase 5
One-time exerciseProjects evolve, new risks emergeSchedule periodic reviews

Verification

After completing a pre-mortem, run the bundled validator and require exit 0:

python3 .claude/skills/pre-mortem/scripts/pre-mortem.py \
  --inventory-path "$INVENTORY_PATH" \
  --validate
echo "exit=$?"   # must be 0; exit 10 means missing required sections (inventory is not valid)
  • pre-mortem.py exited 0 (exit 10 = validation failed; exit 1 = invalid arguments; non-zero = blocked)
  • All 5 phases completed (Brief, Failure Announcement, Analysis, Collection, Mitigation)
  • Risk inventory generated with risk scores (Likelihood x Impact)
  • All Critical/High risks have mitigation strategies, each with the full Prevention/Detection/Response triad (a prevention-only mitigation FAILS the gate and MUST be completed)
  • Each mitigation has Prevention, Detection, and Response
  • Action items assigned with owners and due dates
  • Review schedule established

Gate rule: pre-mortem.py exit 0 is necessary but not sufficient. The script flags has_mitigation true on a single **Prevention:** line, so a Critical/High risk can exit 0 with an incomplete mitigation. Until the script is tightened, manual verification MUST confirm every Critical/High mitigation carries Prevention, Detection, and Response. A prevention-only Critical/High mitigation does not pass; complete the triad before the pre-mortem is done.

Facilitation Tips

For team settings:

  • Emphasize no blame or criticism
  • Senior members speak last in round-robin
  • Celebrate thorough risk identification
  • Treat skeptics as valuable, not negative

For individual use:

  • Role-play multiple perspectives (developer, user, manager)
  • Challenge your own assumptions explicitly
  • Consider "what would my critics say?"

Extension Points

  1. Custom Categories: Add domain-specific risk categories
  2. Risk Templates: Pre-built risks for common project types
  3. Integration: Link to issue trackers for action item follow-up
  4. Quantification: Add financial impact estimation

Related Skills

SkillRelationship
decision-criticPost-decision validation (pre-mortem is pre-decision)
milestone-plannerUse pre-mortem output to inform planning
architectTechnical risks feed into ADR considerations

References

ReferencePurpose
references/mental-models-galls-law.mdComplexity-driven risk identification using Gall's Law
references/strategy-ooda-loop.mdIterative risk review cadence using OODA Loop

Academic Sources

  • Klein, G. (2007). "Performing a Project Premortem." Harvard Business Review.
  • Mitchell, D. J., et al. (1989). "Back to the Future: Temporal Perspective in the Explanation of Events." Journal of Behavioral Decision Making.

Signals

GitHub stars
47
Forks
14
Last commit
Oct 2026
Advanced
Item type
skill
Key
pre-mortem-rjmurillo
Source
github.com/rjmurillo/ai-agents