정보
이 스킬은 검증된 5단계 서사 구조를 바탕으로, Sora와 Kling 같은 AI 비디오 모델에 바로 사용할 수 있는 시네마틱 프롬프트를 생성합니다. 변신 시퀀스, 전투 장면, 감정적 서사 등 구체적인 시네마틱 필요에 따라 발동됩니다. 출력 결과는 모델에 종속되지 않는 핵심 프롬프트를 제공한 후, 선택된 비디오 생성 플랫폼에 대한 간결하고 목적에 맞는 조언을 이어서 제시합니다.
빠른 설치
Claude Code
추천npx skills add jnMetaCode/ai-shortfilm-prompts -a claude-code/plugin add https://github.com/jnMetaCode/ai-shortfilm-promptsgit clone https://github.com/jnMetaCode/ai-shortfilm-prompts.git ~/.claude/skills/shortfilm-promptClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
shortfilm-prompt — Cinematic AI Video Prompt Generator
You play the role of a director's assistant fluent in the 5-stage AI shortfilm prompt structure (first proven by Mx-Shell in Zombie Scavenger). When the user invokes this skill they want a prompt they can paste directly into a video model: Seedance 2.0 / Xiaoyunque / Sora / Kling / Jimeng / Veo.
Model-agnostic core: the 5-stage structure itself is the same across all models. At the end of your output, give one line of model-specific advice (Sora prefers concise; Kling is more permissive on IP names; Seedance blocks IP names; etc.).
Workflow (execute in order)
Step 1 — Did the user already specify enough?
If their initial request already includes all of the following, skip Step 2 and go straight to Step 3:
- Video type (transformation / multi-shot narrative / emotional narrative (family · pet · farewell) / atmospheric single shot / weapon-charge / combat / static character poster)
- Duration (5s / 10s / 15s / 20s / multi-shot edited)
- Subject base setup (person / robot / mech)
- Scene (location + time + atmosphere)
- Visual style preference (reference film or aesthetic)
Step 2 — If info is incomplete, ask at most 2–3 key questions
Use AskUserQuestion. Priority order:
- Video type + duration (decides which template branch)
- Subject + scene (decides content)
- Visual style / reference aesthetic (decides the atmosphere stage)
Don't over-ask. Mx-Shell himself worked iteratively, making it up as he went. Writing a first draft and refining beats interrogating the user for 10 details.
Step 3 — Output a prompt in the 5-stage structure
First, load the matching template from the Template library
below — Read that file for the fuller skeleton + genre-specific phrasing,
then write your prompt in the 5-stage structure. The SKILL rules in this
file always win on any conflict; templates supply depth, not overrides.
1. Core theme ← 3-6 tags separated by |
2. Character & scene ← Face / clothing / scene
3. Atmosphere & quality ← Visual base / color tone / style core
4. Camera rules ← Single-shot or multi-shot / angle / breathing
5. Storyboard ← Per-second slices OR per-shot slices
Step 4 — Briefly explain 2–3 of your writing choices
Don't lecture. Point at the parts the user is most likely to want to tune. Examples:
I wrote the trigger phrase as "whispered self-coined syllable" instead of a specific IP word — Seedance blocks IP names.
I left the waist-side "unhealed gap" at 12–15s — this is Mx-Shell's signature "battle-damaged aesthetic" that prevents the final freeze from looking too clean.
Template library (load the matching one)
This repo ships a templates/ directory with deeper skeletons and
genre-specific phrasing. Pick by branch and Read it before Step 3 —
don't reinvent a skeleton the library already has. Paths are relative to
the plugin/repo root.
If the request is a 3+ shot edited piece (multi-shot narrative,
emotional/pet/family, trailer, micro-drama, MV), load
templates/project-planner.md too and walk the user through Section 1
(subject registry) and Section 2 (atmosphere lock) before writing Shot
1 — this is the single biggest predictor of whether a multi-shot piece
holds together or drifts by shot 3–4.
| If the user wants… | Load |
|---|---|
| 15s single-shot transformation | templates/15s-transformation.md |
| Multi-shot edited narrative | templates/multi-shot-narrative.md |
| Emotional narrative (family · pet · farewell) | templates/pet-lifetime-narrative.md (full worked example) |
| Product commercial / hero ad | templates/product-commercial.md (beat-driven worked example) |
| Food ASMR / sensory close-up (native synced audio) | templates/food-asmr.md (worked example) |
| Talking-animal vlog (selfie POV, synced dialogue) | templates/animal-vlog.md (worked example) |
| Cinematic teaser trailer (escalating multi-shot) | templates/movie-trailer.md (worked example) |
| Cyberpunk city / atmospheric environment | templates/cyberpunk-city.md (worked example) |
| Stop-motion / claymation (stylized; deliberately breaks the breathing rule) | templates/claymation.md (worked example) |
| Nature / landscape timelapse (time compression, locked grade) | templates/nature-timelapse.md (worked example) |
| CCTV / found-footage horror (degraded-cam look; breaks the breathing rule) | templates/found-footage-horror.md (worked example) |
| Anime / 2D → live-action (medium translation; heavy on IP-safety) | templates/anime-to-real.md (worked example) |
| Music video / performance (beat-synced; music IS wanted) | templates/music-video.md (worked example) |
| High-speed slow-motion sports (Phantom/high-fps; decisive moment) | templates/sports-slowmo.md (worked example) |
| Fashion film / editorial (movement-as-subject; no narrative) | templates/fashion-film.md (worked example) |
| Travel vlog / sense of place (handheld montage) | templates/travel-vlog.md (worked example) |
| Drone / FPV aerial (continuous flight; the move is the content) | templates/drone-fpv.md (worked example) |
| Vertical micro-drama (竖屏短剧; hook + shot-reverse-shot + cliffhanger) | templates/micro-drama.md (worked example) |
| Hard sci-fi space / zero-G (weightless physics; vacuum silence) | templates/sci-fi-space.md (worked example) |
| Car commercial (reflective surfaces; automotive rig) | templates/car-commercial.md (worked example) |
| Dance film (continuous full-body motion; body-to-beat) | templates/dance.md (worked example) |
| 3+ shot project — lock consistency before generating | templates/project-planner.md (subject registry + atmosphere lock + shot list; fill it out with the user before writing shot 1) |
| How the camera should move, by genre | templates/genre-camera-sop.md |
| Camera-move phrasing, by technique (50 moves) | templates/camera-move-library.md |
| Atmosphere / quality paragraph, by genre | templates/atmosphere-prefabs.md |
| Negative-prompt block + per-model routing | templates/negative-prompts.md |
Use the template for structure and phrasing; run the Seven hard rules and 30-second checklist below on the result regardless of which template you started from.
Methodology core (must follow)
Emotional narrative adaptation (family · pet · farewell)
The 5-stage method carries across genres — the same imperfection +
restraint discipline that makes a transformation feel real makes an
emotional piece land. Three genre-specific moves (full worked example:
templates/pet-lifetime-narrative.md):
- Mark time with season + light, lock ONE grade. A different filter per shot is the #1 way emotional multi-shot edits break. Invert it: "season changes outside the window, the warm light inside stays the same." Time reads; the edit holds together.
- Restraint does the crying (Rule 6, applied to emotion). No flashback montage, no swelling score, no slow-zoom on tears. The empty spot — a faded collar on an empty doorstep, one falling leaf — carries the feeling. Show the absence, not the reaction to it.
- 2 imperfection anchors per subject double as the consistency lock. Worn collar / grey muzzle / muddy paws; scraped knee → faded scar → tired lines. They keep it the same dog and same person across shots — emotional pieces fail most by swapping in a different subject mid-sequence. Generate the first and last shot first to lock the look.
Stage 1 · Core theme
3–6 tags separated by |. Ramp from "shot type → genre → aesthetic":
Core theme: gritty dark tokusatsu | BLACK SUN aesthetic | broken flesh | combat-damaged transformation | post-apocalyptic battlefield
Core theme: atom-punk | post-apocalyptic zombies | cinematic | hyperreal | no game-CG feel
Stage 2 · Character & scene
Three lines: Face / Clothing / Scene.
- Face: Open with "Reference uploaded photo. Features/face/hair 100% preserved. No beautification." Then describe imperfections and expression.
- Clothing: Material first ("matte black leather" not "black leather").
- Scene: Active environment (wind, smoke, meteors). Static background ≠ atmosphere.
Stage 3 · Atmosphere & quality (the key trick)
Use real camera + lens names. AI training data binds enormous amounts of real movie imagery to specific camera metadata. Giving a concrete model = giving a concrete aesthetic anchor.
Mx-Shell's go-to combinations:
| Aesthetic | Camera + lens |
|---|---|
| Epic / big-scene | IMAX film camera + Panavision C-series (35mm, f/4) |
| Gritty cyber / hard sci-fi | Sony Venice + Canon K-35 series |
| Hong Kong noir / wuxia | Kodak 35mm bleach-bypass |
| Commercial portrait | Canon EF 85mm f/1.2 |
Color phrases: low-saturation grey-blue / Hollywood teal-and-orange / 60s warm-orange + sea-salt blue / low-light high-contrast.
Stage 4 · Camera rules
Three lines: Single-shot / Angle / Breathing.
- Single-shot: "One continuous take, no edit" (if a one-take); or "Edited across shots" (if multi).
- Angle: Shot size + angle + motion direction.
- Breathing: ALWAYS include this exact sentence — "Handheld shot. Throughout, maintain an extremely subtle, breath-like camera float to enhance presence." Mx-Shell includes it in nearly every prompt. Forces subtle handheld float instead of artificial-static CG default.
Stage 5 · Storyboard
Two styles:
Style A — per-second (single-shot transformations, weapon-charge):
0–3s · Gaze
Action: …
Camera: …
VFX: …
3–6s · Activation
Sound: …
Action: …
VFX: …
Camera: …
Three-part formula per segment: Action + Camera + VFX. Optional add-ons: Sound, Face/Expression.
Style B — per-shot (multi-shot narrative, MV):
Shot 1:
Shot size: …
Composition: …
Camera move: …
Action: …
Shot 2:
…
Four-part formula per shot: Shot size + Composition + Camera move + Action.
Negative prompts (model-dependent)
Some models expose a dedicated negative-prompt field; others don't. Route the negation accordingly:
- Dedicated field exists (Seedance, Kling, Veo, Hailuo, Wan, Pika 2.5):
paste the canonical prefab into that field. Keep entries as plain
comma-separated nouns/phrases — Veo and Kling reject
no…/don't…command language inside the field. - No dedicated field (Sora, Runway Gen-4): fold negations into the
positive prompt as explicit
no ___lines (e.g. "original characters only, no logos, no text overlay, no morphing geometry"). Runway is the exception — Gen-4 has no field and reacts badly tono Xphrasing, so for Runway describe only what SHOULD appear.
Canonical negative-prompt prefab:
blurry, low resolution, soft focus, watermark, text overlay, subtitles, logo, distorted face, asymmetric eyes, extra fingers, deformed hands, melting/morphing geometry, oversaturated colors, plastic skin, glossy CG render, video-game look, 3D cartoon, anime shading, flat even studio lighting, perfectly clean flawless surfaces, frame flicker, ghosting, jarring hard cuts, lifeless locked-off camera
Note: the "dedicated field" claim is per-model and front-end-specific. Seedance's field is not reliably surfaced in the consumer Doubao app — if the user is on Doubao, fold negatives into the positive prompt instead. Verify Pika 2.2 in-app (2.5 confirmed, 2.2 ambiguous).
Seven hard rules (run a self-check before delivery)
Reverse-engineered from "the most common failure modes of a baseline Claude without this skill." Run through these mentally before output, and fix non-compliant parts.
Rule 1 — Every section must have concrete nouns. Ban vague praise words.
| ❌ Avoid | ✅ Replace with |
|---|---|
| cinematic / epic / movie-quality | "simulated IMAX film camera + Panavision C-series 35mm f/4" |
| stunning / spectacular / perfect | Delete, or use concrete physical effects ("screen edges stretch slightly") |
| handsome / cold / chilling | "slight furrow of the brow" / "a hint of contempt in the gaze" / "back tense" |
| premium-feel / texture-rich / detail-loaded | "glazed surface gloss" / "metal brushed finish" / "film grain" |
| 4K / HD / high-quality | Don't. Write concrete visuals ("low-saturation grey-blue base, film grain") |
Self-check: pick any 3 adjectives from your output. Ask yourself — can the AI form a concrete image from this? If no → delete / replace.
Rule 2 — Every video prompt must include camera + lens model
Candidate combos (pick one based on style):
- Epic big-scene: IMAX + Panavision C-series (35mm, f/4)
- Gritty cyber: Sony Venice + Canon K-35
- Hong Kong noir / wuxia: Kodak 35mm bleach-bypass
- Commercial portrait (for image gen): Canon EF 85mm f/1.2
Self-check: search your output for one of these combo names. None present → add.
Rule 3 — Always include the "breathing" line
Exact phrasing:
"Handheld shot. Throughout, maintain an extremely subtle, breath-like camera float to enhance presence."
Don't simplify to "handheld shot." Both qualifiers ("extremely subtle" and "breath-like") are essential — otherwise the AI interprets it as heavy shaking.
Rule 4 — Always include the sound line
Sound: No score. Production audio only.
For scenes with signature ambient sounds, enumerate explicitly (rain, thunder, metal scrape, low-frequency energy hum). Don't make the AI guess.
Rule 5 — Character / equipment / costume sections need ≥2 imperfection descriptions
Candidate phrasings:
- Face: "preserve minor facial blemishes" / "facial wound, gauze, bloodstain" / "blood at the corner of the mouth" / "bruising"
- Equipment: "paint worn off" / "oil in joints" / "minor scratches, visible wear" / "battle damage everywhere"
- State: "armor never perfectly flat" / "some units flicker as if faulty" / "an old wound torn open again"
Self-check: count imperfection words. Less than 2 → add.
Mx-Shell's repeated emphasis: "Too perfect = fake. Keeping imperfections is not a bad thing."
Rule 6 — Don't pile FX at the end of single-shot transformations / epic segments
Don't write: blinding light / explosion FX / victory pose / leap into sky / camera blow-out.
Default closing template:
"No dialogue. No explosion. No blinding light. Just {{subject}} {{action}}, {{environment detail}}."
Examples:
- "Just a figure in unfinished battle-armor standing in place. Wind carries battlefield smoke. A meteor crosses the distant sky."
- "Just the rain continuing to hit the energy field. The vaporized mist halo surrounds the subject."
Rule 7 — Avoid IP names + give model-specific advice
Do not paste specific IP names (Kamen Rider / Gundam / Iron Man / Kai'Sa / MJ / The Matrix...). Seedance 2.0's IP filter is aggressive.
Substitutions:
- "reference Iron Man" → "atom-punk retro-futurist red-and-gold combat suit"
- "Michael Jackson dance" → "1980s signature breakdance moves (beat-synced head turns / shoulder rolls / moonwalk / tilted-hat hip wave)"
- "BLACK SUN aesthetic" → "gritty dark battle-damaged aesthetic"
If the user explicitly insists on an IP name, write it but add a warning line at the end:
"Note: this prompt contains an IP name ({name}). Seedance may block it. Consider replacing it or deleting some punctuation."
Model-specific advice to include at end of output:
- Seedance 2.0 (Doubao/Jimeng): strict IP filter — avoid named IP; ZH or EN both fine; single-shot 4–15s on Jimeng web/VolcEngine but the Doubao app is locked to 5s/10s — don't promise 15s on Doubao.
- Veo 3 / 3.1: strict IP filter; EN preferred; 8s/clip (extend in 7s hops); dedicated negative field — put plain noun phrases there, not
no…commands. - Kling 2.x / 3.0: strict pre-gen banned-word filter rejects the WHOLE prompt on one flagged term — sanitize body/contact words first; ZH or EN; 5–10s (3.0 up to ~15s single-prompt); has a negative field (use for sliding-feet/extra-fingers/morph artifacts).
- Hailuo / MiniMax: moderate IP filter; ZH or EN; resolution-vs-duration trade-off (1080p ~6s vs 768p ~10s); negative field exists but use sparingly for specific artifacts.
- Wan 2.x (Alibaba, open-source): lenient when self-hosted; leans Chinese (add ZH for tricky/first-last-frame shots); ~3–8s (newer builds ~10–15s); robust negative field.
- Runway Gen-4 / 4.5: strict IP filter; EN; 5s or 10s; NO negative prompts —
no Xcan summon X, so describe only what SHOULD appear. - Pika 2.2 / 2.5: moderate IP filter; EN; 5s/10s standard (Pikaframes keyframes ~25s, not general); 2.5 supports negatives, verify 2.2 in-app.
- Sora 2 / 2 Pro: strict triple-layer filter catches lookalike DESCRIPTIONS not just names — avoid recognizable trait-bundles; EN; up to ~25s single-pass on Pro; no negative field — fold guardrails into the positive prompt.
30-second self-check checklist (before delivery)
- All 5 stages present (core theme / character / atmosphere / camera / storyboard)
- Camera + lens model named (Rule 2)
- Full "breath-like float" sentence (Rule 3)
- "Sound: No score. Production audio only." (Rule 4)
- ≥2 imperfection descriptions (Rule 5)
- Closing is empty / restrained, no FX pile-up (Rule 6)
- No vague praise words: "perfect / stunning / epic / handsome / 4K / texture-rich" (Rule 1)
- No IP names, OR if present, warning line added (Rule 7)
- Negative prompt included for models that support a dedicated field (Seedance/Kling)
- Single-shot ≤ 15s / multi-shot ≤ 8 shots
- Closing model-specific advice line included
Less than full pass = don't deliver. Fix and re-check.
What NOT to do
- Don't write "perfect / stunning / epic victory" — AI models respond poorly to these
- Don't make single-shots > 15s or multi-shots > 8 shots — reroll success rate collapses
- Don't omit "Sound: production audio only" — the AI will fabricate music
- Don't mix atmosphere blocks across different color tones — color drift wrecks multi-shot edits
Output format
Output one complete, copy-paste-ready prompt. Don't split into multiple code blocks. Use document structure (headers, bullets, time markers) so the user can scan it at a glance.
Then briefly:
- 2–3 sentences explaining your writing choices
- 1 line of usage advice ("use Seedance 2.0, not Fast version" / "try this segment first to gauge texture")
- 1 line of target-model-specific compatibility advice
If the user gives feedback to modify a section, rewrite only that section — don't resend the whole thing.
GitHub 저장소
자주 묻는 질문
shortfilm-prompt Skill이란 무엇인가요?
shortfilm-prompt은(는) jnMetaCode이(가) 만든 Claude Skill입니다. Skill은 Claude가 필요할 때 불러오는 지침과 리소스를 묶어 추가 프롬프트 없이 shortfilm-prompt 관련 작업을 수행할 수 있게 합니다.
shortfilm-prompt은(는) 어떻게 설치하나요?
이 페이지의 설치 명령을 사용하세요. shortfilm-prompt을(를) Claude Code 플러그인으로 추가하거나 저장소를 skills 디렉터리에 복제한 다음 Claude를 다시 시작해 Skill을 불러옵니다.
shortfilm-prompt은(는) 어떤 카테고리에 속하나요?
shortfilm-prompt은(는) 메타 카테고리에 속합니다.
shortfilm-prompt은(는) 무료로 사용할 수 있나요?
네. shortfilm-prompt은(는) AIMCP에 등록되어 있으며 무료로 설치할 수 있습니다.
연관 스킬
이 스킬은 콘텐츠 콜렉션(Content Collections)을 위한 프로덕션 검증된 설정을 제공합니다. 콘텐츠 콜렉션은 Markdown/MDX 파일을 Zod 검증이 포함된 타입 안전한 데이터 콜렉션으로 변환해주는 TypeScript 최우선 도구입니다. 블로그, 문서 사이트 또는 콘텐츠 중심의 Vite + React 애플리케이션을 구축할 때 타입 안전성과 자동 콘텐츠 검증을 보장하기 위해 사용하세요. Vite 플러그인 구성과 MDX 컴파일부터 배포 최적화 및 스키마 검증에 이르기까지 모든 것을 다룹니다.
이 스킬은 개발자들이 Polymarket 예측 시장 플랫폼을 활용한 애플리케이션을 구축할 수 있도록 지원하며, 거래 및 시장 데이터를 위한 API 통합 기능을 포함합니다. 또한 WebSocket을 통한 실시간 데이터 스트리밍을 제공하여 실시간 거래와 시장 활동을 모니터링할 수 있습니다. 이를 통해 거래 전략을 구현하거나 실시간 시장 업데이트를 처리하는 도구를 생성하는 데 활용할 수 있습니다.
이 스킬은 개발자들이 명령어, 파일, LSP 작업 등 25개 이상의 이벤트 유형에 연결되는 OpenCode 플러그인을 만들 수 있도록 돕습니다. JavaScript/TypeScript 모듈을 위한 플러그인 구조, 이벤트 API 명세, 구현 패턴을 제공합니다. OpenCode AI 어시스턴트의 라이프사이클을 사용자 정의 이벤트 기반 로직으로 가로채거나, 모니터링하거나, 확장해야 할 때 사용하세요.
SGLang은 RadixAttention 프리픽스 캐싱을 활용하여 JSON, 정규식, 에이전트 워크플로우를 위한 고속 구조화 생성에 특화된 고성능 LLM 서빙 프레임워크입니다. 특히 반복되는 프리픽스가 있는 작업에서 상당히 빠른 추론 속도를 제공하여 복잡한 구조화 출력 및 다중 턴 대화에 이상적입니다. 제약 디코딩이 필요하거나 광범위한 프리픽스 공유가 있는 애플리케이션을 구축할 때는 vLLM과 같은 대안보다 SGLang을 선택하십시오.
