@oh-story/dsh 0.1.16 → 0.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -13
- package/lib/client.js +173 -111
- package/lib/client.js.map +3 -3
- package/lib/drama/package.json +4 -0
- package/lib/index.js +58 -28
- package/lib/index.js.map +2 -2
- package/lib/novel-to-game/README.md +3 -3
- package/lib/novel-to-game/README_ZH.md +4 -4
- package/lib/novel-to-game/VERSION +1 -1
- package/lib/novel-to-game/manifest.json +25 -20
- package/lib/novel-to-game/package.json +4 -0
- package/lib/novel-to-game/skills/game-art-direction/references/art-direction-method.md +4 -0
- package/lib/novel-to-game/skills/game-build/SKILL.md +7 -1
- package/lib/novel-to-game/skills/game-build/references/baked-sprite-workflow.md +19 -0
- package/lib/novel-to-game/skills/game-concept/references/concept-method.md +4 -1
- package/lib/novel-to-game/skills/novel-to-game/SKILL.md +6 -3
- package/lib/novel-to-game/skills/novel-to-game/references/intake-method.md +1 -0
- package/lib/novel-to-game/skills/novel-to-game/references/pipeline-contract.md +13 -2
- package/lib/oh-story/manifest.json +417 -592
- package/lib/oh-story/package.json +4 -0
- package/lib/oh-story/roles/chapter-extractor.md +4 -3
- package/lib/oh-story/roles/character-designer.md +20 -85
- package/lib/oh-story/roles/consistency-checker.md +5 -5
- package/lib/oh-story/roles/narrative-writer.md +9 -9
- package/lib/oh-story/roles/story-architect.md +19 -26
- package/lib/oh-story/roles/story-explorer.md +4 -5
- package/lib/oh-story/roles/story-researcher.md +6 -7
- package/lib/oh-story/skills/browser-cdp/SKILL.md +26 -15
- package/lib/oh-story/skills/story/SKILL.md +94 -54
- package/lib/oh-story/skills/story/VERSION +1 -1
- package/lib/oh-story/skills/story-cover/SKILL.md +41 -220
- package/lib/oh-story/skills/story-cover/references/api-fallback.md +128 -0
- package/lib/oh-story/skills/story-cover/references/cover-styles.md +61 -95
- package/lib/oh-story/skills/story-deslop/SKILL.md +32 -27
- package/lib/oh-story/skills/story-deslop/references/agent-calls.md +4 -4
- package/lib/oh-story/skills/story-deslop/references/banned-words.md +7 -9
- package/lib/oh-story/skills/story-deslop/references/deslop-gates.md +12 -12
- package/lib/oh-story/skills/story-deslop/references/expression.md +10 -3
- package/lib/oh-story/skills/story-deslop/references/story-logic.md +1 -1
- package/lib/oh-story/skills/story-deslop/references/style-resolution.md +1 -1
- package/lib/oh-story/skills/story-import/SKILL.md +12 -11
- package/lib/oh-story/skills/story-import/references/benchmark-sync.md +50 -0
- package/lib/oh-story/skills/story-import/references/character-state-reverse.md +3 -4
- package/lib/oh-story/skills/story-import/references/deep-analysis.md +2 -3
- package/lib/oh-story/skills/story-import/references/import-report.md +5 -4
- package/lib/oh-story/skills/story-import/references/import-special-cases.md +6 -16
- package/lib/oh-story/skills/story-import/references/import-tracking.md +2 -2
- package/lib/oh-story/skills/story-import/references/length-routing.md +1 -43
- package/lib/oh-story/skills/story-import/references/outline-reverse-rules.md +8 -8
- package/lib/oh-story/skills/story-import/references/outline-reverse.md +2 -2
- package/lib/oh-story/skills/story-import/references/structure-mapping-long.md +113 -125
- package/lib/oh-story/skills/story-import/references/structure-mapping-short.md +77 -88
- package/lib/oh-story/skills/story-import/scripts/build_outline_brief.py +36 -59
- package/lib/oh-story/skills/story-import/scripts/check-outline-contract.js +5 -1
- package/lib/oh-story/skills/story-import/scripts/outline_view.py +286 -0
- package/lib/oh-story/skills/story-long-analyze/SKILL.md +38 -75
- package/lib/oh-story/skills/story-long-analyze/references/author-facing.md +21 -23
- package/lib/oh-story/skills/story-long-analyze/references/final-checks.md +8 -17
- package/lib/oh-story/skills/story-long-analyze/references/inspiration-library.md +18 -5
- package/lib/oh-story/skills/story-long-analyze/references/pipeline-ops.md +8 -14
- package/lib/oh-story/skills/story-long-analyze/references/stage1-golden-chapters.md +26 -27
- package/lib/oh-story/skills/story-long-analyze/references/stage2-extraction.md +74 -162
- package/lib/oh-story/skills/story-long-analyze/references/stage3-plot-rhythm.md +124 -309
- package/lib/oh-story/skills/story-long-analyze/references/stage4-characters-settings.md +49 -166
- package/lib/oh-story/skills/story-long-analyze/references/stage5-report.md +12 -15
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-generator.md +110 -34
- package/lib/oh-story/skills/story-long-analyze/references/synthesis-inputs.md +12 -2
- package/lib/oh-story/skills/story-long-analyze/scripts/inspect_existing_assets.py +3 -1
- package/lib/oh-story/skills/story-long-analyze/scripts/manage_analysis_run.py +5 -1
- package/lib/oh-story/skills/story-long-scan/SKILL.md +49 -72
- package/lib/oh-story/skills/story-long-scan/references/genre-trends.md +47 -167
- package/lib/oh-story/skills/story-long-scan/references/platform-ciweimao.md +23 -8
- package/lib/oh-story/skills/story-long-scan/references/platform-fanqie.md +24 -22
- package/lib/oh-story/skills/story-long-scan/references/platform-jjwxc.md +25 -13
- package/lib/oh-story/skills/story-long-scan/references/platform-qidian.md +41 -27
- package/lib/oh-story/skills/story-long-scan/references/platform-qimao.md +24 -16
- package/lib/oh-story/skills/story-long-scan/references/topic-decision.md +31 -33
- package/lib/oh-story/skills/story-long-write/SKILL.md +5 -5
- package/lib/oh-story/skills/story-long-write/references/agent-calls.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/artifact-protocols.md +51 -24
- package/lib/oh-story/skills/story-long-write/references/banned-words.md +7 -9
- package/lib/oh-story/skills/story-long-write/references/benchmark-recall.md +3 -3
- package/lib/oh-story/skills/story-long-write/references/character-basics.md +57 -95
- package/lib/oh-story/skills/story-long-write/references/character-relations.md +119 -269
- package/lib/oh-story/skills/story-long-write/references/cross-book-recall.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/dialogue-mastery.md +8 -8
- package/lib/oh-story/skills/story-long-write/references/emotion-on-page.md +7 -7
- package/lib/oh-story/skills/story-long-write/references/emotional-arc-design.md +38 -298
- package/lib/oh-story/skills/story-long-write/references/emotional-methods.md +12 -53
- package/lib/oh-story/skills/story-long-write/references/female-audience-writing.md +39 -85
- package/lib/oh-story/skills/story-long-write/references/genre-readers.md +97 -163
- package/lib/oh-story/skills/story-long-write/references/long-chapter-hooks.md +39 -119
- package/lib/oh-story/skills/story-long-write/references/long-chapter-quality.md +39 -91
- package/lib/oh-story/skills/story-long-write/references/long-genre-catalog.md +81 -310
- package/lib/oh-story/skills/story-long-write/references/long-genre-mechanics.md +115 -326
- package/lib/oh-story/skills/story-long-write/references/long-reversal.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/long-suspense.md +8 -8
- package/lib/oh-story/skills/story-long-write/references/opening-design.md +38 -334
- package/lib/oh-story/skills/story-long-write/references/outline-methods.md +128 -281
- package/lib/oh-story/skills/story-long-write/references/plot-core-methods.md +58 -499
- package/lib/oh-story/skills/story-long-write/references/project-files.md +10 -14
- package/lib/oh-story/skills/story-long-write/references/reference-index.md +29 -82
- package/lib/oh-story/skills/story-long-write/references/revision-diagnosis.md +31 -0
- package/lib/oh-story/skills/story-long-write/references/stop-and-fix.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/style-combat-face.md +12 -19
- package/lib/oh-story/skills/story-long-write/references/style-genre-modules.md +3 -171
- package/lib/oh-story/skills/story-long-write/references/style-resolution.md +1 -1
- package/lib/oh-story/skills/story-long-write/references/workflow-chapter.md +8 -6
- package/lib/oh-story/skills/story-long-write/references/workflow-daily.md +2 -2
- package/lib/oh-story/skills/story-long-write/references/workflow-outline.md +47 -47
- package/lib/oh-story/skills/story-long-write/references/workflow-revision.md +7 -7
- package/lib/oh-story/skills/story-long-write/references/workflow-setup.md +4 -9
- package/lib/oh-story/skills/story-long-write/references/workflow-volume.md +72 -98
- package/lib/oh-story/skills/story-long-write/references/writing-craft.md +59 -115
- package/lib/oh-story/skills/story-long-write/scripts/build_architect_brief.py +38 -18
- package/lib/oh-story/skills/story-long-write/scripts/build_writer_prompt.py +23 -11
- package/lib/oh-story/skills/story-long-write/scripts/check-outline-contract.js +5 -1
- package/lib/oh-story/skills/story-long-write/scripts/outline_view.py +1 -1
- package/lib/oh-story/skills/story-review/SKILL.md +26 -24
- package/lib/oh-story/skills/story-review/references/agent-prompts.md +13 -9
- package/lib/oh-story/skills/story-review/references/banned-words.md +7 -9
- package/lib/oh-story/skills/story-review/references/expression.md +10 -3
- package/lib/oh-story/skills/story-review/references/quality-rubric.md +7 -7
- package/lib/oh-story/skills/story-review/references/review-tracking.md +2 -1
- package/lib/oh-story/skills/story-review/references/rubrics/fanqie.md +8 -9
- package/lib/oh-story/skills/story-review/references/rubrics/qidian.md +9 -11
- package/lib/oh-story/skills/story-review/references/rubrics/zhihu.md +9 -8
- package/lib/oh-story/skills/story-review/references/solo.md +6 -5
- package/lib/oh-story/skills/story-review/references/story-logic.md +1 -1
- package/lib/oh-story/skills/story-review/references/style-resolution.md +1 -1
- package/lib/oh-story/skills/story-setup/SKILL.md +24 -31
- package/lib/oh-story/skills/story-setup/references/agent-references/agent-reference-profiles.md +12 -13
- package/lib/oh-story/skills/story-setup/references/agent-references/banned-words.md +7 -9
- package/lib/oh-story/skills/story-setup/references/agent-references/benchmark-style-load.md +1 -1
- package/lib/oh-story/skills/story-setup/references/agent-references/character-basics.md +57 -95
- package/lib/oh-story/skills/story-setup/references/agent-references/character-relations.md +119 -269
- package/lib/oh-story/skills/story-setup/references/agent-references/deslop-gates.md +12 -12
- package/lib/oh-story/skills/story-setup/references/agent-references/dialogue-mastery.md +8 -8
- package/lib/oh-story/skills/story-setup/references/agent-references/emotion-on-page.md +7 -7
- package/lib/oh-story/skills/story-setup/references/agent-references/emotional-arc-design.md +38 -298
- package/lib/oh-story/skills/story-setup/references/agent-references/expression.md +10 -3
- package/lib/oh-story/skills/story-setup/references/agent-references/female-audience-writing.md +141 -0
- package/lib/oh-story/skills/story-setup/references/agent-references/genre-readers.md +96 -161
- package/lib/oh-story/skills/story-setup/references/agent-references/long-chapter-hooks.md +39 -119
- package/lib/oh-story/skills/story-setup/references/agent-references/long-emotional-methods.md +13 -54
- package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-catalog.md +81 -310
- package/lib/oh-story/skills/story-setup/references/agent-references/long-genre-mechanics.md +115 -326
- package/lib/oh-story/skills/story-setup/references/agent-references/long-reversal.md +1 -1
- package/lib/oh-story/skills/story-setup/references/agent-references/long-suspense.md +8 -8
- package/lib/oh-story/skills/story-setup/references/agent-references/opening-design.md +38 -334
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-methods.md +128 -281
- package/lib/oh-story/skills/story-setup/references/agent-references/plot-core-methods.md +58 -499
- package/lib/oh-story/skills/story-setup/references/agent-references/short-chapter-hooks.md +63 -171
- package/lib/oh-story/skills/story-setup/references/agent-references/short-emotional-methods.md +11 -63
- package/lib/oh-story/skills/story-setup/references/agent-references/short-genre-formulas.md +40 -50
- package/lib/oh-story/skills/story-setup/references/agent-references/short-reversal.md +14 -39
- package/lib/oh-story/skills/story-setup/references/agent-references/story-logic.md +1 -1
- package/lib/oh-story/skills/story-setup/references/agent-references/style-combat-face.md +12 -19
- package/lib/oh-story/skills/story-setup/references/agent-references/style-genre-modules.md +3 -171
- package/lib/oh-story/skills/story-setup/references/agent-references/style-resolution.md +1 -1
- package/lib/oh-story/skills/story-setup/references/agent-references/writing-craft.md +59 -115
- package/lib/oh-story/skills/story-short-analyze/SKILL.md +41 -90
- package/lib/oh-story/skills/story-short-analyze/references/analysis-characters.md +66 -0
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-genres.md +21 -20
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-hooks.md +4 -3
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-mechanics.md +4 -4
- package/lib/oh-story/skills/story-short-analyze/references/analysis-short-suspense.md +5 -5
- package/lib/oh-story/skills/story-short-analyze/references/analysis-submission.md +52 -0
- package/lib/oh-story/skills/story-short-analyze/references/optional-modules.md +23 -73
- package/lib/oh-story/skills/story-short-analyze/references/output-contract.md +25 -26
- package/lib/oh-story/skills/story-short-analyze/references/quality-checklist.md +20 -38
- package/lib/oh-story/skills/story-short-analyze/references/source-story-quality.md +9 -158
- package/lib/oh-story/skills/story-short-analyze/references/stage2-3-structure-emotion.md +39 -26
- package/lib/oh-story/skills/story-short-analyze/references/stage4-6-reversal-summary.md +42 -71
- package/lib/oh-story/skills/story-short-scan/SKILL.md +52 -62
- package/lib/oh-story/skills/story-short-scan/references/manual-rank-input.md +16 -12
- package/lib/oh-story/skills/story-short-scan/references/platform-dianzhong.md +10 -4
- package/lib/oh-story/skills/story-short-scan/references/platform-heiyan.md +15 -6
- package/lib/oh-story/skills/story-short-scan/references/real-market-data.md +34 -72
- package/lib/oh-story/skills/story-short-scan/references/topic-match.md +33 -13
- package/lib/oh-story/skills/story-short-write/SKILL.md +5 -5
- package/lib/oh-story/skills/story-short-write/references/agent-calls.md +3 -3
- package/lib/oh-story/skills/story-short-write/references/banned-words.md +7 -9
- package/lib/oh-story/skills/story-short-write/references/benchmark-recall.md +17 -22
- package/lib/oh-story/skills/story-short-write/references/cross-book-recall.md +22 -37
- package/lib/oh-story/skills/story-short-write/references/deslop-gates.md +12 -12
- package/lib/oh-story/skills/story-short-write/references/dialogue-mastery.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/emotional-methods.md +11 -63
- package/lib/oh-story/skills/story-short-write/references/expression.md +10 -3
- package/lib/oh-story/skills/story-short-write/references/genre-styles//344/270/226/346/203/205/346/211/223/350/204/270.md +3 -3
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/217/214/347/224/267/344/270/273.md +6 -6
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/244/215/344/273/207/346/211/223/350/204/270.md +8 -8
- package/lib/oh-story/skills/story-short-write/references/genre-styles//345/256/205/346/226/227/345/256/253/346/226/227.md +4 -4
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/200/273/350/243/201/350/261/252/351/227/250.md +9 -9
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/202/254/347/226/221.md +10 -10
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/260/221/344/277/227/346/200/252/350/260/210.md +7 -7
- package/lib/oh-story/skills/story-short-write/references/genre-styles//346/262/231/351/233/225/350/204/221/346/264/236.md +6 -6
- package/lib/oh-story/skills/story-short-write/references/genre-styles//347/224/234/345/256/240.md +6 -6
- package/lib/oh-story/skills/story-short-write/references/genre-styles//350/277/275/345/246/273/347/201/253/350/221/254/345/234/272.md +12 -12
- package/lib/oh-story/skills/story-short-write/references/genre-writing-formulas.md +40 -50
- package/lib/oh-story/skills/story-short-write/references/hooks-chapter.md +63 -171
- package/lib/oh-story/skills/story-short-write/references/reference-index.md +13 -14
- package/lib/oh-story/skills/story-short-write/references/short-craft.md +10 -29
- package/lib/oh-story/skills/story-short-write/references/short-deslop.md +2 -2
- package/lib/oh-story/skills/story-short-write/references/short-format.md +12 -32
- package/lib/oh-story/skills/story-short-write/references/short-reversal.md +14 -39
- package/lib/oh-story/skills/story-short-write/references/story-logic.md +1 -1
- package/lib/oh-story/skills/story-short-write/references/style-resolution.md +1 -1
- package/lib/oh-story/skills/story-short-write/references/submission-craft.md +29 -19
- package/lib/oh-story/skills/story-short-write/references/villain-and-reveal.md +14 -19
- package/lib/oh-story/skills/story-short-write/references/workflow-design.md +67 -26
- package/lib/oh-story/skills/story-short-write/references/workflow-draft.md +10 -11
- package/lib/oh-story/skills/story-short-write/references/workflow-revision.md +50 -69
- package/lib/oh-story/skills/story-short-write/scripts/check-phase2-contract.js +21 -16
- package/lib/types/client/file-activity.d.ts +10 -0
- package/lib/types/client/file-activity.d.ts.map +1 -1
- package/lib/types/client/game-preview-state.d.ts +34 -0
- package/lib/types/client/game-preview-state.d.ts.map +1 -0
- package/lib/types/client/index.d.ts.map +1 -1
- package/lib/types/client/video-studio.d.ts +24 -0
- package/lib/types/client/video-studio.d.ts.map +1 -1
- package/lib/types/host-python.d.ts +10 -3
- package/lib/types/host-python.d.ts.map +1 -1
- package/lib/types/native-hooks.d.ts.map +1 -1
- package/lib/types/skill-provider.d.ts.map +1 -1
- package/lib/types/workspace-route.d.ts +6 -0
- package/lib/types/workspace-route.d.ts.map +1 -1
- package/lib/video-recap/package.json +4 -0
- package/package.json +23 -23
- package/lib/oh-story/skills/story-import/references/format-and-structure.md +0 -168
- package/lib/oh-story/skills/story-import/references/state-tracking.md +0 -45
- package/lib/oh-story/skills/story-import/references/tracking-transaction.md +0 -146
- package/lib/oh-story/skills/story-long-analyze/references/deconstruction-notes.md +0 -270
- package/lib/oh-story/skills/story-long-analyze/references/semantic-acceptance-fixtures.md +0 -84
- package/lib/oh-story/skills/story-long-analyze/references/style-profile-protocol.md +0 -133
- package/lib/oh-story/skills/story-long-scan/references/publishing-guide.md +0 -101
- package/lib/oh-story/skills/story-long-scan/references/reader-profiling.md +0 -92
- package/lib/oh-story/skills/story-long-write/references/character-design-methods.md +0 -428
- package/lib/oh-story/skills/story-long-write/references/commercial-core-methods.md +0 -503
- package/lib/oh-story/skills/story-long-write/references/deslop-gates.md +0 -34
- package/lib/oh-story/skills/story-long-write/references/expression.md +0 -76
- package/lib/oh-story/skills/story-long-write/references/narrative-focus.md +0 -63
- package/lib/oh-story/skills/story-long-write/references/outline-conflict.md +0 -457
- package/lib/oh-story/skills/story-long-write/references/outline-rhythm.md +0 -389
- package/lib/oh-story/skills/story-long-write/references/outline-structure-theory.md +0 -272
- package/lib/oh-story/skills/story-long-write/references/plot-emotion-system.md +0 -354
- package/lib/oh-story/skills/story-long-write/references/plot-frameworks.md +0 -710
- package/lib/oh-story/skills/story-long-write/references/plot-special-topics.md +0 -624
- package/lib/oh-story/skills/story-long-write/references/story-logic.md +0 -65
- package/lib/oh-story/skills/story-long-write/references/style-craft.md +0 -306
- package/lib/oh-story/skills/story-review/references/character-relations.md +0 -433
- package/lib/oh-story/skills/story-review/references/dialogue-mastery.md +0 -285
- package/lib/oh-story/skills/story-review/references/plot-core-methods.md +0 -522
- package/lib/oh-story/skills/story-review/references/review-quality.md +0 -243
- package/lib/oh-story/skills/story-setup/references/agent-references/character-design-methods.md +0 -428
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-conflict.md +0 -457
- package/lib/oh-story/skills/story-setup/references/agent-references/outline-rhythm.md +0 -389
- package/lib/oh-story/skills/story-setup/references/agent-references/short-paragraph-hooks.md +0 -145
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-basics.md +0 -433
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-design.md +0 -426
- package/lib/oh-story/skills/story-short-analyze/references/analysis-character-relations.md +0 -384
- package/lib/oh-story/skills/story-short-analyze/references/analysis-paragraph-hooks.md +0 -144
- package/lib/oh-story/skills/story-short-analyze/references/analysis-reader-profile.md +0 -238
- package/lib/oh-story/skills/story-short-analyze/references/analysis-writing-techniques.md +0 -464
- package/lib/oh-story/skills/story-short-analyze/references/deconstruction-examples.md +0 -79
- package/lib/oh-story/skills/story-short-analyze/references/real-market-data.md +0 -89
- package/lib/oh-story/skills/story-short-analyze/references/zhihu-style.md +0 -54
- package/lib/oh-story/skills/story-short-write/references/hooks-paragraph.md +0 -145
- package/lib/oh-story/skills/story-short-write/references/output-contract.md +0 -116
- package/lib/oh-story/skills/story-short-write/references/short-prose-quality.md +0 -207
- package/lib/oh-story/skills/story-short-write/references/writing-workflow.md +0 -50
|
@@ -57,19 +57,26 @@
|
|
|
57
57
|
|
|
58
58
|
| 已知事实与原句 | 可采用的表达 | 看似去味却改坏了 |
|
|
59
59
|
|---|---|---|
|
|
60
|
-
| 钥匙忘在家里,明天归还;无人指责她拒还。“她不是不肯还钥匙,而是忘在家里了。‘我明天带来。’她说。” |
|
|
60
|
+
| 钥匙忘在家里,明天归还;无人指责她拒还。“她不是不肯还钥匙,而是忘在家里了。‘我明天带来。’她说。” | “她把钥匙忘在家里了。‘我明天带来。’她说。”删无用靶子;若在回应拒还指责,保留纠错功能,原句保留按 [style-resolution.md](style-resolution.md) 登记白名单 | “‘爱等就等。’她说。”改变承诺与态度 |
|
|
61
61
|
| 她进了没开灯的屋子,摸到桌边拿药盒。“她推门。屋里没开灯。她摸到桌边。把药盒拿起来。” | “进屋后,她摸黑走到桌边,拿起药盒。”将光线嵌入行动;紧张镜头若原断句有效也可留 | “她摸黑吞了两片药。”从取药改成服药,新增数量与后果 |
|
|
62
62
|
|
|
63
63
|
## 脚本提示怎样进入语义判断
|
|
64
64
|
|
|
65
|
-
检测器是定位工具。密度提示不是词频配额,advisory 不作完成门槛。表达有功能不等于 blocking
|
|
65
|
+
检测器是定位工具。密度提示不是词频配额,advisory 不作完成门槛。表达有功能不等于 blocking 可以不改:作者已明确选择的原句按白名单保留;其余保留叙事功能自然改写,由调用方复扫,不能以保留说明代替验收。指定原句不能改又不在白名单时报告剩余阻塞。不靠错字或拆句躲检测;确定性的事实、字数、截断与占位问题仍交调用方验收,不能靠文风豁免。
|
|
66
|
+
|
|
67
|
+
下表索引检测器全部提示类别,加粗的是 blocking。
|
|
66
68
|
|
|
67
69
|
| 提示 | 人工判断对象 |
|
|
68
70
|
|---|---|
|
|
71
|
+
| **`not-is-comparison`**、**`reverse-not-is`**、**`negation-parade`**、`negation-pair-tic` | 见上文「否定铺垫后肯定翻转」 |
|
|
72
|
+
| **`voice-contrast`** | 见上文「万能状语与套式声线」 |
|
|
73
|
+
| **`em-dash`** | 按功能改成动作、停顿或完整句,不只换符号 |
|
|
74
|
+
| **`trailer-ending`**、**`trailer-summary`** | 章末预告与状态总结,见上文「解释与叙述者」;收尾分量转 narrative-focus |
|
|
69
75
|
| `formulaic-parallelism`、`quote-emphasis-tic` | 对比与强调是否有真实意义,是否机械复述 |
|
|
70
76
|
| `cliche-density-tic`、`metaphor-density-tic` | 套词与比喻是否聚成同一腔调,功能是否重复 |
|
|
71
77
|
| `stock-reaction-tic`、`micro-action-tic`、`action-list-tic` | 反应与动作是否只是标注或清单;用笔分配转 narrative-focus |
|
|
72
|
-
| `overcompressed-prose-tic`、`low-connective-density-tic` | 是否真缺连接、对象和连续思路,不按计数拉长 |
|
|
78
|
+
| `period-stutter`、`overcompressed-prose-tic`、`low-connective-density-tic` | 是否真缺连接、对象和连续思路,不按计数拉长 |
|
|
79
|
+
| `long-paragraph` | 一段是否跨了几个镜头,按镜头断开 |
|
|
73
80
|
| `abstract-summary-tic`、`reasoning-chain-tic` | 总结是否重复,解释是否必要;因果缺口转 story-logic |
|
|
74
81
|
| `system-notice-formality-tic` | 语域是否合乎载体,角色能否理解其当下作用 |
|
|
75
82
|
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
| 展开已定交锋、权衡和反馈,调整同场详略 | 改变人物决定、胜负、关系走向、代价或事件顺序 |
|
|
37
37
|
| 在既定揭露边界内呈现已知信息 | 提前揭底、搬动伏笔,或改变读者与人物获知顺序 |
|
|
38
38
|
|
|
39
|
-
|
|
39
|
+
对白措辞和必要微连接可以为既定内容服务;不能借一句台词或一个顺带动作新增威胁、承诺、拿到证据或改变人物策略。改换视角时只叙述该视角有依据的感知与认知,不能添加“进门时发现”“后来听说”等新经历来保留信息。
|
|
40
40
|
|
|
41
41
|
作者已明确要求重写或允许调整剧情时,直接执行被授权部分,保留其余已定事实;不用再次请求同一授权。仍缺少关键选择依据时,提出可审阅的最小选项。修法要写到哪次行为、什么条件或什么结果上,说明会牵动哪些后文,不只说“加强冲突”。建议与推测放在报告,不悄悄成为正文事实。
|
|
42
42
|
|
|
@@ -24,4 +24,4 @@
|
|
|
24
24
|
- 本书文风明确允许某种停顿标点时,可登记 `——` 或 `……`;具体修辞登记完整的获准原句,不能登记“不是”“没有”等泛词来关闭整类检查。
|
|
25
25
|
- 每项用上一行 `# 来源:…;用途:…` 说明当前请求或文风依据。只为执行作者已明确的选择登记,不因脚本报警自动放行。当前请求禁止某写法时移除相冲突的豁免;一次性保留只登记该句,不推断长期习惯。
|
|
26
26
|
- 深扫、标点整理和写后/下一章检查读取同一白名单。豁免只影响对应字面片段的风格检查;同一行其他问题照报,事实、字数、占位、工程词、截断和文件结构检查不豁免。
|
|
27
|
-
-
|
|
27
|
+
- 调用方限定的检查范围仍执行,检查重复、冗余、节奏和信息边界问题。裁决与发现写在交付报告中,不写进小说正文。
|
|
@@ -8,9 +8,9 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
8
8
|
|
|
9
9
|
你是小说项目逆向工程师,把作者已有的书整理成**可续写的写作工程**,包含设定、大纲、正文及所需追踪。`拆文库/{导入书名}/` 保留为分析数据源;向作者汇报工程整理结果和续写入口。
|
|
10
10
|
|
|
11
|
-
> Agent 兼容性:只检查当前运行时的 canonical 目录:Claude `.claude/agents/{agent}.md`、OpenCode `.opencode/agents/{agent}.md`、Codex `.codex/agents/{agent}.toml`、Antigravity `.agents/agents/agent-name/agent.md`(`agent-name` 为目标 agent 名),不得因其他端文件存在而误判。Codex
|
|
11
|
+
> Agent 兼容性:只检查当前运行时的 canonical 目录:Claude `.claude/agents/{agent}.md`、OpenCode `.opencode/agents/{agent}.md`、Codex `.codex/agents/{agent}.toml`、Antigravity `.agents/agents/agent-name/agent.md`(`agent-name` 为目标 agent 名),不得因其他端文件存在而误判。Claude 用 `subagent_type`,OpenCode 用 `subagent` 工具的 `agent` 参数,Codex 用同名 `agent_type`,Antigravity 用 `invoke_subagent` + `TypeName`。运行时不暴露 custom agent、返回未知 agent,或项目有 `.zcode/`(ZCode 3.3.4 不执行项目 custom agents)时,降级 solo/direct,由主会话串行处理。
|
|
12
12
|
>
|
|
13
|
-
> Spawn 版本提示(不阻断 spawn):先读取项目根 `.story-deployed` 的 `agents_version`。与本版 `agents_version:
|
|
13
|
+
> Spawn 版本提示(不阻断 spawn):先读取项目根 `.story-deployed` 的 `agents_version`。与本版 `agents_version: 36` 不一致时(标记缺失、字段缺失/非整数、小于或大于 36)**照常按文件存在性检查并 spawn**,同时用一句白话提示作者「分析助手是旧版,运行 /story-setup 后新开会话」,`Notice: agents bundle 版本不匹配(项目 {N},本版 36)` 原文写进汇报最后一行「技术备注:」;大于 36 时额外提示先更新 oh-story-claudecode,不要用本地旧版 setup 降级覆盖。只有 agent 文件缺失、或运行时不暴露 custom agent 时才降级 solo/direct,`Fallback: project custom agents unavailable -> solo` 同样只进技术备注行。
|
|
14
14
|
|
|
15
15
|
## 名词与目录边界(全流程硬约束)
|
|
16
16
|
|
|
@@ -29,14 +29,15 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
29
29
|
|---|---|---|---|
|
|
30
30
|
| Phase 1 确认来源与范围 | 书名、题材、平台、篇幅、残稿怎么处理、外部对标、先不先装环境 | 本文件 Phase 1;判篇幅读 [length-routing.md](references/length-routing.md) | 导入记录 |
|
|
31
31
|
| Phase 2 深度分析 | 不打扰作者 | [deep-analysis.md](references/deep-analysis.md),再照它进入拆书流程 | `拆文库/{导入书名}/` |
|
|
32
|
-
| Phase 3 结构迁移 |
|
|
32
|
+
| Phase 3 结构迁移 | 原文没分卷时卷怎么分;要不要存本书文风 | 长篇 [structure-mapping-long.md](references/structure-mapping-long.md)(绑了外部对标再读 [benchmark-sync.md](references/benchmark-sync.md));短篇 [structure-mapping-short.md](references/structure-mapping-short.md) | 项目 `设定/`、`正文/`、`大纲/`(短篇为三个单文件) |
|
|
33
33
|
| 逐批反推细纲(长篇) | 不打扰作者 | 本批任务包(见 [outline-reverse.md](references/outline-reverse.md)) | `大纲/细纲_第XXX章.md` |
|
|
34
34
|
| Phase 4 追踪初始化(长篇) | 不打扰作者 | [import-tracking.md](references/import-tracking.md) | `追踪/` |
|
|
35
35
|
| Phase 5 汇报与激活 | 请作者核对、拍板的事 | [import-report.md](references/import-report.md) | `.active-book` |
|
|
36
36
|
|
|
37
|
-
|
|
37
|
+
**书目录**:长篇和短篇均为 `{导入书名}/`,与分析源 `拆文库/{导入书名}/` 同名;写正文守卫据此放行正文迁移,名字不一致时迁正文会被拦。
|
|
38
|
+
**导入记录**:`{书目录}/.story/work/导入记录.md`,Phase 1 建立,格式见下方 Step 5。每个时刻开头先读它,不回翻对话;时刻交付前把作者在对话里新定的事(决定、偏好、红线、否掉的方案)和进度写回它,再往下走。
|
|
38
39
|
**换上下文**:深度分析、每批细纲、追踪初始化读的东西多。每个时刻交付后,汇报末尾加一句「下一步建议新开一个对话,说『继续导入』,会更专注」;作者要在本对话继续也照做。作者说「继续导入」时,在项目根下找进度没勾完的 `*/.story/work/导入记录.md`,从第一个未完成的进度接着做。
|
|
39
|
-
**导入续写入口顺序**:用户只问流程时先答结论再收原文——推荐先 `/story-setup`,新开对话 `/story-import
|
|
40
|
+
**导入续写入口顺序**:用户只问流程时先答结论再收原文——推荐先 `/story-setup`,新开对话 `/story-import`,导完长篇 `/story-long-write 写第N章`(N 是导入后的下一章);也可直接导入,缺环境时 Step 4 给选择。导入过的书、追踪是旧结构的书按 [import-special-cases.md](references/import-special-cases.md) 处理。
|
|
40
41
|
|
|
41
42
|
---
|
|
42
43
|
|
|
@@ -44,7 +45,7 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
44
45
|
|
|
45
46
|
### Step 1:确认意图
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
默认目标是可续写的写作工程。意图不明时主动问:「你是想把这本书做成可续写的写作工程(设定/大纲/正文/追踪,能接着往下写),还是只要一份拆文库分析?」只要分析 → 直接用 `/story-long-analyze`(短篇 `/story-short-analyze`),到拆文库为止,不建导入记录、不做迁移。
|
|
48
49
|
|
|
49
50
|
### Step 2:拿到原文
|
|
50
51
|
|
|
@@ -53,13 +54,13 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
53
54
|
### Step 3:基本信息确认
|
|
54
55
|
|
|
55
56
|
1. 自动检测书名(如有)、总章数、总字数、章节格式。
|
|
56
|
-
2.
|
|
57
|
+
2. 请作者确认:导入书名、题材类型、目标平台(长篇:起点/番茄/晋江/其他;短篇:知乎盐言/番茄/七猫/黑岩/红果/小程序/未定)、是否完本(半成品写到第 N 章)、**篇幅**(长篇/短篇,按 length-routing.md 检测:用户显式声明 > 结构信号 > 字数兜底,向作者复述结果请其确认;决定结构迁移走长篇还是短篇)、**最后一章是否完整**——残稿时告诉作者,请他决定「接着残章写」还是「先补完再导入」,本 skill 只记录决定,不替作者选。
|
|
57
58
|
3. 外部对标(可选、与导入源分离):作者已明确指定时记录 `{对标书名}`,并确认 `拆文库/{对标书名}/` 是该参考作品的独立拆解产物;不得把 `{导入书名}` 或本次刚生成的拆文目录当候选。未指定时不追问,记为“未绑定”。
|
|
58
59
|
4. 向作者展示检测到的章节范围、字数、篇幅、最后一章状态与“外部对标:{对标书名/未绑定}”,确认后往下走。
|
|
59
60
|
|
|
60
61
|
### Step 4:写作环境检测
|
|
61
62
|
|
|
62
|
-
先读取 `.story-deployed
|
|
63
|
+
先读取 `.story-deployed`,按顶部说明检查版本,版本不匹配不阻断调用。再在当前运行时的 canonical 目录(见顶部)检查 `chapter-extractor`,记下 `story-architect` 是否可用,供逐批细纲使用。`.story-deployed` 的 `target_cli` 含 `zcode` 时按顶部说明串行处理,不提示重复部署。
|
|
63
64
|
|
|
64
65
|
当前端 agent 不可用且不是已部署 ZCode 项目时这样问:
|
|
65
66
|
|
|
@@ -75,7 +76,7 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
75
76
|
# 导入记录:《{导入书名}》
|
|
76
77
|
- 原文:{源文件或目录路径;贴入文本写 .story/work/导入原文.md}
|
|
77
78
|
- 篇幅:{长篇 | 短篇}({判定依据一句})
|
|
78
|
-
- 范围:第 1–{N} 章,约 {Y} 万字;{完本 | 半成品}
|
|
79
|
+
- 范围:第 1–{N} 章,约 {Y} 万字;{完本 | 半成品}
|
|
79
80
|
- 最后一章:{完整 | 残稿:第 {N+1} 章写了一半,作者决定{接着残章写 | 先补完再导入}}
|
|
80
81
|
- 题材:{题材类型};目标平台:{平台}
|
|
81
82
|
- 外部对标:{对标书名 | 未绑定}
|
|
@@ -99,7 +100,7 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
99
100
|
|
|
100
101
|
## Phase 3:结构迁移
|
|
101
102
|
|
|
102
|
-
|
|
103
|
+
长篇按 [structure-mapping-long.md](references/structure-mapping-long.md) 的迁移步骤把 `拆文库/{导入书名}/` 迁成 `{导入书名}/` 工程;原文没有明确卷界时,卷划分必须等作者确认,确认结果写进导入记录。结构迁移验收后,按 [outline-reverse.md](references/outline-reverse.md) 逐批反推细纲。短篇按 [structure-mapping-short.md](references/structure-mapping-short.md) 迁成 `{导入书名}/` 的三个单文件,**不产** `追踪/`、`大纲/`、`正文/` 等长篇目录,迁完直接到 Phase 5。
|
|
103
104
|
|
|
104
105
|
## Phase 4:追踪初始化(仅长篇)
|
|
105
106
|
|
|
@@ -115,7 +116,7 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
115
116
|
|
|
116
117
|
| 时机 | 跳转到 | 命令 |
|
|
117
118
|
|---|---|---|
|
|
118
|
-
| 导入完想继续写 | story-long-write / story-short-write | `/story-long-write` + "
|
|
119
|
+
| 导入完想继续写 | story-long-write / story-short-write | `/story-long-write` + "写第N章"(N 是导入后的下一章) / `/story-short-write` + "补完构思" |
|
|
119
120
|
| 导入完想审查质量 | story-review | `/story-review` |
|
|
120
121
|
| 想拆一本外部对标书 | story-long-analyze / story-short-analyze | `/story-long-analyze` / `/story-short-analyze` |
|
|
121
122
|
| 从零开新书 | story-long-write / story-short-write | `/story-long-write` + "开书" / `/story-short-write` |
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
# 接入外部对标(长篇导入)
|
|
2
|
+
|
|
3
|
+
长篇结构迁移时,导入记录绑定了外部 `{对标书名}` 才读本文件。`{对标书名}` 必须是作者另行选择、独立拆过的参考作品,来源固定为 `拆文库/{对标书名}/`;严禁把 `拆文库/{导入书名}/`、项目 `设定/` 或由它们生成的文件复制进 `对标/`,也不得把 `{导入书名}` 登记为对标。
|
|
4
|
+
|
|
5
|
+
## Step 1:登记对标
|
|
6
|
+
|
|
7
|
+
在 `设定/题材定位.md` 的「题材框架」之前追加两节,格式沿用长篇写作的题材定位。主对标书最多 1 本,副对标 / 参考对标不限数量;每一本都要能回溯到 `拆文库/{对标书名}/`。
|
|
8
|
+
|
|
9
|
+
```markdown
|
|
10
|
+
## 对标分析(概要)
|
|
11
|
+
> 完整对标数据见 `对标/` 目录。此表仅做快速概览,正式登记以下一节为准。
|
|
12
|
+
|
|
13
|
+
| 对标书 | 相似点 | 差异点 | 可借鉴 |
|
|
14
|
+
|--------|-------|-------|-------|
|
|
15
|
+
| {对标书名} | {点} | {点} | {点} |
|
|
16
|
+
|
|
17
|
+
## 对标登记
|
|
18
|
+
- 主对标书:{对标书名}
|
|
19
|
+
- 对标书列表:
|
|
20
|
+
|
|
21
|
+
| 书名 | 题材类型 | 引用强度{主/辅/参考} | 用途 |
|
|
22
|
+
|------|---------|--------------------|------|
|
|
23
|
+
| {对标书名} | {类型} | 主 | 文风+核心结构 |
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Step 2:同步资料
|
|
27
|
+
|
|
28
|
+
把 `拆文库/{对标书名}/` 的结构化资料同步到项目 `对标/{对标书名}/`,供长篇写作优先读取:
|
|
29
|
+
|
|
30
|
+
| 源路径 | 目标路径 | 同步语义 |
|
|
31
|
+
|-------|---------|----------|
|
|
32
|
+
| `拆文库/{对标书名}/剧情/节奏.md` | `{项目}/对标/{对标书名}/剧情/节奏.md` | 日更选择 `rhythm_reference` 的必备权威文件;缺失则不登记该对标 |
|
|
33
|
+
| `拆文库/{对标书名}/剧情/情绪模块.md` | `{项目}/对标/{对标书名}/剧情/情绪模块.md` | 日更选择 `selected_emotion_module` 的必备权威文件;缺失则不登记该对标 |
|
|
34
|
+
| `拆文库/{对标书名}/剧情/*.md` | `{项目}/对标/{对标书名}/剧情/*.md` | 剧情单元、故事线、散落情节等剧情资产;与权威节奏/情绪文件冲突时以后者为准 |
|
|
35
|
+
| `拆文库/{对标书名}/章节/*.md`(第N章_摘要.md + 黄金三章 第1-3章_深度拆解.md)| `{项目}/对标/{对标书名}/章节/*.md` | 匹配章证据;摘要读取概要、关键事件、局面结果、涉及、状态变化与情节点序列(含类型、主题标签与基调),黄金三章另含深度写法 |
|
|
36
|
+
| `拆文库/{对标书名}/角色/*.md` | `{项目}/对标/{对标书名}/角色/*.md` | 角色功能位、关系与反应层参考 |
|
|
37
|
+
| `拆文库/{对标书名}/设定/` | `{项目}/对标/{对标书名}/设定/` | 世界观、势力、金手指等设定约束参考 |
|
|
38
|
+
| `拆文库/{对标书名}/拆文报告.md` | `{项目}/对标/{对标书名}/拆文报告.md` | 供人快速浏览的综合报告 |
|
|
39
|
+
| `拆文库/{对标书名}/文风.md` | `{项目}/对标/{对标书名}/文风.md` | 日更文风召回必读 |
|
|
40
|
+
|
|
41
|
+
- 缺 `剧情/节奏.md` 或 `剧情/情绪模块.md` → 暂停该对标召回,报告缺哪份资料,建议用 `/story-long-analyze` 按需增强后再接入;不以空壳补齐,也不回滚本书工程。两份都在时,缺少新增内嵌字段不阻断同步。
|
|
42
|
+
- 缺 `文风.md` → 请作者用 `/story-long-analyze` 给这本对标书补上文风分析;写正文前的检查会拦住缺失项。`对标/{对标书名}/` 里已有旧文风时,以最新拆文产物覆盖,并在报告中告知。
|
|
43
|
+
- 其他子目录缺失 → 在导入完成报告里用白话提示,不阻塞项目创建。
|
|
44
|
+
|
|
45
|
+
冲突规则:`对标/{对标书名}/剧情/情绪模块.md` 和 `剧情/节奏.md` 是对标召回的权威;`拆文报告.md`、`剧情/故事线.md` 只是摘要。摘要冲突时保留冲突说明并以权威文件为准;缺任一权威文件时不生成不完整的对标目录,先修复该作品的拆文产物。
|
|
46
|
+
|
|
47
|
+
## 自检
|
|
48
|
+
|
|
49
|
+
- [ ] `拆文库/{对标书名}/` 与 `对标/{对标书名}/` 名称和来源一致,两份权威文件都已同步;不一致时报告修复动作,但不回滚本书工程
|
|
50
|
+
- [ ] `拆文库/{导入书名}/` 未被复制到 `对标/`,`{导入书名}` 没有出现在对标登记里
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## 一、输入来源
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
从已落盘的拆文产物反推,不重读 `原文/`:
|
|
8
8
|
|
|
9
9
|
| 输入 | 用途 |
|
|
10
10
|
|---|---|
|
|
@@ -12,7 +12,6 @@
|
|
|
12
12
|
| `拆文库/{书名}/角色/角色关系.md` | 截至最后完整章的关键关系 |
|
|
13
13
|
| `拆文库/{书名}/章节/第N章_摘要.md` | 从 `涉及` 锁定相关章,从 `状态变化`、`信息变化`、`局面结果` 和 `章尾钩子` 提取最后位置、最新状态、已知信息与未结事项;旧摘要缺字段时回退其关键事件与情节点 |
|
|
14
14
|
| `拆文库/{书名}/剧情/*.md` | 阵营/身份转折、阶段目标和长期冲突 |
|
|
15
|
-
| `{书目录}/.story/work/简化摘要/第NNN章.md` | 未深拆章节的行动、局面变化与章尾等待 |
|
|
16
15
|
| 初始化事务中的伏笔与时间线候选 | 核对角色未结事项及其可知范围 |
|
|
17
16
|
|
|
18
17
|
## 二、追踪对象
|
|
@@ -68,10 +67,10 @@
|
|
|
68
67
|
|
|
69
68
|
工具据此生成的文件固定包含:截至章节、身份、位置、当前目标、身心状态、能力与资源、关键关系、已知信息、未结事项。模型不得另写一套 Markdown 模板。
|
|
70
69
|
|
|
71
|
-
##
|
|
70
|
+
## 五、残稿与重复初始化
|
|
72
71
|
|
|
73
72
|
- 最后一章是残稿:所有快照截至残稿之前的最后完整章;残稿中的动作、获得物、关系变化不得提前生效。
|
|
74
|
-
-
|
|
73
|
+
- 已有 `_tracking-state.json` 时不能再次 `init`;快照只在初始化时写一次,不追加历史。
|
|
75
74
|
|
|
76
75
|
## 六、质量检查
|
|
77
76
|
|
|
@@ -23,8 +23,7 @@ Phase 2 先读本文件,再进入对应 analyze skill,由其负责拆文、
|
|
|
23
23
|
- 措辞示例(全新):启动深度分析时声明「以『完整拆解、一次跑完、不要停下询问』模式拆解本书,确保 Stage 2-6 全部产出」。
|
|
24
24
|
- 措辞示例(旧成果):声明「先复用并校验现有成果,只补当前导入缺失的章节或分析,不覆盖用户原成果」。
|
|
25
25
|
- **兜底**:若全新导入实际仍停在 Stage 1,自动选择继续;若旧成果任务停靠,则按已登记的缺失范围继续,不能扩大成全书重跑。
|
|
26
|
-
- 派发:导入记录写着分析助手可用时,属自动续跑,按 story-long-analyze 的「有限并行」档派 `chapter-extractor`(每轮 3
|
|
27
|
-
- 超过 200 章的作品按 [import-special-cases.md](import-special-cases.md)「超过 200 章的作品」分批拆解。
|
|
26
|
+
- 派发:导入记录写着分析助手可用时,属自动续跑,按 story-long-analyze 的「有限并行」档派 `chapter-extractor`(每轮 3 批),每个连续章节批次只调用一次,同次生成逐章事实与跨章观察;作者明确要求时改用串行或不限批次顺序。无论章数多少都整本拆完。作者选了直接导入(或 ZCode)时,Stage 2 由主会话按相同连续章节块契约串行处理,不能退回每章一次独立调用;产物仍完整,仅速度变慢。
|
|
28
27
|
|
|
29
28
|
## 短篇:单一全量管道
|
|
30
29
|
|
|
@@ -34,7 +33,7 @@ story-short-analyze 的拆解管道(Stage 2-6)本身**无 Stage 1 停靠点*
|
|
|
34
33
|
|-------------|----------------|
|
|
35
34
|
| Step 1:拿到原文 | 用导入记录里的源文件,不重新问 |
|
|
36
35
|
| Step 2:字数检查(长短篇路由) | 篇幅已在导入 Phase 1 判定并经作者确认,直接答「按短篇继续」,不重新路由 |
|
|
37
|
-
| Step 3:题材识别 |
|
|
36
|
+
| Step 3:题材识别 | **照常跑**,题材标尺必须加载;导入记录里已确认的题材类型不重复提问,`genre_detected` 写题材路由表里最接近的类型或「通用」,作者原话进副类型或元素标签 |
|
|
38
37
|
| Step 4:续跑检查(`拆文库/{导入书名}/_meta.json` 已存在时三选一) | 先看旧产出是否可直接复用:`stages_completed` 已含 6 且 `拆文报告.md` / `情节节点.md` / `写作手法.md` / `原文/` 均非空、来源与本次导入源一致 → 直接进 Phase 3,不重跑也不归档。否则本轮首次进入 Phase 2 → 按 (a) 覆盖:先把旧产出归档到 `拆文库/{导入书名}/_archive_{时间戳}/`,再从 Stage 2 重跑;同一轮导入内重试同一本书 → 按 (b) 续跑。不把三选一甩给作者,也不跳过归档 |
|
|
39
38
|
|
|
40
39
|
Step 3 写入 `_meta.json.genre_detected`,这是拆文验收的必填字段,也供下游选题材标尺,不能跳过。
|
|
@@ -12,7 +12,7 @@ Phase 5 只读本文件和导入记录(`{书目录}/.story/work/导入记录.m
|
|
|
12
12
|
|
|
13
13
|
## Step 2:导入完成报告
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
报告要告诉作者导入了什么、需要核对和拍板什么、下一步怎么说。字段名、脚本名、校验结果、字数口径、伏笔/事件编号不进报告;编号只能跟着故事描述出现(如「玉佩的来历(F003)」)。核对项要落到具体人和事,一次最多 5 条。导入中有过助手降级或版本提示时,报告块最后加一行「技术备注:」放原文。
|
|
16
16
|
|
|
17
17
|
**长篇**:
|
|
18
18
|
|
|
@@ -27,6 +27,7 @@ Phase 5 只读本文件和导入记录(`{书目录}/.story/work/导入记录.m
|
|
|
27
27
|
- 还没收的线:{K} 条(如「{伏笔的故事描述}」)
|
|
28
28
|
- 时间线:真相和读者目前知道的分开记,续写时不会提前泄底
|
|
29
29
|
- 设定:{设定文件数} 份世界观资料
|
|
30
|
+
- 文风:{按你的意思存成了这本书的文风,续写照着写 | 没存,续写按对标或默认写法}
|
|
30
31
|
- 对标书:{没有绑定 | 已接入《{对标书名}》 | 没接上:原因和补救}
|
|
31
32
|
|
|
32
33
|
请你核对:
|
|
@@ -35,14 +36,14 @@ Phase 5 只读本文件和导入记录(`{书目录}/.story/work/导入记录.m
|
|
|
35
36
|
|
|
36
37
|
需要你决定:{仅列尚未确认的事项;已确认的卷划分和残稿决定不再询问}
|
|
37
38
|
|
|
38
|
-
下一步:{
|
|
39
|
+
下一步:{未完本:运行 `/story-long-write` 说「写第 {N+1} 章」,会先补好这一章的大纲再写 | 已完本:想改稿说「审一下」}。
|
|
39
40
|
```
|
|
40
41
|
|
|
41
42
|
**短篇**:
|
|
42
43
|
|
|
43
44
|
<!-- author-report -->
|
|
44
45
|
```md
|
|
45
|
-
=== 《{
|
|
46
|
+
=== 《{导入书名}》导入完成 ===
|
|
46
47
|
导进来了:全文约 {Y} 字,分成 {N} 个小节。项目在 `{项目目录}`。
|
|
47
48
|
|
|
48
49
|
我整理出了:
|
|
@@ -54,7 +55,7 @@ Phase 5 只读本文件和导入记录(`{书目录}/.story/work/导入记录.m
|
|
|
54
55
|
1. {标了 [待补充] 的地方,写成问题,如「女主最后原谅他了吗?原文没写明」}
|
|
55
56
|
2. {核心反转前埋的线索我找到的是:……,有没有漏的?}
|
|
56
57
|
|
|
57
|
-
下一步:{没写完:运行 `/story-short-write`
|
|
58
|
+
下一步:{没写完:运行 `/story-short-write` 说「补完构思」,先定好:{设定里标了待补充的事,用大白话列,如「走哪个题材的写法、后面还有几节、付费点放哪」},定完再从第 {N+1} 节往下写 | 已完本:想改稿说「审一下」}。
|
|
58
59
|
```
|
|
59
60
|
|
|
60
61
|
## Step 3:项目激活
|
|
@@ -1,34 +1,24 @@
|
|
|
1
1
|
# 导入的特殊情况
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
遇到流程答疑或旧追踪迁移时读取。
|
|
4
4
|
|
|
5
5
|
## 流程答疑
|
|
6
6
|
|
|
7
7
|
用户问「导入续写先装环境还是先导入」「已有小说怎么续写」「导入流程」这类问题时,先直接给结论,再继续收集原文——避免用户只想确认流程却被直接要求贴原文:
|
|
8
8
|
|
|
9
|
-
1. **推荐顺序**:先 `/story-setup` 装好写作环境,新开或刷新会话后运行 `/story-import`,最后用 `/story-long-write
|
|
9
|
+
1. **推荐顺序**:先 `/story-setup` 装好写作环境,新开或刷新会话后运行 `/story-import`,最后用 `/story-long-write 写第N章` 续写(N 是还没写的第一章)。
|
|
10
10
|
2. **也可以直接 `/story-import`**:导入会在深度分析前检查写作环境;没装时给「先去装」或「直接导入,慢一点」两种选择。
|
|
11
|
-
3. **当前协议项目**(书名目录下有 `追踪/_tracking-state.json`):先查导入记录;若仍有未完成项,从该项续跑。已完成导入时,确认项目根 `.active-book` 指向正确书目,再用 `/story-long-write
|
|
12
|
-
4.
|
|
11
|
+
3. **当前协议项目**(书名目录下有 `追踪/_tracking-state.json`):先查导入记录;若仍有未完成项,从该项续跑。已完成导入时,确认项目根 `.active-book` 指向正确书目,再用 `/story-long-write 写第N章` 续写,不重复导入。
|
|
12
|
+
4. **旧追踪项目**(有 `追踪/` 和正文,但没有 `追踪/_tracking-state.json`):日更会停下要求重新导入,但**不需要重跑全书拆解**,只重建追踪,见下一节。
|
|
13
13
|
|
|
14
14
|
## 旧追踪项目迁移
|
|
15
15
|
|
|
16
|
-
书名目录下有 `追踪/` 与正文、但没有 `追踪/_tracking-state.json`
|
|
16
|
+
书名目录下有 `追踪/` 与正文、但没有 `追踪/_tracking-state.json` 时,项目用的是旧的追踪结构。正文和 `设定/`、`大纲/`、`拆文库/` 都不受影响,**只需重建 `追踪/`**,不重跑深度分析、不碰正文:
|
|
17
17
|
|
|
18
18
|
1. 检查章号最大的 `正文/第NNN章_*.md` 是否完整,确定最后完整章号 `N`;不能仅凭最大文件名判定。
|
|
19
19
|
2. 从旧 `追踪/` 现有文件(角色状态、伏笔、时间线等,文件名按项目实际情况)和最近 3-5 章正文,重建当前状态:核心角色快照、未回收伏笔、已揭示时间线事件、长期约束、下一章承诺。角色快照的反推方法见 [character-state-reverse.md](character-state-reverse.md)。
|
|
20
20
|
3. 按 [import-tracking.md](import-tracking.md) 构造初始化事务(其中点名的 tracking-initialization.md 完整读取),`last_chapter` 写 `N`(第 1..N 章不伪造逐章记录),执行 `tracking_commit.py init`。
|
|
21
21
|
4. `init` 会把旧追踪结构按原样整体移入 `追踪/_旧追踪存档/` 再建当前协议——旧内容不删除、不参与解析,留给作者查阅。
|
|
22
|
-
5. 跑 `tracking_commit.py check` 确认通过,再回 `/story-long-write
|
|
22
|
+
5. 跑 `tracking_commit.py check` 确认通过,再回 `/story-long-write` 写下一章(第 N+1 章)续写。
|
|
23
23
|
|
|
24
24
|
重建结果以第 2 步的证据为准;拿不准的字段留空或写进 `continuity_risks`,不杜撰。用户明确要求重拆全书时才走完整导入。
|
|
25
|
-
|
|
26
|
-
## 超过 200 章的作品
|
|
27
|
-
|
|
28
|
-
此规则仅用于长篇。拆解可以分批,追踪初始化一次覆盖确认范围内的全部完整章节;短篇按单文件迁移:
|
|
29
|
-
|
|
30
|
-
1. **拆解分批**:首期只深拆前 50 章 + 全书概要,后续按需补拆更多章节到 `拆文库/`。
|
|
31
|
-
2. **追踪一次到位**:初始化事务的 `last_chapter` 写**最后一个已写完的章号 N**,不是首期拆解的 50。`imported_through_chapter` 由 `init` 一次写定、之后不再推进,逐章事务只接受 N+1 起的章号;第 1..N 章不伪造逐章记录,续写从 N+1 开始。若 init 时误写成 50,第 51..N 章仍可逐章 `append` 补上(一章一份事务,章号必须连续),只是要为已写好的旧章逐章构造事务;不要删 `追踪/` 重来——`_旧追踪存档/` 也在里面。
|
|
32
|
-
3. **简化摘要**:未深拆的章节每章写一份约 200 字的简化摘要(谁做了什么、局面怎么变、章尾留下什么等待),固定落在 `{书目录}/.story/work/简化摘要/第NNN章.md`(三位补零)。细纲任务包在拆文库没有该章摘要时自动取这里;追踪初始化反推当前状态也从这里取证。
|
|
33
|
-
|
|
34
|
-
首期深拆范围写进导入记录「范围」一行,细纲与追踪时刻据此取证据。
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# 追踪初始化时刻(仅长篇)
|
|
2
2
|
|
|
3
|
-
Phase 4 完整读取本文件、[tracking-initialization.md](tracking-initialization.md) 的事务骨架与 [character-state-reverse.md](character-state-reverse.md)
|
|
3
|
+
Phase 4 完整读取本文件、[tracking-initialization.md](tracking-initialization.md) 的事务骨架与 [character-state-reverse.md](character-state-reverse.md) 的快照规则。截止章、残稿决定与卷划分取自导入记录;证据取自已落盘的拆文库和项目 `大纲/`,不重读原文。
|
|
4
4
|
|
|
5
5
|
导入项目必须通过本 skill 自带的 `scripts/tracking_commit.py init` 一次性生成追踪状态,禁止模型分别写最终文件。
|
|
6
6
|
|
|
@@ -50,7 +50,7 @@ Phase 4 完整读取本文件、[tracking-initialization.md](tracking-initializa
|
|
|
50
50
|
- `context` 在 init 时收六项:`position`、`long_term_constraints`、`active_character_names`、`continuity_risks`、`recent_chapters`(最多 3 章,按章号升序)、`next_chapter_commitments`。
|
|
51
51
|
- `character_snapshots` 里的角色就是核心角色;四个列表不限条数,单角色文件目标 ≤4096 字节,硬上限 8192 字节,超过在任何写入前拒绝。`active_character_names` 最多 6 人且必须已有快照;`long_term_constraints` 最多 6 条。
|
|
52
52
|
- `上下文.md` ≤12288 字节,只含 7 个顶层区块:当前位置、长期约束、核心角色状态、活跃伏笔(最多 8 条)、近三章速记、下一章承诺、连贯性风险。
|
|
53
|
-
-
|
|
53
|
+
- 报错按提示改事务本身再跑,字段形状以 tracking-initialization.md 的骨架和本节为准。
|
|
54
54
|
|
|
55
55
|
## 伏笔提取
|
|
56
56
|
|
|
@@ -30,7 +30,7 @@ Phase 1 尚未明确篇幅时提问:**「这是长篇还是短篇?」**
|
|
|
30
30
|
|
|
31
31
|
### 章节分隔符识别
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
按下表识别章节分隔符:
|
|
34
34
|
|
|
35
35
|
| 分隔符模式 | 示例 |
|
|
36
36
|
|-----------|------|
|
|
@@ -82,45 +82,3 @@ Phase 1 尚未明确篇幅时提问:**「这是长篇还是短篇?」**
|
|
|
82
82
|
| 结构信号与字数信号方向相反 | 展示两项信号,请用户决定 |
|
|
83
83
|
|
|
84
84
|
用户拍板的结果写进导入记录(`{书目录}/.story/work/导入记录.md` 的「篇幅」),后续时刻以此为准,不再重新判定。
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## 判定结果与后续路径
|
|
89
|
-
|
|
90
|
-
判定完成后,迁移路径按以下对应关系分流:
|
|
91
|
-
|
|
92
|
-
| 判定结果 | 迁移路径 | 映射规则参考文件 |
|
|
93
|
-
|---------|---------|----------------|
|
|
94
|
-
| **长篇** | 长篇迁移路径(Phase 3-L) | `structure-mapping-long.md` |
|
|
95
|
-
| **短篇** | 短篇迁移路径(Phase 3-S) | `structure-mapping-short.md` |
|
|
96
|
-
|
|
97
|
-
---
|
|
98
|
-
|
|
99
|
-
## 快速判定流程图
|
|
100
|
-
|
|
101
|
-
```
|
|
102
|
-
Phase 1 问用户:「长篇还是短篇?」
|
|
103
|
-
│
|
|
104
|
-
├─ 用户明确回答 ──────────────────────────► 锁定类型
|
|
105
|
-
│
|
|
106
|
-
└─ 未回答 / 不确定
|
|
107
|
-
│
|
|
108
|
-
▼
|
|
109
|
-
检测章节分隔符
|
|
110
|
-
│
|
|
111
|
-
├─ 有分隔符且章节数 ≥ 5 ──────────► 初判长篇(< 30000 时提示确认)
|
|
112
|
-
│
|
|
113
|
-
├─ 无分隔符,单文件单篇,< 20000 ─► 短篇
|
|
114
|
-
│
|
|
115
|
-
├─ 无分隔符,单篇,20000 ≤ 字数 < 30000 ─► 短篇(复述时告知超出建议上界)
|
|
116
|
-
│
|
|
117
|
-
├─ 无分隔符,单文件单篇,≥ 30000 ─► 提示用户裁定
|
|
118
|
-
│
|
|
119
|
-
└─ 信号不明确
|
|
120
|
-
│
|
|
121
|
-
▼
|
|
122
|
-
字数兜底判定(30000 字阈值)
|
|
123
|
-
│
|
|
124
|
-
├─ < 30000,结构不明或 < 5 章 ─► 短篇
|
|
125
|
-
└─ ≥ 30000 ──────────────────► 长篇
|
|
126
|
-
```
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
- 对本批每一章,从任务包里该章的摘要要点反推 `大纲/细纲_第XXX章.md`;要点写「摘要未写」又必须写实际内容时,回看该章正文相关段落补证据,不改正文。
|
|
8
8
|
- 字数目标写任务包里测好的历史长度(`visible_chars_v1` 下的实际长度),不是重新决定创作目标,不自己估算。
|
|
9
|
-
- 单元ID
|
|
9
|
+
- 单元ID 取包里「卷纲剧情单元」中章节范围覆盖本章的那张卡;单元内第几拍判断不出写 `[待补充]`。
|
|
10
10
|
- 钩子、人物关系变化、辅线/感情线、行动成本/收益归属等无法由原文摘要稳定判断的字段统一标 `[待补充]`;只反推有证据的蓝图,不为补齐字段编造关系或副线。已写成的历史章「本章禁止提前释放」写「无」;目标情绪与主角目标/关键选择不接受 `[待补充]`。
|
|
11
11
|
|
|
12
12
|
## 字段映射
|
|
@@ -17,16 +17,16 @@
|
|
|
17
17
|
| 章节字数 | 字数目标 + 字数口径 | 写任务包里测好的 `actual` 与 `visible_chars_v1` |
|
|
18
18
|
| `基调:` + 状态变化 | 目标情绪 | 结合各情节点基调(紧张/轻松/悲伤/热血/爽/甜/温馨/恐怖/压抑/其他)与状态变化,归纳为「前状态→后状态」;必须写实际内容 |
|
|
19
19
|
| 关键事件 + 主角行动 | 主角目标/关键选择 | 原文里主角本章要什么、做了什么判断或选择;必须写实际内容 |
|
|
20
|
-
| 所属剧情单元 | 单元ID/位置 |
|
|
20
|
+
| 所属剧情单元 | 单元ID/位置 | 取章节范围包含本章的剧情单元卡的单元ID,对照卡里的单元节拍定第几拍;判断不出写 `[待补充]` |
|
|
21
21
|
| (历史章) | 本章禁止提前释放 | 已写成的章节写「无」 |
|
|
22
|
-
|
|
|
23
|
-
| 爽点类情节点 | 爽点 |
|
|
22
|
+
| 上一章的章尾钩子 | 章首钩子 | 上一章结尾留下、本章开头接住的等待;本批第一章用包里给的上一章章尾钩子,第 1 章或没有证据写 `[待补充]` |
|
|
23
|
+
| 爽点类情节点 | 爽点 | 从情节点类型推断;本章没有爽点类情节点写「无显性爽点」 |
|
|
24
24
|
| 情节点起承转合 + 因果 | 内容概括(起因/发展/转折/高潮/结尾) | 按情节点顺序归纳,用因果链校正起因与转折;证据不足写 `[待补充]` |
|
|
25
25
|
| 主线/支线/任务线索 | 情节安排(主线/辅线/事件线/感情线/逻辑线) | 从剧情单元索引与摘要反推;无证据的辅线/感情线写“无”或 `[待补充]`,不得杜撰 |
|
|
26
26
|
| 涉及 + 状态变化 | 人物关系和出场顺序 | `涉及` 给出候选人物,`状态变化` 只写有证据的“前 → 后”;关键物件从证据或旧情节点补充,缺失写 `[待补充]` |
|
|
27
27
|
| 全部情节点 | 情节细化 / 情节点序列 | 按任务包中的「标题|类型|基调」逐点归纳并填表(# / 情节点 / 功能标签 / 执行边界);保持原顺序,未知写 `[待补充]`,不反推逐点字数配额 |
|
|
28
28
|
| 胜负/反转/收益损失 | 行动成本(可无)/收益归属 | 有明确证据才填写;行动成本可无、不硬造;否则 `[待补充]` |
|
|
29
|
-
| 章尾钩子 + 局面结果 | 结尾设定和钩子 |
|
|
29
|
+
| 章尾钩子 + 局面结果 | 结尾设定和钩子 | 结尾设定写原文落到最后的具体动作或画面;章尾钩子写本章结尾已经留下的等待,摘要没写才标 `[待补充]` |
|
|
30
30
|
|
|
31
31
|
## 细纲模板
|
|
32
32
|
|
|
@@ -40,8 +40,8 @@
|
|
|
40
40
|
- 单元ID/位置:{反推卷纲里本章所属剧情单元ID;单元内第几拍,判断不出写 [待补充]}
|
|
41
41
|
- 目标情绪:{前状态→后状态,从基调与状态变化归纳,不只写一个情绪词;必须写实际内容}
|
|
42
42
|
- 主角目标/关键选择:{原文里主角本章要什么、做了什么判断或选择;必须写实际内容}
|
|
43
|
-
- 章首钩子:[待补充]
|
|
44
|
-
- 爽点:{
|
|
43
|
+
- 章首钩子:{上一章结尾留下、本章开头接住的等待;第 1 章或没有证据写 [待补充]}
|
|
44
|
+
- 爽点:{从情节点推断;本章没有爽点类情节点写「无显性爽点」}
|
|
45
45
|
- 本章禁止提前释放:无
|
|
46
46
|
|
|
47
47
|
#### 内容概括(五段式)
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
|
|
74
74
|
#### 结尾设定和钩子
|
|
75
75
|
- 结尾设定:{原文落到最后的具体动作或画面;未解决问题;下一章推动力;未知写 [待补充]}
|
|
76
|
-
- 章尾钩子:[待补充]
|
|
76
|
+
- 章尾钩子:{本章结尾已经留下的等待;摘要没写写 [待补充]}
|
|
77
77
|
```
|
|
78
78
|
|
|
79
79
|
每章一个文件,文件名 `大纲/细纲_第XXX章.md`(三位补零,与 `正文/第XXX章_*.md` 同号)。
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
{PYTHON} {story-import skill 根}/scripts/build_outline_brief.py --project {书目录} --chapters {A-B}
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
脚本将反推规则与模板([outline-reverse-rules.md](outline-reverse-rules.md)
|
|
13
|
+
脚本将反推规则与模板([outline-reverse-rules.md](outline-reverse-rules.md) 全文)、测好的历史长度、摘要要点和覆盖本批的卷纲剧情单元卡,拼成 `{书目录}/.story/work/排纲/导入细纲_第AAA-BBB章.md`。历史长度按 `visible_chars_v1` 计算;执行者要读的总量超过约 25K 字时脚本自动少排几章(可少于 10 章)。以 stdout JSON 的 `chapters` 为实际范围、`next` 为下一批起点,`null` 表示已到最后一章。缺摘要的章改读正文,所需正文量也计入总量。
|
|
14
14
|
|
|
15
|
-
长度必须由脚本测,不得用模型估算或静默跳过。找不到 Python 3 或脚本报错时停下,用一句话告诉作者卡在哪(如「第 12
|
|
15
|
+
长度必须由脚本测,不得用模型估算或静默跳过。找不到 Python 3 或脚本报错时停下,用一句话告诉作者卡在哪(如「第 12 章正文读不到,先把正文迁完」),原文报错放技术备注;卷纲缺失或找不到覆盖本批的单元卡时,先回结构迁移补卷纲。
|
|
16
16
|
|
|
17
17
|
## Step 2:写本批细纲
|
|
18
18
|
|