English · 简体中文 »
promo-plan turns a rough video idea into a complete execution plan that another AI agent runs unattended.
You answer a short interview. It writes a PLAN.md — a step-by-step build manual with a machine-verifiable "definition of done" — plus a watchdog and a monitor script. Then Claude Code or Codex renders your promotional video while you sleep, no babysitting.
It automates the thing people were doing by hand: writing a long, careful plan so an AI can run all night without stopping to ask questions. The interview logic, templates, and acceptance criteria are distilled from two real promo videos that actually shipped — not designed from scratch.
| 🗣️ Short interview | Mostly multiple-choice — click through the defaults. |
| 🎯 Zero-ambiguity output | Keeps asking until a brand-new agent could run the plan with no further questions. |
| 🌙 Overnight & hands-free | A watchdog re-wakes the agent until the video passes acceptance. |
| ✅ Machine-verifiable | Every "done" check is a command or a screenshot — the watchdog's exact stop condition. |
flowchart TD
A([💡 Your idea]):::idea --> B
subgraph S1["🗣️ 1 · Interview — human in the loop"]
direction TB
B[Core + genre questions]:::iv --> C[Gather answers]:::iv
C --> D{Readiness gate<br/>can a fresh agent run it<br/>with zero questions?}:::iv
D -->|No · ask more| B
end
D -->|Yes| E[Echo spec and confirm]:::gen
subgraph S2["⚙️ 2 · Generate — autonomous"]
E --> F[[PLAN.md · PROGRESS.md<br/>run-overnight.sh · monitor.sh]]:::gen
end
subgraph S3["🌙 3 · Render — unattended, overnight"]
F --> G[bash run-overnight.sh<br/>watchdog loop]:::ren
G --> H{DONE flag?}:::ren
H -->|No · re-wake| G
end
H -->|Yes| Z([🎬 Finished video<br/>out/*.mp4]):::done
classDef idea fill:#FEF3C7,stroke:#F59E0B,color:#78350F,stroke-width:1px;
classDef iv fill:#EEF2FF,stroke:#6366F1,color:#312E81,stroke-width:1px;
classDef gen fill:#ECFDF5,stroke:#10B981,color:#065F46,stroke-width:1px;
classDef ren fill:#FFF7ED,stroke:#FB923C,color:#7C2D12,stroke-width:1px;
classDef done fill:#F5F3FF,stroke:#8B5CF6,color:#4C1D95,stroke-width:1px;
style S1 fill:#F8FAFF,stroke:#C7D2FE,color:#3730A3
style S2 fill:#F4FFFB,stroke:#A7F3D0,color:#065F46
style S3 fill:#FFFBF5,stroke:#FED7AA,color:#9A3412
Currently specialized for promo / product / brand videos (default stack: Remotion, local render, no token cost).
Option 1 — Drop into skills (simplest)
Copy the skills/promo-plan/ folder into one of:
- Project-level:
<your-project>/.claude/skills/promo-plan/ - User-level:
~/.claude/skills/promo-plan/
Then type /promo-plan in Claude Code.
Option 2 — As a plugin marketplace
/plugin marketplace add https://github.com/Natt-code216/promo-plan
/plugin install promo-plan@promo-plan-marketplace
Copy codex/promo-plan-prompt.md to ~/.codex/prompts/promo-plan.md, then type /promo-plan in Codex.
See codex/AGENTS.md for details and the Codex watchdog equivalent command.
1. When to use it — you want a polished promo video built by an AI overnight, and you'd rather answer a short interview than hand-write a long plan yourself.
2. How to answer the interview — answer these clearly and the plan comes out sharp:
| Topic | What to say |
|---|---|
| Subject & positioning | product name, one-line pitch, website URL |
| Deliverable spec | duration, resolution (default 1920×1080), fps (default 30), aspect (16:9 / 9:16) |
| Reference style | e.g. "calm & minimal like Apple", "fast info-dense cut" |
| Real material | can the site be scraped? login needed? brand color (hex), fonts, logo |
| Privacy | keep real data as-is, or mask it |
| Constraints | no paid APIs (default), local render only (default) |
💡 Leave things blank — the skill drafts sensible defaults from your reference style and only asks about real gaps.
3. What it generates
| File | Description |
|---|---|
PLAN.md |
Part A (human setup) + Part B (agent task spec) + a machine-verifiable acceptance checklist + staged steps + troubleshooting + code appendix |
PROGRESS.md |
pre-filled stage checklist the agent ticks off |
run-overnight.sh |
watchdog loop — re-wakes the agent until the DONE flag appears |
monitor.sh |
read-only progress monitor |
📄 See a full generated example:
examples/sample-tide-promo/— the four files promo-plan produced from a single brief.
4. How to run after generation
git init -q && git add -A && git commit -qm "checkpoint: before run" # 1) rollback safety
bash run-overnight.sh # 2) watchdog (unattended)
bash monitor.sh # 3) (optional) watch in a 2nd terminalIn the morning, open the output video and review PROGRESS.md against the acceptance checklist.
5. Do & Don't
- ✅ Run in a dedicated empty folder, on your own machine, against your own site, with a git checkpoint first.
- ✅ Skim the generated
PLAN.mdonce before launching — it's plain Markdown. - ❌ Don't publish a
PLAN.mdthat contains real passwords / login state. - ❌ Don't run the watchdog on a shared / production machine.
- Golden-template reverse-engineering — templates & examples come from two videos that actually rendered, not theory.
- Readiness gate — generation is blocked until "a brand-new agent can execute with zero questions."
- Machine-verifiable acceptance — every checklist item is verified by a command/screenshot (
ffprobeduration,viewa still for glyphs, "which real screenshot was used"). This is the watchdog's exact stop condition. - Safety built-in — Part A always includes a git checkpoint and a skip-permissions risk notice.
.
├── .claude-plugin/ # plugin manifest + single-plugin marketplace
├── skills/promo-plan/
│ ├── SKILL.md # the brain: interview protocol + readiness gate
│ ├── templates/ # PLAN / PROGRESS / watchdog / monitor
│ └── references/ # question bank · done-criteria · few-shot examples
├── commands/promo-plan.md # /promo-plan slash command
├── codex/ # Codex edition (AGENTS.md + custom prompt)
├── examples/sample-tide-promo # a full generated showcase
├── LICENSE
└── README.md · README.zh-CN.md
Unattended execution relies on a skip-confirmation mode (Claude --dangerously-skip-permissions / Codex --dangerously-bypass-approvals-and-sandbox), which has no protection against prompt injection. Only run in a dedicated folder, on your own machine, against your own site, and make a git checkpoint first. Never share a PLAN.md or auth-state.json that contains secrets.
v0.1 — promo / video only. Roadmap: generalize beyond video; richer per-genre question banks.
MIT · © 2026 promo-plan contributors