agentleFS
sebastienrousseausebastienrousseau/agtmls/skills/incident-response/SKILL.md

incident-response

Skill1 starsChanged 3 months agoApache-2.0View on GitHub

Restore service first, find the cause afterwards. Load when something is broken in production right now: an outage, a bad deploy, data at risk, alerts firing, users affected. Prioritises mitigation over diagnosis, keeps a running timeline, and defers the root cause to a blameless follow-up. Not for unhurried debugging of a reproducible defect.

81 other projects use a version of this.

Adopted by

Most recently taken up by

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.
  • jholhewresSkill

    dora-metrics

    Calculate DORA metrics from git + deploy logs

    Also in 3 projects that use this

  • YepAPISkill

    background-jobs

    Queue workers with BullMQ/Inngest/Trigger.dev, job retries, dead letter queues, concurrency.

    Also in 4 projects that use this

  • MicrosoftSkill

    data-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

  • YepAPISkill

    data-pipelines

    ETL patterns, cron scheduling, queue-based processing, and batch jobs with Inngest/BullMQ.

    Also in 4 projects that use this

  • mmondoraSkill

    infrastructure-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-blipSkill

    threat-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

The file

We split this skill into the rules it gives an agent

3 rules. 0 are common, 3 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 68 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    How many, and how badly?: All users or one region? Degraded or dead?

    line 46
  2. Distinctive:

    Nominate one coordinator: if more than two people are involved.

    line 62
  3. Distinctive:

    Write it *during*, not after.

    line 98

“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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Incident response

Trigger. Something is broken now and someone is affected: an outage, errors spiking after a deploy, data being written wrongly, a security alert, a pager. The distinguishing feature is not difficulty — it is that time is costing something.

Reference material (severity rubric, mitigation menu, comms templates, and running the blameless postmortem): see reference.md in this directory.

The rule

Stop the bleeding before you understand the wound.

This inverts normal engineering discipline, and deliberately. systematic-debugging says no edit before an explanation — correct when the only cost is your time. In an incident the cost is accruing per minute, and a mitigation you do not fully understand is usually better than a correct fix you do not have yet.

The trap is the opposite instinct: an engineer who finds the cause interesting will investigate while users stay broken. Resist it.

The order

1. Assess — one minute

  • What is the user-visible impact? Not "the queue is backed up" but "no one can check out".
  • How many, and how badly? All users or one region? Degraded or dead?
  • Is data at risk? Corruption or loss changes everything: it can outlive the outage and may be unrecoverable. Prioritise stopping the writes.
  • Is it getting worse?

2. Communicate — immediately, then on a clock

Say something within minutes, even with nothing to report:

Investigating elevated 500s on checkout since 14:02. Impact: roughly 30% of checkout attempts failing. No cause yet. Next update 14:30.

Then keep the interval, whether or not there is news. Silence is read as either "nothing is happening" or "it is worse than they are saying", and both cost you more than an unglamorous update.

Nominate one coordinator if more than two people are involved. Their job is deciding and communicating, not typing commands.

3. Mitigate

Reach for the fastest safe lever, in roughly this order:

LeverWhen
Roll backCorrelates with a deploy. Almost always first.
Feature flag offThe path is flagged
Scale up / restartResource exhaustion or a wedged process
Shed load / rate-limitOverload, cascading failure
Fail overOne region, node, or dependency is bad
Block the write pathData is being corrupted — stop it even at the cost of availability
Forward fixOnly when rollback is impossible and the change is small and understood

Rollback is not defeat. "Deployed at 13:58, errors at 14:02" is enough correlation to act on. You do not need to know why to roll back, and rolling back a good deploy costs far less than debugging a bad one live.

4. Verify the mitigation

Confirm with the same signal that showed the problem — the error rate, the dashboard, a real request. "It should be fixed now" is how an incident gets declared over twice. See verification-before-completion.

5. Stand down, then diagnose

Once impact has stopped, the incident is over and the investigation begins — and it begins under systematic-debugging, not here. Do not keep the incident open for the root cause, and do not skip the investigation because the symptom is gone.

Keep a timeline as you go

Write it during, not after. Memory reorders under stress and the timeline is what makes the follow-up honest.

14:02  alerts: checkout 500s at 30%
14:04  posted first update
14:07  noticed deploy #4821 at 13:58 — correlated
14:09  rolled back #4821
14:13  error rate back to baseline; confirmed with a real checkout
14:20  stood down; investigation moved to #incident-4821

Timestamps, actions, observations. Not analysis — that comes later.

Anti-patterns

  • Debugging while the site is down. The most common and most expensive.
  • Multiple people changing production at once. One pair of hands, or you will not know which action did what.
  • Silent heroics. Fixing without telling anyone means duplicate effort and no timeline.
  • Skipping the write-up because it turned out to be simple. Simple causes recur.
  • Blame. It ends the flow of information, which is the only thing keeping the next incident short.

When not to use

  • The defect is reproducible and nothing is on fire: systematic-debugging.
  • A failing test or a red CI run with no user impact.
  • Planned degradation you already knew about.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.