Skip to main content
ClaudeWave
Skill259 repo starsupdated 2d ago

crisis-communications

Crisis communications provides structured frameworks and checklists for journalists and communications professionals responding to breaking news, organizational crises, and misinformation spread. It includes a first-30-minutes breaking news protocol with verification steps, an escalation matrix for determining newsroom response levels, and guidance on distinguishing confirmed facts from unverified claims before publication.

Install in Claude Code
Copy
git clone --depth 1 https://github.com/jamditis/claude-skills-journalism /tmp/crisis-communications && cp -r /tmp/crisis-communications/journalism-core/skills/crisis-communications ~/.claude/skills/crisis-communications
Then start a new Claude Code session; the skill loads automatically.

SKILL.md

# Crisis communications

Frameworks for accurate, rapid communication during high-pressure situations.

## When to activate

- Breaking news requires immediate coverage
- Organization faces public crisis or controversy
- Misinformation is spreading rapidly and needs countering
- Emergency situation requires coordinated communication
- Rapid fact-checking is needed before publication
- Preparing crisis response plans before incidents occur

## Breaking news protocol

### First 30 minutes checklist

```markdown
## Breaking news response

**Event**: [Brief description]
**Time detected**: [HH:MM]
**Initial source**: [Where we learned of this]

### Immediate actions (0-10 min)
- [ ] Verify event is real (minimum 2 independent sources)
- [ ] Alert editor/team lead
- [ ] Check wire services (AP, Reuters, AFP)
- [ ] Monitor official accounts (agencies, officials)
- [ ] DO NOT publish unverified claims

### Verification phase (10-30 min)
- [ ] Primary source contacted/confirmed
- [ ] Location verified (if applicable)
- [ ] Official statement obtained or requested
- [ ] Eyewitness accounts gathered (note: unverified)
- [ ] Social media claims flagged for verification

### First publication decision
- [ ] What we KNOW (confirmed facts only)
- [ ] What we DON'T know (be explicit)
- [ ] What we're working to confirm
- [ ] Attribution clear for every claim
```

### Newsroom escalation matrix

```python
from enum import Enum
from dataclasses import dataclass
from typing import List

class CrisisLevel(Enum):
    LEVEL_1 = "routine"      # Single reporter can handle
    LEVEL_2 = "elevated"     # Editor involvement needed
    LEVEL_3 = "major"        # Multiple reporters, editor oversight
    LEVEL_4 = "critical"     # All hands, executive involvement

@dataclass
class BreakingEvent:
    description: str
    level: CrisisLevel
    confirmed_facts: List[str]
    unconfirmed_claims: List[str]
    sources_contacted: List[str]
    assigned_reporters: List[str]

    def escalation_needed(self) -> bool:
        """Determine if event needs escalation."""
        triggers = [
            len(self.unconfirmed_claims) > 5,  # Too many unknowns
            "fatalities" in self.description.lower(),
            "official" in self.description.lower(),
            "government" in self.description.lower(),
        ]
        return any(triggers)

ESCALATION_TRIGGERS = {
    CrisisLevel.LEVEL_2: [
        "Multiple fatalities confirmed",
        "Major public figure involved",
        "Legal/liability concerns",
        "Significant local impact",
    ],
    CrisisLevel.LEVEL_3: [
        "National news potential",
        "Active danger to public",
        "Major institution affected",
        "Coordinated misinformation detected",
    ],
    CrisisLevel.LEVEL_4: [
        "Mass casualty event",
        "Government/democracy implications",
        "Our organization directly involved",
        "Imminent physical threat",
    ],
}
```

## Rapid verification framework

### The 5-minute verification

When time is critical, prioritize these checks:

```markdown
## Rapid verification checklist

### Source check (1 min)
- [ ] Who is claiming this?
- [ ] Are they in position to know?
- [ ] Have they been reliable before?

### Corroboration (2 min)
- [ ] Does anyone else confirm?
- [ ] Check wire services
- [ ] Check official sources

### Red flags (1 min)
- [ ] Too perfect/dramatic?
- [ ] Matches known false narratives?
- [ ] Single source only?

### Decision (1 min)
- [ ] PUBLISH: Multiple credible sources, no red flags
- [ ] HOLD: Needs more verification
- [ ] MONITOR: Developing, don't publish yet
```

### Verification triage

For verification mechanics (source credibility, image/video checks, archiving evidence), use the **source-verification** skill. This skill focuses on the time-pressure layer: what to triage first, who decides to publish, and how to communicate uncertainty.

Triage rule: claims with the highest physical-harm or election-impact potential go first, then claims that name specific people, then everything else.

## Crisis communication templates

### Holding statement

For when you need to say something but facts are incomplete:

```markdown
## Initial statement template

[Organization] is aware of [brief description of situation].

We are actively [gathering information / investigating / monitoring the situation].

[If applicable: The safety of [stakeholders] is our top priority.]

We will provide updates as verified information becomes available.

For media inquiries: [contact]
For [affected parties]: [resource/hotline]

Last updated: [timestamp]
```

### Correction/clarification

```markdown
## Correction notice

**Correction [or Clarification]**: An earlier version of this [article/statement/post] [stated/implied] [incorrect information].

[If factual error]: The correct information is: [accurate facts].

[If misleading]: To clarify: [accurate context].

This [article/statement] has been updated to reflect accurate information.

We regret the error.

[Timestamp of correction]
```

### Retraction (when necessary)

```markdown
## Retraction notice

**Retraction**: [Publication name] is retracting [article title], published on [date].

[Brief explanation of what was wrong]: Our reporting [stated/relied on] [problematic element]. Subsequent verification revealed [why it was wrong].

[What you're doing about it]: We have [removed/updated] the article and are reviewing our editorial processes.

[Accountability]: We apologize to [affected parties] and our readers.

The full text of the original article is available [here/on request] for transparency.

Questions: [contact]
```

## Social media crisis response

### Monitoring during crisis

```python
from dataclasses import dataclass
from datetime import datetime
from typing import List, Dict
from collections import Counter

@dataclass
class CrisisMention:
    platform: str
    content: str
    author: str
    timestamp: datetime
    sentiment: str  # positive, n
accessibility-complianceSkill

Web accessibility patterns for news sites, journalism tools, and academic platforms. Use when building accessible interfaces, auditing existing sites for WCAG compliance, writing alt text for news images, creating accessible data visualizations, or ensuring content reaches all readers including those using assistive technologies. Essential for newsroom developers and anyone publishing web content.

electron-devSkill

Electron desktop application development with React, TypeScript, and Vite. Use when building desktop apps, implementing IPC communication, managing windows/tray, handling PTY terminals, integrating WebRTC/audio, or packaging with electron-builder. Covers patterns from AudioBash, Yap, and Pisscord projects.

mobile-debuggingSkill

Remote JavaScript console access and debugging on mobile devices. Use when debugging web pages on phones/tablets, accessing console errors without desktop DevTools, testing responsive designs on real devices, or diagnosing mobile-specific issues. Covers Eruda, vConsole, Chrome/Safari remote debugging, and cloud testing platforms.

one-way-doorSkill

Use this skill when creating new files that represent architectural decisions — data models, infrastructure configs, auth boundaries, API contracts, CI/CD pipelines, or event systems. Flags irreversible decisions and forces a discussion about trade-offs before committing.

python-pipelineSkill

Python data processing pipelines with modular architecture. Use when building content processing workflows, implementing dispatcher patterns, integrating Google Sheets/Drive APIs, or creating batch processing systems. Covers patterns from rosen-scraper, image-analyzer, and social-scraper projects.

test-first-bugsSkill

This skill should be used when the user reports a bug, describes unexpected behavior, says something is "broken", "not working", "failing", mentions an "error", "issue", or "problem" in code, or asks to "fix" something. Enforces test-driven bug fixing workflow.

vibe-codingSkill

Methodology for effective AI-assisted software development. Use when helping users build software with AI coding assistants, debugging AI-generated code, planning features for AI implementation, managing version control in AI workflows, or when users mention "vibe coding," Claude Code, Cursor, GitHub Copilot, Aider, Continue, Cline, Codex, Windsurf, or similar AI coding tools. Provides strategies for planning, testing, debugging, and iterating on code written with LLM assistance.

web-scrapingSkill

Web scraping with anti-bot bypass, content extraction, undocumented APIs and poison pill detection. Use when extracting content from websites, handling paywalls, implementing scraping cascades or processing social media. Covers requests, trafilatura, Playwright with stealth mode, yt-dlp and instaloader patterns.