@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,421 @@
|
|
|
1
|
+
# 写作技法:可执行指令集
|
|
2
|
+
|
|
3
|
+
> 6 个写作技法的 agent 可执行指令。写作全程参考。
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
**本文件职责**(其他内容去哪看):
|
|
8
|
+
- 本文件只管「贯穿道具的三次出现编排规则」,不管「羁绊铺设」(羁绊功能见 emotional-methods.md)
|
|
9
|
+
- 对话相关(含权力博弈的规则/模式/示例/操作指令)一律见 dialogue-mastery.md,本文件不重复
|
|
10
|
+
- 本文件只管「开头事件密度指令」,不管「开头设计」(开头设计见 opening-design.md)
|
|
11
|
+
- genre-writing-formulas.md 的「线索物贯穿法」提供简版规则;本文件的「贯穿道具系统」提供可执行设计模板
|
|
12
|
+
- 本文件第 8 节「场景写法(三维度揉进)」是 Phase 3 的写作方法,format-and-structure.md 的「小节结构」是结构规范
|
|
13
|
+
- 本文件「贯穿道具系统」只规定物件的三次出现编排时机和意义翻转规则;物件的初始情感含义设计(选什么物件、承载什么羁绊)由 emotional-methods.md 负责(信物型物件与羁绊铺设功能重叠,但视角不同)
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## 1. 身体细节替代情绪词
|
|
18
|
+
|
|
19
|
+
### 规则
|
|
20
|
+
|
|
21
|
+
关键情绪节点禁止直接写出情绪词,用身体状态、物理损伤、日常动作替代;低强度过场情绪可一笔直写("他有点烦"),不必处处外化。
|
|
22
|
+
|
|
23
|
+
### 替换操作
|
|
24
|
+
|
|
25
|
+
扫描正文中的情绪词,逐个替换:
|
|
26
|
+
|
|
27
|
+
| 禁止 | 替换为 |
|
|
28
|
+
|------|--------|
|
|
29
|
+
| 心痛/心碎 | 手指掐进肉里自己不知道疼 / 她把茶杯放下,吹了吹浮沫,没喝 |
|
|
30
|
+
| 悲伤/难过 | 他把外套叠了三叠,放回衣柜最里面那一层 |
|
|
31
|
+
| 愤怒/气得发抖 | 她手背上的青筋一根根暴起来 |
|
|
32
|
+
| 害怕/恐惧 | 他的手指碰到门把手又缩回来,碰了三次才握住 |
|
|
33
|
+
| 委屈 | 她咬着下嘴唇,咬出一道白印,松开后迅速红了 |
|
|
34
|
+
| 绝望 | 他坐在那里,烟灰掉了一裤腿也没有弹 |
|
|
35
|
+
| 心如死灰 | 她把手机翻过来扣在桌上,再没拿起来过 |
|
|
36
|
+
|
|
37
|
+
右列只示意方向,禁止照抄:每次按角色、场景、道具自造写法,同一写法全书至多出现 1 次;照抄或复用,替换产物本身就成了新的模板指纹。
|
|
38
|
+
|
|
39
|
+
### 身体部位速查
|
|
40
|
+
|
|
41
|
+
写法:用具体部位 + 具体动作/状态,不写抽象感受。
|
|
42
|
+
|
|
43
|
+
| 部位 | 句式模板 |
|
|
44
|
+
|------|----------|
|
|
45
|
+
| 手/手指 | 「她的手搁在膝盖上,指尖一下一下掐着裙子的褶子」 |
|
|
46
|
+
| 眼睛/瞳孔 | 「他瞳孔缩了一下,很快又恢复平静」 |
|
|
47
|
+
| 嘴唇 | 「嘴唇抿成一条线,半天没松开」 |
|
|
48
|
+
| 呼吸 | 「她吸了一口气,像是要说什么,又慢慢吐了出来」 |
|
|
49
|
+
| 背/肩膀 | 「他的背挺得很直,直到出了门才塌下来」 |
|
|
50
|
+
| 伤疤/淤青 | 「袖口往上滑了一截,露出手腕上一圈旧疤」 |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## 2. 贯穿道具系统(三次出现规则)
|
|
55
|
+
|
|
56
|
+
### 规则
|
|
57
|
+
|
|
58
|
+
每个叙事单元(短篇/长篇卷)设计 1-2 个贯穿道具。每个物件必须出现 3 次,每次意义不同。
|
|
59
|
+
|
|
60
|
+
### 三次出现编排
|
|
61
|
+
|
|
62
|
+
| 出现时机 | 功能 | 示例 |
|
|
63
|
+
|----------|------|------|
|
|
64
|
+
| 第 1 次出现(前 1/4) | 建立初始意义 | 金锁 = 姐姐送的生日礼物(温暖) |
|
|
65
|
+
| 第 2 次出现(中段转折) | 意义被颠覆 | 金锁 = 金包铜的假货(虚伪) |
|
|
66
|
+
| 第 3 次出现(结尾) | 情感暴击 | 金锁被丢进垃圾桶(彻底决裂) |
|
|
67
|
+
|
|
68
|
+
### 物件设计模板
|
|
69
|
+
|
|
70
|
+
填写以下模板,写入设定.md:
|
|
71
|
+
|
|
72
|
+
```
|
|
73
|
+
物件:{名称}
|
|
74
|
+
第1次出现:第{N}节 | {场景} | 含义:{初始意义}
|
|
75
|
+
第2次出现:第{N}节 | {场景} | 含义:{转折意义}
|
|
76
|
+
第3次出现:第{N}节 | {场景} | 含义:{结尾意义}
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 物件类型速查
|
|
80
|
+
|
|
81
|
+
| 类型 | 特征 | 代表 |
|
|
82
|
+
|------|------|------|
|
|
83
|
+
| 信物型 | 承载关系的象征物 | 金锁(姐夫捎路)、木头小马(皇弟) |
|
|
84
|
+
| 工具型 | 日常使用的功能性物件 | 打分本(准儿媳)、账本(迟来二十年) |
|
|
85
|
+
| 痕迹型 | 残留的身体/环境痕迹 | 手腕旧疤、墙上身高刻度 |
|
|
86
|
+
| 数字型 | 承载关系的具体金额/年限 | 八万块账单、二十年、800 块 |
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## 3. 对话中的权力博弈
|
|
91
|
+
|
|
92
|
+
对话权力博弈的完整技法(对话长度=权力地位、压制/反转/心死三种模式、示例、≤10字/≥20字操作指令)见 dialogue-mastery.md「权力博弈对话」,本文件不重复。结构化用法:在场景编排时,把权力反转放在爽点/反转节点上,用对话长度的突变标记权力易主。
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
## 4. 数字/金额作为叙事工具
|
|
97
|
+
|
|
98
|
+
### 规则
|
|
99
|
+
|
|
100
|
+
用具体数字替代模糊描述。数字承载情感重量,数字变化推动情节。
|
|
101
|
+
|
|
102
|
+
### 操作指令
|
|
103
|
+
|
|
104
|
+
| 场景 | 操作 | 示例 |
|
|
105
|
+
|------|------|------|
|
|
106
|
+
| 建立重量 | 用具体金额/年限替代「很久」「很多」 | 「相恋八年」不是「在一起很久」 |
|
|
107
|
+
| 伤害递增 | 数字逐次增大 | 800 → 1000 → 8 万 → 120 万 |
|
|
108
|
+
| 反差暴击 | 极端膨胀后骤降到极小值 | 「我姐为了供我读书,欠了八万块。我姐夫转给我一块钱。」 |
|
|
109
|
+
| 时间重量 | 用年限承载情感 | 「二十年了,她第一次叫我妈」 |
|
|
110
|
+
|
|
111
|
+
### 数字叙事模板
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
数字线:
|
|
115
|
+
第{N}节 | {数字1} | 含义:{初始}
|
|
116
|
+
第{N}节 | {数字2} | 含义:{升级}
|
|
117
|
+
第{N}节 | {数字3} | 含义:{暴击/反转}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## 5. 一动一静节奏
|
|
123
|
+
|
|
124
|
+
### 规则
|
|
125
|
+
|
|
126
|
+
每个小节内部交替动作和安静。动后必静,静后可动。
|
|
127
|
+
|
|
128
|
+
### 动与静的分类
|
|
129
|
+
|
|
130
|
+
| 类型 | 内容 | 示例 |
|
|
131
|
+
|------|------|------|
|
|
132
|
+
| 动 | 物理冲击、暴力、冲突爆发 | 砍人、摔东西、打耳光、吐血、掀桌子 |
|
|
133
|
+
| 静 | 日常细节、微小动作、安静观察 | 擦灰、喂粥、叠衣服、吹浮沫、理衣领 |
|
|
134
|
+
|
|
135
|
+
### 操作指令
|
|
136
|
+
|
|
137
|
+
- 每个小节必须包含 ≥ 1 个「动」+ ≥ 1 个「静」
|
|
138
|
+
- 不允许连续 2 节全「动」(暴力疲劳)
|
|
139
|
+
- 不允许连续 2 节全「静」(节奏拖沓)
|
|
140
|
+
- 情绪最高点(打脸/反转/揭露)用「动」
|
|
141
|
+
- 情绪最低点(心死/余韵/释然)用「静」
|
|
142
|
+
|
|
143
|
+
### 节奏编排示例
|
|
144
|
+
|
|
145
|
+
```
|
|
146
|
+
节5(动):萧衍一声令下,打了萧琅二十棍
|
|
147
|
+
节6(静):萧衍蹲下来,把儿子身上的灰一点一点擦掉,理了理衣领
|
|
148
|
+
节7(动):王氏扑过来,跪在地上磕头
|
|
149
|
+
节8(静):萧衍没看她,把儿子抱起来,走了
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
---
|
|
153
|
+
|
|
154
|
+
## 6. 开头事件密度
|
|
155
|
+
|
|
156
|
+
### 规则
|
|
157
|
+
|
|
158
|
+
前 100 字必须包含 ≥ 3 个事件。不做背景铺垫,直接上事件链。
|
|
159
|
+
|
|
160
|
+
### 操作指令
|
|
161
|
+
|
|
162
|
+
- 删除所有开头背景介绍(「在古代XX年间」「她是一个XX的女孩」)
|
|
163
|
+
- 第 1 句就是事件,不是描述
|
|
164
|
+
- 事件密度检查:数前 100 字里有几个独立的「发生的事」
|
|
165
|
+
|
|
166
|
+
### 事件密度示例
|
|
167
|
+
|
|
168
|
+
```
|
|
169
|
+
❌ 低密度(1 件事/100 字):
|
|
170
|
+
「沈栀是沈家的嫡女,自幼聪慧,深得父亲喜爱。这一天,她收到了一道圣旨。」
|
|
171
|
+
|
|
172
|
+
✅ 高密度(4 件事/50 字):
|
|
173
|
+
「萧衍回朝那天,母后已经死了,儿子被他皇弟打成痴傻,他提刀就进了宫。」
|
|
174
|
+
(回朝 → 母死 → 子被虐 → 打人,4 件事)
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
密度指一段里发生几件事,不是把一件事拆成一句一句、句句断开;上例用逗号把四件事连成一句,照样是高密度。
|
|
178
|
+
|
|
179
|
+
### 密度检查模板
|
|
180
|
+
|
|
181
|
+
写完开头后,列出前 100 字的事件清单:
|
|
182
|
+
|
|
183
|
+
```
|
|
184
|
+
事件1:{事件}
|
|
185
|
+
事件2:{事件}
|
|
186
|
+
事件3:{事件}
|
|
187
|
+
(如果列出 < 3 个,重写开头)
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
---
|
|
191
|
+
|
|
192
|
+
## 7. 小节密度诊断
|
|
193
|
+
|
|
194
|
+
### 规则
|
|
195
|
+
|
|
196
|
+
写完一个小节如果感觉偏短,用以下诊断清单排查。不要为了凑字数加描写。
|
|
197
|
+
|
|
198
|
+
### 诊断清单
|
|
199
|
+
|
|
200
|
+
小节写完后偏短?按顺序检查:
|
|
201
|
+
|
|
202
|
+
| 检查项 | 偏短原因 | 补救 |
|
|
203
|
+
|--------|----------|------|
|
|
204
|
+
| 子事件三维度都揉进了? | 只有动作没有感官锚点和身体反应 | 揉进感官细节和身体动作(见第8节) |
|
|
205
|
+
| 对话只有 1-2 轮? | 缺少对话交锋 | 加一轮权力博弈对话(见第3节) |
|
|
206
|
+
| 有情绪词(心痛/悲伤/愤怒)? | 用了抽象情绪词 | 替换为身体细节(见第1节) |
|
|
207
|
+
| 三维度揉进后仍偏短? | 缺少对话或回忆 | 加一轮对话(第3节)或简短回忆(第7节扩展规则) |
|
|
208
|
+
|
|
209
|
+
### 子事件不够时怎么扩
|
|
210
|
+
|
|
211
|
+
写 outline 时子事件不够?按以下顺序选择:
|
|
212
|
+
|
|
213
|
+
```
|
|
214
|
+
IF 主事件是冲突/对抗 → 加「阻碍」:主角被中途打断或阻止
|
|
215
|
+
IF 主事件涉及配角 → 加「反应」:配角的意外反应
|
|
216
|
+
IF 主事件有空间移动 → 加「发现」:移动途中发现新线索
|
|
217
|
+
IF 主事件触发回忆 → 加「倒叙」:插入一段 2-3 句的简短回忆
|
|
218
|
+
IF 主事件是一连串动作 → 加「递进」:动作引发的连锁反应
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
### 任务卡点:只在“办事本来会卡住”时使用
|
|
222
|
+
|
|
223
|
+
任务卡点不是多写流程,也不是为了显得自然;它是让角色想办成一件具体事时被卡住一下,并卡出变化。
|
|
224
|
+
|
|
225
|
+
判断句:角色本来就要办这件事 → 这一步被卡住 → 角色选择/付代价 → 卡出信息、关系、代价、选择或伏笔变化。
|
|
226
|
+
|
|
227
|
+
可用时机:
|
|
228
|
+
- 主事件是对抗:卡点暴露对手权力、规则漏洞或隐藏后手。
|
|
229
|
+
- 主事件是查证:卡点逼出新证据、新证人或新信息差。
|
|
230
|
+
- 主事件是关系推进:卡点逼角色表态、帮忙、拒绝或背叛。
|
|
231
|
+
- 主事件是低压过场:卡点只作轻阻力,服务关系、伏笔或生活质感,不喧宾夺主。
|
|
232
|
+
|
|
233
|
+
删掉试试:删掉后没有信息、情绪、关系、代价或伏笔损失,就不是有用卡点;不要为了显得自然或凑字数去补流程。
|
|
234
|
+
|
|
235
|
+
### 反注水规则
|
|
236
|
+
|
|
237
|
+
以下行为禁止:
|
|
238
|
+
- 为凑字数加环境描写("窗外阳光明媚")
|
|
239
|
+
- 为凑字数重复已表达的情绪
|
|
240
|
+
- 为凑字数加角色内心独白总结
|
|
241
|
+
- 为凑字数让角色做无意义的动作
|
|
242
|
+
- 为显得自然而加流程细节;删掉无损就删
|
|
243
|
+
- 为凑字数用情绪词代替身体细节(反过来才对)
|
|
244
|
+
|
|
245
|
+
---
|
|
246
|
+
|
|
247
|
+
## 8. 场景写法(三维度揉进)
|
|
248
|
+
|
|
249
|
+
### 从细纲到正文:把规格演成场景,不照抄形状
|
|
250
|
+
|
|
251
|
+
细纲各字段是本章"要发生什么"的规格,**不是正文的形状**。照着细纲的形状逐格填,正文就成了一条一条交代的电报体、一拍一句平推的生硬解说——这是"照抄大纲形状",和照抄范例形状同属 AI 味来源。
|
|
252
|
+
|
|
253
|
+
- 情节点序列是"要发生什么"的清单,不是句子模板:不要一个情节点写成一句或一段、按序平推;把每个点演成角色此刻可感知的动作、对话、物件和身体反应——**演出来,不是交代出来**。
|
|
254
|
+
- 同一约束如果在「核心事件 / 内容概括 / 情节安排 / 情节点」里重复出现,生成前只合并成**一个语义点**;重复字段不是强调,更不是四次复述额度。正文不得沿用提纲里反复出现的同一措辞逐项交代。
|
|
255
|
+
- 五段式(起因/发展/转折/高潮/结尾)是给细纲作者的功能拆解,不是正文的五个自然段;正文不必逐段顺叙,也不必一段对一格。
|
|
256
|
+
- "谁做了什么"的概括句、"A→B→C"箭头链、"收束到什么状态"是规划口径,不要原样搬进叙述。
|
|
257
|
+
- 情节点之间可以合并、穿插、重排,让相邻的点织进同一个连续场景;密点展开成慢镜头,疏点带过(见「疏密分配」)。
|
|
258
|
+
- 章尾落在最后一个具体的动作、画面、台词或悬念上;细纲「结尾设定/收束状态」是规划口径,不要在正文里写成"就这样……""他终于明白……"式的状态总结句(结尾去升华见 anti-ai-writing.md)。
|
|
259
|
+
|
|
260
|
+
### 视角姿态:深度限知(贴地沉浸)
|
|
261
|
+
|
|
262
|
+
三维度揉进之前,先定叙述姿态。默认锁死主视角角色的"此刻感知"——只写他此刻看到、听到、闻到、身体感到、脑中闪过的东西。这一条同时解决两个最顽固的 AI 味:代入感不足,和"作者在场"的说教/上帝腔。
|
|
263
|
+
|
|
264
|
+
- **镜头不拉远、不俯瞰、不切他人内心**:别写"整个大厅陷入死寂"这种摄像机视角,写"她听见自己的心跳,旁边的呼吸声一下子全没了"。
|
|
265
|
+
- **读者与角色同步获知**:角色不知道的不写;不提前剧透,不补全背景。悬念来自"她也不知道",禁止提前剧透句如"她不知道的是"。
|
|
266
|
+
- **念头是动作的一部分**:心理用"闪念 + 身体"呈现——半句的、被打断的、带情绪偏见的主观判断,不写完整理性的内心独白。
|
|
267
|
+
- **主观偏差代替客观叙述**:场景被角色情绪染色。她恨谁,谁就被写得可憎;她慌,光线就晃。不写中立的、谁看都一样的描述。但只能是她此刻带偏见的瞬间感觉,不能写成"像在宣判一件早已定好的事"这类客观盖棺断言(那是作者下场定性,见 anti-ai-writing.md 模式 8)。
|
|
268
|
+
|
|
269
|
+
深度限知是"自然去 AI"的根:把镜头钉死在角色身体里,作者就没有位置跳出来解释、总结、安排了(配合 anti-ai-writing.md 模式 8)。
|
|
270
|
+
|
|
271
|
+
### 文风指纹:按题材借 cadence,不套万能腔
|
|
272
|
+
|
|
273
|
+
不同题材的真实文风 cadence 会影响读感;有效写法不同。男频/军旅可以借旧网文连贯叙事惯性,现代日常可写普通任务推进;悬疑、科幻、古代不要硬套盘龙腔、旧网文腔或第一人称声口,先读本书 `设定/文风.md`、对标拆文和匹配章摘要。
|
|
274
|
+
|
|
275
|
+
落地顺序:先按本章情绪和题材文风写顺,再处理解释总结、过度压缩和比喻堆叠;不要把句子机械拉长/压短,也不要全局替换成某个对标书的词法。
|
|
276
|
+
|
|
277
|
+
### 规则
|
|
278
|
+
|
|
279
|
+
每个子事件不是一句话就完,要包含三个维度:发生了什么、主角注意到什么、身体怎么回应。三个维度同时揉进同一段连续正文,不按维度分段写。
|
|
280
|
+
|
|
281
|
+
### 三维度揉进规则
|
|
282
|
+
|
|
283
|
+
详写的子事件 ≥100-150 字:三个维度承载不同信息(发生、感知、反应),织在同一段里,不各写各的。但不是每个子事件都写满——过场、赶路、信息交代类子事件 1-2 句带过即可(见「疏密分配」),把字数预算让给情绪节点。
|
|
284
|
+
|
|
285
|
+
| 维度 | 内容 | 要点 |
|
|
286
|
+
|---|---|---|
|
|
287
|
+
| 发生 | 事情出现了 | 1-2句,包含一个具体细节 |
|
|
288
|
+
| 感知 | 主角注意到什么 | 至少1个感官细节(视觉+触感/听觉/嗅觉),聚焦一个物件或一个身体部位 |
|
|
289
|
+
| 反应 | 身体如何回应 | 具体的身体动作(手/眼/呼吸/姿势),可含一句极短的心理定格 |
|
|
290
|
+
|
|
291
|
+
任务卡点写法同样按三维度揉进:发生 = 事情办不下去;感知 = 被退回的纸、扣住的物件、停住的动作、对方半句话等具体凭据;反应 = 角色改策略、付代价、求助、硬闯、退让或记下一笔。不要把“为什么被卡住”解释成一段说明书,也不要在 scene 末尾另补动作尾巴来解释意义。
|
|
292
|
+
|
|
293
|
+
### 反模式:堆叠式描写(绝对禁止)
|
|
294
|
+
|
|
295
|
+
把三个维度分成三段依次写完,是 AI 最常见的写作痕迹。读者看到的是同一个动作被掰开写了三遍:
|
|
296
|
+
|
|
297
|
+
> ❌ **堆叠式(错误)**:
|
|
298
|
+
> 林父低着头,左手把文书压住,右手拿笔,往纸上落。
|
|
299
|
+
>
|
|
300
|
+
> 手在抖。
|
|
301
|
+
>
|
|
302
|
+
> 手从肘到腕都在抖,笔尖在纸上停了停,写了一横,又停,那个"林"字的撇写歪了,他顿了顿,把笔往下压,重写,写完了,笔在手里还是没稳。
|
|
303
|
+
|
|
304
|
+
→ 一件事写成发生→感知→反应三段,同一个动作掰开三遍
|
|
305
|
+
|
|
306
|
+
### 正确写法:揉进式
|
|
307
|
+
|
|
308
|
+
三个维度融进同一段连续正文,读者读到一个完整瞬间:
|
|
309
|
+
|
|
310
|
+
> ✅ **揉进式(正确)**:
|
|
311
|
+
> 林父左手压着文书,右手拿笔往纸上落,笔尖一触纸面就偏了,从肘到腕止不住地抖,那一横斜着拖出去。他顿了顿,把笔往下压,重写,写完的"林"字撇是歪的,笔在手里还是没稳住。
|
|
312
|
+
|
|
313
|
+
→ 发生、感知、反应在一段里同时呈现,读者看到的是一个连贯画面
|
|
314
|
+
|
|
315
|
+
### 自检方法
|
|
316
|
+
|
|
317
|
+
写完一段后,用"三指遮盖法"检查:分别遮住发生信息、感知信息、反应信息,看每个维度是否都有内容。如果某个维度缺失,把对应细节织回同一镜头里,不要在后面另起一段补写。
|
|
318
|
+
|
|
319
|
+
### 画面分段(防止一段到底)
|
|
320
|
+
|
|
321
|
+
三维度揉进不是把一个子事件塞进一个长段。揉进解决"同一瞬间被拆成发生/感知/反应三段"的问题;断段解决"手机阅读时一段过密"的问题。
|
|
322
|
+
|
|
323
|
+
断段按镜头/信息变化,不按维度变化:
|
|
324
|
+
|
|
325
|
+
| 触发点 | 断段方式 |
|
|
326
|
+
|---|---|
|
|
327
|
+
| 新动作开始 | 另起一段,让读者看到下一拍 |
|
|
328
|
+
| 新物件/线索出现 | 另起一段,单独承载这个信息 |
|
|
329
|
+
| 角色视线转移 | 另起一段,形成镜头切换 |
|
|
330
|
+
| 直接引语出现 | 对话独立成段 |
|
|
331
|
+
| 心理定格/判断落下 | 可以单句成段,制造停顿 |
|
|
332
|
+
|
|
333
|
+
判定规则:
|
|
334
|
+
|
|
335
|
+
- 一段只承载一个镜头拍点/一个动作单元,或一条尚未结束的连续推理、氛围、情绪链。
|
|
336
|
+
- 常规叙事段可短,但句子内部不碎——叙述句不要一个动作一句号、句句断开(叙述默认逗号长句,详见 anti-ai-writing.md 规则 3);细密描写、推理判断、氛围压迫、情绪沉淀可以稍长,前提是仍在讲同一件事。
|
|
337
|
+
- 长度只是诊断,不是强制阈值:读起来拥挤、包含多个动作/信息/视线切换时才拆;完整戏剧单元未结束时不要为凑短而硬拆。
|
|
338
|
+
- 常规正文保持短段、稍长段、对话、动作段交替;高压冲突、打脸、反转段可以更碎更短。
|
|
339
|
+
- 不要连续多段同长度,也不要把一个完整推理链切成机械碎片。
|
|
340
|
+
|
|
341
|
+
输出前必须做一次自然节奏重排:
|
|
342
|
+
|
|
343
|
+
1. 扫描每个自然段;先问“这段是否只完成一件事/一个镜头/一条推理或情绪链”。是则保留,不因字数单独拆。
|
|
344
|
+
2. 若同段里出现新动作、新物件、新信息、新对话、视线转移、场景结束,就在这些位置断段。
|
|
345
|
+
3. 若连续多个极短段仍属于同一镜头/同一件事,合并相邻句,避免碎成提纲或诗行。
|
|
346
|
+
4. 若一个长句朗读卡顿或信息过载,先删修饰或拆句;拆句后仍保持同一段的戏剧单元完整。
|
|
347
|
+
|
|
348
|
+
### 主语与名字节奏(防止“主语过密”)
|
|
349
|
+
|
|
350
|
+
主角名/角色名承担“主语重置”和“强调”功能,不承担每句打标签的功能:
|
|
351
|
+
|
|
352
|
+
- 段首、场景切换、多人同场、视角重置时,用主角名建立主语。
|
|
353
|
+
- 同一动作链/同一段内部,优先用“他/她”、动作承接或省略主语,让句子自然流动。
|
|
354
|
+
- 关键转折、情绪爆点、身份反差、读者需要重新盯住主角时,再点名强化。
|
|
355
|
+
- 反面信号:连续多句或连续多段都以同一主角名开头,但中间没有主语混淆、场景切换或强调需要。
|
|
356
|
+
- 不按全章名字出现次数机械裁判;最终标准是读起来是否有“每句都在报名字”的卡顿感。
|
|
357
|
+
|
|
358
|
+
错误修法:为了短,把一条完整推理/氛围链切成多段;为了省主语,把多人同场写到指代不清。
|
|
359
|
+
|
|
360
|
+
正确修法:保留同一件事的连续性,在新动作、新物件、新信息、新对话处断开;段首点名建立主语,段中用代词/省略流动,关键转折再点名。
|
|
361
|
+
|
|
362
|
+
### 疏密分配(详略不均)
|
|
363
|
+
|
|
364
|
+
不要每个 beat 一样长、一样细——平均用力是 AI 腔的根源,也是读起来"哪都写得满、哪都不出彩"的原因。按情节权重分配笔墨:
|
|
365
|
+
|
|
366
|
+
| beat 类型 | 笔墨 | 写法 |
|
|
367
|
+
|---|---|---|
|
|
368
|
+
| 爽点/打脸/反转/情绪高潮 | 密(详写) | 感知、动作、对话交锋铺满,慢镜头逐拍展开 |
|
|
369
|
+
| 过场/赶路/信息交代/时间跳转 | 疏(略写) | 1-2 句带过,甚至一句概括,不展开三维度 |
|
|
370
|
+
| 铺垫/日常/关系升温 | 中 | 挑一两个有代入感的细节写实,其余略 |
|
|
371
|
+
|
|
372
|
+
原则:一章里详写的 beat 集中在情绪节点,过场坚决压缩。读者记住的是密处的画面,疏处只是把他们快速送到下一个爽点。密度有起伏,节奏才有呼吸。
|
|
373
|
+
|
|
374
|
+
### 子事件连接
|
|
375
|
+
|
|
376
|
+
子事件之间用身体动作连接,不用叙述过渡。连接动作 ~20字:
|
|
377
|
+
|
|
378
|
+
- ❌ "然后我翻到下一页。"
|
|
379
|
+
- ✅ "我把账本搁在膝盖上,手心出一层薄汗。"
|
|
380
|
+
|
|
381
|
+
### 感知素材库
|
|
382
|
+
|
|
383
|
+
| 场景类型 | 可用的感知细节 |
|
|
384
|
+
|---|---|
|
|
385
|
+
| 阅读/翻看 | 字迹深浅、纸张触感、墨水洇开、页角卷曲 |
|
|
386
|
+
| 对话场景 | 对方表情变化、语气停顿、空气里的沉默 |
|
|
387
|
+
| 回忆场景 | 画面中的某个细节突然清晰(气味/声音/触感) |
|
|
388
|
+
| 室内场景 | 光线变化、物品的位置、温度 |
|
|
389
|
+
| 移动场景 | 脚步声、地面的触感、风的方向 |
|
|
390
|
+
|
|
391
|
+
### 三维度的边界
|
|
392
|
+
|
|
393
|
+
- ✓ 感知是主角主动注意到的细节(有注意力的焦点)
|
|
394
|
+
- ✓ 反应是具体的身体动作(手、眼、呼吸、姿势)
|
|
395
|
+
- ✗ 感知不能是装饰性场景描写("阳光洒在窗台上")
|
|
396
|
+
- ✗ 反应不能是情绪词("心如刀割")
|
|
397
|
+
- ✗ 三个维度不能重复表达同一个信息
|
|
398
|
+
---
|
|
399
|
+
|
|
400
|
+
## 9. 语气标点谱系(标点跟着语气走)
|
|
401
|
+
|
|
402
|
+
### 规则
|
|
403
|
+
|
|
404
|
+
标点承担语气、权力关系和情绪节拍,不能当装饰。写正文时先判断“这句话在场景里做什么”,再决定用句号、逗号、问号、感叹号、冒号或换行/动作 beat;不再用省略号和破折号制造停顿。
|
|
405
|
+
|
|
406
|
+
### 标点谱系
|
|
407
|
+
|
|
408
|
+
| 语气 / 功能 | 可用标点 | 操作指令 | 禁忌 |
|
|
409
|
+
|---|---|---|---|
|
|
410
|
+
| 压迫 / 冷静 / 克制 | 句号、逗号、冒号、短句 | 用不动声色的陈述压迫,用冒号落判断;少解释 | 不要为了“有变化”乱加 `!` |
|
|
411
|
+
| 质问 / 试探 / 反问 | 问号、短跟句、动作停顿 | 关键问题用 `?`,追问可短句独立成行 | 不要连续 5 句全是 `?` |
|
|
412
|
+
| 惊讶 / 爆发 / 打脸 | 少量感叹号、单句成段 | 只在情绪峰值用 1 个 `!`,爆点前后用短句承接 | 禁止 `!!!` 和整段喊叫 |
|
|
413
|
+
| 犹豫 / 未说完 / 心虚 | 逗号、句号、短句、吞咽/停手等动作 | 用动作或句长变化停顿;必要时另起短句 | 不用 `……` 替代停顿 |
|
|
414
|
+
| 被打断 / 拖长音 | 动作打断、换行、短句、未完成动作 | 用“他抬手截住她的话。”这类动作切断 | 正文和对话都不用 `——`/`—`/`--` |
|
|
415
|
+
| 信息揭示 / 判断落点 | 冒号、分号、短句 | “证据只有一个:门锁从里面扣上了。”可用冒号制造落点 | 不写论文式长分号链 |
|
|
416
|
+
|
|
417
|
+
### 执行步骤
|
|
418
|
+
|
|
419
|
+
1. 读本场景目标情绪和角色声线,给每个关键对话 beat 标一类语气(压迫/试探/爆发/迟疑/被打断)。
|
|
420
|
+
2. 精修时扫一遍句尾:如果一整段只剩句号,检查是否把质问、迟疑、爆点压平;如果满屏 `?`/`!`,删到只保留有功能的位置。
|
|
421
|
+
3. 正文(含对话)里的 `……`、`——`、`—`、`--` 都改成句号、逗号、短句、换行或动作断句。知乎盐言 `「」` 只是引号风格,不影响问号、感叹号的合法使用。
|