本文へ移動
cccskills
無料GitHub で公開

blameless-post-mortem

Use after an incident or outage is resolved — blame-free facilitation, root cause, corrective actions, memory write-back — even for a near-miss. Consumes the incident-commander skeleton.

インストール方法を見る

含まれるファイル(2)

  • SKILL.md7.6 KB
  • evals/triggers.json948 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

blameless-post-mortem

Facilitate a blame-free post-mortem after an incident or near-miss. Consumes the incident-commander skeleton, derives or fills the root cause, writes the corrective-action plan, and drafts an incident-learnings memory candidate. Systems and processes are examined — never individuals.

When to use

  • An incident or outage is resolved and the team needs a structured write-up.
  • A near-miss happened and a post-mortem is being drafted (near-miss mode — same flow, different severity framing).
  • The incident-commander hands off a post-mortem skeleton (empty root cause is accepted — do not block on it).
  • German triggers: "Post-mortem", "Nachbesprechung", "was ist schiefgelaufen?", "Vorfallsanalyse".

Do NOT use when:

Procedure

1. Consume the incident-commander skeleton

Read the incoming skeleton. Per docs/contracts/analysis-memory-loop.md § 5:

  • Accept any skeleton, complete or not.
  • Extract: SEV, State, Started, Timeline, Mitigation, Root cause (may be unknown or TBD).
  • Do NOT stall or reject on an empty root cause.

If no skeleton is provided, reconstruct from the user's description: severity, timeline, impact, mitigation state.

2. Derive the root cause (if unresolved)

If root cause is unknown or TBD, invoke root-cause-frameworks. That skill returns ranked candidates with confidence levels — do NOT force a verdict. If root cause remains unresolved after the analysis pass, mark the post-mortem status: draft and continue. A draft post-mortem can still produce memory candidates (note the open question in the candidate summary).

3. Write the blame-free report

Sections in order — no individuals named, systems and processes only:

  1. Summary — one paragraph, blame-free, what happened and the business impact.
  2. Timeline — reference the skeleton timeline; do NOT rebuild it.
  3. Impact — users affected, duration, data, revenue, SLA.
  4. Detection — how the incident was discovered (monitoring, user report, alert, manual).
  5. Root cause — the confirmed or highest-confidence candidate; state confidence level if draft.
  6. Contributing factors — conditions that made the root cause possible (tooling gaps, process gaps, system state).
  7. What went well — at least one item; omitting this is a smell.
  8. What went wrong — process, tooling, signals, communication gaps. No individual blame.

Near-miss mode: same sections; set SEV: near-miss. Add two extra questions after "what went wrong":

  • "What would have made this worse?"
  • "Which control caught it — luck or a designed control?"

4. Corrective actions (folded-in phase)

For each identified gap, propose a corrective action. Reuse risk-officer mitigation framing: owner role, size, residual-risk note. Four action types:

TypePurpose
ImmediateStop recurrence now (config fix, kill switch, revert)
PreventiveRemove the root cause (architectural or process change)
DetectionCatch it sooner next time (alert, dashboard, runbook)
ProcessAddress human/coordination gaps (oncall rotation, docs)

Each action MUST have:

  • Owner role (eng, ops, PO, support — never "the team")
  • Closure criterion — specific, testable condition marking the action done
  • Regression signal — a test, monitor, or alert that proves the fix held

An action without a closure criterion is a wish, not a plan.

5. Memory write-back

Per docs/contracts/analysis-memory-loop.md § 2:

  1. Run the dedup pre-check — find_duplicate(...) from scripts/memory_lookup.ts over the same key-space (incident type, affected paths, decision area); a memory:lookup query over the same keys is the CLI equivalent.

  2. Match found — propose a frequency / supersedes update to the existing entry; do NOT create a new candidate.

  3. No match — draft a REDACTED incident-learnings candidate to /memory propose:

    • type: incident-learnings
    • summary: one-line pattern (no customer names, no secrets, no project-rooted paths)
    • evidence_paths: ≥ 2 file paths (for admission gate)
    • decision_surface: ≥ 3 decisions this pattern changes (if possible)
    • last_validated: today
    • review_after_days: 90
    • applicable_scope: project
  4. NEVER auto-promote. The human drives promotion via /memory promote. If the candidate fails the admission gate (check_memory_proposal.ts), surface the gap to the user.

If the lookup surfaces stale entries (past review_after_days), surface them explicitly — never silently use stale data.

Output

The post-mortem produces, in order:

  1. Post-mortem document — sections 1–8 from step 3; status final or draft if root cause is unresolved.
  2. Corrective-action table — each action with type, owner, closure criterion, regression signal.
  3. Memory candidate — the drafted incident-learnings JSONL snippet for /memory propose (or the frequency-update proposal if a duplicate was found).

Do NOT

  • Do NOT blame individuals — name systems, processes, signals, tooling.
  • Do NOT auto-promote to curated memory — the gate is human-driven.
  • Do NOT skip the dedup pre-check before drafting a memory candidate.
  • Do NOT ship raw PII, customer names, secrets, or project-rooted paths in the memory candidate (redact per the contract).
  • Do NOT reject or stall on an incomplete skeleton — mark draft and continue.
  • Do NOT rebuild the timeline from scratch — reference the skeleton's timeline.

Gotchas

  • Incomplete skeleton → status: draft, not a rejection. Draft post-mortems still produce memory candidates with the open question noted.
  • Near-miss → a mode within this skill, not a separate flow. Severity is near-miss; the extra two questions apply.
  • Corrective actions without closure criteria are non-actionable. Always require a specific, testable done condition.
  • Stale memory entries must be surfaced as stale, never merged into the findings. Never silently reuse stale data.

See also

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

Use when reviewing UI for accessibility — WCAG 2.2 AA, keyboard nav, focus, ARIA, contrast, screen-reader semantics — even on 'is this a11y-OK?' or 'mach das barrierefrei'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

Use when defining or auditing the activation event — aha-moment selection, retention correlation, falsifiable definition. Triggers on 'what is our aha moment', 'redefine activation'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

Use when capturing an architectural decision — file naming, next ADR number, Status / Context / Decision / Consequences, index regen; fires even without saying 'ADR'.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

Adversarial critique — devil's advocate, stress-test, honest teardown ('poke holes', 'be brutal', 'was hältst du davon'); explicit request only. Routine code or design review → code-review.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

Use when reading, creating, or updating agent documentation, module docs, roadmaps, or AGENTS.md. Understands the full .augment/, agents/, and copilot-instructions structure.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

Use for an adversarial red-team / blue-team / auditor review of an AI agent's CONFIG + behaviour (rules, skills, MCP, hooks, permissions) — attack-chain → defensive-gap list, not a code audit.

日本語の概要は準備中です。原文の説明を表示しています。

event4u-app/agent-config112026年10月11日 更新

event4u-app のスキルをすべて見る

このスキルの問題を報告する