incident-report
Skill1 starsChanged 2 months agoMITView on GitHub
Generates professional incident reports using customizable templates. Supports outage, security, performance, and data-loss incident types. Extensible via templates/ and rules/.
6 other projects use a version of this.
Adopted by
Most recently taken up by
- apokamo/kajitheir own version, first seen Nov 8, 2026
- Integralist/agent-skillstheir own version, first seen Nov 6, 2026
- MELJOESTEIN/agentic-devsecops-kittheir own version, first seen Oct 20, 2026
- microsoft/aibast-agents-librarytheir own version, first seen Oct 13, 2026
- kevinaimonster/skill-hubtheir own version, first seen Mar 18, 2026
- aakash-dhar/claude-skillstheir own version, first seen Feb 19, 2026
Other versions6 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 6
- Integralist/agent-skills★ 23same name
- apokamo/kaji★ 16same name
- microsoft/aibast-agents-library★ 8same name
- kevinaimonster/skill-hub★ 4same name
- aakash-dhar/claude-skills★ 0same name
- MELJOESTEIN/agentic-devsecops-kit★ 0same name
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 repository22 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- accessibilitySkill
- adrSkill
- api-designSkill
- architecture-designSkill
- architecture-reviewSkill
- best-practicesSkill
- changelog-generatorSkill
- code-reviewSkill
- database-designSkill
- dependency-auditSkill
- doc-refreshSkill
- example-skillSkill
- full-security-reviewSkill
- git-workflowSkill
- golden-rulesSkill
- log-correlationSkill
- mvp-readinessSkill
- onboardingSkill
- pre-commitSkill
- requirements-generatorSkill
- test-writerSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
15 rules. 0 are common, 6 are distinctive, and 9 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
6
Distinctive
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 27
Use Glob to find all .md files in ${CLAUDE_PLUGIN_ROOT}/templates/ and ${CLAUDE_PLUGIN_ROOT}/rules/ (the plugin's install directory).
- Distinctive: line 39
If either directory is empty or missing, warn the user and continue with built-in defaults.
- Very specific: line 43
Ask the user for the following (or accept from a prior /log-correlation output if available):
- Very specific: line 53
If the user provides a dump of log lines or a /log-correlation output, extract the above fields from it automatically and confirm with the …
- Distinctive: line 62
Ask the user: "Does this classification look correct?
- Distinctive: line 64
If the user overrides, record the override and the reason in the report's metadata.
- Very specific: line 98
Check that all required_sections from the template frontmatter are filled.
- Very specific: line 102
Read rules/escalation.md. Based on the confirmed severity, determine the notification requirements.
- Very specific: line 110
Read rules/sla.md. Based on the confirmed severity and the incident duration, calculate:
- Very specific: line 123
Use Bash to create docs/incidents/ if it does not exist: mkdir -p docs/incidents
- Very specific: line 125
Use Write to save the completed report to docs/incidents/<filename>.md.
- Distinctive: line 130
After saving, present the user with these options:
- Distinctive: line 142
If C (Confluence): Check if Atlassian MCP tools are available.
- Very specific: line 146
If A (Agent workflow): Create a handoff artifact at handoffs/plans/ following the /agent-based-development artifact schema.
- Distinctive: line 152
After saving the report, display:
“Common” is measured: kept by at least 6 in 10 of the 3 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
Incident Report
Generate professional incident reports from symptoms, log data, and timeline information. Uses customizable templates and classification rules. Reports are saved to docs/incidents/ and can optionally be published to Confluence.
Extensibility
This skill loads templates from templates/ and rules from rules/ at runtime. To add a new incident type, create a template file in templates/. To customize severity thresholds or escalation contacts, edit the files in rules/. No changes to SKILL.md are needed.
New templates are auto-discovered via Glob — they must have a .md extension and valid frontmatter. New rule files are also auto-discovered and applied in filename-alphabetical order.
Instructions
Step 1 — Load Templates and Rules
Use Glob to find all .md files in ${CLAUDE_PLUGIN_ROOT}/templates/ and ${CLAUDE_PLUGIN_ROOT}/rules/ (the plugin's install directory). If ${CLAUDE_PLUGIN_ROOT} is not set (e.g. running from a local checkout of the marketplace repo), fall back to skills/incident-report/templates/ and skills/incident-report/rules/ relative to the current working directory.
The shipped files (siblings of this SKILL.md) are:
- Templates: templates/outage.md, templates/security.md, templates/performance.md, templates/data-loss.md, templates/generic.md — see templates/README.md for the variable reference
- Rules: rules/severity.md, rules/escalation.md, rules/sla.md — see rules/README.md for ordering semantics
To save context, Read template frontmatter only (first ~6 lines) at this stage to build the registry; load a template's full body only after Step 3 selects it. Rules files are small — load them fully. Build an in-memory registry:
- Templates registry: keyed by
idfrom frontmatter; storename,incident_types,required_sections, and the file path (full body loaded on selection). - Rules registry: keyed by filename; store the full rule content for interpretation.
If either directory is empty or missing, warn the user and continue with built-in defaults.
Step 2 — Gather Incident Information
Ask the user for the following (or accept from a prior /log-correlation output if available):
- What happened? — A description of the symptoms observed.
- When did it start? — Start time in UTC. Also ask: when was it resolved (if applicable)?
- What was the user impact? — Number of users affected, features unavailable, error rates observed.
- What systems were involved? — Services, databases, message queues, regions, third-party dependencies.
- What was the root cause? — The confirmed or suspected cause. Accept "unknown — still investigating" if unresolved.
- What actions were taken? — A timeline of response steps: who did what, and when. Format as
HH:MM UTC — action — who. - Is this incident resolved? — Ongoing or post-incident (resolved)?
If the user provides a dump of log lines or a /log-correlation output, extract the above fields from it automatically and confirm with the user before proceeding.
Step 3 — Classify the Incident
Apply the rules from rules/severity.md to determine severity (SEV1–SEV4). Show the classification logic:
- List the severity criteria that match the user's description.
- State the resulting severity level.
- Show the severity label (e.g.,
SEV1 — Critical / All-hands). - Ask the user: "Does this classification look correct? Reply with the severity level to override, or press Enter to accept."
If the user overrides, record the override and the reason in the report's metadata.
Step 4 — Select Template
Based on the incident type detected from the description, suggest the best matching template by matching keywords against each template's incident_types array.
Then show a numbered list of all available templates:
Available templates:
1. Generic Incident Report (generic.md)
2. Service Outage (outage.md)
3. Security Incident (security.md)
4. Performance Degradation (performance.md)
5. Data Loss / Corruption (data-loss.md)
[N. Any custom templates found in templates/]
Suggested: [N] — [template name] (matched on: [keywords])
Press Enter to accept, or enter a number to choose a different template.
You may also provide a file path to use a custom template not in this list.Step 5 — Fill the Template
Populate the selected template with all gathered information. Apply the following rules:
- Replace every
{{variable}}placeholder with the corresponding value. - For any section the user has not provided data for, insert a
[TODO: describe <field>]placeholder. Never fabricate or assume data. - For the
{{timeline}}variable, format each action as a markdown table row:| HH:MM UTC | action description | responder name |. - For the
{{action_items}}variable, extract any follow-up tasks mentioned in the conversation and format them as table rows:| N | action | [TODO: owner] | [TODO: due date] | Open |. - Generate
{{incident_id}}asINC-<YYYYMMDD>-<sequential-or-hash>. Use today's date. - Generate
{{duration}}from start and end times. If unresolved, use "Ongoing". - Populate
{{status}}as eitherResolvedorOngoing.
Check that all required_sections from the template frontmatter are filled. For any that are still [TODO], warn the user: "The following required sections still need input: [list]. You can fill them now or complete them in the saved file."
Step 6 — Apply Escalation Rules
Read rules/escalation.md. Based on the confirmed severity, determine the notification requirements. Populate the report's "Notifications Sent" section with:
- Who should have been/was notified
- The required notification timeline for this severity
- Placeholder rows for each notification channel, filled with actual data if the user provided it
Step 7 — Apply SLA Rules
Read rules/sla.md. Based on the confirmed severity and the incident duration, calculate:
- Time to acknowledge — compare actual vs. SLA target
- Time to mitigate — compare actual vs. SLA target
- Time to resolve — compare actual vs. SLA target (if resolved)
- Post-mortem due — calculate due date from resolution time
Mark each metric as MET or BREACHED. If breached, state by how much. Populate the report's "SLA Status" section.
Step 8 — Save the Report
Data handling: Never include live credentials, tokens, session IDs, or victim PII in the report body — redact them (
[REDACTED]) even if they appear in the logs or evidence the user provided. For security-type incidents, warn the user before saving: the report is stamped CONFIDENTIAL, and committing it to a shared repository may expose incident details to everyone with repo access. Offer to save outside the repo or to a restricted location instead.
- Use Bash to create
docs/incidents/if it does not exist:mkdir -p docs/incidents - Generate the filename:
INC-<YYYYMMDD>-<kebab-case-short-title>.md(max 40 chars for the title slug). - Use Write to save the completed report to
docs/incidents/<filename>.md. - Confirm the save path to the user.
Step 9 — Offer Follow-Up Actions
After saving, present the user with these options:
Report saved to: docs/incidents/<filename>.md
Follow-up options:
[C] Publish to Confluence (requires Atlassian MCP tools)
[J] Create Jira ticket for action items
[A] Hand off to /agent-based-development workflow
[N] Done — no further action neededIf C (Confluence): Check if Atlassian MCP tools are available. If yes, offer to create a new Confluence page with the report content in a space the user specifies. If MCP tools are not available, provide instructions for manual publishing.
If J (Jira): Extract all [TODO: owner] action items from the report. Offer to create one Jira ticket per action item, with summary, description, and severity-based priority. Use Atlassian MCP tools if available.
If A (Agent workflow): Create a handoff artifact at handoffs/plans/ following the /agent-based-development artifact schema. Set taskId to the incident ID, agent to planning, status to assigned, and include the action items as task assignments.
Output Format
After saving the report, display:
- Incident ID and severity classification
- Template used
- SLA status summary (MET / BREACHED per metric)
- File path where the report was saved
- Any required sections still marked
[TODO] - Follow-up action prompt
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.

