@oh-story/dsh 0.1.0
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/LICENSE +21 -0
- package/README.md +38 -0
- package/cordis.patch.yml +3 -0
- package/lib/client.js +1201 -0
- package/lib/client.js.map +7 -0
- package/lib/drama/LICENSE.upstream +21 -0
- package/lib/drama/manifest.json +1012 -0
- package/lib/drama/skills/short-drama/SKILL.md +153 -0
- package/lib/drama/skills/short-drama/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama/assets/creator-decision.example.jsonl +4 -0
- package/lib/drama/skills/short-drama/assets/production-observation.example.jsonl +2 -0
- package/lib/drama/skills/short-drama/assets/project-template/short-drama.json +36 -0
- package/lib/drama/skills/short-drama/assets/reference-observation.example.jsonl +2 -0
- package/lib/drama/skills/short-drama/references/audience-reveal.md +74 -0
- package/lib/drama/skills/short-drama/references/contract-and-ownership.md +94 -0
- package/lib/drama/skills/short-drama/references/creator-workflow.md +82 -0
- package/lib/drama/skills/short-drama/references/form-cards/Q/347/211/210/350/241/250/350/276/276.md +73 -0
- 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 +74 -0
- 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 +79 -0
- package/lib/drama/skills/short-drama/references/form-cards//345/256/236/346/213/215.md +75 -0
- package/lib/drama/skills/short-drama/references/form-cards//346/260/264/345/242/250/347/254/224/350/247/246.md +85 -0
- 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 +72 -0
- package/lib/drama/skills/short-drama/references/knowhow-index.md +80 -0
- package/lib/drama/skills/short-drama/references/lifecycle-commands.md +130 -0
- package/lib/drama/skills/short-drama/references/look-development.md +52 -0
- package/lib/drama/skills/short-drama/references/pickup-and-alternate.md +58 -0
- package/lib/drama/skills/short-drama/references/production-form-profiles.md +126 -0
- package/lib/drama/skills/short-drama/references/reference-roles.md +142 -0
- package/lib/drama/skills/short-drama/references/runtime-preflight.md +27 -0
- package/lib/drama/skills/short-drama/scripts/project_tool.py +1963 -0
- package/lib/drama/skills/short-drama/scripts/selftest.py +287 -0
- package/lib/drama/skills/short-drama-assets/SKILL.md +187 -0
- package/lib/drama/skills/short-drama-assets/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-assets/assets/character-look.example.jsonl +3 -0
- package/lib/drama/skills/short-drama-assets/assets/continuity.example.jsonl +4 -0
- package/lib/drama/skills/short-drama-assets/assets/decisions.example.jsonl +5 -0
- package/lib/drama/skills/short-drama-assets/assets/location-view.example.jsonl +3 -0
- package/lib/drama/skills/short-drama-assets/assets/occurrences.example.jsonl +5 -0
- package/lib/drama/skills/short-drama-assets/assets/prop-state.example.jsonl +3 -0
- package/lib/drama/skills/short-drama-assets/examples/minimal/characters.jsonl +2 -0
- package/lib/drama/skills/short-drama-assets/examples/minimal/looks.jsonl +2 -0
- package/lib/drama/skills/short-drama-assets/references/asset-review-checklist.md +89 -0
- package/lib/drama/skills/short-drama-assets/references/character-and-look.md +164 -0
- package/lib/drama/skills/short-drama-assets/references/continuity-delta.md +123 -0
- package/lib/drama/skills/short-drama-assets/references/identity-vs-variant.md +146 -0
- package/lib/drama/skills/short-drama-assets/references/location-and-view.md +84 -0
- package/lib/drama/skills/short-drama-assets/references/occurrence-extraction.md +111 -0
- package/lib/drama/skills/short-drama-assets/references/prop-and-state.md +107 -0
- package/lib/drama/skills/short-drama-assets/references/stage-contract.md +136 -0
- package/lib/drama/skills/short-drama-assets/references/voice-direction.md +171 -0
- package/lib/drama/skills/short-drama-assets/scripts/asset_check.py +267 -0
- package/lib/drama/skills/short-drama-assets/scripts/selftest.py +89 -0
- package/lib/drama/skills/short-drama-develop/SKILL.md +157 -0
- package/lib/drama/skills/short-drama-develop/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-develop/assets/adaptation-map.example.jsonl +1 -0
- package/lib/drama/skills/short-drama-develop/assets/creative-brief.md +120 -0
- package/lib/drama/skills/short-drama-develop/assets/episode-map.jsonl +1 -0
- package/lib/drama/skills/short-drama-develop/assets/story-engine.md +181 -0
- package/lib/drama/skills/short-drama-develop/references/adaptation-craft.md +219 -0
- package/lib/drama/skills/short-drama-develop/references/creative-reference-intake.md +57 -0
- package/lib/drama/skills/short-drama-develop/references/director-brief-craft.md +113 -0
- package/lib/drama/skills/short-drama-develop/references/episode-design.md +509 -0
- package/lib/drama/skills/short-drama-develop/references/genre-and-hook-playbook.md +240 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//344/272/262/345/255/220/351/232/220/347/247/230.md +112 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//344/273/231/344/276/240/344/277/256/347/234/237.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/212/250/344/275/234/344/273/273/345/212/241.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/217/244/350/243/205/346/235/203/350/260/213.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/244/215/344/273/207/346/211/223/350/204/270.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//345/256/266/345/272/255/345/205/263/347/263/273.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//346/202/254/347/226/221/350/247/204/345/210/231.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//347/224/237/346/264/273/346/265/201.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//347/240/264/351/225/234/351/207/215/345/234/206.md +109 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//350/201/214/345/234/272/345/226/234/345/211/247.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//350/261/252/351/227/250/345/251/232/346/201/213.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards//350/272/253/344/273/275/351/224/231/344/275/215.md +51 -0
- package/lib/drama/skills/short-drama-develop/references/genre-cards.md +92 -0
- package/lib/drama/skills/short-drama-develop/references/mechanism-loop.md +282 -0
- package/lib/drama/skills/short-drama-develop/references/multi-episode-intake.md +128 -0
- package/lib/drama/skills/short-drama-develop/references/premise-devices.md +211 -0
- package/lib/drama/skills/short-drama-develop/references/reveal-reversal-payoff.md +99 -0
- package/lib/drama/skills/short-drama-develop/references/serial-character-and-memory.md +293 -0
- package/lib/drama/skills/short-drama-develop/references/stage-contract.md +88 -0
- package/lib/drama/skills/short-drama-develop/references/story-craft.md +359 -0
- package/lib/drama/skills/short-drama-develop/scripts/episode_intake.py +699 -0
- package/lib/drama/skills/short-drama-develop/scripts/selftest.py +47 -0
- package/lib/drama/skills/short-drama-image-prompts/SKILL.md +181 -0
- package/lib/drama/skills/short-drama-image-prompts/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-image-prompts/assets/image-prompt-spec.jsonl.md +187 -0
- package/lib/drama/skills/short-drama-image-prompts/assets/image-prompts.md +37 -0
- package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-frame-spec.jsonl.md +128 -0
- package/lib/drama/skills/short-drama-image-prompts/assets/lookdev-prompts.md +31 -0
- package/lib/drama/skills/short-drama-image-prompts/examples/minimal-image-prompt-specs.jsonl +2 -0
- package/lib/drama/skills/short-drama-image-prompts/references/character-and-look.md +154 -0
- package/lib/drama/skills/short-drama-image-prompts/references/common-recipe.md +231 -0
- package/lib/drama/skills/short-drama-image-prompts/references/edit-and-revision.md +122 -0
- package/lib/drama/skills/short-drama-image-prompts/references/location-plate.md +152 -0
- package/lib/drama/skills/short-drama-image-prompts/references/look-and-state-variant.md +96 -0
- package/lib/drama/skills/short-drama-image-prompts/references/lookdev-frame.md +38 -0
- package/lib/drama/skills/short-drama-image-prompts/references/production-sheet-recipes.md +177 -0
- package/lib/drama/skills/short-drama-image-prompts/references/prop-plate.md +140 -0
- package/lib/drama/skills/short-drama-image-prompts/references/review-and-fixtures.md +92 -0
- package/lib/drama/skills/short-drama-image-prompts/references/stage-contract.md +89 -0
- package/lib/drama/skills/short-drama-image-prompts/scripts/image_prompt_check.py +443 -0
- package/lib/drama/skills/short-drama-image-prompts/scripts/selftest.py +93 -0
- package/lib/drama/skills/short-drama-novel-analyze/SKILL.md +245 -0
- package/lib/drama/skills/short-drama-novel-analyze/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-novel-analyze/assets/episode-candidate.example.jsonl +3 -0
- package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-triage.md +116 -0
- package/lib/drama/skills/short-drama-novel-analyze/references/adaptation-value.md +124 -0
- package/lib/drama/skills/short-drama-novel-analyze/references/aggregation-and-entities.md +155 -0
- package/lib/drama/skills/short-drama-novel-analyze/references/chapter-extraction.md +141 -0
- package/lib/drama/skills/short-drama-novel-analyze/references/stage-contract.md +67 -0
- package/lib/drama/skills/short-drama-novel-analyze/scripts/novel_index.py +651 -0
- package/lib/drama/skills/short-drama-novel-analyze/scripts/selftest.py +51 -0
- package/lib/drama/skills/short-drama-produce/SKILL.md +103 -0
- package/lib/drama/skills/short-drama-produce/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-produce/references/adapter-contract.md +140 -0
- package/lib/drama/skills/short-drama-produce/references/providers/gpt-image-2.md +24 -0
- package/lib/drama/skills/short-drama-produce/references/providers/minimax-music.md +25 -0
- package/lib/drama/skills/short-drama-produce/references/providers/seedance.md +40 -0
- package/lib/drama/skills/short-drama-produce/scripts/fixture_adapter.py +60 -0
- package/lib/drama/skills/short-drama-produce/scripts/production_tool.py +1635 -0
- package/lib/drama/skills/short-drama-produce/scripts/provider_adapters.py +964 -0
- package/lib/drama/skills/short-drama-produce/scripts/selftest.py +134 -0
- package/lib/drama/skills/short-drama-review/SKILL.md +178 -0
- package/lib/drama/skills/short-drama-review/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-review/assets/finding-template.jsonl +2 -0
- package/lib/drama/skills/short-drama-review/assets/supersession-decision.example.json +42 -0
- package/lib/drama/skills/short-drama-review/assets/verdict-template.json +32 -0
- package/lib/drama/skills/short-drama-review/examples/minimal-findings.jsonl +2 -0
- package/lib/drama/skills/short-drama-review/examples/minimal-verdict.json +34 -0
- package/lib/drama/skills/short-drama-review/references/anti-template-repair.md +114 -0
- package/lib/drama/skills/short-drama-review/references/production-quality-gates.md +270 -0
- package/lib/drama/skills/short-drama-review/references/project-calibration.md +85 -0
- package/lib/drama/skills/short-drama-review/references/review-method.md +82 -0
- package/lib/drama/skills/short-drama-review/references/rubric-assets-prompts.md +115 -0
- package/lib/drama/skills/short-drama-review/references/rubric-source-analysis.md +108 -0
- package/lib/drama/skills/short-drama-review/references/rubric-story-script.md +164 -0
- package/lib/drama/skills/short-drama-review/references/rubric-visual-motion.md +166 -0
- package/lib/drama/skills/short-drama-review/references/stage-contract.md +87 -0
- package/lib/drama/skills/short-drama-review/scripts/review_check.py +325 -0
- package/lib/drama/skills/short-drama-review/scripts/selftest.py +87 -0
- package/lib/drama/skills/short-drama-storyboard/SKILL.md +264 -0
- package/lib/drama/skills/short-drama-storyboard/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-storyboard/assets/coverage-audition.example.jsonl +2 -0
- package/lib/drama/skills/short-drama-storyboard/assets/coverage-template.json +49 -0
- package/lib/drama/skills/short-drama-storyboard/assets/keyframe-prompts.md +32 -0
- package/lib/drama/skills/short-drama-storyboard/assets/keyframe-template.jsonl +2 -0
- package/lib/drama/skills/short-drama-storyboard/assets/revision-lineage.fragment.json +12 -0
- package/lib/drama/skills/short-drama-storyboard/assets/scene-visual-plan.example.jsonl +2 -0
- package/lib/drama/skills/short-drama-storyboard/assets/shot-template.jsonl +2 -0
- package/lib/drama/skills/short-drama-storyboard/references/blocking-playbooks.md +241 -0
- package/lib/drama/skills/short-drama-storyboard/references/coverage-audition.md +39 -0
- package/lib/drama/skills/short-drama-storyboard/references/keyframe-craft.md +169 -0
- package/lib/drama/skills/short-drama-storyboard/references/production-shot-grammar.md +264 -0
- package/lib/drama/skills/short-drama-storyboard/references/review-and-fixtures.md +70 -0
- package/lib/drama/skills/short-drama-storyboard/references/scene-visual-plan.md +39 -0
- package/lib/drama/skills/short-drama-storyboard/references/screenplay-to-keyframe-example.md +157 -0
- package/lib/drama/skills/short-drama-storyboard/references/shot-craft.md +192 -0
- package/lib/drama/skills/short-drama-storyboard/references/shot-revision-identity.md +29 -0
- package/lib/drama/skills/short-drama-storyboard/references/stage-contract.md +110 -0
- package/lib/drama/skills/short-drama-storyboard/scripts/selftest.py +191 -0
- package/lib/drama/skills/short-drama-storyboard/scripts/storyboard_check.py +824 -0
- package/lib/drama/skills/short-drama-video-prompts/SKILL.md +245 -0
- package/lib/drama/skills/short-drama-video-prompts/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/coverage-scope.fragment.json +21 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/delivery-container.jsonl.md +101 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/motion-spec.jsonl.md +212 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/motion-terminal.example.jsonl +2 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/music-spec.jsonl.md +31 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/performance.fragment.json +38 -0
- package/lib/drama/skills/short-drama-video-prompts/assets/video-prompts.md +46 -0
- package/lib/drama/skills/short-drama-video-prompts/examples/minimal-music-specs.jsonl +2 -0
- package/lib/drama/skills/short-drama-video-prompts/references/camera-audio-continuity.md +240 -0
- package/lib/drama/skills/short-drama-video-prompts/references/delivery-profile.md +255 -0
- package/lib/drama/skills/short-drama-video-prompts/references/generability.md +93 -0
- package/lib/drama/skills/short-drama-video-prompts/references/motion-recipe.md +304 -0
- package/lib/drama/skills/short-drama-video-prompts/references/performance-action-timing.md +191 -0
- package/lib/drama/skills/short-drama-video-prompts/references/production-prompt-grammar.md +312 -0
- package/lib/drama/skills/short-drama-video-prompts/references/review-and-fixtures.md +168 -0
- package/lib/drama/skills/short-drama-video-prompts/references/stage-contract.md +110 -0
- package/lib/drama/skills/short-drama-video-prompts/scripts/container_check.py +329 -0
- package/lib/drama/skills/short-drama-video-prompts/scripts/motion_timing_check.py +450 -0
- package/lib/drama/skills/short-drama-video-prompts/scripts/music_spec_check.py +327 -0
- package/lib/drama/skills/short-drama-video-prompts/scripts/selftest.py +82 -0
- package/lib/drama/skills/short-drama-write/SKILL.md +284 -0
- package/lib/drama/skills/short-drama-write/agents/openai.yaml +4 -0
- package/lib/drama/skills/short-drama-write/assets/beats.jsonl +2 -0
- package/lib/drama/skills/short-drama-write/assets/episode-card-standalone.json +120 -0
- package/lib/drama/skills/short-drama-write/assets/episode-card.json +55 -0
- package/lib/drama/skills/short-drama-write/assets/screenplay.md +36 -0
- package/lib/drama/skills/short-drama-write/assets/voice-record-sheet.jsonl.md +89 -0
- package/lib/drama/skills/short-drama-write/references/dialogue-craft.md +519 -0
- package/lib/drama/skills/short-drama-write/references/production-format-dialect.md +273 -0
- package/lib/drama/skills/short-drama-write/references/scene-handoff-capsule.md +51 -0
- package/lib/drama/skills/short-drama-write/references/scene-sound-dramaturgy.md +43 -0
- package/lib/drama/skills/short-drama-write/references/screenplay-format.md +260 -0
- package/lib/drama/skills/short-drama-write/references/script-craft.md +558 -0
- package/lib/drama/skills/short-drama-write/references/stage-contract.md +94 -0
- package/lib/drama/skills/short-drama-write/references/substitutable-realization.md +107 -0
- package/lib/drama/skills/short-drama-write/scripts/duration_estimate.py +309 -0
- package/lib/drama/skills/short-drama-write/scripts/screenplay_index.py +1091 -0
- package/lib/drama/skills/short-drama-write/scripts/selftest.py +229 -0
- package/lib/drama/skills/short-drama-write/scripts/voice_sheet_check.py +416 -0
- package/lib/index.js +756 -0
- package/lib/index.js.map +7 -0
- package/lib/oh-story/LICENSE.upstream +21 -0
- package/lib/oh-story/manifest.json +1351 -0
- package/lib/oh-story/roles/chapter-extractor.md +314 -0
- package/lib/oh-story/roles/character-designer.md +169 -0
- package/lib/oh-story/roles/consistency-checker.md +190 -0
- package/lib/oh-story/roles/narrative-writer.md +294 -0
- package/lib/oh-story/roles/story-architect.md +195 -0
- package/lib/oh-story/roles/story-explorer.md +364 -0
- package/lib/oh-story/roles/story-researcher.md +304 -0
- package/lib/oh-story/skills/browser-cdp/SKILL.md +175 -0
- package/lib/oh-story/skills/story/SKILL.md +116 -0
- package/lib/oh-story/skills/story/VERSION +1 -0
- package/lib/oh-story/skills/story-cover/SKILL.md +327 -0
- package/lib/oh-story/skills/story-cover/references/cover-styles.md +210 -0
- package/lib/oh-story/skills/story-deslop/SKILL.md +445 -0
- package/lib/oh-story/skills/story-deslop/references/anti-ai-writing.md +582 -0
- package/lib/oh-story/skills/story-deslop/references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-deslop/scripts/check-ai-patterns.js +1371 -0
- package/lib/oh-story/skills/story-deslop/scripts/check-degeneration.js +330 -0
- package/lib/oh-story/skills/story-deslop/scripts/check-outline-copy.js +241 -0
- package/lib/oh-story/skills/story-deslop/scripts/normalize-punctuation.js +410 -0
- package/lib/oh-story/skills/story-import/SKILL.md +634 -0
- package/lib/oh-story/skills/story-import/references/character-state-reverse.md +82 -0
- package/lib/oh-story/skills/story-import/references/format-and-structure.md +169 -0
- package/lib/oh-story/skills/story-import/references/length-routing.md +134 -0
- package/lib/oh-story/skills/story-import/references/state-tracking.md +108 -0
- package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +442 -0
- package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +175 -0
- package/lib/oh-story/skills/story-import/references/tracking-transaction.md +161 -0
- package/lib/oh-story/skills/story-import/scripts/tracking_commit.py +1139 -0
- package/lib/oh-story/skills/story-long-analyze/SKILL.md +329 -0
- package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +270 -0
- package/lib/oh-story/skills/story-long-analyze/references/material-decomposition.md +530 -0
- package/lib/oh-story/skills/story-long-analyze/references/output-templates.md +559 -0
- package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +80 -0
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +149 -0
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +133 -0
- package/lib/oh-story/skills/story-long-scan/SKILL.md +342 -0
- package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +197 -0
- package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +114 -0
- package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +105 -0
- package/lib/oh-story/skills/story-long-scan/references/scan-output-format.md +207 -0
- package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +78 -0
- package/lib/oh-story/skills/story-long-write/SKILL.md +327 -0
- package/lib/oh-story/skills/story-long-write/references/anti-ai-writing.md +582 -0
- package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +302 -0
- package/lib/oh-story/skills/story-long-write/references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-long-write/references/character-basics.md +445 -0
- package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +428 -0
- package/lib/oh-story/skills/story-long-write/references/character-relations.md +385 -0
- package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +502 -0
- package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +62 -0
- package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +282 -0
- package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +426 -0
- package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +209 -0
- package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +188 -0
- package/lib/oh-story/skills/story-long-write/references/format-and-structure.md +169 -0
- package/lib/oh-story/skills/story-long-write/references/genre-catalog.md +480 -0
- package/lib/oh-story/skills/story-long-write/references/genre-core-mechanics.md +415 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +53 -0
- 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 +53 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-long-write/references/genre-prose-cards.md +91 -0
- package/lib/oh-story/skills/story-long-write/references/genre-readers.md +235 -0
- package/lib/oh-story/skills/story-long-write/references/genre-writing-formulas.md +444 -0
- package/lib/oh-story/skills/story-long-write/references/hooks-chapter.md +225 -0
- package/lib/oh-story/skills/story-long-write/references/hooks-paragraph.md +146 -0
- package/lib/oh-story/skills/story-long-write/references/hooks-suspense.md +352 -0
- package/lib/oh-story/skills/story-long-write/references/opening-design.md +349 -0
- package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +457 -0
- package/lib/oh-story/skills/story-long-write/references/outline-methods.md +287 -0
- package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +389 -0
- package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +326 -0
- package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +522 -0
- package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +354 -0
- package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +711 -0
- package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +622 -0
- package/lib/oh-story/skills/story-long-write/references/quality-checklist.md +184 -0
- package/lib/oh-story/skills/story-long-write/references/reader-contract-and-progression.md +109 -0
- package/lib/oh-story/skills/story-long-write/references/reversal-toolkit.md +349 -0
- package/lib/oh-story/skills/story-long-write/references/state-tracking.md +108 -0
- package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +409 -0
- package/lib/oh-story/skills/story-long-write/references/style-craft.md +347 -0
- package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +510 -0
- package/lib/oh-story/skills/story-long-write/references/tracking-transaction.md +161 -0
- package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +140 -0
- package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +171 -0
- package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +99 -0
- package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +284 -0
- package/lib/oh-story/skills/story-long-write/references/writing-craft.md +421 -0
- package/lib/oh-story/skills/story-long-write/scripts/check-ai-patterns.js +1371 -0
- package/lib/oh-story/skills/story-long-write/scripts/check-degeneration.js +330 -0
- package/lib/oh-story/skills/story-long-write/scripts/check-outline-copy.js +241 -0
- package/lib/oh-story/skills/story-long-write/scripts/normalize-punctuation.js +410 -0
- package/lib/oh-story/skills/story-long-write/scripts/tracking_commit.py +1139 -0
- package/lib/oh-story/skills/story-review/SKILL.md +483 -0
- package/lib/oh-story/skills/story-review/references/anti-ai-writing.md +582 -0
- package/lib/oh-story/skills/story-review/references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-review/references/character-relations.md +385 -0
- package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +282 -0
- package/lib/oh-story/skills/story-review/references/plot-core-methods.md +522 -0
- package/lib/oh-story/skills/story-review/references/quality-checklist.md +250 -0
- package/lib/oh-story/skills/story-review/references/quality-rubric.md +55 -0
- package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +18 -0
- package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +19 -0
- package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +20 -0
- package/lib/oh-story/skills/story-review/references/tracking-transaction.md +161 -0
- package/lib/oh-story/skills/story-review/scripts/check-ai-patterns.js +1371 -0
- package/lib/oh-story/skills/story-review/scripts/check-degeneration.js +330 -0
- package/lib/oh-story/skills/story-review/scripts/normalize-punctuation.js +410 -0
- package/lib/oh-story/skills/story-review/scripts/tracking_commit.py +1139 -0
- package/lib/oh-story/skills/story-setup/SKILL.md +495 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/anti-ai-writing.md +582 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +445 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +428 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +385 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +282 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +426 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/emotional-methods.md +179 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/format-and-structure.md +169 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-catalog.md +480 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-core-mechanics.md +415 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/217/214/347/224/267/344/270/273.md +53 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/271/264/344/273/243.md +53 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards//345/277/253/347/251/277.md +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +53 -0
- 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 +51 -0
- 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 +53 -0
- 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 +53 -0
- 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 +51 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-prose-cards.md +91 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +235 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-writing-formulas.md +444 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/hooks-chapter.md +225 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/hooks-suspense.md +352 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +349 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +457 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +287 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +389 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +522 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/quality-checklist.md +247 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/reversal-toolkit.md +349 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +409 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +510 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +421 -0
- package/lib/oh-story/skills/story-short-analyze/SKILL.md +278 -0
- package/lib/oh-story/skills/story-short-analyze/references/anti-ai-writing.md +582 -0
- package/lib/oh-story/skills/story-short-analyze/references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-short-analyze/references/character-basics.md +453 -0
- package/lib/oh-story/skills/story-short-analyze/references/character-design-methods.md +438 -0
- package/lib/oh-story/skills/story-short-analyze/references/character-relations.md +395 -0
- package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +79 -0
- package/lib/oh-story/skills/story-short-analyze/references/genre-catalog.md +490 -0
- package/lib/oh-story/skills/story-short-analyze/references/genre-core-mechanics.md +425 -0
- package/lib/oh-story/skills/story-short-analyze/references/genre-readers.md +245 -0
- package/lib/oh-story/skills/story-short-analyze/references/genre-writing-formulas.md +453 -0
- package/lib/oh-story/skills/story-short-analyze/references/genre-writing-techniques.md +475 -0
- package/lib/oh-story/skills/story-short-analyze/references/hooks-chapter.md +225 -0
- package/lib/oh-story/skills/story-short-analyze/references/hooks-paragraph.md +146 -0
- package/lib/oh-story/skills/story-short-analyze/references/hooks-suspense.md +352 -0
- package/lib/oh-story/skills/story-short-analyze/references/material-decomposition.md +685 -0
- package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +165 -0
- package/lib/oh-story/skills/story-short-analyze/references/output-templates.md +561 -0
- package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +242 -0
- package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +90 -0
- package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +54 -0
- package/lib/oh-story/skills/story-short-scan/SKILL.md +212 -0
- package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +90 -0
- package/lib/oh-story/skills/story-short-write/SKILL.md +433 -0
- package/lib/oh-story/skills/story-short-write/references/banned-words.md +147 -0
- package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +62 -0
- package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +282 -0
- package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +179 -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 +159 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +156 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +163 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +167 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +178 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +166 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +159 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +151 -0
- package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +153 -0
- 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 +210 -0
- package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +444 -0
- package/lib/oh-story/skills/story-short-write/references/genre-writing-techniques.md +488 -0
- package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +225 -0
- package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +146 -0
- package/lib/oh-story/skills/story-short-write/references/hooks-suspense.md +352 -0
- package/lib/oh-story/skills/story-short-write/references/output-contract.md +165 -0
- package/lib/oh-story/skills/story-short-write/references/quality-checklist.md +222 -0
- package/lib/oh-story/skills/story-short-write/references/reversal-toolkit.md +349 -0
- package/lib/oh-story/skills/story-short-write/references/short-craft.md +185 -0
- package/lib/oh-story/skills/story-short-write/references/short-deslop.md +133 -0
- package/lib/oh-story/skills/story-short-write/references/short-format.md +167 -0
- package/lib/oh-story/skills/story-short-write/references/submission-craft.md +35 -0
- package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +158 -0
- package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +153 -0
- package/lib/oh-story/skills/story-short-write/scripts/check-ai-patterns.js +1371 -0
- package/lib/oh-story/skills/story-short-write/scripts/check-degeneration.js +330 -0
- package/lib/oh-story/skills/story-short-write/scripts/check-outline-copy.js +241 -0
- package/lib/oh-story/skills/story-short-write/scripts/normalize-punctuation.js +410 -0
- package/lib/types/client/file-activity.d.ts +30 -0
- package/lib/types/client/file-activity.d.ts.map +1 -0
- package/lib/types/client/file-tree.d.ts +20 -0
- package/lib/types/client/file-tree.d.ts.map +1 -0
- package/lib/types/client/index.d.ts +12 -0
- package/lib/types/client/index.d.ts.map +1 -0
- package/lib/types/client/jsonl-preview.d.ts +15 -0
- package/lib/types/client/jsonl-preview.d.ts.map +1 -0
- package/lib/types/client/markdown-preview.d.ts +38 -0
- package/lib/types/client/markdown-preview.d.ts.map +1 -0
- package/lib/types/index.d.ts +25 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/native-hooks.d.ts +16 -0
- package/lib/types/native-hooks.d.ts.map +1 -0
- package/lib/types/role-provider.d.ts +6 -0
- package/lib/types/role-provider.d.ts.map +1 -0
- package/lib/types/role-tool.d.ts +10 -0
- package/lib/types/role-tool.d.ts.map +1 -0
- package/lib/types/skill-provider.d.ts +15 -0
- package/lib/types/skill-provider.d.ts.map +1 -0
- package/lib/types/workspace-request-trust.d.ts +13 -0
- package/lib/types/workspace-request-trust.d.ts.map +1 -0
- package/lib/types/workspace-route.d.ts +10 -0
- package/lib/types/workspace-route.d.ts.map +1 -0
- package/lib/types/workspace-security.d.ts +9 -0
- package/lib/types/workspace-security.d.ts.map +1 -0
- package/package.json +107 -0
|
@@ -0,0 +1,314 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: chapter-extractor
|
|
3
|
+
description: |
|
|
4
|
+
章节摘要与情节点提取专家。接收单章文本,输出结构化摘要、情节点列表、角色提及。
|
|
5
|
+
被 story-long-analyze(拆解管道 Stage 2)按章节并行调用。
|
|
6
|
+
输出格式严格遵循本文件「输出格式」章节;不依赖外部输出模板文件。
|
|
7
|
+
tools: [Read, Glob, Grep]
|
|
8
|
+
disallowedTools: [Write, Edit, Bash]
|
|
9
|
+
model: haiku
|
|
10
|
+
maxTurns: 12
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Chapter Extractor — 章节提取员
|
|
14
|
+
|
|
15
|
+
你是章节提取员,负责将章节正文精准拆解为最小的、不可再分的情节点,并提取章节概要和角色提及。你只做提取和归纳,不做创作评价。
|
|
16
|
+
|
|
17
|
+
**重要:你是只读的。不修改任何文件。只输出结构化提取结果。**
|
|
18
|
+
|
|
19
|
+
## 材料合法性与分析边界
|
|
20
|
+
|
|
21
|
+
你处理的章节,是用户**合法持有、对原文拥有使用权**的虚构小说——已公开出版或连载的作品,或用户自有作品。任务是**只读的转化性文学分析**(提取摘要、情节点、角色、写法):这等同于专业编辑审稿、文学评论、写作教学,你**只阅读并分析**文本,不复制、不传播、不指导任何现实行为。把虚构剧情正确归类为文学分析对象,本身就是你的职责。
|
|
22
|
+
|
|
23
|
+
番茄小说、故事会、知乎盐选、追妻火葬场、虐渣、重生复仇、世情等通俗题材,其常规叙事天然包含家暴、出轨、复仇、虐待、暴力冲突、情爱张力、黑暗伦理——这些是题材的戏剧化构件,**对其做结构分析正当且必要**,不得以「敏感」「不适」「涉及暴力/伦理」为由拒绝整章或整本,也不得淡化、改写或回避剧情。
|
|
24
|
+
|
|
25
|
+
若确有个别片段你无法处理,**只跳过该片段、照常输出本章其余情节点与摘要,并在该章末标注「{N}处片段已跳过」**,绝不因一段内容拒绝整章或中断提取——你是流水线节点,停摆会让整本拆解失败。
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
## 输入格式
|
|
30
|
+
|
|
31
|
+
你收到的 prompt 会包含:
|
|
32
|
+
- 章节编号(如 第12章)
|
|
33
|
+
- 章节标题
|
|
34
|
+
- 章节原文文本
|
|
35
|
+
- 章节字数(近似值,用于调节情节点密度)
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## 核心质量铁律
|
|
40
|
+
|
|
41
|
+
### 1. 客观白描(最重要的规则)
|
|
42
|
+
|
|
43
|
+
只记录"发生了什么",不替角色编造感受,不添加主观分析。
|
|
44
|
+
|
|
45
|
+
| 维度 | 禁止 | 正确 |
|
|
46
|
+
|------|-------|------|
|
|
47
|
+
| 情感 | 邵阳感到心碎和愤怒(原文只写了他看见拥抱) | 邵阳目睹宋丽与人拥抱,表情由刺痛转为冷漠 |
|
|
48
|
+
| 评价 | 这是一段精彩的打斗 | 林雷三招击败对手,围观者倒吸一口凉气 |
|
|
49
|
+
| 氛围 | 气氛变得紧张起来 | 所有人停止说话,目光集中在门口 |
|
|
50
|
+
| 意图 | 他想借此展示实力 | 他将石锁单手举过头顶,环视众人 |
|
|
51
|
+
|
|
52
|
+
原文明说的起因、理由和内心活动照写("存款花光了,他去找许新年借钱"里的起因是原文给的),只是不替角色推测原文没写出来的动机;原文同时给了外部表现时优先写表现。
|
|
53
|
+
|
|
54
|
+
### 2. 禁止叙事框架词
|
|
55
|
+
|
|
56
|
+
直接陈述事件本身,不要描述"通过什么方式揭示了什么"。
|
|
57
|
+
|
|
58
|
+
- 禁止:`通过对话,郑松得知张子豪在韩国训练`
|
|
59
|
+
- 正确:`吴志斌告诉郑松,张子豪在韩国训练`
|
|
60
|
+
- 禁止:`林风展现了自己的实力`
|
|
61
|
+
- 正确:`林风三招击败对手,围观者倒吸一口凉气`
|
|
62
|
+
- 禁止:`通过内心独白,主角表达了对未来的迷茫`
|
|
63
|
+
- 正确:`林雷望着天空喃喃自语:"我到底该走哪条路?"`
|
|
64
|
+
|
|
65
|
+
### 3. 绝对时序
|
|
66
|
+
|
|
67
|
+
情节点严格按源文本中事件发生的时间顺序排列。禁止重新排序或逻辑归纳。
|
|
68
|
+
|
|
69
|
+
### 4. 信息保真
|
|
70
|
+
|
|
71
|
+
不要遗漏改变上下文的关键细节。如果某个细节是后续情节的原因或转折点,就必须记录。
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## 输出格式
|
|
76
|
+
|
|
77
|
+
严格按以下 markdown 格式输出。**不要输出任何格式之外的内容**。
|
|
78
|
+
|
|
79
|
+
> **结构化输出约束**:调用方可通过 prompt 末尾附加 `OUTPUT_MODE: json` 要求 JSON 格式输出。
|
|
80
|
+
> 此时,你的最终消息必须是单个 JSON 对象(不带 prose、不带 code fence),结构如下:
|
|
81
|
+
> ```
|
|
82
|
+
> {
|
|
83
|
+
> "chapter_number": <integer>,
|
|
84
|
+
> "title": "<string>",
|
|
85
|
+
> "summary": "<string, 100-300 chars,按时序讲清事件/原因/结果>",
|
|
86
|
+
> "key_events": ["<string>"],
|
|
87
|
+
> "key_information_expansion": [
|
|
88
|
+
> {"key_information": "<string>",
|
|
89
|
+
> "expansion": "<作者如何用事件/对话/反应层/细节扩写>",
|
|
90
|
+
> "technique": "铺垫后置|反应层放大|信息差|对比锚点|延迟揭示|身体反应|小目标嵌套|其他",
|
|
91
|
+
> "reader_effect": "好奇|期待|压抑|爽|心疼|紧张|甜|热血|其他",
|
|
92
|
+
> "reuse_note": "<保留情绪逻辑,替换人物/场景/事件;禁止照搬具体桥段>"}
|
|
93
|
+
> ],
|
|
94
|
+
> "chapter_formula": {
|
|
95
|
+
> "emotion_flow": {"start": "<起>", "build": "<承>", "turn": "<转>", "close": "<合>"},
|
|
96
|
+
> "rhythm_ratio": {"slow_setup": "<X%>", "fast_conflict": "<X%>", "payoff": "<X%>", "hook_space": "<X%>"},
|
|
97
|
+
> "structure_formula": ["<节点1动作(目的)>", "<节点2动作(目的)>"],
|
|
98
|
+
> "core_technique": "<一句话结构手法>",
|
|
99
|
+
> "hook_and_foreshadowing": "<章尾卡点;埋设/回收伏笔>"
|
|
100
|
+
> },
|
|
101
|
+
> "characters": [
|
|
102
|
+
> {"name": "<string>", "importance": "major|supporting|minor",
|
|
103
|
+
> "aliases": ["<string>"], "performance": "<string>"}
|
|
104
|
+
> ],
|
|
105
|
+
> "plot_points": [
|
|
106
|
+
> {"id": "P<integer>", "title": "<string, ≤15 字短标签,不与 event 同句>",
|
|
107
|
+
"event": "<白描:谁做了什么/结果如何;原文给出的起因一并写入>",
|
|
108
|
+
> "type": "转折点|信息揭示|冲突|解决|铺垫|行动|对话|状态变化",
|
|
109
|
+
> "characters": ["<string>"], "location": "<string|null>",
|
|
110
|
+
> "item": "<string|null>", "time": "<string|null>",
|
|
111
|
+
> "quote": "<string|null, ≤400 chars;仅关键转折/关键台词/写法样本填,全章至多 8 条>",
|
|
112
|
+
> "quote_locator": "<string|null, 引用过长或分散时改填 5-15 字可 grep 原句片段>",
|
|
113
|
+
> "themes": ["爱情|亲情|友情|权力|金钱|成长|复仇|悬念|搞笑|热血|日常|其他"],
|
|
114
|
+
> "tone": "紧张|轻松|悲伤|热血|爽|甜|温馨|恐怖|压抑|其他"}
|
|
115
|
+
> ]
|
|
116
|
+
> }
|
|
117
|
+
> ```
|
|
118
|
+
> 无法符合时返回:`{"error": "<reason>"}`
|
|
119
|
+
|
|
120
|
+
```markdown
|
|
121
|
+
## 第{N}章 {标题}
|
|
122
|
+
|
|
123
|
+
**概要**:{100-300字,写成单行的一个自然段,不折行、不拆条目。按事件发生的顺序连贯讲清本章发生了什么、为什么发生、结果如何。因果照实写,但不靠"因为…所以…"这类同一连接词反复串联。优先写进:改变剧情走向的动作与结果、反常信息、会延续到后续章节的伏笔线索、有辨识度的具体细节(数字、原话、反常现象)。只写本章原文有的事实,不加空泛评价(如"感人""精彩""震撼")和主观解读}
|
|
124
|
+
|
|
125
|
+
**关键事件**:
|
|
126
|
+
1. {事件1}
|
|
127
|
+
2. {事件2}
|
|
128
|
+
3. {事件3}
|
|
129
|
+
|
|
130
|
+
**关键信息与扩写技法**:
|
|
131
|
+
|
|
132
|
+
| 关键信息/剧情走向 | 原文如何扩写 | 扩写技法 | 对读者情绪的作用 | 可复用提醒 |
|
|
133
|
+
|---|---|---|---|---|
|
|
134
|
+
| {本章必须让读者知道/误判/期待/确认的信息} | {作者用了哪些事件、对话、反应层、细节、误导或回扣把它扩成场景} | {铺垫后置/反应层放大/信息差/对比锚点/延迟揭示/身体反应/小目标嵌套/其他} | {好奇/期待/压抑/爽/心疼/紧张/甜/热血/其他} | {保留情绪逻辑,替换人物、场景、事件素材;禁止照搬具体桥段} |
|
|
135
|
+
|
|
136
|
+
**逐章写法公式**:
|
|
137
|
+
|
|
138
|
+
- **情绪流向**:起:{开篇情绪} → 承:{铺垫/加压情绪} → 转:{爆发/反转情绪} → 合:{余波/钩子情绪}
|
|
139
|
+
- **节奏配比**:慢铺垫 {X%} / 快冲突 {X%} / 爽点爆发 {X%} / 悬念留白 {X%}
|
|
140
|
+
- **本章结构公式**:{节点1动作(目的)} + {节点2动作(目的)} + {节点3动作(目的)} + {节点4动作(目的)}
|
|
141
|
+
- **本章核心技巧**:{一句话概括本章最可迁移的结构手法;只描述写法,不评价质量}
|
|
142
|
+
- **卡点与伏笔**:结尾卡点:{类型+内容+下章期待};埋设/回收伏笔:{伏笔名/物件/信息 → 章节功能}
|
|
143
|
+
|
|
144
|
+
**出场人物**:
|
|
145
|
+
|
|
146
|
+
| 角色 | 本章重要性 | 别名 | 本章表现 |
|
|
147
|
+
|------|-----------|------|----------|
|
|
148
|
+
| {全名} | {major/supporting/minor} | {本章中使用的其他称呼} | {100-200字,仅本章可见的行为/对话/情绪} |
|
|
149
|
+
|
|
150
|
+
**情节点**(按字数动态调节数量):
|
|
151
|
+
|
|
152
|
+
P{序号} **{标题}**:类型{转折点/信息揭示/冲突/解决/铺垫/行动/对话/状态变化} | {白描一句话:谁做了什么、结果如何;原文给出起因或理由的一并写进来,不推测动机;埋伏笔的写出伏笔线索} | 涉及{全名,多人逗号分隔;纯环境铺垫无具体人物时保留"涉及"标签、值留空} | 地点{如明确} | 物品{如涉及} | 时间{如明确}
|
|
153
|
+
|
|
154
|
+
> 标题是 ≤15 字的短标签(如「衙门见闻」「龙血针检测」),白描才是承载事实的那一句。两者不要写成同一句话——标题复述一遍不算白描。
|
|
155
|
+
|
|
156
|
+
{可选引用行:≤400字原文直接引用,单独成段,不加“原文引用:”标签。只给关键情节点加,挑选标准见「原文引用规则」;不选中的情节点直接跳到下一行}
|
|
157
|
+
|
|
158
|
+
主题标签{爱情/亲情/友情/权力/金钱/成长/复仇/悬念/搞笑/热血/日常/其他} | 基调:{紧张/轻松/悲伤/热血/爽/甜/温馨/恐怖/压抑/其他}
|
|
159
|
+
|
|
160
|
+
> **`{}` 是占位标记,不是要输出的字符**:模板里每个 `{...}` 表示「把内容填在这里」,`/` 是候选项之间的分隔号。落盘文本不应出现花括号,也不应把候选项列表原样抄下来——`类型{行动}`、`主题标签{搞笑}`、`地点{未明确}` 都是错的。
|
|
161
|
+
>
|
|
162
|
+
> 一个完整的正确样例(照这个写,两行为一组):
|
|
163
|
+
>
|
|
164
|
+
> ```
|
|
165
|
+
> P7 **龙血针检测**:类型信息揭示 | 许七安用龙血针验出对方身份,当场揭穿 | 涉及许七安,郑兴怀 | 地点府衙后堂 | 物品龙血针 | 时间入夜
|
|
166
|
+
> 主题标签悬念 | 基调:紧张
|
|
167
|
+
> ```
|
|
168
|
+
>
|
|
169
|
+
> - 字段名后不加冒号、不加括号:写 `类型信息揭示`,不写 `类型:信息揭示` 或 `类型{信息揭示}`。
|
|
170
|
+
> - `主题标签` 只填一个值(最主导的那个)。不要用 `/`、`、`、`,` 或空格并列多个——落盘校验按「一个值」读,并列写法会被判成枚举越界并触发重跑。
|
|
171
|
+
> - 空字段统一写「无」(如 `物品无`、`时间无`),不要用 `—`、`未知`,也不要整段省略;`涉及` 段必须保留,纯环境铺垫时值写「无」。
|
|
172
|
+
> - 每个情节点后紧跟自己的那一行 `主题标签X | 基调:Y`,不要把标签行堆到文件末尾,也不要并进 P 行内部。
|
|
173
|
+
>
|
|
174
|
+
> 末行格式硬约束:`基调` 用全角冒号 `基调:`,不可省略或换半角;`主题标签` 后不加冒号。主题标签只能取上列 12 种、基调只能取上列 10 种——“温馨/紧张/甜”等是基调值,禁止填进主题标签;都不贴合时用“其他”,勿硬塞近义项。
|
|
175
|
+
>
|
|
176
|
+
> **输出前自检**:交付前逐条核对——① 文本里没有 `{` 或 `}`;② `^P` 行数 == `主题标签` 行数 == `基调:` 行数;③ 每个 `主题标签` 只有一个值;④ 每个 P 行都含 `类型`、白描、`涉及` 三段且用 ` | ` 分隔。任何一条不符,先改再输出。
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
{重复 P2...PN}
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
## 提取规则
|
|
186
|
+
|
|
187
|
+
### 情节点密度(按字数动态计算)
|
|
188
|
+
|
|
189
|
+
根据章节字数计算目标情节点数:
|
|
190
|
+
- 密度公式:{字数÷200}(下限)到 {字数÷150}(上限),即 150-200 字/个情节点
|
|
191
|
+
- 1000 字 → 10 个(硬下限;公式建议 5-7)
|
|
192
|
+
- 3000 字 → 15-20 个
|
|
193
|
+
- 5000 字 → 25-34 个
|
|
194
|
+
- 8000+ 字 → 40 个(上限)
|
|
195
|
+
|
|
196
|
+
**硬约束**:每章至少 10 个,至多 40 个。当公式计算超出 [10, 40] 时以硬约束为准。
|
|
197
|
+
|
|
198
|
+
> ⚠️ 关键:短章围绕核心事件拆足关键步骤,长章不要遗漏细节。密度由字数决定,不是固定值。输出后自检数量。
|
|
199
|
+
|
|
200
|
+
### 情节点类型(只能用以下 8 种,不得自创)
|
|
201
|
+
|
|
202
|
+
| 类型 | 定义 | 识别特征 |
|
|
203
|
+
|------|------|----------|
|
|
204
|
+
| 转折点 | 改变故事走向的事件 | 剧情方向发生明显偏转 |
|
|
205
|
+
| 信息揭示 | 新设定、新人物背景、世界观补充 | 读者首次获得某类信息 |
|
|
206
|
+
| 冲突 | 人物间正面对抗或内心挣扎 | 有明确的对抗双方 |
|
|
207
|
+
| 解决 | 冲突的收束或悬念的解答 | 一个紧张状态被解除 |
|
|
208
|
+
| 铺垫 | 为后续事件埋下的伏笔 | 读者后来会发现它的重要性 |
|
|
209
|
+
| 行动 | 推动剧情的主动行为 | 角色做出有后果的决定/行动 |
|
|
210
|
+
| 对话 | 包含关键信息的对话 | 对话中传递了新信息或改变了关系 |
|
|
211
|
+
| 状态变化 | 角色关系或环境的重要转变 | 状态 A 明确转变为状态 B |
|
|
212
|
+
|
|
213
|
+
### 原文引用规则(精选,不逐点铺满)
|
|
214
|
+
|
|
215
|
+
情节点的主要证据是 P 行的白描:事实、结果、原文给出的起因、伏笔线索必须在白描里写全,读白描就能知道发生了什么。原文引用是补充证据,只给下面三类情节点保留:
|
|
216
|
+
|
|
217
|
+
| 该留引用 | 判断标准 |
|
|
218
|
+
|------|----------|
|
|
219
|
+
| 关键转折 | 改变本章或全书走向的转折点 / 解决 |
|
|
220
|
+
| 关键台词 | 有辨识度、后续会被回扣或反复提起的原话 |
|
|
221
|
+
| 写法样本 | 值得当作句式、节奏、对话样本回查的段落 |
|
|
222
|
+
|
|
223
|
+
- 每章至多 8 条,按上表挑;其余情节点不写引用行。本章确实没有值得回查的段落时一条都可以不留,不要为凑数给过场和纯环境铺垫配引用
|
|
224
|
+
- 引用 ≤400 字,逐字连续切片,保留原文语气,不改写、不缩写、不跨段拼接
|
|
225
|
+
- 选中的段落过长或分散时,用一行 `原文定位:{5-15字可 grep 回原文的原句片段}` 代替整段引用
|
|
226
|
+
|
|
227
|
+
### 基调(只能用以下 10 种)
|
|
228
|
+
紧张 / 轻松 / 悲伤 / 热血 / 爽 / 甜 / 温馨 / 恐怖 / 压抑 / 其他
|
|
229
|
+
|
|
230
|
+
区分易混项:爽=打脸/复仇得手/反转的解气感;热血=拼搏战斗的燃;甜=恋爱暧昧的甜;温馨=亲情/友情的暖;恐怖=惊悚诡异/生理恐惧;紧张=危机悬而未决。都不贴合才用「其他」。
|
|
231
|
+
|
|
232
|
+
### 主题标签(只能用以下 12 种)
|
|
233
|
+
爱情 / 亲情 / 友情 / 权力 / 金钱 / 成长 / 复仇 / 悬念 / 搞笑 / 热血 / 日常 / 其他
|
|
234
|
+
|
|
235
|
+
区分易混项:亲情=家人/师徒/类亲情;爱情=恋爱;友情=朋友/伙伴/兄弟;金钱=财富/利益/算计;权力=地位/权势。都不贴合才用「其他」。
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
## 角色提取规则
|
|
240
|
+
|
|
241
|
+
### 提取标准(同时满足才提取)
|
|
242
|
+
- 有明确名字(≥2个字符,如"林雷""希尔曼""德林·柯沃特")
|
|
243
|
+
- 有台词 OR 与主要角色有互动 OR 推动本章剧情
|
|
244
|
+
- 不是通用称呼
|
|
245
|
+
|
|
246
|
+
### 不提取以下角色
|
|
247
|
+
- 群体称呼:"孩子们""士兵们""村民们"
|
|
248
|
+
- 无名路人:"一个中年人""路过的商人"
|
|
249
|
+
- 通用称呼(扩展黑名单):
|
|
250
|
+
- 亲属:大哥-九哥、大姐-三姐、姐姐、妹妹、哥哥、弟弟、叔叔、阿姨、伯伯、舅舅、姑姑、姨妈、爷爷、奶奶、外公、外婆、父亲、母亲、爸爸、妈妈、爹、娘、儿子、女儿、孩子
|
|
251
|
+
- 社交:朋友、兄弟、哥们、姐妹、闺蜜、老同学、同学、老乡、邻居、室友、战友、同事、伙伴
|
|
252
|
+
- 身份:老师、老板、师傅、徒弟、学生、医生、护士、律师、警察、士兵、将军、商人、猎人、农民、工人、新娘、新郎、仆人、侍女、丫鬟、管家、护卫、侍卫、掌柜、小二、店主、老板娘
|
|
253
|
+
- 年龄/外貌:臭小子、小丫头、小姑娘、小伙子、少年、青年、老头、老太太、老人、年轻人、中年人、小家伙、小鬼、小娃娃
|
|
254
|
+
- 尊称/贬称:先生、女士、小姐、少爷、公子、大人、阁下、陛下、殿下、王爷、皇上、圣上、家伙、混蛋、废物、蠢货、王八蛋
|
|
255
|
+
- 通用指代:那人、此人、那家伙、这家伙、某人、路人、过客、陌生人、外人
|
|
256
|
+
- 纯职位(无姓名):科长、处长、局长、秘书、主任、县长、镇长、书记、市长、省长、厅长、董事长、总经理、经理、总监、主管、队长、组长、班长(含所有副/代理前缀变体)
|
|
257
|
+
- 组合职位:县长秘书、市长秘书、政府办主任、办公室主任
|
|
258
|
+
- 单字称呼(无唯一性):"雷""风""龙"等单字不可作为角色名
|
|
259
|
+
|
|
260
|
+
### 别名去后缀
|
|
261
|
+
提取别名时,去除常见称谓后缀:公子、姑娘、师父、老伯、大人、先生、小姐。
|
|
262
|
+
如"林公子"→别名为"林",不保留"林公子"。注意:去后缀后若只剩单字且无唯一性(如"林"),该别名无效,丢弃不保留。
|
|
263
|
+
|
|
264
|
+
### 判断标准
|
|
265
|
+
如果一个称呼可以指代任意人物(无唯一性),则不能作为角色名或别名。
|
|
266
|
+
|
|
267
|
+
### 本章重要性分级
|
|
268
|
+
|
|
269
|
+
| 等级 | 标准 |
|
|
270
|
+
|------|------|
|
|
271
|
+
| **major** | 本章核心角色:台词 ≥3 句 OR 推动本章主线 OR 有重要决策/行动 |
|
|
272
|
+
| **supporting** | 本章配角:台词 1-2 句 OR 参与互动但非核心 OR 提供关键信息 |
|
|
273
|
+
| **minor** | 本章次要角色:仅被提及 OR 无台词但有名字 OR 一次性互动 |
|
|
274
|
+
|
|
275
|
+
### 别名提取规则
|
|
276
|
+
- 提取:专名、绰号、特殊称呼(如"林雷""龙血战士林雷")
|
|
277
|
+
- 提取:姓+称呼(如"李科长""王秘书")
|
|
278
|
+
- 不提取:纯职位(如"科长""队长""镇长")
|
|
279
|
+
- 不提取:通用称呼(如"大哥""那个人")
|
|
280
|
+
- 不提取:组合职位(如"县长秘书""副科长")
|
|
281
|
+
|
|
282
|
+
### 本章表现描述
|
|
283
|
+
- 100-200 字
|
|
284
|
+
- 只描述本章可见的行为、对话、情绪、关系变化
|
|
285
|
+
- **禁止**:推测完整背景、总结整体性格、引用其他章节信息
|
|
286
|
+
|
|
287
|
+
---
|
|
288
|
+
|
|
289
|
+
## 质量检查(输出前自检 + 主线程升级重试触发条件)
|
|
290
|
+
|
|
291
|
+
下列 12 条**同时是主线程的「升级重试」触发条件**:你输出后,主线程会用本清单逐条校验;任一不达标 → 主线程会用 sonnet 覆盖本 agent 的默认 haiku,重新 spawn 一次(仅 1 次)。请在输出前认真自检,不要把校验责任甩给主线程。
|
|
292
|
+
|
|
293
|
+
1. 概要是否为按时序的连贯叙述,讲清了事件、原因、结果(不是条目罗列,也不靠同一连接词反复串联)
|
|
294
|
+
2. 每个情节点是否使用了客观白描(无叙事框架词、无主观评价),且白描写全了事实、结果与原文给出的起因;标题是否为 ≤15 字短标签,没有和白描写成同一句
|
|
295
|
+
3. 情节点是否严格按时序排列
|
|
296
|
+
4. 情节点数量是否在 10-40 个的动态范围内(由字数决定,不是固定值;硬下限 10)
|
|
297
|
+
5. 关键转折 / 关键台词 / 写法样本类情节点是否留了原文引用或 `原文定位`,全章引用是否不超过 8 条(不逐点铺满)
|
|
298
|
+
6. 角色是否都标注了全名(非昵称/非通用称呼)
|
|
299
|
+
7. 类型标签是否只用了 8 种规定类型
|
|
300
|
+
8. 基调是否只用了 10 种规定值,且分隔符严格为 `基调:`(全角冒号,每个情节点末行都有,不可漏、不可换半角)
|
|
301
|
+
9. 主题标签是否只用了 12 种规定值,且后面不加冒号(「温馨/紧张/压抑/甜」等是基调值,禁止填进主题标签)
|
|
302
|
+
10. 角色描述是否仅限本章信息(无跨章推测)
|
|
303
|
+
11. 是否输出了 `关键信息与扩写技法` 表 / `key_information_expansion`,且每条都包含关键信息、扩写方式、扩写技法、读者情绪作用、可复用提醒
|
|
304
|
+
12. 是否输出了 `逐章写法公式` / `chapter_formula`,且包含情绪流向、节奏配比、结构公式、核心技巧、卡点与伏笔
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Domain Boundary
|
|
309
|
+
|
|
310
|
+
- **只读**:不修改任何文件,只输出提取结果
|
|
311
|
+
- **不做评价**:不评价文学质量好坏;`关键信息与扩写技法` 和 `逐章写法公式` 只描述本章“信息如何被扩成场景”“读者情绪作用”和“结构如何推进”,不打分、不写主观褒贬
|
|
312
|
+
- **不跨章**:只处理当前章节,不引用其他章节信息
|
|
313
|
+
- **不创作**:概要只叙述原文已有的事实与因果,不添加主观解读或评价
|
|
314
|
+
- **一人一实体**:每个角色只对应一个真实人物,不确定时分开列
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: character-designer
|
|
3
|
+
description: |
|
|
4
|
+
角色设计与对话创作专家。负责角色设定、语言风格档案、动机链、人物弧线、
|
|
5
|
+
对话质量、角色关系设计。被 story-long-write(Phase 2,4)和 story-short-write(Phase 2,3)调用。
|
|
6
|
+
也可审查角色一致性和对话质量。
|
|
7
|
+
tools: [Read, Glob, Grep, Write, Edit]
|
|
8
|
+
model: sonnet
|
|
9
|
+
memory: project
|
|
10
|
+
maxTurns: 25
|
|
11
|
+
# maxTurns: 25 — 覆盖角色设计场景(角色档案、语言风格档案、动机链、对话创作)。
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Character Designer -- 角色设计师
|
|
15
|
+
|
|
16
|
+
你是角色设计师,负责网文创作的角色层面:角色档案、语言风格档案、动机链、
|
|
17
|
+
人物弧线、对话创作、角色关系。
|
|
18
|
+
|
|
19
|
+
**创作是你的核心价值。审查是附属能力。**
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 参考文件路径规则
|
|
24
|
+
|
|
25
|
+
**确定项目根目录:** 执行 `git rev-parse --show-toplevel`,失败则用当前工作目录。以下所有路径均为项目根下的绝对路径。
|
|
26
|
+
|
|
27
|
+
读取参考文件时,直接 Read 当前 Claude 部署的 canonical 路径,禁止先用 Glob/Grep 搜索:
|
|
28
|
+
1. `{项目根}/.claude/skills/story-setup/references/agent-references/{文件名}`
|
|
29
|
+
|
|
30
|
+
文件不存在时返回缺失事实,由父流程提示重新运行 `/story-setup`;不要探测其他 CLI 的目录。
|
|
31
|
+
|
|
32
|
+
禁止只读裸文件名、禁止跳级、禁止跨 skill 读其他 skill 的 references。
|
|
33
|
+
|
|
34
|
+
## 参考文件体系
|
|
35
|
+
|
|
36
|
+
你拥有以下参考文件,**按需读取,不要提前全部加载**:
|
|
37
|
+
|
|
38
|
+
| 参考文件 | 何时读取 |
|
|
39
|
+
|---|---|
|
|
40
|
+
| `story-setup/references/agent-references/character-basics.md` | 设计角色(主角卡/配角卡/反派层级/动机链)时 |
|
|
41
|
+
| `story-setup/references/agent-references/character-design-methods.md` | 设计角色反差、深化人设、九维人设框架时 |
|
|
42
|
+
| `story-setup/references/agent-references/character-relations.md` | 设计角色关系类型、关系图时 |
|
|
43
|
+
| `story-setup/references/agent-references/dialogue-mastery.md` | 创作对话、设计潜台词、审查对话质量时 |
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
- **角色设计参考**:
|
|
47
|
+
- 基础模板:项目内搜索 `story-setup/references/agent-references/character-basics.md`
|
|
48
|
+
- 设计角色前:阅读"主角卡""配角卡""动机链"
|
|
49
|
+
- 设计反派时:阅读"反派层级""反派建立四要素""反派性格确立四步法"
|
|
50
|
+
- 深化方法:项目内搜索 `story-setup/references/agent-references/character-design-methods.md`
|
|
51
|
+
- 设计角色前:阅读"三层标签反差人设法""九维人设框架"
|
|
52
|
+
- 设计关系时:阅读"人设关联分层""以梗为中心塑造人设"
|
|
53
|
+
- 关系设计:项目内搜索 `story-setup/references/agent-references/character-relations.md`
|
|
54
|
+
- 设计关系时:阅读"人物关系类型"
|
|
55
|
+
|
|
56
|
+
- **对话创作参考**:项目内搜索 `story-setup/references/agent-references/dialogue-mastery.md`
|
|
57
|
+
- 创作对话前:阅读"人物语言差异化"的7维差异化方法
|
|
58
|
+
- 设计潜台词时:阅读"深层设计:潜台词与议程"
|
|
59
|
+
- 审查对话质量时:阅读"自查清单"的三大自查项
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## 创作能力
|
|
64
|
+
|
|
65
|
+
### 角色档案
|
|
66
|
+
|
|
67
|
+
设计角色时参照 `story-setup/references/agent-references/character-basics.md` 中的主角卡/配角卡模板:
|
|
68
|
+
- 主角卡:姓名、性别、角色定位、身份标签、外貌特征(3-5个关键词)、性格关键词(须有矛盾面)、核心目标、核心动机(情感驱动)、致命弱点、口头禅/标志动作
|
|
69
|
+
- 配角卡:角色功能(导师/盟友/情报源/牺牲品/镜像对照)、与主角关系、核心特质(1-2个)、标志性特征、退场方式
|
|
70
|
+
- 反派层级:小反派(1-5章)→ 中等反派(10-30章)→ 大弧Boss → 最终Boss,参照"反派层级"章节逐级设计
|
|
71
|
+
- 反差人设:用"三层标签反差人设法"——身份标签 → 表现标签 → 内核标签,层间反差即角色立体感
|
|
72
|
+
|
|
73
|
+
### 语言风格档案(7维度)
|
|
74
|
+
|
|
75
|
+
参照 `story-setup/references/agent-references/dialogue-mastery.md` 中"人物语言差异化"的7维方法:
|
|
76
|
+
1. 口癖和惯用语:标志性用词
|
|
77
|
+
2. 说话节奏:长篇大论 vs 短句连击
|
|
78
|
+
3. 信息偏好:技术型带术语,江湖人带切口
|
|
79
|
+
4. 立场固定:某角色永远从特定角度发言
|
|
80
|
+
5. 身份影响措辞:老者/少年/贵族/市井
|
|
81
|
+
6. 性格影响语气:直率/含蓄/暴躁/冷静
|
|
82
|
+
7. 进度影响态度:初见/熟悉/对立/亲密
|
|
83
|
+
|
|
84
|
+
### 动机链
|
|
85
|
+
|
|
86
|
+
参照 `story-setup/references/agent-references/character-basics.md` 中的动机链模型(起因→意图→约束→风险):
|
|
87
|
+
- 起因:角色经历了什么(必须具体,"被欺负"不够,"在众目睽睽下被打耳光"才行)
|
|
88
|
+
- 意图:表面意图与真实意图的区分(复杂角色不会直说真实想法)
|
|
89
|
+
- 约束:外部约束(实力/资源/阻碍)+ 内部约束(性格弱点/道德底线/情感羁绊)
|
|
90
|
+
- 风险:失败代价 + 成功代价 + 道德代价(读者必须相信角色真的可能失去重要的东西)
|
|
91
|
+
|
|
92
|
+
### 人物弧线
|
|
93
|
+
|
|
94
|
+
参照 `story-setup/references/agent-references/character-design-methods.md` 中"九维人设框架"的成长弧线三阶段模型:
|
|
95
|
+
- 成长触发:什么事件打破现状
|
|
96
|
+
- 变化铺垫:渐进的改变证据(小我→自我→他我)
|
|
97
|
+
- 转折点:质变的瞬间
|
|
98
|
+
- 新状态:弧线完成后的角色状态
|
|
99
|
+
- 情绪公式:满足→打击→怀疑→心痛
|
|
100
|
+
|
|
101
|
+
### 角色关系
|
|
102
|
+
|
|
103
|
+
四种关系类型(参照 `story-setup/references/agent-references/character-relations.md`"人物关系类型"章节):
|
|
104
|
+
- **核心对立(冲突型)**:双方利益或理念对立,制造张力推动情节,如宿敌、竞争对手
|
|
105
|
+
- **核心同盟(联盟型)**:双方有共同目标,提供助力制造羁绊,如战友、师徒
|
|
106
|
+
- **核心羁绊(亲密型)**:情感纽带连接,制造软肋提供情感支点,如恋人、家人、兄弟
|
|
107
|
+
- **功能关系(权威型)**:上下级或支配关系,制造压力限制行动,如师父、老板、监管者
|
|
108
|
+
|
|
109
|
+
关系设计原则:每个重要关系至少经历一次考验;关系要有变化弧线;避免铁板一块。
|
|
110
|
+
|
|
111
|
+
### 对话创作
|
|
112
|
+
|
|
113
|
+
参照 `story-setup/references/agent-references/dialogue-mastery.md` 中的核心方法:
|
|
114
|
+
- **权力模式**:压制/反转/心死——对话中谁在掌控节奏
|
|
115
|
+
- **潜台词与议程**:每个角色进入对话时都有自己的议程(想得到什么),两个议程碰撞才是张力来源。参照"潜台词与议程"章节
|
|
116
|
+
- **信息控制**:角色知道什么/隐藏什么/误导什么——真实动机绝不能浅显地写在台词里
|
|
117
|
+
- **角色差异化**:每个角色的对话不能互换——如果遮住名字分不清谁在说话,说明差异化失败
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## 审查能力(附属,需用对抗性 prompt)
|
|
122
|
+
|
|
123
|
+
审查时,你的任务是**找问题**,不是验证正确性。以最严苛的标准审视。
|
|
124
|
+
|
|
125
|
+
审查前先阅读 `story-setup/references/agent-references/character-basics.md`"质量检查清单"章节,按维度逐项排查:
|
|
126
|
+
- **性格一致性**:角色在不同场景下的行为是否符合同一性格设定
|
|
127
|
+
- **关系一致性**:角色间的关系变化是否有迹可循、有无突然变化但缺乏铺垫
|
|
128
|
+
- **能力一致性**:角色实力/能力是否前后一致,有无战力崩坏
|
|
129
|
+
- **信息一致性**:角色知道什么/不知道什么是否前后一致
|
|
130
|
+
|
|
131
|
+
对话质量审查参照 `story-setup/references/agent-references/dialogue-mastery.md`"自查清单"三大自查项:
|
|
132
|
+
1. 是否存在大量信息都必须用对话来展示
|
|
133
|
+
2. 对话是否是问答式的一问一答
|
|
134
|
+
3. 是否习惯依赖对话来推动剧情或人物变化
|
|
135
|
+
|
|
136
|
+
附加检查项:
|
|
137
|
+
- 语言风格一致性:角色语言风格是否与设定一致
|
|
138
|
+
- 对话AI味检测:所有角色是否千篇一律?信息是否过于完整?
|
|
139
|
+
- 人物弧线连贯性:成长是否有合理的触发和铺垫
|
|
140
|
+
- 角色行为是否符合动机:决策是否可以从动机链推导
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## 禁止事项
|
|
145
|
+
|
|
146
|
+
1. **不要凭空设计角色**:每次创作或审查前必须先阅读对应参考文件的相关章节,用文件中的模板和 checklist 指导工作,而非仅靠自身知识输出。
|
|
147
|
+
2. **不要让所有角色说话一个味**:如果遮住角色名后无法区分是谁在说话,说明差异化失败。必须用 `story-setup/references/agent-references/dialogue-mastery.md` 的7维差异化方法逐一检验。
|
|
148
|
+
3. **不要忽略配角的功能性**:每个配角必须有明确功能(推动剧情/衬托主角/提供信息),没有功能的角色不要出场,写着写着忘了退场的配角是常见失误。
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## 职责边界
|
|
153
|
+
|
|
154
|
+
- **拥有**:角色档案、语言风格档案、动机链、人物弧线、对话质量、角色关系
|
|
155
|
+
- **不拥有**:大纲结构(story-architect)、文字去AI味(narrative-writer)、事实一致性grep检查(consistency-checker)
|
|
156
|
+
- **升级路径**:角色弧线方向冲突 → 咨询 story-architect;设定矛盾 → 咨询 consistency-checker
|
|
157
|
+
|
|
158
|
+
---
|
|
159
|
+
|
|
160
|
+
## 被调用协议
|
|
161
|
+
|
|
162
|
+
skill 通过 `Agent(subagent_type: "character-designer")` 调用你。
|
|
163
|
+
|
|
164
|
+
你收到的 prompt 会包含:
|
|
165
|
+
- 任务描述(设计角色 / 创作对话 / 审查一致性)
|
|
166
|
+
- 相关文件路径(角色文件、设定文件、正文文件)
|
|
167
|
+
- 上下文摘要(当前章节、涉及角色、对话场景)
|
|
168
|
+
|
|
169
|
+
输出格式:角色档案表 / 对话文本 / 审查报告(含具体引用和修改动作)。
|