@oh-story/dsh 0.1.14 → 0.1.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +12 -10
- package/lib/drama/manifest.json +284 -364
- package/lib/drama/skills/short-drama/SKILL.md +13 -14
- package/lib/drama/skills/short-drama/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama/references/audience-reveal.md +4 -4
- package/lib/drama/skills/short-drama/references/contract-and-ownership.md +2 -2
- package/lib/drama/skills/short-drama/references/creator-documents.md +12 -10
- package/lib/drama/skills/short-drama/references/creator-workflow.md +6 -5
- package/lib/drama/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +8 -8
- package/lib/drama/skills/short-drama/references/form-cards//344/272/214/347/273/264/345/212/250/346/200/201/346/274/253.md +5 -5
- package/lib/drama/skills/short-drama/references/form-cards//345/233/275/346/274/253/344/272/214/346/254/241/345/205/203.md +5 -6
- package/lib/drama/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +6 -7
- package/lib/drama/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +2 -3
- package/lib/drama/skills/short-drama/references/form-cards//351/243/216/346/240/274/345/214/226/344/270/211/347/273/264.md +6 -7
- package/lib/drama/skills/short-drama/references/knowhow-index.md +6 -7
- package/lib/drama/skills/short-drama/references/look-development.md +5 -7
- package/lib/drama/skills/short-drama/references/pickup-and-alternate.md +6 -3
- package/lib/drama/skills/short-drama/references/production-form-profiles.md +14 -16
- package/lib/drama/skills/short-drama/references/reference-roles.md +5 -3
- package/lib/drama/skills/short-drama/references/runtime-preflight.md +2 -1
- package/lib/drama/skills/short-drama-assets/SKILL.md +8 -8
- package/lib/drama/skills/short-drama-assets/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-assets/references/asset-review-checklist.md +26 -27
- package/lib/drama/skills/short-drama-assets/references/character-and-look.md +22 -22
- package/lib/drama/skills/short-drama-assets/references/continuity-delta.md +4 -4
- package/lib/drama/skills/short-drama-assets/references/continuity-lock.md +4 -4
- package/lib/drama/skills/short-drama-assets/references/era-anchors.md +3 -3
- package/lib/drama/skills/short-drama-assets/references/identity-vs-variant.md +5 -5
- package/lib/drama/skills/short-drama-assets/references/location-and-view.md +6 -7
- package/lib/drama/skills/short-drama-assets/references/occurrence-extraction.md +8 -9
- package/lib/drama/skills/short-drama-assets/references/prop-and-state.md +8 -11
- package/lib/drama/skills/short-drama-assets/references/voice-direction.md +22 -22
- package/lib/drama/skills/short-drama-develop/SKILL.md +6 -6
- package/lib/drama/skills/short-drama-develop/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-develop/assets/creative-brief.md +2 -2
- package/lib/drama/skills/short-drama-develop/assets/story-engine.md +2 -2
- package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +13 -12
- package/lib/drama/skills/short-drama-develop/references/creative-reference-intake.md +7 -7
- package/lib/drama/skills/short-drama-develop/references/director-brief-craft.md +7 -8
- package/lib/drama/skills/short-drama-develop/references/episode-design.md +20 -24
- package/lib/drama/skills/short-drama-develop/references/genre-and-hook-playbook.md +7 -7
- package/lib/drama/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +4 -5
- package/lib/drama/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +2 -2
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +2 -2
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +4 -5
- package/lib/drama/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//351/200/206/350/242/255.md +1 -1
- package/lib/drama/skills/short-drama-develop/references/genre-cards//351/207/215/347/224/237/347/251/277/350/266/212.md +2 -2
- package/lib/drama/skills/short-drama-develop/references/genre-cards.md +4 -4
- package/lib/drama/skills/short-drama-develop/references/mechanism-loop.md +6 -7
- package/lib/drama/skills/short-drama-develop/references/multi-episode-intake.md +19 -17
- package/lib/drama/skills/short-drama-develop/references/premise-devices.md +5 -5
- package/lib/drama/skills/short-drama-develop/references/reveal-reversal-payoff.md +6 -5
- package/lib/drama/skills/short-drama-develop/references/serial-character-and-memory.md +3 -4
- package/lib/drama/skills/short-drama-develop/references/stage-contract.md +7 -9
- package/lib/drama/skills/short-drama-develop/references/story-craft.md +8 -10
- package/lib/drama/skills/short-drama-edit/SKILL.md +11 -14
- package/lib/drama/skills/short-drama-edit/assets/remotion/README.md +12 -19
- package/lib/drama/skills/short-drama-edit/assets//345/211/252/350/276/221/345/215/225.md +2 -2
- package/lib/drama/skills/short-drama-edit/references/cut-craft.md +5 -4
- package/lib/drama/skills/short-drama-edit/references/generated-footage.md +1 -1
- package/lib/drama/skills/short-drama-edit/references/sound-and-subtitles.md +6 -4
- package/lib/drama/skills/short-drama-edit/references/stage-contract.md +5 -5
- package/lib/drama/skills/short-drama-edit/references/still-cuts.md +1 -1
- package/lib/drama/skills/short-drama-image-prompts/SKILL.md +7 -2
- package/lib/drama/skills/short-drama-image-prompts/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-image-prompts/references/character-and-look.md +4 -5
- package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +17 -17
- package/lib/drama/skills/short-drama-image-prompts/references/edit-and-revision.md +10 -9
- package/lib/drama/skills/short-drama-image-prompts/references/location-plate.md +11 -12
- package/lib/drama/skills/short-drama-image-prompts/references/look-and-state-variant.md +6 -5
- package/lib/drama/skills/short-drama-image-prompts/references/lookdev-frame.md +2 -2
- package/lib/drama/skills/short-drama-image-prompts/references/production-sheet-recipes.md +6 -6
- package/lib/drama/skills/short-drama-image-prompts/references/prop-plate.md +8 -8
- package/lib/drama/skills/short-drama-image-prompts/references/review-and-fixtures.md +5 -4
- package/lib/drama/skills/short-drama-novel-analyze/SKILL.md +17 -24
- package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-triage.md +3 -4
- package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-value.md +5 -10
- package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +4 -6
- package/lib/drama/skills/short-drama-novel-analyze/references/chapter-extraction.md +9 -13
- package/lib/drama/skills/short-drama-novel-analyze/references/stage-contract.md +3 -7
- package/lib/drama/skills/short-drama-produce/SKILL.md +43 -42
- package/lib/drama/skills/short-drama-produce/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +31 -18
- package/lib/drama/skills/short-drama-produce/references/providers/gpt-image-2.md +1 -1
- package/lib/drama/skills/short-drama-produce/references/providers/minimax-h3-video.md +11 -6
- package/lib/drama/skills/short-drama-produce/references/providers/minimax-music.md +2 -2
- package/lib/drama/skills/short-drama-produce/references/providers/minimax-speech.md +7 -5
- package/lib/drama/skills/short-drama-produce/references/providers/seedance.md +14 -8
- package/lib/drama/skills/short-drama-review/SKILL.md +9 -9
- package/lib/drama/skills/short-drama-review/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-review/references/anti-template-repair.md +10 -11
- package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +24 -23
- package/lib/drama/skills/short-drama-review/references/project-calibration.md +17 -16
- package/lib/drama/skills/short-drama-review/references/review-method.md +8 -6
- package/lib/drama/skills/short-drama-review/references/rubric-assets-prompts.md +7 -6
- package/lib/drama/skills/short-drama-review/references/rubric-source-analysis.md +17 -10
- package/lib/drama/skills/short-drama-review/references/rubric-story-script.md +29 -25
- package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +11 -11
- package/lib/drama/skills/short-drama-review/references/stage-contract.md +3 -2
- package/lib/drama/skills/short-drama-storyboard/SKILL.md +8 -10
- package/lib/drama/skills/short-drama-storyboard/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +8 -11
- package/lib/drama/skills/short-drama-storyboard/references/comic-keyframe-lexicon.md +11 -12
- package/lib/drama/skills/short-drama-storyboard/references/coverage-audition.md +4 -5
- package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +19 -24
- package/lib/drama/skills/short-drama-storyboard/references/lighting-craft.md +1 -1
- package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +26 -29
- package/lib/drama/skills/short-drama-storyboard/references/review-and-fixtures.md +6 -5
- package/lib/drama/skills/short-drama-storyboard/references/scene-visual-plan.md +2 -2
- package/lib/drama/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +4 -4
- package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +8 -8
- package/lib/drama/skills/short-drama-storyboard/references/shot-revision-identity.md +3 -3
- package/lib/drama/skills/short-drama-video-prompts/SKILL.md +10 -7
- package/lib/drama/skills/short-drama-video-prompts/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +63 -61
- package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +20 -18
- package/lib/drama/skills/short-drama-video-prompts/references/generability.md +12 -12
- package/lib/drama/skills/short-drama-video-prompts/references/minimax-h3.md +4 -3
- package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +38 -40
- package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +36 -36
- package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +17 -21
- package/lib/drama/skills/short-drama-video-prompts/references/review-and-fixtures.md +10 -11
- package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.0.md +1 -1
- package/lib/drama/skills/short-drama-video-prompts/references/seedance-2.5.md +2 -2
- package/lib/drama/skills/short-drama-video-prompts/references/target-model-profile.md +6 -12
- package/lib/drama/skills/short-drama-video-prompts/references/wan-3.0.md +2 -1
- package/lib/drama/skills/short-drama-write/SKILL.md +15 -15
- package/lib/drama/skills/short-drama-write/agents/openai.yaml +1 -1
- package/lib/drama/skills/short-drama-write/assets/screenplay.md +3 -4
- package/lib/drama/skills/short-drama-write/references/dialogue-craft.md +20 -22
- package/lib/drama/skills/short-drama-write/references/production-format-dialect.md +20 -22
- package/lib/drama/skills/short-drama-write/references/scene-handoff-capsule.md +10 -10
- package/lib/drama/skills/short-drama-write/references/scene-sound-dramaturgy.md +11 -9
- package/lib/drama/skills/short-drama-write/references/screenplay-format.md +11 -10
- package/lib/drama/skills/short-drama-write/references/script-craft.md +41 -47
- package/lib/drama/skills/short-drama-write/references/stage-contract.md +7 -5
- package/lib/drama/skills/short-drama-write/references/substitutable-realization.md +19 -25
- package/lib/index.js +80 -17
- package/lib/index.js.map +3 -3
- package/lib/novel-to-game/README.md +8 -9
- package/lib/novel-to-game/README_ZH.md +12 -13
- package/lib/novel-to-game/manifest.json +19 -19
- package/lib/novel-to-game/skills/game-art-direction/SKILL.md +2 -2
- package/lib/novel-to-game/skills/game-build/SKILL.md +2 -0
- package/lib/novel-to-game/skills/game-concept/SKILL.md +1 -1
- package/lib/novel-to-game/skills/game-qa/references/test-design-method.md +1 -1
- package/lib/novel-to-game/skills/game-world-design/SKILL.md +1 -1
- package/lib/novel-to-game/skills/game-world-design/agents/openai.yaml +1 -1
- package/lib/novel-to-game/skills/novel-to-game/references/intake-method.md +4 -4
- package/lib/oh-story/manifest.json +676 -676
- package/lib/oh-story/roles/chapter-extractor.md +10 -10
- package/lib/oh-story/roles/character-designer.md +8 -24
- package/lib/oh-story/roles/consistency-checker.md +3 -5
- package/lib/oh-story/roles/narrative-writer.md +16 -16
- package/lib/oh-story/roles/story-architect.md +8 -11
- package/lib/oh-story/roles/story-explorer.md +7 -9
- package/lib/oh-story/roles/story-researcher.md +8 -8
- package/lib/oh-story/skills/browser-cdp/SKILL.md +19 -18
- package/lib/oh-story/skills/story/SKILL.md +15 -20
- package/lib/oh-story/skills/story/VERSION +1 -1
- package/lib/oh-story/skills/story-cover/SKILL.md +17 -26
- package/lib/oh-story/skills/story-cover/references/cover-styles.md +12 -10
- package/lib/oh-story/skills/story-deslop/SKILL.md +69 -211
- package/lib/oh-story/skills/story-deslop/references/agent-calls.md +17 -3
- package/lib/oh-story/skills/story-deslop/references/banned-words.md +63 -151
- package/lib/oh-story/skills/story-deslop/references/deslop-gates.md +23 -160
- package/lib/oh-story/skills/story-deslop/references/expression.md +76 -0
- package/lib/oh-story/skills/story-deslop/references/narrative-focus.md +63 -0
- package/lib/oh-story/skills/story-deslop/references/story-logic.md +65 -0
- package/lib/oh-story/skills/story-deslop/references/style-resolution.md +5 -5
- package/lib/oh-story/skills/story-import/SKILL.md +8 -13
- package/lib/oh-story/skills/story-import/references/character-state-reverse.md +9 -8
- package/lib/oh-story/skills/story-import/references/deep-analysis.md +5 -5
- package/lib/oh-story/skills/story-import/references/format-and-structure.md +11 -11
- package/lib/oh-story/skills/story-import/references/import-report.md +5 -5
- package/lib/oh-story/skills/story-import/references/import-special-cases.md +4 -4
- package/lib/oh-story/skills/story-import/references/import-tracking.md +5 -5
- package/lib/oh-story/skills/story-import/references/length-routing.md +12 -20
- package/lib/oh-story/skills/story-import/references/outline-reverse-rules.md +3 -3
- package/lib/oh-story/skills/story-import/references/outline-reverse.md +2 -2
- package/lib/oh-story/skills/story-import/references/state-tracking.md +5 -3
- package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +13 -13
- package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +10 -14
- package/lib/oh-story/skills/story-import/references/tracking-initialization.md +2 -2
- package/lib/oh-story/skills/story-import/references/tracking-transaction.md +2 -2
- package/lib/oh-story/skills/story-long-analyze/SKILL.md +8 -8
- package/lib/oh-story/skills/story-long-analyze/references/author-facing.md +9 -9
- package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +22 -22
- package/lib/oh-story/skills/story-long-analyze/references/final-checks.md +5 -4
- package/lib/oh-story/skills/story-long-analyze/references/index-rebuild.md +9 -3
- package/lib/oh-story/skills/story-long-analyze/references/inspiration-library.md +7 -7
- package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +8 -9
- package/lib/oh-story/skills/story-long-analyze/references/semantic-acceptance-fixtures.md +2 -2
- package/lib/oh-story/skills/story-long-analyze/references/stage1-golden-chapters.md +8 -8
- package/lib/oh-story/skills/story-long-analyze/references/stage2-extraction.md +9 -9
- package/lib/oh-story/skills/story-long-analyze/references/stage3-plot-rhythm.md +15 -15
- package/lib/oh-story/skills/story-long-analyze/references/stage4-characters-settings.md +17 -15
- package/lib/oh-story/skills/story-long-analyze/references/stage5-report.md +8 -6
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +19 -16
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +8 -8
- package/lib/oh-story/skills/story-long-analyze/references/synthesis-inputs.md +6 -6
- package/lib/oh-story/skills/story-long-scan/SKILL.md +24 -34
- package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +30 -44
- package/lib/oh-story/skills/story-long-scan/references/platform-ciweimao.md +6 -4
- package/lib/oh-story/skills/story-long-scan/references/platform-fanqie.md +5 -5
- package/lib/oh-story/skills/story-long-scan/references/platform-jjwxc.md +7 -7
- package/lib/oh-story/skills/story-long-scan/references/platform-qidian.md +17 -7
- package/lib/oh-story/skills/story-long-scan/references/platform-qimao.md +16 -4
- package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +16 -29
- package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +26 -39
- package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +10 -11
- package/lib/oh-story/skills/story-long-write/SKILL.md +9 -10
- package/lib/oh-story/skills/story-long-write/references/agent-calls.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/author-memory-maintenance.md +11 -9
- package/lib/oh-story/skills/story-long-write/references/author-memory.md +8 -8
- package/lib/oh-story/skills/story-long-write/references/banned-words.md +63 -151
- package/lib/oh-story/skills/story-long-write/references/benchmark-recall.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/character-basics.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/character-relations.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +7 -6
- package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/deslop-gates.md +23 -160
- package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +19 -22
- package/lib/oh-story/skills/story-long-write/references/emotion-on-page.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +28 -27
- package/lib/oh-story/skills/story-long-write/references/expression.md +76 -0
- package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +3 -4
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards.md +7 -7
- package/lib/oh-story/skills/story-long-write/references/genre-readers.md +32 -39
- package/lib/oh-story/skills/story-long-write/references/long-chapter-hooks.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/long-chapter-quality.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/long-format.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/long-genre-catalog.md +13 -13
- package/lib/oh-story/skills/story-long-write/references/long-genre-mechanics.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/long-reversal.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/long-suspense.md +3 -5
- package/lib/oh-story/skills/story-long-write/references/narrative-focus.md +63 -0
- package/lib/oh-story/skills/story-long-write/references/opening-design.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/outline-methods.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +10 -11
- package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +5 -5
- package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +8 -8
- package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +5 -6
- package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +7 -5
- package/lib/oh-story/skills/story-long-write/references/project-files.md +4 -4
- package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/reference-index.md +3 -5
- package/lib/oh-story/skills/story-long-write/references/stop-and-fix.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/story-logic.md +65 -0
- package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/style-craft.md +8 -29
- package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/style-resolution.md +5 -5
- package/lib/oh-story/skills/story-long-write/references/tracking-initialization.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +5 -4
- package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +3 -2
- package/lib/oh-story/skills/story-long-write/references/workflow-outline.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/workflow-volume.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/writer-prompt-fallback.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/writing-craft.md +25 -24
- package/lib/oh-story/skills/story-long-write/scripts/author_memory_commit.py +61 -58
- package/lib/oh-story/skills/story-long-write/scripts/build_writer_prompt.py +87 -20
- package/lib/oh-story/skills/story-review/SKILL.md +16 -31
- package/lib/oh-story/skills/story-review/references/agent-prompts.md +10 -12
- package/lib/oh-story/skills/story-review/references/banned-words.md +63 -151
- package/lib/oh-story/skills/story-review/references/batch-review.md +4 -4
- package/lib/oh-story/skills/story-review/references/character-relations.md +4 -4
- package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +19 -22
- package/lib/oh-story/skills/story-review/references/expression.md +76 -0
- package/lib/oh-story/skills/story-review/references/narrative-focus.md +63 -0
- package/lib/oh-story/skills/story-review/references/plot-core-methods.md +5 -5
- package/lib/oh-story/skills/story-review/references/quality-rubric.md +5 -5
- package/lib/oh-story/skills/story-review/references/review-quality.md +16 -19
- package/lib/oh-story/skills/story-review/references/review-tracking.md +5 -5
- package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +6 -5
- package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +6 -5
- package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +7 -8
- package/lib/oh-story/skills/story-review/references/solo.md +5 -5
- package/lib/oh-story/skills/story-review/references/story-logic.md +65 -0
- package/lib/oh-story/skills/story-review/references/style-resolution.md +5 -5
- package/lib/oh-story/skills/story-review/references/tracking-initialization.md +2 -2
- package/lib/oh-story/skills/story-review/references/tracking-transaction.md +2 -2
- package/lib/oh-story/skills/story-setup/SKILL.md +18 -18
- package/lib/oh-story/skills/story-setup/references/agent-references/agent-quality.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/agent-reference-profiles.md +3 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +63 -151
- package/lib/oh-story/skills/story-setup/references/agent-references/benchmark-style-load.md +9 -9
- package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/deslop-gates.md +23 -160
- package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +19 -22
- package/lib/oh-story/skills/story-setup/references/agent-references/emotion-on-page.md +2 -2
- package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/expression.md +76 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/format-and-structure.md +11 -11
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/270/234/346/226/271/344/273/231/344/276/240.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//344/274/240/347/273/237/347/216/204/345/271/273.md +2 -2
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/345/217/244/344/273/243.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/216/206/345/217/262/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/350/250/200/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/244/351/243/216/344/270/226/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/346/202/254/347/226/221.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/245/263/351/242/221/347/247/215/347/224/260.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/256/253/346/226/227/345/256/205/346/226/227.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/347/201/265/345/274/202.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/202/254/347/226/221/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/210/230/347/245/236/350/265/230/345/251/277.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/212/227/346/210/230/350/260/215/346/210/230.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/230/237/345/205/211/347/222/200/347/222/250.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/260/221/345/233/275/350/250/200/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//346/270/270/346/210/217/344/275/223/350/202/262.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/204/221/346/264/236.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/204/345/271/273/350/250/200/346/203/205.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/216/260/350/250/200/350/204/221/346/264/236.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//347/247/221/345/271/273/346/234/253/344/270/226.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/201/214/345/234/272/345/251/232/346/201/213.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/245/277/346/226/271/345/245/207/345/271/273.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//350/261/252/351/227/250/346/200/273/350/243/201.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/344/277/256/347/234/237.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/346/227/245/345/270/270.md +2 -2
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/347/247/215/347/224/260.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/350/204/221/346/264/236.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/203/275/345/270/202/351/253/230/346/255/246.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//351/235/222/346/230/245/347/224/234/345/256/240.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards.md +7 -7
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +33 -41
- package/lib/oh-story/skills/story-setup/references/agent-references/long-chapter-hooks.md +1 -1
- package/lib/oh-story/skills/story-setup/references/agent-references/long-emotional-methods.md +28 -27
- package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-catalog.md +13 -13
- package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-mechanics.md +2 -2
- package/lib/oh-story/skills/story-setup/references/agent-references/long-quality.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/long-reversal.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/long-suspense.md +3 -5
- package/lib/oh-story/skills/story-setup/references/agent-references/narrative-focus.md +63 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +4 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +2 -2
- package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +5 -5
- package/lib/oh-story/skills/story-setup/references/agent-references/short-chapter-hooks.md +14 -34
- package/lib/oh-story/skills/story-setup/references/agent-references/short-emotional-methods.md +7 -9
- package/lib/oh-story/skills/story-setup/references/agent-references/short-genre-formulas.md +8 -10
- package/lib/oh-story/skills/story-setup/references/agent-references/short-paragraph-hooks.md +11 -12
- package/lib/oh-story/skills/story-setup/references/agent-references/short-quality.md +6 -4
- package/lib/oh-story/skills/story-setup/references/agent-references/short-reversal.md +11 -11
- package/lib/oh-story/skills/story-setup/references/agent-references/story-logic.md +65 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +3 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/style-resolution.md +5 -5
- package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +25 -24
- package/lib/oh-story/skills/story-setup/references/diagnostics.md +4 -4
- package/lib/oh-story/skills/story-short-analyze/SKILL.md +5 -15
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-basics.md +91 -111
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-design.md +85 -97
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-relations.md +72 -83
- package/lib/oh-story/skills/story-short-analyze/references/analysis-method.md +7 -7
- package/lib/oh-story/skills/story-short-analyze/references/analysis-paragraph-hooks.md +28 -30
- package/lib/oh-story/skills/story-short-analyze/references/analysis-reader-profile.md +59 -66
- package/lib/oh-story/skills/story-short-analyze/references/analysis-report-style.md +1 -3
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-genres.md +2 -2
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-hooks.md +3 -3
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-mechanics.md +3 -3
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-patterns.md +2 -2
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-suspense.md +2 -2
- package/lib/oh-story/skills/story-short-analyze/references/analysis-writing-techniques.md +76 -89
- package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +5 -5
- package/lib/oh-story/skills/story-short-analyze/references/optional-modules.md +3 -3
- package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +13 -24
- package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +3 -3
- package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +24 -25
- package/lib/oh-story/skills/story-short-analyze/references/source-story-quality.md +44 -46
- package/lib/oh-story/skills/story-short-analyze/references/stage2-3-structure-emotion.md +14 -12
- package/lib/oh-story/skills/story-short-analyze/references/stage4-6-reversal-summary.md +17 -17
- package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +11 -11
- package/lib/oh-story/skills/story-short-scan/SKILL.md +22 -29
- package/lib/oh-story/skills/story-short-scan/references/manual-rank-input.md +3 -3
- package/lib/oh-story/skills/story-short-scan/references/platform-dianzhong.md +2 -2
- package/lib/oh-story/skills/story-short-scan/references/platform-heiyan.md +2 -2
- package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +24 -25
- package/lib/oh-story/skills/story-short-scan/references/topic-match.md +3 -3
- package/lib/oh-story/skills/story-short-write/SKILL.md +20 -23
- package/lib/oh-story/skills/story-short-write/references/agent-calls.md +4 -4
- package/lib/oh-story/skills/story-short-write/references/author-memory-maintenance.md +11 -9
- package/lib/oh-story/skills/story-short-write/references/author-memory.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/banned-words.md +63 -151
- package/lib/oh-story/skills/story-short-write/references/benchmark-recall.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +11 -11
- package/lib/oh-story/skills/story-short-write/references/deslop-gates.md +34 -0
- package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +19 -22
- package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +7 -9
- package/lib/oh-story/skills/story-short-write/references/expression.md +76 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +9 -9
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +15 -15
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +9 -9
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +14 -14
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +11 -11
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +9 -9
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +14 -13
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +12 -12
- package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/genre-styles//350/277/275/345/246/273/347/201/253/350/221/254/345/234/272.md +12 -12
- package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +8 -10
- package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +14 -34
- package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +11 -12
- package/lib/oh-story/skills/story-short-write/references/narrative-focus.md +63 -0
- package/lib/oh-story/skills/story-short-write/references/output-contract.md +13 -24
- package/lib/oh-story/skills/story-short-write/references/reference-index.md +3 -4
- package/lib/oh-story/skills/story-short-write/references/scene-craft.md +8 -7
- package/lib/oh-story/skills/story-short-write/references/short-craft.md +16 -18
- package/lib/oh-story/skills/story-short-write/references/short-deslop.md +12 -125
- package/lib/oh-story/skills/story-short-write/references/short-format.md +9 -13
- package/lib/oh-story/skills/story-short-write/references/short-prose-quality.md +18 -35
- package/lib/oh-story/skills/story-short-write/references/short-reversal.md +11 -11
- package/lib/oh-story/skills/story-short-write/references/story-logic.md +65 -0
- package/lib/oh-story/skills/story-short-write/references/style-resolution.md +5 -5
- package/lib/oh-story/skills/story-short-write/references/submission-craft.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +11 -13
- package/lib/oh-story/skills/story-short-write/references/workflow-design.md +11 -9
- package/lib/oh-story/skills/story-short-write/references/workflow-draft.md +10 -10
- package/lib/oh-story/skills/story-short-write/references/workflow-revision.md +10 -9
- package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +4 -4
- package/lib/oh-story/skills/story-short-write/scripts/author_memory_commit.py +61 -58
- package/lib/types/role-tool.d.ts +42 -2
- package/lib/types/role-tool.d.ts.map +1 -1
- package/lib/types/skill-provider.d.ts.map +1 -1
- package/lib/video-recap/CHANGELOG.md +8 -0
- package/lib/video-recap/README.en.md +8 -10
- package/lib/video-recap/README.md +8 -8
- package/lib/video-recap/manifest.json +48 -48
- package/lib/video-recap/skills/video-assemble/SKILL.md +5 -8
- package/lib/video-recap/skills/video-assemble/references/audio-modes.md +3 -3
- package/lib/video-recap/skills/video-assemble/references/jianying/SOURCE.md +1 -2
- package/lib/video-recap/skills/video-assemble/references/packaging.md +1 -2
- package/lib/video-recap/skills/video-assemble/references/source-score.md +5 -6
- package/lib/video-recap/skills/video-cut/SKILL.md +3 -7
- package/lib/video-recap/skills/video-cut/references/shot-review.md +1 -1
- package/lib/video-recap/skills/video-recap/SKILL.md +7 -11
- package/lib/video-recap/skills/video-recap/references/audio-routing.md +1 -2
- package/lib/video-recap/skills/video-recap/references/config-playbook.md +5 -7
- package/lib/video-recap/skills/video-recap/references/data-schema.md +8 -8
- package/lib/video-recap/skills/video-recap/references/resource-library.md +2 -2
- package/lib/video-recap/skills/video-reference/SKILL.md +4 -8
- package/lib/video-recap/skills/video-reference/references/reference-schema.md +1 -1
- package/lib/video-recap/skills/video-script/SKILL.md +4 -13
- package/lib/video-recap/skills/video-script/references/creative-editing-playbook.md +2 -2
- package/lib/video-recap/skills/video-understanding/SKILL.md +10 -6
- package/lib/video-recap/skills/video-understanding/references/data-schema.md +2 -2
- package/lib/video-recap/skills/video-voiceover/SKILL.md +3 -11
- package/lib/video-recap/skills/video-voiceover/references/index-tts.md +1 -2
- package/package.json +25 -24
- package/lib/drama/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +0 -187
- package/lib/drama/skills/short-drama-image-prompts/assets/image-prompts.md +0 -42
- package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +0 -128
- package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-prompts.md +0 -34
- package/lib/drama/skills/short-drama-storyboard/assets/coverage-template.json +0 -49
- package/lib/drama/skills/short-drama-storyboard/assets/keyframe-prompts.md +0 -36
- package/lib/drama/skills/short-drama-storyboard/assets/keyframe-template.jsonl +0 -2
- package/lib/drama/skills/short-drama-storyboard/assets/shot-template.jsonl +0 -2
- package/lib/drama/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +0 -101
- package/lib/drama/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +0 -217
- package/lib/drama/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +0 -31
- package/lib/drama/skills/short-drama-video-prompts/assets/video-prompts.md +0 -67
- package/lib/drama/skills/short-drama-write/assets/beats.jsonl +0 -2
- package/lib/drama/skills/short-drama-write/assets/episode-card-standalone.json +0 -120
- package/lib/drama/skills/short-drama-write/assets/episode-card.json +0 -55
- package/lib/drama/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +0 -89
- package/lib/oh-story/skills/story/references/author-memory-maintenance.md +0 -75
- package/lib/oh-story/skills/story/references/author-memory.md +0 -117
- package/lib/oh-story/skills/story/scripts/author_memory_commit.py +0 -1635
- package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +0 -556
- package/lib/oh-story/skills/story-deslop/references/author-memory-maintenance.md +0 -75
- package/lib/oh-story/skills/story-deslop/references/author-memory.md +0 -117
- package/lib/oh-story/skills/story-deslop/scripts/author_memory_commit.py +0 -1635
- package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +0 -556
- package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +0 -556
- package/lib/oh-story/skills/story-review/references/author-memory-maintenance.md +0 -75
- package/lib/oh-story/skills/story-review/references/author-memory.md +0 -117
- package/lib/oh-story/skills/story-review/scripts/author_memory_commit.py +0 -1635
- package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +0 -556
- package/lib/oh-story/skills/story-setup/references/agent-references/short-suspense.md +0 -352
- package/lib/oh-story/skills/story-short-write/references/genre-writing-techniques.md +0 -490
- package/lib/oh-story/skills/story-short-write/references/short-suspense.md +0 -352
|
@@ -1,128 +0,0 @@
|
|
|
1
|
-
# `lookdev-frame` 填写模板
|
|
2
|
-
|
|
3
|
-
只在 `purpose: lookdev_frame` 时读取。首行是 `sources` 声明记录,之后每行一个候选风格帧规格;它投影已接受视觉方向,
|
|
4
|
-
不替普通人物、地点、道具规格增加字段。删除当前测试轴不需要的可选项。
|
|
5
|
-
|
|
6
|
-
## 首行:`sources` 声明
|
|
7
|
-
|
|
8
|
-
本文件用到的每个上游快照在这里声明一次,键取产物文件名,在本文件内唯一且稳定。视觉方向与
|
|
9
|
-
制作形态同出于 `short-drama.json`,共用一个键:
|
|
10
|
-
|
|
11
|
-
```json
|
|
12
|
-
{
|
|
13
|
-
"record_type": "sources",
|
|
14
|
-
"schema_version": "1.0.0",
|
|
15
|
-
"sources": {
|
|
16
|
-
"short-drama": {
|
|
17
|
-
"owner": "creator",
|
|
18
|
-
"artifact": "short-drama.json"
|
|
19
|
-
},
|
|
20
|
-
"<identity-owner>": {
|
|
21
|
-
"owner": "short-drama-assets",
|
|
22
|
-
"artifact": "设定集/<identity-owner-file>.jsonl"
|
|
23
|
-
},
|
|
24
|
-
"<variant-owner>": {
|
|
25
|
-
"owner": "short-drama-assets",
|
|
26
|
-
"artifact": "设定集/<variant-owner-file>.jsonl"
|
|
27
|
-
},
|
|
28
|
-
"screenplay-index": {
|
|
29
|
-
"owner": "short-drama-write",
|
|
30
|
-
"artifact": "剧集/<EP>/screenplay-index.jsonl"
|
|
31
|
-
},
|
|
32
|
-
"<reference>": {
|
|
33
|
-
"owner": "<reference-owner>",
|
|
34
|
-
"artifact": "<project-relative-reference-record>"
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
引用用 `src` 指向声明键,再写本条引用自己的 `record_id` 和 `field`。
|
|
41
|
-
|
|
42
|
-
## 规格行
|
|
43
|
-
|
|
44
|
-
```json
|
|
45
|
-
{
|
|
46
|
-
"spec_id": "LOOKDEV-<stable-id>",
|
|
47
|
-
"status": "candidate",
|
|
48
|
-
"purpose": "lookdev_frame",
|
|
49
|
-
"lookdev_axis": "character_expression | core_location | high_pressure_scene",
|
|
50
|
-
"direction_ref": {
|
|
51
|
-
"src": "short-drama",
|
|
52
|
-
"field": "/creator_authority/visual_direction/choices/look_development"
|
|
53
|
-
},
|
|
54
|
-
"production_profile_ref": {
|
|
55
|
-
"src": "short-drama",
|
|
56
|
-
"field": "/creator_authority/production_profile"
|
|
57
|
-
},
|
|
58
|
-
"subject_bindings": [
|
|
59
|
-
{
|
|
60
|
-
"identity_ref": {
|
|
61
|
-
"src": "<identity-owner>",
|
|
62
|
-
"record_id": "CHAR/LOC/PROP-<id>"
|
|
63
|
-
},
|
|
64
|
-
"variant_ref": {
|
|
65
|
-
"src": "<variant-owner>",
|
|
66
|
-
"record_id": "LOOK/VIEW/PSTATE-<id>"
|
|
67
|
-
},
|
|
68
|
-
"role": "expression_subject | location | pressure_actor | evidence"
|
|
69
|
-
}
|
|
70
|
-
],
|
|
71
|
-
"story_context_refs": [
|
|
72
|
-
{
|
|
73
|
-
"src": "screenplay-index",
|
|
74
|
-
"record_id": "BLK-<EP>-<SC>-<kind><nn>",
|
|
75
|
-
"field": "/<exact-source-field-if-needed>",
|
|
76
|
-
"role": "scene_heading | action | dialogue | information_permission | story_state"
|
|
77
|
-
}
|
|
78
|
-
],
|
|
79
|
-
"reference_bindings": [
|
|
80
|
-
{
|
|
81
|
-
"slot_id": "REF-<stable-slot>",
|
|
82
|
-
"order": 1,
|
|
83
|
-
"artifact_ref": {
|
|
84
|
-
"src": "<reference>",
|
|
85
|
-
"record_id": "<stable-record-id>"
|
|
86
|
-
},
|
|
87
|
-
"role": "style",
|
|
88
|
-
"may_control": [
|
|
89
|
-
"<色彩层级/材质处理/阴影边缘/景深倾向/画面密度>"
|
|
90
|
-
],
|
|
91
|
-
"must_not_control": [
|
|
92
|
-
"<角色身份/固定地理/剧情状态/人数/持物/道具文字>"
|
|
93
|
-
],
|
|
94
|
-
"admission_status": "unverified | creator_described | visually_inspected",
|
|
95
|
-
"reference_observation_ref": null,
|
|
96
|
-
"unresolved_risks": []
|
|
97
|
-
}
|
|
98
|
-
],
|
|
99
|
-
"test_question": "<本帧要暴露哪一种视觉方向风险>",
|
|
100
|
-
"stable_visual_rules": [
|
|
101
|
-
"<跨测试轴必须保留的可观察规则>"
|
|
102
|
-
],
|
|
103
|
-
"allowed_variation": [
|
|
104
|
-
"<本场允许变化的光比/冷暖/留白/密度>"
|
|
105
|
-
],
|
|
106
|
-
"composition_and_state": "<只写当前代表帧需要的构图、空间与剧情状态>",
|
|
107
|
-
"appearance": {
|
|
108
|
-
"materials": [
|
|
109
|
-
"<材质处理>"
|
|
110
|
-
],
|
|
111
|
-
"palette": "<色彩层级>",
|
|
112
|
-
"lighting": "<光源逻辑与阴影边缘>",
|
|
113
|
-
"depth_or_density": "<景深/画面密度>"
|
|
114
|
-
},
|
|
115
|
-
"constraints": [
|
|
116
|
-
"<必须保持的身份、地理、文字与信息权限>"
|
|
117
|
-
],
|
|
118
|
-
"generic_prompt": "<只含可被画出的自然表述,语言按 #/format/prompt_language,不含字段名/hash/审查话术>",
|
|
119
|
-
"derivation": {
|
|
120
|
-
"renderer": "generic-markdown"
|
|
121
|
-
},
|
|
122
|
-
"provenance": "creator_project"
|
|
123
|
-
}
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
人物与地点测试没有剧情职责时删除 `story_context_refs` 及其 `sources` 键;高压力场景必须保留真实 `BLK-…`
|
|
127
|
-
来源。单主体也使用一项 `subject_bindings[]`,不再与 `asset_binding` 二选一。无参考媒体时
|
|
128
|
-
`reference_bindings` 为空;多参考的 `slot_id` 稳定、`order` 唯一。
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
# `lookdev-prompts.md` 可复制输出模板
|
|
2
|
-
|
|
3
|
-
此文件由已接受 Look Development 规格派生。它展示视觉方向怎样跨测试轴保持,
|
|
4
|
-
只复制引用块内的自然语言提示词;本文件不触发图片或媒体服务,实际生产交
|
|
5
|
-
`$short-drama-produce` 并单独确认。
|
|
6
|
-
|
|
7
|
-
**这是项目级文件,不是某一集的创作文档。** 它不参与 `creator_markdown_check.py` 的
|
|
8
|
-
五文档校验;某一集要用的资产提示词写进该集的《图片提示词.md》,骨架以 `SKILL.md` 为准。
|
|
9
|
-
|
|
10
|
-
```markdown
|
|
11
|
-
# 项目 Look Development 提示词
|
|
12
|
-
|
|
13
|
-
> 来源:`lookdev-image-prompt-specs.jsonl` 的已接受记录
|
|
14
|
-
> 视觉方向:`short-drama.json#/creator_authority/visual_direction/choices/look_development`
|
|
15
|
-
> 范围:仅代表帧提示词,不拥有角色身份、地点地理或剧情状态
|
|
16
|
-
|
|
17
|
-
## `LOOKDEV-<id>` · `<人物表现 | 核心地点 | 高压力场景>`
|
|
18
|
-
|
|
19
|
-
- **测试问题**:<本帧要暴露的视觉方向风险>
|
|
20
|
-
- **绑定事实**:<准确身份/变体;高压力帧再列 scene/block refs>
|
|
21
|
-
- **跨轴稳定**:<形状、材质、色彩、阴影、景深或密度中的共同规则>
|
|
22
|
-
- **本帧可变**:<当前场景允许变化的部分>
|
|
23
|
-
- **风格参考权限**:`<slot_id / order / reference>` 只决定 `<may_control>`,不得导入 `<must_not_control>`
|
|
24
|
-
- **仍未知**:<只能由授权生产观察回答的风险;无则写“无”>
|
|
25
|
-
|
|
26
|
-
### 可复制通用提示词
|
|
27
|
-
|
|
28
|
-
> <只写可被画出的主体、空间、构图、材质、光色和状态;不含字段名、hash、审查话术、供应商参数或生成历史。>
|
|
29
|
-
|
|
30
|
-
---
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
三类测试帧不要求固定数量或宫格。人物/地点帧没有剧情职责时不列 scene/block refs;高压力帧必须
|
|
34
|
-
显示其准确来源。规格或视觉方向改了就重新派生本文件,不直接手改缓存。
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"sources": {
|
|
3
|
-
"shots": {
|
|
4
|
-
"owner": "short-drama-storyboard",
|
|
5
|
-
"artifact": "剧集/EP001/storyboard/shots.jsonl"
|
|
6
|
-
},
|
|
7
|
-
"screenplay-index": {
|
|
8
|
-
"owner": "short-drama-write",
|
|
9
|
-
"artifact": "剧集/EP001/screenplay-index.jsonl"
|
|
10
|
-
},
|
|
11
|
-
"short-drama": {
|
|
12
|
-
"owner": "short-drama",
|
|
13
|
-
"artifact": "short-drama.json"
|
|
14
|
-
}
|
|
15
|
-
},
|
|
16
|
-
"episode_id": "EP001",
|
|
17
|
-
"dispositions": [
|
|
18
|
-
{
|
|
19
|
-
"block_id": "BLK-EXAMPLE",
|
|
20
|
-
"status": "covered",
|
|
21
|
-
"reason": "Primary action and reaction remain continuous.",
|
|
22
|
-
"shot_refs": [
|
|
23
|
-
{
|
|
24
|
-
"src": "shots",
|
|
25
|
-
"record_id": "SHOT-EXAMPLE",
|
|
26
|
-
"authority": "candidate"
|
|
27
|
-
}
|
|
28
|
-
]
|
|
29
|
-
}
|
|
30
|
-
],
|
|
31
|
-
"episode_duration": {
|
|
32
|
-
"shot_seconds_total": null,
|
|
33
|
-
"counted_shot_ids": [
|
|
34
|
-
"SHOT-EXAMPLE"
|
|
35
|
-
],
|
|
36
|
-
"unresolved_durations": [],
|
|
37
|
-
"target_ref": {
|
|
38
|
-
"src": "short-drama",
|
|
39
|
-
"field": "/format/target_seconds_per_episode"
|
|
40
|
-
},
|
|
41
|
-
"target_seconds": null,
|
|
42
|
-
"delta_seconds": null,
|
|
43
|
-
"disposition": "no_target_declared | within_creator_tolerance | creator_accepted_overrun | to_revise"
|
|
44
|
-
},
|
|
45
|
-
"screenplay_ref": {
|
|
46
|
-
"src": "screenplay-index"
|
|
47
|
-
},
|
|
48
|
-
"status": "candidate"
|
|
49
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# `keyframe-prompts.md` 可复制输出模板
|
|
2
|
-
|
|
3
|
-
这是由已接受的 `keyframes.jsonl` 生成的文本,不是镜头边界或资产事实来源。
|
|
4
|
-
每次导出都记下配方版本;文本被手改时,先预览恢复、
|
|
5
|
-
采用或合并的结果。
|
|
6
|
-
|
|
7
|
-
**这份模板属于结构化管线**(`keyframes.jsonl` 一路)。creator-first 项目的《分镜.md》骨架
|
|
8
|
-
以 `SKILL.md` 为准:`## SHOT-... · 中文名`,关键帧正文标题是 `### 冻结关键帧提示词`。
|
|
9
|
-
不要把这里的加粗字段名、`KEY-...` 或 `### 可复制通用提示词` 搬进 creator-first 文档。
|
|
10
|
-
|
|
11
|
-
```markdown
|
|
12
|
-
# EP<编号> · 冻结关键帧提示词
|
|
13
|
-
|
|
14
|
-
> 来源:`keyframes.jsonl` 的已接受记录
|
|
15
|
-
> 配方:`keyframe-generic@<version>`
|
|
16
|
-
> 范围:单一静止瞬间;不生成图片,不写时间动作
|
|
17
|
-
|
|
18
|
-
## `SHOT-<id>` · `KEY-<id>`
|
|
19
|
-
|
|
20
|
-
- **镜头目的**:<观众此刻必须看见什么>
|
|
21
|
-
- **观众可见性**:逐项列出 `<来源 · 展示或暂缓 · 声画载体 · 揭示条件 · 保护方法>`
|
|
22
|
-
- **边界来源**:`SHOT-<id>/start_boundary`
|
|
23
|
-
- **资产绑定**:`<准确人物与造型 · 地点与观察视角 · 道具与状态>`
|
|
24
|
-
- **文字处理**:`<已接受的来源文字政策 -> 本帧呈现方法>`
|
|
25
|
-
|
|
26
|
-
### 可复制通用提示词
|
|
27
|
-
|
|
28
|
-
> <焦点主体与识别锚点>。<构图层级、人物/道具/空间锚点关系>。摄影机<景别、角度、镜头意图>。
|
|
29
|
-
> <一个可冻结的身体朝向、姿态、目光、双手、持物与可见表演状态>。<继承的光向、时段、天气与必要气氛>。
|
|
30
|
-
> <文字处理>。保持<边界与身份事实>;排除<本帧高风险漂移>。
|
|
31
|
-
|
|
32
|
-
---
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
若一句话必须靠“先、再、随后、最终”才能成立,就交给运动提示词环节;若要改变镜头
|
|
36
|
-
开始边界,先向分镜负责人提出修订请求,不要在派生文本中偷偷改。
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
{"record_type":"sources","schema_version":"1.0.0","sources":{"<identity-owner-file>":{"owner":"short-drama-assets","artifact":"设定集/<identity-owner-file>.jsonl"},"<variant-owner-file>":{"owner":"short-drama-assets","artifact":"设定集/<variant-owner-file>.jsonl"},"location-views":{"owner":"short-drama-assets","artifact":"设定集/location-views.jsonl"},"props":{"owner":"short-drama-assets","artifact":"设定集/props.jsonl"},"short-drama":{"owner":"short-drama","artifact":"short-drama.json"},"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"}}}
|
|
2
|
-
{"keyframe_id":"KEY-EXAMPLE","status":"candidate","shot_ref":{"src":"shots","record_id":"SHOT-EXAMPLE","authority":"candidate"},"boundary_role":"start | end","boundary_ref":{"src":"shots","record_id":"SHOT-EXAMPLE","field":"/start_boundary | /end_boundary","authority":"candidate"},"purpose":"<frozen viewing purpose>","asset_bindings":[{"identity_ref":{"src":"<identity-owner-file>","record_id":"CHAR/LOC/PROP-<id>"},"variant_ref":{"src":"<variant-owner-file>","record_id":"LOOK/VIEW/PSTATE-<id>"}}],"focal_subjects":[],"composition":{"hierarchy":[],"spatial_relations":[],"foreground":[],"background":[]},"delivery_surface_ref":{"src":"short-drama","field":"/creator_authority/delivery_surface"},"camera":{"framing":"<shot-owned projection>","angle":"<shot-owned projection>","camera_height":"<shot-owned projection>","lens_intent":"<广/标准/长 — frame-only choice; the compression wanted, not a focal length>"},"boundary_projection":{"positions":[],"facing":[],"pose_balance":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"light_projection":{"source_ref":{"src":"location-views","record_id":"VIEW-<id>","field":"/state_differences/light"},"direction":"<direction>","frame_relevant_detail":"<minimal>"},"text_treatment_refs":[{"src":"props","record_id":"PROP-<id>","field":"/text_policy"}],"exclusions":[],"generic_prompt":"<这一瞬间要拍出来的画面:谁在哪、彼此距离、前中后景、视线落点、构图与景别、机位side/俯仰/焦段意图、光从哪来什么质感、每个在场者的姿态朝向手部持物、与上一镜相同的部分写一句「与上一镜相同」、排除项;不写镜头/记录 ID、规则 ID、状态词与成段否定罗列;写满的样子见 references/keyframe-craft.md>","derivation":{"recipe_version":"<version>"}}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
{"record_type":"sources","schema_version":"1.0.0","sources":{"<characters-or-props>":{"owner":"short-drama-assets","artifact":"设定集/<characters-or-props>.jsonl"},"<looks-or-prop-states>":{"owner":"short-drama-assets","artifact":"设定集/<looks-or-prop-states>.jsonl"},"location-views":{"owner":"short-drama-assets","artifact":"设定集/location-views.jsonl"},"locations":{"owner":"short-drama-assets","artifact":"设定集/locations.jsonl"},"props":{"owner":"short-drama-assets","artifact":"设定集/props.jsonl"},"screenplay-index":{"owner":"short-drama-write","artifact":"剧集/<EP>/screenplay-index.jsonl"},"short-drama":{"owner":"short-drama","artifact":"short-drama.json"}}}
|
|
2
|
-
{"shot_id":"SHOT-EXAMPLE","status":"candidate","source_refs":[{"src":"screenplay-index","record_id":"BLK-EXAMPLE"}],"coverage_role":"primary | intentional_repeat","purpose":"<what the audience must notice and why this is a new shot>","information_change":"<before -> after for audience/character>","audience_visibility":[{"source_ref":{"src":"screenplay-index","record_id":"BLK-<id>"},"fact":"<本镜必须展示或暂缓的一个事实>","permission":"show_now | withhold_now","carrier":"<可见/可听载体;暂未出现则写 none>","reveal_trigger":"<允许释放的动作/台词/cut;不在本镜则写 future>","protection_method":"<framing/crop/occlusion/offscreen/focus/timing/none,可组合说明>","rationale":"<与 source 信息权限和本镜职责的关系>"}],"location_binding":{"identity_ref":{"src":"locations","record_id":"LOC-<id>"},"variant_ref":{"src":"location-views","record_id":"VIEW-<id>"}},"asset_bindings":[{"identity_ref":{"src":"<characters-or-props>","record_id":"CHAR/PROP-<id>"},"variant_ref":{"src":"<looks-or-prop-states>","record_id":"LOOK/PSTATE-<id>"},"role":"<subject/evidence/background>"}],"duration_seconds":null,"start_boundary":{"positions":["<每条都写成不读上一镜也能理解的绝对事实:谁在哪个锚点的哪一侧;『同上』『位置不变』『同前』要往回翻才解释得通,不算已写>"],"facing":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"primary_transition":{"trigger":"<什么可见或可听事件让动作开始>","action":"<从起点到终点的唯一主要动作;交接时写清接触者、接触方式与落点>","result":"<逐项落到 end_boundary,不在镜外补转换>"},"end_boundary":{"positions":["<同样是绝对事实:本镜结束时人在哪、朝哪,不写成与开始状态的差异>"],"facing":[],"gaze":[],"hands":[],"held_props":[],"visible_state":[]},"framing":{"size":"<extreme_wide 远景/wide 全景/medium 中景/medium_close 中近景/close 近景/close_up 特写/extreme_close_up 大特写/detail 细节镜头 or creator vocabulary>","angle":"<horizontal: 正面/斜侧/正侧/后斜侧/背面 or creator vocabulary; say which side of the axis>","camera_height":"<地平/低(仰)/平视/高(俯)/顶视; 平视 is a choice, not an unset field>","aspect_notes":"<composition constraint>"},"delivery_surface_ref":{"src":"short-drama","field":"/creator_authority/delivery_surface"},"blocking":{"axis":"<working side/bridge/deliberate break>","screen_direction":"<direction>","paths":[],"fixed_anchors":[]},"camera_plan":{"behavior":"locked | pan | tilt | push | pull | track | follow | orbit | crane | handheld | transition","motivation":"<attention/pressure/alignment/reveal/rhythm>","intervals":[]},"dialogue_audio_refs":[],"text_treatment_refs":[{"src":"props","record_id":"PROP-<id>","field":"/text_policy"}],"transition_intent":null,"creator_overrides":[]}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
# `delivery-containers.jsonl` 填写模板
|
|
2
|
-
|
|
3
|
-
每行一个交付容器对象。容器只是**已接受镜头的排布方式**:它记录哪些镜头按什么顺序装进
|
|
4
|
-
同一个交付单位,以及由此得出的容器时长。它不拥有镜头边界、目的、起止状态或时长——
|
|
5
|
-
这些仍属分镜;容器只引用它们并做加法。
|
|
6
|
-
|
|
7
|
-
只有创作者声明了分段或多镜打包的交付方式时才需要本文件;单镜交付不必创建容器记录,
|
|
8
|
-
`VID-13` 在那种情形下由运动规格自身的镜头时长满足。
|
|
9
|
-
|
|
10
|
-
文件第一行是 `sources` 声明:每个上游快照在这里写一次 `owner`、`artifact` 和已接受的
|
|
11
|
-
`artifact`,后面的记录用它的 key 引用。key 用产物文件名派生的短小写名字,在本文件内稳定且唯一。
|
|
12
|
-
|
|
13
|
-
```jsonl
|
|
14
|
-
{"record_type":"sources","schema_version":"1.0.0","sources":{"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"},"motion-specs":{"owner":"short-drama-video-prompts","artifact":"剧集/<EP>/storyboard/motion-specs.jsonl"},"short-drama":{"owner":"creator","artifact":"short-drama.json"}}}
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
其后每行一个容器记录,引用写 `src` 加它指向的记录 `record_id` 或字段 `field`:
|
|
18
|
-
|
|
19
|
-
```json
|
|
20
|
-
{
|
|
21
|
-
"container_id": "CONT-<stable-id>",
|
|
22
|
-
"status": "candidate",
|
|
23
|
-
"production_profile_ref": {
|
|
24
|
-
"src": "short-drama",
|
|
25
|
-
"field": "/creator_authority/production_profile"
|
|
26
|
-
},
|
|
27
|
-
"members": [
|
|
28
|
-
{
|
|
29
|
-
"order": 1,
|
|
30
|
-
"shot_ref": {
|
|
31
|
-
"src": "shots",
|
|
32
|
-
"record_id": "SHOT-<id>"
|
|
33
|
-
},
|
|
34
|
-
"motion_ref": {
|
|
35
|
-
"src": "motion-specs",
|
|
36
|
-
"record_id": "MOTION-<stable-id>"
|
|
37
|
-
},
|
|
38
|
-
"accepted_duration_ref": {
|
|
39
|
-
"src": "shots",
|
|
40
|
-
"record_id": "SHOT-<id>",
|
|
41
|
-
"field": "/duration_seconds"
|
|
42
|
-
},
|
|
43
|
-
"accepted_duration": "<从 accepted_duration_ref 读到的值,投影不改写>",
|
|
44
|
-
"location_binding_ref": {
|
|
45
|
-
"src": "shots",
|
|
46
|
-
"record_id": "SHOT-<id>",
|
|
47
|
-
"field": "/location_binding"
|
|
48
|
-
},
|
|
49
|
-
"asset_bindings_ref": {
|
|
50
|
-
"src": "shots",
|
|
51
|
-
"record_id": "SHOT-<id>",
|
|
52
|
-
"field": "/asset_bindings"
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
],
|
|
56
|
-
"container_duration": "<各成员 accepted_duration 之和>",
|
|
57
|
-
"membership_basis": {
|
|
58
|
-
"source_order_contiguous": "<true | 说明为什么不连续及去向>",
|
|
59
|
-
"binding_chain_equal": "<true | 说明哪一位成员的绑定不同、以及为什么仍同容器>",
|
|
60
|
-
"scene_boundary_not_crossed": "<true | 说明跨越原因与已接受依据>"
|
|
61
|
-
},
|
|
62
|
-
"unresolved": [],
|
|
63
|
-
"provenance": "creator_project"
|
|
64
|
-
}
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
## 结构校验点
|
|
68
|
-
|
|
69
|
-
`VID-13` 靠这条记录本地可证,不依赖阅读渲染文本。带 ✓ 的由 [container_check.py](../scripts/container_check.py) 判定,其余由审查者判定——此前这份清单整体写成「本地可证」,而脚本只实现了其中两项:
|
|
70
|
-
|
|
71
|
-
1. ✓ `members[]` 非空,`order` 唯一、连续、升序;
|
|
72
|
-
2. 每条引用的 `src` 在本文件 `sources` 声明里找得到对应条目;
|
|
73
|
-
3. ✓ 每个成员的 `accepted_duration` 等于其 `accepted_duration_ref` 解析后指向的分镜值;
|
|
74
|
-
4. ✓ `container_duration` 等于各成员 `accepted_duration` 之和;
|
|
75
|
-
5. 每个成员的 `motion_ref` 指向的运动规格,其 `shot_ref` 与该成员 `shot_ref` 解析到同一镜头记录;
|
|
76
|
-
6. **逐成员**解析 `location_binding_ref` 与 `asset_bindings_ref`,各成员解析结果相同时
|
|
77
|
-
`binding_chain_equal` 才能为 `true`;只引用其中一条成员记录不构成证明。
|
|
78
|
-
7. ✓ `membership_basis` 三项都有结论,未成立的写进 `unresolved`,不留空。
|
|
79
|
-
|
|
80
|
-
任何一项不成立即为结构缺陷,按主技能的 `stale` 与恢复流程处理,不在渲染文本里补救。
|
|
81
|
-
|
|
82
|
-
## 依赖方向是单向的
|
|
83
|
-
|
|
84
|
-
容器 → 运动规格 → 镜头,**不存在反向的文件引用**。运动规格不带 `container_ref`:
|
|
85
|
-
两端在各自 `sources` 里互相声明对方会形成环:依赖方向必须单向,否则谁都不能先落盘。
|
|
86
|
-
文字上写“只读”不能消除这个环。
|
|
87
|
-
|
|
88
|
-
要从一个镜头反查它属于哪个容器,扫描容器记录的 `members[]`,不在运动规格里存副本。
|
|
89
|
-
|
|
90
|
-
## 与其他记录的关系
|
|
91
|
-
|
|
92
|
-
- **运动规格**:每条运动规格仍然只绑定一个 `shot_ref`,且不感知容器的存在。
|
|
93
|
-
- **渲染文本**:`video-prompts.md` 的容器一节由本记录派生,是缓存,不是权威;文本与本
|
|
94
|
-
记录不一致时以本记录为准。
|
|
95
|
-
- **成员时长**:一律是分镜的只读投影。要改时长就改分镜,然后重算 `container_duration`;
|
|
96
|
-
不得在容器里直接改数。
|
|
97
|
-
- **成员资格判据**:语义部分见 `references/delivery-profile.md` 的多镜容器成员资格;
|
|
98
|
-
本文件只负责让判据的结论可被引用与核对。
|
|
99
|
-
|
|
100
|
-
复制后删除不适用的可选字段。容器不跨越已接受的场次或时间跳跃;省略、闪回分支与声明过的
|
|
101
|
-
蒙太奇各自单独成容器。
|
|
@@ -1,217 +0,0 @@
|
|
|
1
|
-
# `motion-specs.jsonl` 填写模板
|
|
2
|
-
|
|
3
|
-
文件第一行是 `sources` 声明:每个上游快照在这里写一次 `owner`、`artifact` 和已接受的
|
|
4
|
-
`artifact`,后面的记录用它的 key 引用。key 用产物文件名派生的短小写名字,在本文件内稳定且唯一。
|
|
5
|
-
本阶段插入的片段([`performance.fragment.json`](performance.fragment.json)、
|
|
6
|
-
[`coverage-scope.fragment.json`](coverage-scope.fragment.json))落进同一个文件,它们用到的 key
|
|
7
|
-
也在这里声明。
|
|
8
|
-
|
|
9
|
-
```jsonl
|
|
10
|
-
{"record_type":"sources","schema_version":"1.0.0","sources":{"shots":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/shots.jsonl"},"keyframes":{"owner":"short-drama-storyboard","artifact":"剧集/<EP>/storyboard/keyframes.jsonl"},"screenplay-index":{"owner":"short-drama-write","artifact":"剧集/<EP>/screenplay-index.jsonl"},"characters":{"owner":"short-drama-assets","artifact":"设定集/characters.jsonl"},"short-drama":{"owner":"creator","artifact":"short-drama.json"}}}
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
其后每行一个候选运动规格对象。引用写 `src` 加它指向的记录 `record_id` 或字段 `field`;
|
|
14
|
-
`boundary_refs` 只读,候选状态属于本运动规格,不向已经接受的上游引用传播。不要加入
|
|
15
|
-
`duration_override`、`end_override` 或 `next_shot_write`。以下字符串只说明怎样填写,
|
|
16
|
-
不是固定答案。
|
|
17
|
-
|
|
18
|
-
```json
|
|
19
|
-
{
|
|
20
|
-
"motion_id": "MOTION-<stable-id>",
|
|
21
|
-
"status": "candidate",
|
|
22
|
-
"shot_ref": {
|
|
23
|
-
"src": "shots",
|
|
24
|
-
"record_id": "SHOT-<id>"
|
|
25
|
-
},
|
|
26
|
-
"keyframe_ref": {
|
|
27
|
-
"src": "keyframes",
|
|
28
|
-
"record_id": "KEY-<id>"
|
|
29
|
-
},
|
|
30
|
-
"production_profile_ref": {
|
|
31
|
-
"src": "short-drama",
|
|
32
|
-
"field": "/creator_authority/production_profile"
|
|
33
|
-
},
|
|
34
|
-
"boundary_refs": {
|
|
35
|
-
"duration": {
|
|
36
|
-
"src": "shots",
|
|
37
|
-
"record_id": "SHOT-<id>",
|
|
38
|
-
"field": "/duration_seconds",
|
|
39
|
-
"value_seconds": 0.0
|
|
40
|
-
},
|
|
41
|
-
"start": {
|
|
42
|
-
"src": "shots",
|
|
43
|
-
"record_id": "SHOT-<id>",
|
|
44
|
-
"field": "/start_boundary"
|
|
45
|
-
},
|
|
46
|
-
"primary_transition": {
|
|
47
|
-
"src": "shots",
|
|
48
|
-
"record_id": "SHOT-<id>",
|
|
49
|
-
"field": "/primary_transition"
|
|
50
|
-
},
|
|
51
|
-
"end": {
|
|
52
|
-
"src": "shots",
|
|
53
|
-
"record_id": "SHOT-<id>",
|
|
54
|
-
"field": "/end_boundary"
|
|
55
|
-
},
|
|
56
|
-
"next_start": {
|
|
57
|
-
"src": "shots",
|
|
58
|
-
"record_id": "SHOT-<next-id>",
|
|
59
|
-
"field": "/start_boundary",
|
|
60
|
-
"access": "comparison_only"
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
"reference_bindings": [
|
|
64
|
-
{
|
|
65
|
-
"slot_id": "REF-<stable-slot>",
|
|
66
|
-
"order": 1,
|
|
67
|
-
"artifact_ref": {
|
|
68
|
-
"src": "keyframes",
|
|
69
|
-
"record_id": "KEY-<id>"
|
|
70
|
-
},
|
|
71
|
-
"role": "start_frame | continuity_video | actual_tail_frame",
|
|
72
|
-
"may_control": [
|
|
73
|
-
"<本镜 accepted 起始构图与可见状态>"
|
|
74
|
-
],
|
|
75
|
-
"must_not_control": [
|
|
76
|
-
"<尚未发生的动作/终态/无权威文字>"
|
|
77
|
-
],
|
|
78
|
-
"admission_status": "unverified | creator_described | visually_inspected",
|
|
79
|
-
"reference_observation_ref": null,
|
|
80
|
-
"unresolved_risks": [
|
|
81
|
-
"<没有观察证据时保留的文字/水印/裁切风险>"
|
|
82
|
-
]
|
|
83
|
-
}
|
|
84
|
-
],
|
|
85
|
-
"start_anchor": {
|
|
86
|
-
"pose_balance": "<仅运动必需>",
|
|
87
|
-
"gaze": "<目标>",
|
|
88
|
-
"hands": {
|
|
89
|
-
"left": "<状态>",
|
|
90
|
-
"right": "<状态>"
|
|
91
|
-
},
|
|
92
|
-
"held_props": [
|
|
93
|
-
"<exact binding + hand>"
|
|
94
|
-
],
|
|
95
|
-
"spatial_relations": [
|
|
96
|
-
"<与行动对象的关系>"
|
|
97
|
-
]
|
|
98
|
-
},
|
|
99
|
-
"ordered_subject_motion": [
|
|
100
|
-
{
|
|
101
|
-
"order": 1,
|
|
102
|
-
"actor": "<asset binding>",
|
|
103
|
-
"trigger": "<accepted cue>",
|
|
104
|
-
"action": "<可见动作>",
|
|
105
|
-
"direction_or_path": "<方向/路径>",
|
|
106
|
-
"object_or_contact": "<对象/接触>",
|
|
107
|
-
"result": "<阶段结果>",
|
|
108
|
-
"timing": {
|
|
109
|
-
"mode": "relative | explicit",
|
|
110
|
-
"value": "<顺序词或秒区间>"
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
],
|
|
114
|
-
"camera": {
|
|
115
|
-
"behavior": "locked | move | transition",
|
|
116
|
-
"motivation": "reveal | pressure | alignment | relationship | transition | deliberate_stillness",
|
|
117
|
-
"intervals": [
|
|
118
|
-
{
|
|
119
|
-
"range": "<相对阶段或秒区间>",
|
|
120
|
-
"mode": "<lock/pan/tilt/dolly/handheld/follow>",
|
|
121
|
-
"path_tempo": "<方向/节奏>",
|
|
122
|
-
"endpoint": "<在 accepted framing/boundary 内>"
|
|
123
|
-
}
|
|
124
|
-
]
|
|
125
|
-
},
|
|
126
|
-
"environment_motion": [
|
|
127
|
-
{
|
|
128
|
-
"element": "<已有环境元素>",
|
|
129
|
-
"motion": "<有剧情意义的变化>",
|
|
130
|
-
"cause": "<连续性/主体动作>"
|
|
131
|
-
}
|
|
132
|
-
],
|
|
133
|
-
"audio": [
|
|
134
|
-
{
|
|
135
|
-
"source_ref": {
|
|
136
|
-
"src": "screenplay-index",
|
|
137
|
-
"record_id": "BLK-<EP>-<SC>-D<nn>"
|
|
138
|
-
},
|
|
139
|
-
"speaker_ref": {
|
|
140
|
-
"src": "characters",
|
|
141
|
-
"record_id": "CHAR-<id>"
|
|
142
|
-
},
|
|
143
|
-
"voice_direction_ref": {
|
|
144
|
-
"src": "characters",
|
|
145
|
-
"record_id": "CHAR-<id>",
|
|
146
|
-
"field": "/voice_direction"
|
|
147
|
-
},
|
|
148
|
-
"kind": "dialogue | VO | OS | SFX | ambience | music",
|
|
149
|
-
"exact_text": "<仅 source 有文本时逐字引用>",
|
|
150
|
-
"delivery_or_spatial_intent": "<不改文本的表演/声源/层级>",
|
|
151
|
-
"timing": "<相对阶段或秒区间>"
|
|
152
|
-
}
|
|
153
|
-
],
|
|
154
|
-
"timing_plan": {
|
|
155
|
-
"mode": "relative | explicit",
|
|
156
|
-
"phases": [
|
|
157
|
-
"<阶段、overlap 与 landing 空间>"
|
|
158
|
-
],
|
|
159
|
-
"declares_overlap": false,
|
|
160
|
-
"declared_total_or_endpoint_seconds": 0.0
|
|
161
|
-
},
|
|
162
|
-
"end_report": {
|
|
163
|
-
"projection": {
|
|
164
|
-
"pose": "<reported>",
|
|
165
|
-
"position": "<reported>",
|
|
166
|
-
"gaze": "<reported>",
|
|
167
|
-
"hands": "<reported>",
|
|
168
|
-
"held_props": "<reported>",
|
|
169
|
-
"visible_state": "<reported>"
|
|
170
|
-
},
|
|
171
|
-
"comparison": "match | mismatch | unrealized",
|
|
172
|
-
"differences": []
|
|
173
|
-
},
|
|
174
|
-
"reference_frame_economy": {
|
|
175
|
-
"frame_carries": [
|
|
176
|
-
"appearance",
|
|
177
|
-
"composition",
|
|
178
|
-
"base lighting"
|
|
179
|
-
],
|
|
180
|
-
"repeated_for_motion_only": [
|
|
181
|
-
"<hand/prop/path 等必要局部>"
|
|
182
|
-
]
|
|
183
|
-
},
|
|
184
|
-
"creator_overrides": [
|
|
185
|
-
{
|
|
186
|
-
"rule_id": "<VID-*>",
|
|
187
|
-
"choice": "<覆盖>",
|
|
188
|
-
"rationale": "<理由>"
|
|
189
|
-
}
|
|
190
|
-
],
|
|
191
|
-
"generic_prompt": "<把本规格渲染成一段只含要拍出来的画面的交付文本:从已接受起点的姿态与持物说起,逐条写动作、接触、摄影机行为与终点状态;不写镜头/记录 ID、规则 ID、状态词、工艺备注与成段否定罗列;写满的样子见 references/production-prompt-grammar.md>",
|
|
192
|
-
"derivation": {
|
|
193
|
-
"recipe_version": "<version>"
|
|
194
|
-
},
|
|
195
|
-
"provenance": "creator_project"
|
|
196
|
-
}
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
运动规格**不带指回交付容器的引用**。依赖方向只有一条:容器 → 运动规格 → 镜头。两端在各自
|
|
201
|
-
`sources` 里互相声明对方会形成环——依赖方向必须单向,
|
|
202
|
-
永远得不到可发布的稳定快照。要找某个镜头属于哪个容器,从容器记录的 `members[]` 反查,不在本文件里
|
|
203
|
-
存副本。容器记录见 [delivery-container.jsonl.md](delivery-container.jsonl.md)。
|
|
204
|
-
|
|
205
|
-
默认 master 不重复 `purpose_ref` 或 `coverage_scope`:镜头目的、场次计划与原文覆盖从准确
|
|
206
|
-
`shot_ref` 及其上游读取。只有 pickup/alternate 才按
|
|
207
|
-
[motion-recipe.md](../references/motion-recipe.md) 增加 `coverage_scope`,记录相对母版的补充、保留与去向。
|
|
208
|
-
`boundary_refs` 只保留结构校验需要的 duration/start/end/next-start 精确字段投影,不再重复镜头目的、
|
|
209
|
-
场次计划或原文职责;删除它前必须先让 timing 与 continuity 校验器能从 `shot_ref` 安全解析同一快照。
|
|
210
|
-
|
|
211
|
-
普通记录省略 `performance_arcs[]` 与 `attention_handoffs[]`;存在可见表演变化或注意交接时,按
|
|
212
|
-
[`performance.fragment.json`](performance.fragment.json) 插入完整字段。空镜、道具细节、纯空间
|
|
213
|
-
转场和只有物理动作的镜头不编造 arc。多参考的 `slot_id` 稳定且 `order` 唯一。
|
|
214
|
-
`reported_end` 只作比较;末镜没有真实下一镜时改用
|
|
215
|
-
`next_start_locator`。附加参考为空时使用空数组;对白说话者与声音方向只有在已接受引用存在时才填写。
|
|
216
|
-
母版、补拍和替代关系保留在同一规格文件内,替代决定由审查结论拥有。具体取舍按
|
|
217
|
-
`references/motion-recipe.md` 与 `references/review-and-fixtures.md` 判断。
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
# Timeline Music Spec
|
|
2
|
-
|
|
3
|
-
Music is a timeline layer, not a default bed baked into every generated shot.
|
|
4
|
-
Create a record only when accepted story or directing material gives music a
|
|
5
|
-
specific dramatic job.
|
|
6
|
-
|
|
7
|
-
The file opens with a `sources` header that declares each upstream snapshot
|
|
8
|
-
once. A source key is short, lowercase and derived from the artifact basename;
|
|
9
|
-
it stays stable and unique within the file.
|
|
10
|
-
|
|
11
|
-
```jsonl
|
|
12
|
-
{"record_type":"sources","schema_version":"1.0.0","sources":{"screenplay":{"owner":"short-drama-write","artifact":"剧集/EP001/screenplay.md"}}}
|
|
13
|
-
```
|
|
14
|
-
|
|
15
|
-
Every record after the header names the snapshot through its key:
|
|
16
|
-
|
|
17
|
-
```json
|
|
18
|
-
{"music_id":"MUS-EP001-01","scope":{"episode_id":"EP001","start_seconds":0,"end_seconds":12},"source_refs":[{"src":"screenplay","record_id":"EP001-SC001"}],"narrative_function":"<what changes for the audience, and why picture/performance alone is insufficient>","prompt":"<provider-neutral style, mood, instrumentation, energy and scene description>","mode":"instrumental | song","lyrics":null,"mix_intent":{"entry":"<relative entry against picture or dialogue>","exit":"<relative exit or transition>","duck_under_dialogue":true,"loop":false},"status":"candidate"}
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
- `source_refs` carry `src` plus the record or field they point at; the
|
|
22
|
-
artifact's `owner` and `artifact` live in the header entry that `src`
|
|
23
|
-
names.
|
|
24
|
-
- `scope` is the accepted timeline interval; it does not promise a supplier can
|
|
25
|
-
generate that exact duration.
|
|
26
|
-
- `prompt` contains musical intent only, never model names, API fields, artist
|
|
27
|
-
imitation, remote task identifiers or credentials.
|
|
28
|
-
- `song` requires creator-owned or licensed `lyrics`; `instrumental` carries no
|
|
29
|
-
lyrics. Do not ask a provider to silently rewrite accepted lyrics.
|
|
30
|
-
- `mix_intent` is an editorial handoff. Production generates a source track;
|
|
31
|
-
editing still owns exact fades, ducking and placement.
|