incident-response
Skill0 starsChanged 8 months agoMITView on GitHub
Guided incident response workflow: triage, investigate, resolve, communicate, postmortem. Produces structured output files at each phase. Triggers: "incident", "outage", "postmortem", "on-call", "SEV-1", "SEV-2".
81 other projects use a version of this.
Adopted by
Most recently taken up by
- anuragsarkar97/skillstheir own version, first seen Nov 8, 2026
- tigu77/tiguclawtheir own version, first seen Nov 8, 2026
- darkweb19/skillstheir own version, first seen Nov 8, 2026
- mdigital94/vibe-shield-plugintheir own version, first seen Nov 8, 2026
- nisarth/claude-skills-storetheir own version, first seen Nov 8, 2026
- aymardkouakou/claude-gh-skillstheir own version, first seen Nov 8, 2026
Used with
Projects with it also use dora-metrics, background-jobs 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.
jholhewresSkilldora-metrics
Calculate DORA metrics from git + deploy logs
Also in 3 projects that use this
YepAPISkillbackground-jobs
Queue workers with BullMQ/Inngest/Trigger.dev, job retries, dead letter queues, concurrency.
Also in 4 projects that use this
MicrosoftSkilldata-modeling
Use when the app needs to store or read data — records, a database, entities, CRUD, lists, "save/remember X", or per-user data with row-level security. This app's data layer is Rayfin's: you declare entities as TypeScript classes with decorators in rayfin/data/, register them in the schema, and read/write them through the typed rayfin-client. Covers: defining an @entity, field decorators, registering it, per-entity access with @role, owner-only row-level security, and the client query/mutation API. Triggers: data, database, model, entity, schema, table, record, CRUD, create, read, update, delete, list, store, save, persist, per-user, row-level security, RLS, access control, ownership.
Also in 7 projects that use this
YepAPISkilldata-pipelines
ETL patterns, cron scheduling, queue-based processing, and batch jobs with Inngest/BullMQ.
Also in 4 projects that use this
mmondoraSkillinfrastructure-as-code
Infrastructure as Code with Terraform and Pulumi. State management, modularity, drift detection, secrets handling. Use when provisioning cloud resources, writing Terraform/Pulumi modules, or managing infrastructure configuration.
Also in 5 projects that use this
csiddhant796-blipSkillthreat-detection
Use when hunting for threats in an environment, analyzing IOCs, or detecting behavioral anomalies in telemetry. Covers hypothesis-driven threat hunting, IOC sweep generation, z-score anomaly detection, and MITRE ATT&CK-mapped signal prioritization.
Also in 3 projects that use this
Other versions81 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 81
- anthropics/knowledge-work-plugins★ 35ksame name
- microsoft/hve-core★ 1.6ksame name
- hypnguyen1209/offensive-claude★ 401same name
- duyet/clickhouse-monitoring★ 303same name
- kid-sid/claude-spellbook★ 190same name
- irahardianto/awesome-agv★ 157same name
- harness/harness-skills★ 127same name
- nahid-sparktales/agent-dispatcher★ 59same name
- Happy-Technologies-LLC/happy-platform-skills★ 41same name
- drafthq/draft★ 40same name
71 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 repository20 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- ci-watchSkill
- commitSkill
- discovery-interview-prepSkill
- doc-generateSkill
- opportunity-solution-treeSkill
- polarisSkill
- prd-developmentSkill
- prioritization-advisorSkill
- reviewSkill
- roadmapSkill
- security-auditSkill
- session-wrapSkill
- spec-updateSkill
- tddSkill
- tech-debt-auditSkill
- test-runnerSkill
- user-storySkill
- uxSkill
- workshop-facilitationSkill
The file
We split this skill into the rules it gives an agent
11 rules. 0 are common, 6 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 68 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Use this skill when:
- Distinctive: line 35
Write output files after each phase — they are the record of truth
- Distinctive: line 38
Use file-based context — read previous phase outputs rather than relying on conversation memory
- Very specific: line 42
Use workshop-facilitation as the default interaction protocol.
- Very specific: line 91
Write triage findings to .incident-response/01-triage.md.
- Distinctive: line 103
Build timeline: when did it start? What changed?
- Very specific: line 118
If monitoring a live service during investigation, suggest: /loop 1m check service logs — advisory, PO activates.
- Very specific: line 120
Write findings to .incident-response/02-investigation.md.
- Very specific: line 136
Write resolution details to .incident-response/03-resolution.md.
- Distinctive: line 286
Fix: Always classify severity first.
- Distinctive: line 298
Fix: Every postmortem must have concrete action items with owners and due dates.
“Common” is measured: kept by at least 6 in 10 of the 68 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
Purpose
Guide the team through a structured incident response when a production issue occurs. This is a 5-phase workflow with checkpoints — not a passive reference. Each phase produces a file in .incident-response/ that serves as the source of truth for the next phase.
Use this skill when:
- A production incident is declared (SEV-1 to SEV-3)
- You need to write a postmortem after an incident
- You want to generate or update runbooks
- You need an on-call handoff template
Key Concepts
Severity Classification
| Severity | Criteria | Response Time | Example |
| SEV-1 (Critical) | Service down, data loss, security breach | Immediate (page) | Payment system offline |
| SEV-2 (Major) | Significant degradation, partial outage | < 30 min | API latency 10x normal |
| SEV-3 (Minor) | Limited impact, workaround exists | < 4 hours | One endpoint returning 500s |
| SEV-4 (Low) | Cosmetic, non-urgent | Next business day | Dashboard chart broken |
Behavioral Rules
- Execute phases in order — never skip a phase
- Write output files after each phase — they are the record of truth
- STOP at checkpoints — wait for user confirmation before proceeding
- Halt on failure — if a step fails, do not continue to the next phase
- Use file-based context — read previous phase outputs rather than relying on conversation memory
Facilitation Source of Truth
Use workshop-facilitation as the default interaction protocol.
Application
Entry Questions
Question 1: What's happening?
"Describe the incident in 1-2 sentences. What's broken and what's the user impact?"
Question 2: Severity
"What severity level?" (1: Critical, 2: Major, 3: Minor, 4: Low)
Question 3: Mode
- Full workflow — All 5 phases (triage → postmortem)
- Postmortem only — Incident is resolved, skip to Phase 5
- Runbook generation — Generate a runbook template for a service
Phase 1: Detection & Triage
Output file: .incident-response/01-triage.md
Steps:
- Classify severity using table above
- Assess blast radius: which services, how many users affected
- Identify immediate mitigation: rollback, feature flag off, traffic redirect
Triage commands (adapt to your stack):
# K8s triage
kubectl get pods -A | grep -v Running
kubectl top pods --sort-by=memory
kubectl logs <pod-name> --tail=100 --since=10m
# Docker triage
docker ps --filter "status=exited"
docker logs <container> --tail=100 --since=10m
# Generic
curl -sf https://service/health | jq .
git log --oneline --since="2 hours ago"Write triage findings to .incident-response/01-triage.md.
CHECKPOINT: Present triage summary. Wait for user to confirm before investigation.
Phase 2: Investigation & Root Cause
Output file: .incident-response/02-investigation.md
Steps:
- Build timeline: when did it start? What changed?
- Correlate signals: metrics spike + deploy + error logs
- Hypothesis testing: one theory at a time, verify each
- Root cause: identify the underlying issue
# Git bisect for regression
git bisect start
git bisect bad HEAD
git bisect good <last-known-good>
# Check recent deploys
git log --oneline --since="24 hours ago"If monitoring a live service during investigation, suggest: /loop 1m check service logs — advisory, PO activates.
Write findings to .incident-response/02-investigation.md.
CHECKPOINT: Present root cause hypothesis. Wait for user to confirm before fix.
Phase 3: Resolution & Recovery
Output file: .incident-response/03-resolution.md
Steps:
- Apply fix: hotfix branch → fast PR → deploy
- Verify: health checks green, error rate back to baseline
- Monitor: watch for 30 min post-fix
Write resolution details to .incident-response/03-resolution.md.
Phase 4: Communication
Output file: .incident-response/04-communication.md
Generate two communications:
Initial notification (template):
## Incident: [Title]
**Severity**: SEV-X
**Status**: Investigating / Mitigated / Resolved
**Impact**: [what users experience]
**Started**: HH:MM UTC
**Next update**: HH:MM UTC (30 min intervals for SEV-1/2)Resolution notification (template):
## Resolved: [Title]
**Duration**: X hours Y minutes
**Root cause**: [1-2 sentences]
**Fix applied**: [what was done]
**Postmortem**: [link, within 48h]Phase 5: Postmortem
Output file: .incident-response/05-postmortem.md
Generate a blameless postmortem:
## Postmortem: [Incident Title]
**Date**: YYYY-MM-DD
**Duration**: X hours Y minutes
**Severity**: SEV-X
**Authors**: [names]
### Summary
[2-3 sentences: what happened, impact, resolution]
### Timeline
- HH:MM — First alert fired
- HH:MM — On-call acknowledged
- HH:MM — Root cause identified
- HH:MM — Fix deployed
- HH:MM — All clear confirmed
### Root Cause
[Technical explanation, no blame]
### Impact
- Users affected: N
- Revenue impact: $X (if applicable)
- Error budget consumed: X%
### What Went Well
- [item]
### What Went Wrong
- [item]
### Action Items
| Action | Owner | Due Date | Priority |
| --- | --- | --- | --- |
| [action] | @name | YYYY-MM-DD | P1/P2/P3 |Runbook Templates
Service Outage
## Runbook: [Service Name] Outage
### Quick Diagnosis (< 5 min)
1. Check health: `curl -s https://service/health | jq .`
2. Check pods: `kubectl get pods -l app=service-name`
3. Check deploys: `kubectl rollout history deployment/service-name`
4. Check logs: `kubectl logs -l app=service-name --tail=50 --since=5m`
5. Check metrics: [Grafana dashboard link]
### Common Fixes
- **OOM Kill**: Scale up replicas or increase memory limit
- **CrashLoopBackOff**: Check logs — config error or missing env var
- **ImagePullBackOff**: Check image tag, registry auth
- **Slow responses**: Check DB connections, external deps
### Rollback
kubectl rollout undo deployment/service-name
### Escalation
- L1 (on-call): [contact]
- L2 (team lead): [contact]
- L3 (infra): [contact]Database Incident
-- Active connections
SELECT count(*) FROM pg_stat_activity WHERE state = 'active';
-- Long-running queries (> 30s)
SELECT pid, now() - query_start AS duration, query
FROM pg_stat_activity
WHERE state = 'active' AND now() - query_start > interval '30 seconds'
ORDER BY duration DESC;
-- Kill stuck query
SELECT pg_terminate_backend(<pid>);On-Call Handoff Template
## On-Call Handoff — [Date]
### Active Incidents
- [none or list with status]
### Ongoing Investigations
- [issue]: [status, what's been tried]
### Recent Changes (last 24h)
- [deploy/config]: [what, when, who]
### Known Issues
- [issue]: [workaround]
### Upcoming Events
- [maintenance window, traffic spike]Common Pitfalls
Pitfall 1: Skipping Triage
Symptom: Jump straight to debugging without assessing severity and blast radius. Consequence: Wrong priority — might fix a low-impact bug while a high-impact issue festers. Fix: Always classify severity first. 2 minutes of triage saves hours of misguided investigation.
Pitfall 2: Blame Culture
Symptom: Postmortem focuses on "who did it" instead of "why did the system allow it." Consequence: People hide mistakes, incidents recur. Fix: Blameless postmortems. Focus on systemic fixes (better monitoring, safer deploys, guardrails).
Pitfall 3: No Action Items
Symptom: Postmortem written, filed, forgotten. Consequence: Same incident happens again 3 months later. Fix: Every postmortem must have concrete action items with owners and due dates. Track them.
Pitfall 4: Communicating Too Late
Symptom: Users discover the outage before the team acknowledges it. Consequence: Trust erosion, support ticket flood. Fix: First communication within 15 min for SEV-1/2, even if it's "We're investigating."
References
External
- Google, Site Reliability Engineering — https://sre.google/sre-book/
- Google, SRE Workbook — https://sre.google/workbook/
- PagerDuty, Incident Response Ops Guide — https://response.pagerduty.com/
Related Skills
/security-audit— Security-specific incident investigation/review— Code review to prevent incidentsobservability.mdstack guide — SLI/SLO/error budget context
Credit
- Workflow structure and runbook templates extracted from
wshobson/agentspluginincident-response(v1.3.0).
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.

