claude.symlink/skills/incident/SKILL.md
Handle production incidents with urgency. Use when production issues occur for debugging, fixes, and post-mortems.
npx skillsauth add htlin222/dotfiles incidentInstall 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.
Handle production incidents systematically.
DETECT → TRIAGE → MITIGATE → RESOLVE → REVIEW
# Quick health checks
curl -s https://api.example.com/health | jq .
kubectl get pods -n production | grep -v Running
# Check recent deployments
git log --oneline -5
kubectl rollout history deployment/app
# Error rates
grep -c "ERROR" /var/log/app.log
Priority: Stop the bleeding before finding root cause
# Rollback deployment
kubectl rollout undo deployment/app
# Scale up if overloaded
kubectl scale deployment/app --replicas=10
# Feature flag disable
curl -X POST api.example.com/admin/flags -d '{"feature": false}'
# Circuit breaker
# Block problematic endpoint or dependency
# Recent logs
kubectl logs -l app=myapp --since=30m | grep -i error
# Resource usage
kubectl top pods -n production
# Database connections
SELECT count(*) FROM pg_stat_activity WHERE state = 'active';
# Network issues
curl -w "@curl-format.txt" -o /dev/null -s https://api.example.com
| Level | Impact | Response Time | Example | | ----- | -------------------- | ------------- | ---------------- | | P1 | Complete outage | Immediate | Site down | | P2 | Major feature broken | 15 min | Payments failing | | P3 | Minor feature broken | 1 hour | Search slow | | P4 | Low impact | Next day | UI glitch |
## Incident Update
**Status:** Investigating | Identified | Mitigated | Resolved
**Severity:** P1/P2/P3
**Started:** YYYY-MM-DD HH:MM UTC
**Duration:** X hours
### Summary
[1-2 sentences on what's happening]
### Impact
[Who is affected and how]
### Current Actions
- [Action 1]
- [Action 2]
### Next Update
[Time of next update]
## Incident Post-Mortem
**Date:** YYYY-MM-DD
**Duration:** X hours
**Severity:** P1
### Summary
[What happened in 2-3 sentences]
### Timeline
- HH:MM - [Event]
- HH:MM - [Event]
### Root Cause
[Technical explanation]
### Impact
- Users affected: X
- Revenue impact: $Y
- Data loss: None/Describe
### Action Items
| Action | Owner | Due Date |
| ----------------------- | ----- | ---------- |
| Add monitoring for X | @name | YYYY-MM-DD |
| Improve circuit breaker | @name | YYYY-MM-DD |
### Lessons Learned
- [What we learned]
Input: "API is returning 500 errors" Action: Check logs, identify failing component, rollback if recent deploy, fix
Input: "Database is overloaded" Action: Kill long queries, scale read replicas, optimize or cache hot queries
testing
Converts narrative medical text into Pocket Medicine bullet-style notes with proper abbreviations, then modularizes sections exceeding 20 lines into linked standalone files.
devops
Use when deploying Docker services on the local VM (hostname: vm, Pop!_OS) with Traefik reverse proxy and Homepage dashboard. Covers crane image workflow, Traefik file-provider registration, Homepage services.yaml entries, and compose templates on the traefik-proxy network.
development
Use when reviewing a data visualization or figure for clarity, checking if a graph communicates its message without additional context, or iterating on R/Python plot scripts until a naive reader can fully understand the figure.
development
Runs Vale prose linter on markdown/text files and auto-fixes issues. Use when the user asks to lint, proofread, or improve writing quality of markdown or text files.