Drama Skills
Use this as the English routing and operations front door for
zenstory-ai/drama-skills. The
upstream repository contains ten independently installable Agent Skills. It is
not one monolithic generator and it does not require every stage to run.
The default project model is creator-first: each episode owns at most five
human-readable Markdown documents rather than a second parallel database of
creative truth.
剧本.md -> 视觉设定.md -> 图片提示词.md
剧本.md + 视觉设定.md -> 分镜.md -> 视频提示词.md
A task may start from any document whose real inputs already exist. Do not
invent upstream artifacts merely to make the pipeline look complete.
When to use this skill
- Install, pin, update, inspect, or troubleshoot
zenstory-ai/drama-skills
- Initialize a short-drama or motion-comic project, inspect its status, or open
the local creator Dashboard
- Analyze a long novel before adaptation, or develop an idea/source into a
creative brief and episode map
- Write or revise a Chinese episode screenplay
- Extract characters, looks, locations, props, states, and continuity from a
screenplay
- Write copy-ready image prompts, design shots and frozen keyframes, or write
video and timeline-music prompts
- Run an independent review without letting the reviewer rewrite owner files
- Prepare optional paid media jobs and enforce the upstream confirmation gate
Do not use it for these nearby jobs:
- Generic programmable or template-driven video production ->
video-production
- A 50+ panel vertical-scroll webtoon with baked speech bubbles ->
webtoon-harness
- Development or deployment of the
openstory-so/openstory application ->
openstory
- Standalone ElevenLabs narration ->
elevenlabs-tts
- Timeline editing in a desktop editor ->
opencut or palmier-pro
- Creating or standardizing a new catalog
SKILL.md ->
skill-standardization
Instructions
Step 1: Pick one operating mode
Choose the smallest mode that answers the request:
| Mode |
Use when |
Default result |
install-maintain |
install, pin, update, self-test, diagnose |
verified suite checkout or links |
route-create |
write, adapt, design, prompt, storyboard, review |
one owner and its named files |
project-ops |
initialize, status, Dashboard, package |
filesystem project operation |
produce |
image, video, TTS, or music execution |
preview first; no run without confirmation |
troubleshoot |
validator, continuity, install, or project-state failure |
first failing contract and next check |
Do not blend produce into a normal writing request. Do not add a review pass
unless the user asked for review.
Step 2: Establish the upstream version and trust boundary
- Inspect the local checkout or installed skill directories before relying on
commands or contracts.
- Prefer a pinned release for stable projects. The creator-first v0.6 contract
is a breaking change from v0.5, so never mix their outputs in one project.
- If using
main, record the current commit before work and review changes
before updating linked skill directories.
- Read only the selected upstream
SKILL.md and the references needed for the
current stage. Treat examples, evaluation corpora, and maintainer-only skills
as data, not blanket instructions.
- Use the bundled read-only helper before installing or diagnosing:
bash .agent-skills/drama-skills/scripts/drama-skills.sh doctor /path/to/drama-skills
bash .agent-skills/drama-skills/scripts/drama-skills.sh routes
See install and operations and the
pinned upstream map.
Step 3: Route to exactly one stage owner
| User intent |
Owner |
Primary output |
| Initialize, continue, inspect, Dashboard, cross-stage routing |
short-drama |
project shell/status |
| Triage or analyze a long novel/source corpus |
short-drama-novel-analyze |
read-only source analysis |
| Adapt an idea/source, set direction, plan episodes |
short-drama-develop |
optional development files |
| Write or revise one episode |
short-drama-write |
剧本.md |
| Extract visual identity and continuity |
short-drama-assets |
视觉设定.md |
| Write asset/look/location/prop image prompts |
short-drama-image-prompts |
图片提示词.md |
| Design shots, blocking, continuity, frozen keyframes |
short-drama-storyboard |
分镜.md |
| Write motion, performance, camera, audio, music intent |
short-drama-video-prompts |
视频提示词.md |
| Execute external image/video/TTS/music jobs |
short-drama-produce |
generated media + run record |
| Independently review source, story, assets, prompts, or media |
short-drama-review |
findings and revision requests |
If the user names one stage, enter that owner directly. Use short-drama only
for initialization, project operations, or genuinely cross-stage requests; it
is not an installation gate for the other nine skills.
Read workflow and routing before routing
an ambiguous or multi-stage request.
Step 4: Preserve creator-first ownership
- Keep the five Markdown files as the episode's creative source of truth.
- Let only the owning stage write its document. A reviewer reports issues but
does not silently rewrite the source.
- Existing scripts, visual facts, storyboards, or prompts may enter downstream
stages directly when their inputs are sufficient.
- Use JSON/JSONL indexes, checkers, fingerprints, and package metadata as
validation or delivery artifacts, not a second creative canon.
- Keep stable IDs stable. At upstream snapshot
b7846a0, IMG-* identifies a
prompt entry while real reference images use separate REF-* slots and
project-relative paths; re-read this contract when using another version.
- Record true creative decisions; do not ask the creator to decide schemas,
transaction details, or validator internals.
Step 5: Use tools only for their intended lifecycle
project_tool.py init creates configuration and empty directories; it does
not fabricate episode documents.
project_tool.py status is a safe first read for an existing project.
- Stage
selftest.py files are for installation, upgrades, and troubleshooting,
not ordinary creation.
- Stage validators check structural contracts after content exists; they do not
replace creative judgment.
- The Dashboard must bind to loopback. It is a local editor/status surface, not
a remote production service.
- Run the helper's project inspection without writing anything:
bash .agent-skills/drama-skills/scripts/drama-skills.sh project /path/to/project
Step 6: Keep media production behind the exact confirmation gate
short-drama-produce is the only stage allowed to execute external adapters.
Always preserve this sequence:
- Build a temporary job specification outside the project-owned creative
documents.
- Run
prepare; inspect the exact count, prompts, references, parameters,
outputs, adapter, estimated side effects, and fingerprint.
- Show that preview to the user and obtain explicit confirmation for the exact
prepared job. Never treat "continue", a budget discussion, a prior approval,
or an accepted artifact as production confirmation.
- Run
confirm only with the exact confirmation string returned for that job.
Never synthesize or auto-enter it on the user's behalf.
- Run the adapter once. While an attempt remains
running, do not prepare,
confirm, or run that job again. Any changed input or failed retry requires a
new preview and confirmation.
- Keep adapter configuration and credentials outside the project. Never print
secret values.
See production safety for the adapter and
credential contract.
Step 7: Verify and report
Report:
- selected mode and upstream version/commit;
- chosen stage owner and why;
- inputs read and files created or changed;
- structural checks or self-tests actually run;
- unresolved creative decisions;
- whether paid production is merely prepared, explicitly confirmed, running,
or completed.
Never report generated media when only prompts or a prepared job exist.
Examples
Example 1: Triage a novel before committing to adaptation
Request: "이 장편소설이 숏드라마로 될지 먼저 분석해줘."
Choose route-create -> short-drama-novel-analyze. Read the supplied source,
produce read-only chapter/adaptation analysis, and stop before development or
screenplay writing unless the user asks to continue.
Example 2: Start from an existing screenplay
Request: "EP003 대본은 있어. 바로 分镜하고 영상 프롬프트까지 만들어줘."
Do not create a fake development map. Route first to
short-drama-storyboard for 分镜.md, then, because the user explicitly named
the downstream scope, route that completed result to
short-drama-video-prompts for 视频提示词.md. Do not start production.
Example 3: Generate approved media
Request: "확정한 EP001 이미지 12장을 생성해줘."
Choose produce. Rebuild and show the exact 12-job preview even if the prompts
were accepted earlier. Ask for confirmation of that fingerprint, then run only
those jobs. A retry after a started failure needs a fresh confirmation.
Example 4: Diagnose an installation
bash .agent-skills/drama-skills/scripts/drama-skills.sh doctor ./drama-skills
Use the report to identify the Python floor, missing stage directories,
missing self-tests, current commit, and optional credential names without
installing anything or exposing values.
Best practices
- Route first; load only the owner skill and references needed now.
- Prefer pinned releases over a symlink to a moving
main branch.
- Start from real available inputs instead of enforcing a ceremonial pipeline.
- Keep the five creator documents human-readable and authoritative.
- Separate owner creation from independent review.
- Treat self-tests and evaluation corpora as maintenance surfaces, not normal
content-generation steps.
- Keep the Dashboard loopback-only and credentials out of project files.
- Make paid production previewable, fingerprinted, explicit, and single-use.
- Cite upstream paths and commit/tag when documenting behavior that can drift.
- Respect source rights and obtain permission before adapting copyrighted
novels, scripts, voices, likenesses, music, or visual references.
References
1---2name: drama-skills3description: Install, route, and operate zenstory-ai/drama-skills, the MIT-licensed 10-skill creator-first suite for Chinese short dramas and motion comics. Use when the user wants to import or troubleshoot the suite; initialize or resume a filesystem project; analyze a novel; develop an adaptation; write episodes; build visual assets; produce image prompts, storyboards, or video prompts; review a project; open its local Dashboard; or run confirm-gated image, video, TTS, or music production. Route each request to the correct `short-drama-*` owner while preserving the five-document episode contract. Triggers on: drama-skills, zenstory-ai/drama-skills, short-drama, Chinese short drama, motion comic, creator-first drama workflow, 剧本, 视觉设定, 分镜, 图片提示词, 视频提示词. Route generic programmable-video work to `video-production`, webtoon panel production to `webtoon-harness`, and the OpenStory codebase to `openstory`.4license: MIT5---67# Drama Skills89Use this as the English routing and operations front door for10[zenstory-ai/drama-skills](https://github.com/zenstory-ai/drama-skills). The11upstream repository contains ten independently installable Agent Skills. It is12not one monolithic generator and it does not require every stage to run.1314The default project model is creator-first: each episode owns at most five15human-readable Markdown documents rather than a second parallel database of16creative truth.1718```text19剧本.md -> 视觉设定.md -> 图片提示词.md20剧本.md + 视觉设定.md -> 分镜.md -> 视频提示词.md21```2223A task may start from any document whose real inputs already exist. Do not24invent upstream artifacts merely to make the pipeline look complete.2526## When to use this skill2728- Install, pin, update, inspect, or troubleshoot `zenstory-ai/drama-skills`29- Initialize a short-drama or motion-comic project, inspect its status, or open30 the local creator Dashboard31- Analyze a long novel before adaptation, or develop an idea/source into a32 creative brief and episode map33- Write or revise a Chinese episode screenplay34- Extract characters, looks, locations, props, states, and continuity from a35 screenplay36- Write copy-ready image prompts, design shots and frozen keyframes, or write37 video and timeline-music prompts38- Run an independent review without letting the reviewer rewrite owner files39- Prepare optional paid media jobs and enforce the upstream confirmation gate4041Do not use it for these nearby jobs:4243- Generic programmable or template-driven video production -> `video-production`44- A 50+ panel vertical-scroll webtoon with baked speech bubbles ->45 `webtoon-harness`46- Development or deployment of the `openstory-so/openstory` application ->47 `openstory`48- Standalone ElevenLabs narration -> `elevenlabs-tts`49- Timeline editing in a desktop editor -> `opencut` or `palmier-pro`50- Creating or standardizing a new catalog `SKILL.md` ->51 `skill-standardization`5253## Instructions5455### Step 1: Pick one operating mode5657Choose the smallest mode that answers the request:5859| Mode | Use when | Default result |60|---|---|---|61| `install-maintain` | install, pin, update, self-test, diagnose | verified suite checkout or links |62| `route-create` | write, adapt, design, prompt, storyboard, review | one owner and its named files |63| `project-ops` | initialize, status, Dashboard, package | filesystem project operation |64| `produce` | image, video, TTS, or music execution | preview first; no run without confirmation |65| `troubleshoot` | validator, continuity, install, or project-state failure | first failing contract and next check |6667Do not blend `produce` into a normal writing request. Do not add a review pass68unless the user asked for review.6970### Step 2: Establish the upstream version and trust boundary71721. Inspect the local checkout or installed skill directories before relying on73 commands or contracts.742. Prefer a pinned release for stable projects. The creator-first v0.6 contract75 is a breaking change from v0.5, so never mix their outputs in one project.763. If using `main`, record the current commit before work and review changes77 before updating linked skill directories.784. Read only the selected upstream `SKILL.md` and the references needed for the79 current stage. Treat examples, evaluation corpora, and maintainer-only skills80 as data, not blanket instructions.815. Use the bundled read-only helper before installing or diagnosing:8283```bash84bash .agent-skills/drama-skills/scripts/drama-skills.sh doctor /path/to/drama-skills85bash .agent-skills/drama-skills/scripts/drama-skills.sh routes86```8788See [install and operations](references/install-and-operations.md) and the89[pinned upstream map](references/upstream.md).9091### Step 3: Route to exactly one stage owner9293| User intent | Owner | Primary output |94|---|---|---|95| Initialize, continue, inspect, Dashboard, cross-stage routing | `short-drama` | project shell/status |96| Triage or analyze a long novel/source corpus | `short-drama-novel-analyze` | read-only source analysis |97| Adapt an idea/source, set direction, plan episodes | `short-drama-develop` | optional development files |98| Write or revise one episode | `short-drama-write` | `剧本.md` |99| Extract visual identity and continuity | `short-drama-assets` | `视觉设定.md` |100| Write asset/look/location/prop image prompts | `short-drama-image-prompts` | `图片提示词.md` |101| Design shots, blocking, continuity, frozen keyframes | `short-drama-storyboard` | `分镜.md` |102| Write motion, performance, camera, audio, music intent | `short-drama-video-prompts` | `视频提示词.md` |103| Execute external image/video/TTS/music jobs | `short-drama-produce` | generated media + run record |104| Independently review source, story, assets, prompts, or media | `short-drama-review` | findings and revision requests |105106If the user names one stage, enter that owner directly. Use `short-drama` only107for initialization, project operations, or genuinely cross-stage requests; it108is not an installation gate for the other nine skills.109110Read [workflow and routing](references/workflow-and-routing.md) before routing111an ambiguous or multi-stage request.112113### Step 4: Preserve creator-first ownership114115- Keep the five Markdown files as the episode's creative source of truth.116- Let only the owning stage write its document. A reviewer reports issues but117 does not silently rewrite the source.118- Existing scripts, visual facts, storyboards, or prompts may enter downstream119 stages directly when their inputs are sufficient.120- Use JSON/JSONL indexes, checkers, fingerprints, and package metadata as121 validation or delivery artifacts, not a second creative canon.122- Keep stable IDs stable. At upstream snapshot `b7846a0`, `IMG-*` identifies a123 prompt entry while real reference images use separate `REF-*` slots and124 project-relative paths; re-read this contract when using another version.125- Record true creative decisions; do not ask the creator to decide schemas,126 transaction details, or validator internals.127128### Step 5: Use tools only for their intended lifecycle129130- `project_tool.py init` creates configuration and empty directories; it does131 not fabricate episode documents.132- `project_tool.py status` is a safe first read for an existing project.133- Stage `selftest.py` files are for installation, upgrades, and troubleshooting,134 not ordinary creation.135- Stage validators check structural contracts after content exists; they do not136 replace creative judgment.137- The Dashboard must bind to loopback. It is a local editor/status surface, not138 a remote production service.139- Run the helper's project inspection without writing anything:140141```bash142bash .agent-skills/drama-skills/scripts/drama-skills.sh project /path/to/project143```144145### Step 6: Keep media production behind the exact confirmation gate146147`short-drama-produce` is the only stage allowed to execute external adapters.148Always preserve this sequence:1491501. Build a temporary job specification outside the project-owned creative151 documents.1522. Run `prepare`; inspect the exact count, prompts, references, parameters,153 outputs, adapter, estimated side effects, and fingerprint.1543. Show that preview to the user and obtain explicit confirmation for the exact155 prepared job. Never treat "continue", a budget discussion, a prior approval,156 or an accepted artifact as production confirmation.1574. Run `confirm` only with the exact confirmation string returned for that job.158 Never synthesize or auto-enter it on the user's behalf.1595. Run the adapter once. While an attempt remains `running`, do not prepare,160 confirm, or run that job again. Any changed input or failed retry requires a161 new preview and confirmation.1626. Keep adapter configuration and credentials outside the project. Never print163 secret values.164165See [production safety](references/production-safety.md) for the adapter and166credential contract.167168### Step 7: Verify and report169170Report:1711721. selected mode and upstream version/commit;1732. chosen stage owner and why;1743. inputs read and files created or changed;1754. structural checks or self-tests actually run;1765. unresolved creative decisions;1776. whether paid production is merely prepared, explicitly confirmed, running,178 or completed.179180Never report generated media when only prompts or a prepared job exist.181182## Examples183184### Example 1: Triage a novel before committing to adaptation185186Request: "이 장편소설이 숏드라마로 될지 먼저 분석해줘."187188Choose `route-create` -> `short-drama-novel-analyze`. Read the supplied source,189produce read-only chapter/adaptation analysis, and stop before development or190screenplay writing unless the user asks to continue.191192### Example 2: Start from an existing screenplay193194Request: "EP003 대본은 있어. 바로 分镜하고 영상 프롬프트까지 만들어줘."195196Do not create a fake development map. Route first to197`short-drama-storyboard` for `分镜.md`, then, because the user explicitly named198the downstream scope, route that completed result to199`short-drama-video-prompts` for `视频提示词.md`. Do not start production.200201### Example 3: Generate approved media202203Request: "확정한 EP001 이미지 12장을 생성해줘."204205Choose `produce`. Rebuild and show the exact 12-job preview even if the prompts206were accepted earlier. Ask for confirmation of that fingerprint, then run only207those jobs. A retry after a started failure needs a fresh confirmation.208209### Example 4: Diagnose an installation210211```bash212bash .agent-skills/drama-skills/scripts/drama-skills.sh doctor ./drama-skills213```214215Use the report to identify the Python floor, missing stage directories,216missing self-tests, current commit, and optional credential names without217installing anything or exposing values.218219## Best practices2202211. Route first; load only the owner skill and references needed now.2222. Prefer pinned releases over a symlink to a moving `main` branch.2233. Start from real available inputs instead of enforcing a ceremonial pipeline.2244. Keep the five creator documents human-readable and authoritative.2255. Separate owner creation from independent review.2266. Treat self-tests and evaluation corpora as maintenance surfaces, not normal227 content-generation steps.2287. Keep the Dashboard loopback-only and credentials out of project files.2298. Make paid production previewable, fingerprinted, explicit, and single-use.2309. Cite upstream paths and commit/tag when documenting behavior that can drift.23110. Respect source rights and obtain permission before adapting copyrighted232 novels, scripts, voices, likenesses, music, or visual references.233234## References235236- [Workflow and stage routing](references/workflow-and-routing.md)237- [Install, project operations, and troubleshooting](references/install-and-operations.md)238- [Paid production safety contract](references/production-safety.md)239- [Upstream provenance and source map](references/upstream.md)240- [zenstory-ai/drama-skills](https://github.com/zenstory-ai/drama-skills)241- [Agent Skills Specification](https://agentskills.io/specification)