The routing table
When you send a message, the first thing Ralphy does is look atAGENTS.md — a file with one row per intent. Each row names a playbook (a markdown file under docs/playbooks/) and the playbook is the script Ralphy follows. No match → Ralphy asks one clarifying question that pins your ask to a row. Multiple matches → Ralphy chains the playbooks in role order (researcher → scenarist → art-director → editor).
You don’t have to know the playbook names. You just have to be specific enough that one row beats the others.
Eight utterances and what they fire
The phrasing on the left triggers the playbook on the right.| You say | Ralphy reads |
|---|---|
| ”Make a video about my new coffee syrup” | intake.md — five questions, draft plan, wait for “go" |
"Make me something like this <tiktok-url>” | researcher skill → pulls the URL, then intake |
| ”Rewrite scene 3 — punchier hook” | scenarist.md |
| ”Regenerate the bottle shot in scene-04, try seedance” | art-director.md |
| ”Render the final cut with loudnorm” | editor.md |
| ”Make 10 variants from this template” | producer.md → batch create-from-template |
| ”Is this render ready to ship?” | evaluator skill — scene-by-scene scoring |
| ”Nothing works, my key is missing” | core.md → ralphy doctor |
How to phrase a brief
Five things make a brief productive on the first turn. Drop any of them in and Ralphy stops asking.- Audience language — EN, RU, KR, other. This drives the audio pipeline: Kling’s
--audioflag for English, ElevenLabs for non-English. Chat language is not the same as video language. - Aspect / platform — 9:16 TikTok, 16:9 YouTube, 1:1 broadcast-realism. Square is the right call for “caught-on-TV” trends; portrait kills that illusion.
- Brand or named entity — if the brief names a real person, a recognizable brand product, or a known IP, attach a reference image. Without one, the reference-required gate refuses (AGENTS invariant #3). Generic work (“my coffee shop’s pastry”) proceeds without.
- Duration ballpark — 5-10s test render, 15-30s standard, 60s+ long-form. Most templates document
typicalDurationSec; the default is 15s if you don’t say. - Hard “no”s — banned words, no-music policy, brand colors, anything Ralphy should never volunteer.
When Ralphy asks clarifying questions
The intake protocol caps real questions at five per turn. Each question names a specific decision and offers a default you can accept (“Decision: aspect. Default: 9:16. Override?”). If the default is fine, say “go” and Ralphy proceeds; if not, override the one decision and Ralphy moves on. You’ll never see “Should I proceed?” or “Just to confirm…” — those are explicitly banned by the intake playbook because they add no information and break the one-beat-at-a-time loop. If Ralphy needs to act, it acts and tells you what it did; if it needs a decision, it asks a real question.Explicit overrides
A handful of phrases let you cut through the default cadence.- “Skip intake, just generate.” Tells Ralphy you’ve done this before and don’t need the five-question check. Honored for this project only; the next new project still hits intake.
- “Use template
<slug>.” Pins the template choice and skips thetemplate suggeststep. Same as runningralphy template use <slug>yourself. - “Fire the whole batch, don’t go one by one.” Switches from the per-scene checkpoint cadence to batch mode for this project. Ralphy notes the preference for that project; it does not generalize across projects.
--no-ref-consent "<reason>"— the only override for the reference-required gate. Passed as a flag on the failingralphy generatecall, where`<reason>`is a short string. Logsstage: "no-ref-consent"touser-prompts.jsonlso the next session can see you deliberately accepted the quality hit. Detail: Brands, personas, refs.
What “developer mode” looks like
If you’re running Ralphy as a developer building the CLI itself, every session opens with a bareralphy call that reads your skill profile from ~/.ralphy/user-profile.json. The is_developer badge flips Ralphy into minimal-intake mode: no mini-lectures, raw CLI suggestions, ship-fast defaults. Most readers of this section don’t have the badge — you’ll get the standard intake. If you want it: contribute a fix, ship a PR, the signal flips on its own.
Related
- Starting a project — the intake protocol in full
- Picking a template —
template suggestand the 54-template menu - Playbooks and skills — how routing actually works
AGENTS.md— the routing contract, 13 invariantsintake.md— the playbook this page paraphrases