incident-comms
Skill2 starsChanged 20 days agoMITView on GitHub
Tell users about a Solana product incident (failing txs, paused program, broken upgrade, exploit) with a severity ladder tied to onchain state, pre-written updates, an HTML status page and a user-facing postmortem. Use for "incident", "outage", "status page", "exploit comms" or "postmortem".
1 other project uses a version of this.
Adopted by
Most recently taken up by
- jpoindexter/theft-kittheir own version, first seen May 20, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- jpoindexter/theft-kit★ 1same 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 repository11 other files it gives its agents.
- build-statusSkill
- ecosystem-bdSkill
- fundraisingSkill
- hackathonSkill
- idea-sprintSkill
- launchSkill
- market-sizingSkill
- pitch-deckSkill
- pitch-reviewSkill
- positioningSkill
- pricingSkill
The file
We split this skill into the rules it gives an agent
4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 68
Write the user-facing account from postmortem.html: what users lost, what is being done about it, what changes.
- Distinctive: line 72
Add the postmortem link to the status page entry and the known-issue entry, and set both to resolved.
- Very specific: line 74
If preparation failed (a late first update, an unreachable signer, a status page that went down with the app), fix the plan in incidents.md …
- Distinctive: line 81
Every onchain action you take (pause, upgrade, authority change) is announced with its transaction link, before someone else finds it.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Incident comms
The stack can detect an incident and diagnose it. This skill decides what users are told, where, and by when. It is deliberately thin on top of three packs, and links them instead of restating them:
| Job | Owner |
| Detection, triage, technical report | auditor-skill, ai-kit /audit-infra and /debug-user-tx |
| Disclosure law, regulators, counsel | crypto-legal-skill |
| Community channels and tickets | community-moderation |
| Sending email, push and SMS | courier-skills (the delivery half; see #5) |
| What is said, where, by when | this skill |
Context handoff
At start, read .claude/context/incidents.md if present: it holds this team's ladder,
roles, approved templates and open incidents. Read .claude/context/launch.md if present;
an incident during a launch's L+ window also changes that runbook. Take product name and
the words to avoid from .claude/context/positioning.md if present.
Writes .claude/context/incidents.md in the format at the end of
severity.md, including the ## Known issues section.
Mode 1: prepare (peacetime; do this first)
- Fill the ladder and roles in severity.md with this team's channels, deadlines and two names per role.
- Adapt the templates in updates.md to the product: real action names, the vault and program accounts users can check, the support link. Get the SEV-1 versions, and any wording about user losses, approved once by counsel, and record who approved them and when.
- Build the status page from status-page.html and deploy it on a host and domain that do not fail with the app. Confirm someone other than the app's CI can update it.
- List the integrators who route users to you (aggregators, wallets, partners) with a direct contact for each. In a SEV-1 they are the fastest way to stop new users arriving.
- Write
.claude/context/incidents.md.
Mode 2: during an incident
- Set severity from onchain reality using the ladder. Ask: can a user lose funds, act
on their funds, or only see the wrong thing? Open
INC-<YYYYMMDD>-<n>in the log. - Acknowledge before you understand. Post update 1 from updates.md to the status page, then link it in each channel the ladder names, within the first-update deadline. For a malicious frontend or DNS, the first line is "don't use {{DOMAIN}}", and nothing delays it.
- Write the known-issue entry in the same minute, per known-issue.md, so community-moderation's dedupe step links members to the status page instead of opening duplicate tickets.
- SEV-1: switch to the exploit track. The warning goes out now; amounts, cause, compensation, messages to the attacker and any contact with regulators, law enforcement or issuers wait for counsel via crypto-legal-skill. Do not draft those here, and do not guess at them.
- Progress updates on the ladder's cadence, even when nothing changed. Re-grade severity on evidence, in either direction, and say so in the next update.
- Resolve with update 3. A SEV-1 stays "Mitigated" while the cause is unknown or funds are still held by an attacker.
Mode 3: after
- Write the user-facing account from postmortem.html: what users lost, what is being done about it, what changes. It links the auditor's technical report and does not replace it. For a SEV-1, or any postmortem that mentions user losses, counsel sees it before it is published.
- Add the postmortem link to the status page entry and the known-issue entry, and set both to resolved.
- If preparation failed (a late first update, an unreachable signer, a status page that went
down with the app), fix the plan in
incidents.mdnow.
Rules
- "Funds are safe" is a statement about chain state. Say it only after the accounts have been checked onchain.
- Every onchain action you take (pause, upgrade, authority change) is announced with its transaction link, before someone else finds it.
- Legal, regulatory and compensation questions go to crypto-legal-skill. Say so and stop.
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.

