# Fireship “The Code Report” — Episode 2 (Rebuild)
Status: **rebuild v1** (script + storyboard table, tuned for receipts + goss + snappy pacing)
Goal: fix the “EDM buildup with no drop” failure by making the **cause → impact → receipts → mic-drop** crystal clear.
Renders page:
- `/studio/renders/fireship/episode2-rebuild`
---
## 0) What this rebuild is trying to do (and what we won’t do)
### The promise (Code Report vibe)
“Here’s the spicy tooling drama, why it happened, who it impacts, and what it means — with receipts.”
### What we got wrong last time (must not repeat)
- Hooked you, then didn’t explain **why the error matters** in a satisfying “drop”.
- Too many generic AI b‑roll frames; not enough **real receipts** + UI artifacts.
- Underused the meme + logo + UI ecosystem; we acted like we “couldn’t find it”.
### Visual constraints (non‑negotiable)
- **No placeholder frames**: every segment gets a deterministic still at minimum.
- AI stills/clips are **rare**; default is receipts + deterministic cards + UI mocks.
- “Social freakout” should be shown via **screenshots** (GitHub issues, threads, posts) where feasible.
---
## 1) Research receipts (must capture)
Primary receipts (we should show on screen):
- VentureBeat report (harness spoofing / crackdowns): `URL: https://venturebeat.com/technology/anthropic-cracks-down-on-unauthorized-claude-usage-by-third-party-harnesses/`
- Roo Code issue showing the exact error string: `URL: https://github.com/RooCodeInc/Roo-Code/issues/10566`
- “Ralph” repo (self‑healing loops / overnight runs): `URL: https://github.com/frankbria/ralph-claude-code`
- Anthropic Commercial Terms (use restrictions / competing products): `URL: https://www.anthropic.com/legal/commercial-terms`
Secondary receipts (optional, but good for “people freaking out”):
- OpenCode issue threads about the same error / auth restriction: `URL: https://github.com/anomalyco/opencode/issues/417`
- “Claude Code only” workaround chatter (choose 1–2, screenshot if accessible):
- `URL: https://www.paddo.dev/blog/claude-code-only-error`
- `URL: https://opencodeguide.com/en/opencode/errors/claude-credential-only-authorized`
UI/brand artifacts (prefer screenshots from product pages; fallback to our deterministic UI cards):
- Claude Code product page: `URL: https://claude.com/product/claude-code`
- Cursor product page: `URL: https://cursor.com/`
---
## 2) Script strategy (the “drop” we need)
### Core chain (must be explicit)
1) Claude Code goes viral → devs plug it into everything → “harness” ecosystem.
2) Harnesses create **support** and **abuse** problems:
- support: “it broke in my third-party client” becomes Anthropic’s problem.
- abuse: subscription/quota “buffet” gets turned into 24/7 agent loops.
3) Anthropic tightens the gate → the ecosystem sees it as **tea** (xAI/Cursor angle) → trust wobble.
4) Takeaway: subscription auth isn’t an API contract; reliability requires BYOK + routing + fallbacks.
### Density rules
- Every segment must do one of: land a joke, prove a claim with a receipt, or move the logic forward.
- No vague moralizing. No “AI influencer” tone.
---
## 3) Timestamped storyboard (v1)
Notes:
- Keep segments short to enforce pace (aim ~3–7s; sprinkle micro‑silence segments).
- Rows with `VO (tight)` set to `—` generate silence (for punchline landings).
| t_start | t_end | seconds | VO (tight) | Visual intent | Asset type | Prompt / sourcing notes | On-screen label | Music cue | SFX | Transition |
|---:|---:|---:|---|---|---|---|---|---|---|---|
| 0:00 | 0:05 | 5 | Breaking news: a new error message just dropped. And it’s the hottest gossip in developer tooling. | Cold-open headline | typography | True-black, huge type, subtle glitch grid. | NEW ERROR JUST DROPPED | bed in | sting_tiny | hard cut |
| 0:05 | 0:10 | 5 | “This credential is only authorized for use with Claude Code…” | Show the receipt immediately | screenshot | URL: https://github.com/RooCodeInc/Roo-Code/issues/10566
CROP_NORM: 0.08, 0.14, 0.84, 0.62 | CLAUDE CODE ONLY | bed dip | silence_250ms | cut |
| 0:10 | 0:15 | 5 | And if your brain went, “wait… why is that a story?” same. | Validate confusion (set up drop) | typography | Minimal card: “WHY IS THIS A STORY?” | WHY IS THIS A STORY? | bed | whoosh_short | cut |
| 0:15 | 0:20 | 5 | Because it’s not a bug. It’s a policy decision… leaking into your IDE. | Make the stakes explicit | typography | Rubber stamp graphic: “POLICY”. | POLICY DECISION | bed | click | cut |
| 0:20 | 0:26 | 6 | Claude Code went mega-viral, and devs finally onboarded. | Viral spike | chart | Simple “usage spike” chart. | IT WENT VIRAL | bed | whoosh_short | cut |
| 0:26 | 0:31 | 5 | Then we all did what developers do: we plugged it into everything. | Plug into everything montage | montage | Deterministic montage: terminal, IDE, browser, arrows. | PLUG IT INTO EVERYTHING | bed | whoosh_short | cut |
| 0:31 | 0:36 | 5 | Cursor. Roo Code. Bridges. “Harnesses”. | Name the ecosystem | ui | UI card with logo-ish badges (deterministic). | HARNESS ECOSYSTEM | bed | click | cut |
| 0:36 | 0:44 | 8 | A harness is a third-party client — like Roo Code — cosplaying as the official Claude Code app. | Define “harness” with a real anchor | screenshot | URL: https://github.com/RooCodeInc/Roo-Code
SCROLL_TO_TEXT: Roo Code
CROP_NORM: 0.06, 0.10, 0.88, 0.62 | ROO CODE | bed | whoosh_short | cut |
| 0:44 | 0:50 | 6 | It works… until it doesn’t. And then the support tickets show up. | Support pain setup | diagram | Diagram: User → third-party client → Anthropic support inbox. | SUPPORT TICKETS | bed | click | cut |
| 0:50 | 0:56 | 6 | “It broke in Cursor” becomes “Claude is broken.” | Punchy paraphrase | typography | Two-line headline; big contrast. | “CLAUDE IS BROKEN” | bed dip | silence_250ms | cut |
| 0:56 | 1:02 | 6 | Here’s the actual error in the wild — again. | Reinforce receipts | screenshot | URL: https://github.com/RooCodeInc/Roo-Code/issues/10566
SCROLL_TO_TEXT: credential
CROP_NORM: 0.06, 0.16, 0.88, 0.56 | IN THE WILD | bed | click | cut |
| 1:02 | 1:08 | 6 | Now the spicier one: the buffet loophole. | Pivot to abuse | typography | Buffet icon + token stream. | THE BUFFET LOOPHOLE | bed | sting_tiny | cut |
| 1:08 | 1:16 | 8 | Flat-rate plans are fine… until someone runs an agent loop for 24 hours straight. | Make abuse concrete | ui | Deterministic “loop” card: retries, backoff, status. | RUNNING… FOREVER | bed | glitch_tick | cut |
| 1:16 | 1:24 | 8 | Yes, somebody built that. It’s called “Ralph”. | Name drop | screenshot | URL: https://github.com/frankbria/ralph-claude-code
SCROLL_TO_TEXT: Ralph
CROP_NORM: 0.06, 0.18, 0.88, 0.62 | RALPH | bed | click | cut |
| 1:24 | 1:32 | 8 | Ralph reads your backlog… and keeps going until it’s done. | Explain “Ralph” in one beat | screenshot | URL: https://github.com/frankbria/ralph-claude-code
SCROLL_TO_TEXT: backlog
CROP_NORM: 0.06, 0.24, 0.88, 0.62 | BACKLOG → LOOP | bed | whoosh_short | cut |
| 1:32 | 1:34 | 2 | — | Micro-silence landing | typography | Hold on a clean frame. | | bed dip | silence_500ms | cut |
| 1:34 | 1:42 | 8 | That turns “unlimited” into “Anthropic is now your Series A investor.” | The joke (sharper) | typography | Big type + dollar burn meter. | UNLIMITED* | bed | boom_soft | cut |
| 1:42 | 1:48 | 6 | So Anthropic tightened the gate: Claude Code auth is for Claude Code. | Connect to error message | typography | Gate slams shut; error string ghosted behind. | THE GATE SLAMMED | bed | click | cut |
| 1:54 | 2:01 | 7 | And according to VentureBeat, they started cracking down on third-party harness spoofing. | Receipt: VB | screenshot | URL: https://venturebeat.com/technology/anthropic-cracks-down-on-unauthorized-claude-usage-by-third-party-harnesses/
CROP_NORM: 0.06, 0.10, 0.88, 0.56 | HARNESS SPOOFING | bed | click | cut |
| 2:01 | 2:06 | 5 | Now here’s where it turns into real tea. | Build anticipation | typography | “HERE’S THE TEA” big type. | HERE’S THE TEA | bed dip | sting_tiny | cut |
| 2:06 | 2:13 | 7 | VentureBeat also reports xAI staff lost access to Claude models — reportedly via Cursor. | xAI + Cursor claim (hedged) | screenshot | URL: https://venturebeat.com/technology/anthropic-cracks-down-on-unauthorized-claude-usage-by-third-party-harnesses/
SCROLL_TO_TEXT: xAI
CROP_NORM: 0.06, 0.18, 0.88, 0.60 | xAI + CURSOR | bed | sting_tiny | cut |
| 2:13 | 2:20 | 7 | And the underlying reason is extremely boring: competing product restrictions. | Set up terms receipt | typography | Minimal legal-ish card. | COMPETING PRODUCTS | bed | click | cut |
| 2:20 | 2:28 | 8 | Anthropic’s terms literally say you can’t use the service to build a competing product. | Terms snippet | terms | QUOTE: Customer may not access the Services to build a competing product or service. HIGHLIGHT: build a competing product SOURCE: anthropic.com/legal/commercial-terms | NO COMPETITORS | bed | click | cut |
| 2:28 | 2:36 | 8 | Translation: we’re not letting competitors train on our GPU bill. | Translate legal into English | typography | Big type + GPU icon + “NOT ON OUR DIME”. | NOT ON OUR DIME | bed dip | silence_250ms | cut |
| 2:36 | 2:44 | 8 | That’s the drop: your IDE just got rate-limited by corporate strategy. | The actual mic-drop | typography | “CORPORATE STRATEGY” slams down like a bass drop. | CORPORATE STRATEGY | bed | boom_soft | cut |
| 2:44 | 2:50 | 6 | And it breaks trust, because now your dev workflow is somebody else’s switch. | Trust wobble | diagram | Jenga / dependency chain (deterministic). | SOMEONE ELSE’S SWITCH | bed | rumble_soft | cut |
| 2:50 | 2:56 | 6 | So the takeaway is simple: subscription auth is not an API contract. | One-liner takeaway | typography | Contract dissolves into warning icon. | NOT AN API CONTRACT | bed dip | silence_500ms | cut |
| 2:56 | 3:04 | 8 | If you want reliability: BYOK keys, multi-provider routing, and fallbacks. | Practical solution | diagram | Key → router → providers. | BYOK + ROUTING | bed | whoosh_short | cut |
| 3:04 | 3:12 | 8 | Otherwise, enjoy the future where error messages have terms and conditions. | Final joke (clearer callback) | ui | Fake compiler error: “LEGAL_EXCEPTION”. | LEGAL_EXCEPTION | bed | glitch_tick | cut |
| 3:12 | 3:20 | 8 | This has been the Code Report. Thanks for watching — and I’ll see you in the next one. | Outro | typography | End card, simple. | SEE YOU NEXT | bed out | sting_tiny | fade |