@oh-story/dsh 0.1.16 → 0.1.17
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 +11 -11
- package/lib/client.js +26 -15
- package/lib/client.js.map +2 -2
- package/lib/drama/package.json +4 -0
- package/lib/index.js +42 -16
- 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/index.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.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
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
# API 回退生图
|
|
2
|
+
|
|
3
|
+
只在会话没有内置生图工具或作者明确要求走 API 时使用。`gpt-image-2` 返回 base64,请求体不带 `response_format`。无参考图走文生图,有参考图走图生图。
|
|
4
|
+
|
|
5
|
+
## 环境变量
|
|
6
|
+
|
|
7
|
+
| 变量 | 必填 | 默认 | 说明 |
|
|
8
|
+
|:-----|:----:|:-----|:-----|
|
|
9
|
+
| `GPT_IMAGE_API_KEY` | 是 | — | OpenAI 或兼容代理的 API Key |
|
|
10
|
+
| `GPT_IMAGE_BASE_URL` | | `https://api.openai.com/v1` | 用兼容代理时改这个 |
|
|
11
|
+
| `GPT_IMAGE_MODEL` | | `gpt-image-2` | 只在测试新模型时覆盖 |
|
|
12
|
+
| `GPT_IMAGE_SIZE` | | `1024x1536` | 请求尺寸:番茄 3:4 用 `768x1024`,默认 2:3 用 `1024x1536`。实际尺寸以出图结果为准,上传像素由入口的导出步骤保证 |
|
|
13
|
+
| `BOOK_DIR` | 是 | — | `封面/` 的上一层,按入口「收集信息」定的保存位置 |
|
|
14
|
+
| `PROMPT` | 是 | — | 入口按模板拼好的完整提示词 |
|
|
15
|
+
| `REF_IMAGE` | | — | 参考图本地路径或 URL;设置后走图生图 |
|
|
16
|
+
|
|
17
|
+
## 文生图(没有参考图)
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
set -euo pipefail
|
|
21
|
+
: "${GPT_IMAGE_API_KEY:?请设置 export GPT_IMAGE_API_KEY=你的key}"
|
|
22
|
+
: "${PROMPT:?请先 export PROMPT=构建提示词步骤拼好的完整提示词}"
|
|
23
|
+
BASE_URL="${GPT_IMAGE_BASE_URL:-https://api.openai.com/v1}"
|
|
24
|
+
MODEL="${GPT_IMAGE_MODEL:-gpt-image-2}"
|
|
25
|
+
SIZE="${GPT_IMAGE_SIZE:-1024x1536}"
|
|
26
|
+
BOOK_DIR="${BOOK_DIR:?请先 export BOOK_DIR=书目录或 ./covers/<书名>}"
|
|
27
|
+
|
|
28
|
+
mkdir -p "$BOOK_DIR/封面"
|
|
29
|
+
|
|
30
|
+
# 自增版本号,避免覆盖之前生成的封面
|
|
31
|
+
i=1
|
|
32
|
+
while [ -f "$BOOK_DIR/封面/封面_v${i}.png" ]; do i=$((i+1)); done
|
|
33
|
+
OUT="$BOOK_DIR/封面/封面_v${i}.png"
|
|
34
|
+
RESP=$(mktemp)
|
|
35
|
+
trap 'rm -f "$RESP"' EXIT
|
|
36
|
+
|
|
37
|
+
# 用 jq 拼 JSON 体,避免 PROMPT 里的引号/换行/中文把 shell 字符串撑破
|
|
38
|
+
BODY=$(jq -n \
|
|
39
|
+
--arg m "$MODEL" \
|
|
40
|
+
--arg p "$PROMPT" \
|
|
41
|
+
--arg s "$SIZE" \
|
|
42
|
+
'{model:$m, prompt:$p, size:$s}')
|
|
43
|
+
|
|
44
|
+
curl -fsS --max-time 180 --retry 2 --retry-delay 5 \
|
|
45
|
+
"$BASE_URL/images/generations" \
|
|
46
|
+
-H "Authorization: Bearer $GPT_IMAGE_API_KEY" \
|
|
47
|
+
-H "Content-Type: application/json" \
|
|
48
|
+
-d "$BODY" > "$RESP"
|
|
49
|
+
|
|
50
|
+
# API 出错时早退,避免把 error JSON 当成 base64 写成损坏 PNG
|
|
51
|
+
if jq -e '.error' "$RESP" >/dev/null 2>&1; then
|
|
52
|
+
echo "API error:" >&2
|
|
53
|
+
jq '.error' "$RESP" >&2
|
|
54
|
+
exit 1
|
|
55
|
+
fi
|
|
56
|
+
|
|
57
|
+
# `// empty` 让缺失字段输出空串而非 "null",配合下面的 -s 检查避免写出 3 字节假 PNG
|
|
58
|
+
jq -er '.data[0].b64_json // empty' "$RESP" | base64 --decode > "$OUT"
|
|
59
|
+
[ -s "$OUT" ] || { echo "empty or malformed output: $OUT" >&2; head -c 300 "$RESP" >&2; exit 1; }
|
|
60
|
+
|
|
61
|
+
# 落地提示词副本,方便迭代时基于上一次微调
|
|
62
|
+
printf '%s\n' "$PROMPT" > "${OUT%.png}.prompt.txt"
|
|
63
|
+
|
|
64
|
+
file "$OUT"
|
|
65
|
+
ls -lt "$BOOK_DIR/封面/"
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## 图生图(有参考图)
|
|
69
|
+
|
|
70
|
+
下面的 `/v1/images/edits` 命令通过 `multipart/form-data` 上传本地图片,不加 `Content-Type: application/json`。文本字段用 `--form-string`,图片字段用 `-F image=@path`。
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
set -euo pipefail
|
|
74
|
+
: "${GPT_IMAGE_API_KEY:?请设置 export GPT_IMAGE_API_KEY=你的key}"
|
|
75
|
+
: "${PROMPT:?请先 export PROMPT=构建提示词步骤拼好的完整提示词}"
|
|
76
|
+
BASE_URL="${GPT_IMAGE_BASE_URL:-https://api.openai.com/v1}"
|
|
77
|
+
MODEL="${GPT_IMAGE_MODEL:-gpt-image-2}"
|
|
78
|
+
SIZE="${GPT_IMAGE_SIZE:-1024x1536}"
|
|
79
|
+
BOOK_DIR="${BOOK_DIR:?请先 export BOOK_DIR=书目录或 ./covers/<书名>}"
|
|
80
|
+
REF_IMAGE="${REF_IMAGE:?请先 export REF_IMAGE=本地路径或 URL}"
|
|
81
|
+
|
|
82
|
+
mkdir -p "$BOOK_DIR/封面"
|
|
83
|
+
|
|
84
|
+
# 自增版本号
|
|
85
|
+
i=1
|
|
86
|
+
while [ -f "$BOOK_DIR/封面/封面_v${i}.png" ]; do i=$((i+1)); done
|
|
87
|
+
OUT="$BOOK_DIR/封面/封面_v${i}.png"
|
|
88
|
+
RESP=$(mktemp)
|
|
89
|
+
REF_TMP=""
|
|
90
|
+
trap '[ -n "$REF_TMP" ] && rm -f "$REF_TMP"; rm -f "$RESP"' EXIT
|
|
91
|
+
|
|
92
|
+
# URL 先下载到临时文件,本地路径直接用。用裸 mktemp 以保证 macOS/Linux 行为一致。
|
|
93
|
+
case "$REF_IMAGE" in
|
|
94
|
+
http://*|https://*)
|
|
95
|
+
REF_TMP=$(mktemp)
|
|
96
|
+
curl -fsSL --max-time 60 -o "$REF_TMP" "$REF_IMAGE"
|
|
97
|
+
REF_LOCAL="$REF_TMP"
|
|
98
|
+
;;
|
|
99
|
+
*)
|
|
100
|
+
[ -f "$REF_IMAGE" ] || { echo "参考图不存在: $REF_IMAGE" >&2; exit 1; }
|
|
101
|
+
REF_LOCAL="$REF_IMAGE"
|
|
102
|
+
;;
|
|
103
|
+
esac
|
|
104
|
+
|
|
105
|
+
curl -fsS --max-time 240 --retry 2 --retry-delay 5 \
|
|
106
|
+
"$BASE_URL/images/edits" \
|
|
107
|
+
-H "Authorization: Bearer $GPT_IMAGE_API_KEY" \
|
|
108
|
+
--form-string "model=$MODEL" \
|
|
109
|
+
--form-string "size=$SIZE" \
|
|
110
|
+
--form-string "prompt=$PROMPT" \
|
|
111
|
+
-F "image=@$REF_LOCAL" > "$RESP"
|
|
112
|
+
|
|
113
|
+
if jq -e '.error' "$RESP" >/dev/null 2>&1; then
|
|
114
|
+
echo "API error:" >&2
|
|
115
|
+
jq '.error' "$RESP" >&2
|
|
116
|
+
exit 1
|
|
117
|
+
fi
|
|
118
|
+
|
|
119
|
+
# `// empty` 让缺失字段输出空串而非 "null",配合 -s 检查避免写出 3 字节假 PNG
|
|
120
|
+
jq -er '.data[0].b64_json // empty' "$RESP" | base64 --decode > "$OUT"
|
|
121
|
+
[ -s "$OUT" ] || { echo "empty or malformed output: $OUT" >&2; head -c 300 "$RESP" >&2; exit 1; }
|
|
122
|
+
|
|
123
|
+
printf '%s\n' "$PROMPT" > "${OUT%.png}.prompt.txt"
|
|
124
|
+
printf '%s\n' "$REF_IMAGE" > "${OUT%.png}.ref.txt"
|
|
125
|
+
|
|
126
|
+
file "$OUT"
|
|
127
|
+
ls -lt "$BOOK_DIR/封面/"
|
|
128
|
+
```
|
|
@@ -1,99 +1,56 @@
|
|
|
1
1
|
# 小说封面视觉风格库
|
|
2
|
-
|
|
2
|
+
按平台和题材选关键词,填入 Step 3 的提示词模板。设计指令用英文,书名和笔名保留作者原文。
|
|
3
3
|
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
## 平台风格
|
|
7
7
|
|
|
8
|
-
|
|
8
|
+
| 平台 | 画面特点 | 关键词串 |
|
|
9
|
+
|:-----|:---------|:---------|
|
|
10
|
+
| 番茄 | 高饱和、高对比,人物占画面 60% 以上且面部清晰;大头贴构图配华丽背景,书名用金、红或白色粗体加光效 | `vibrant saturated colors, eye-catching bold design, character portrait dominating frame, mass-market novel cover style, high contrast` |
|
|
11
|
+
| 起点 | 细腻、偏写实的插画,色彩沉稳;人物与场景均衡,层次丰富有电影感,书名偏传统毛笔楷体 | `polished refined illustration, detailed cinematic composition, epic atmospheric, mature sophisticated style, premium quality` |
|
|
12
|
+
| 晋江 | 粉、紫、浅蓝、暖白等柔和色调,人物五官精致;画面居中对称,用花瓣、光斑、丝绸和珠宝装饰,书名用优雅行书或纤细圆体 | `dreamy ethereal aesthetic, soft pastel tones, elegant romantic, delicate beauty, flower petals and bokeh` |
|
|
13
|
+
| 知乎盐言 | 灰、蓝、白或暗色的极简画面,大量留白;用场景、物品或抽象意象营造氛围,少刻画人物,书名用现代简约无衬线体,接近独立电影海报 | `minimalist literary style, clean composition with negative space, subtle moody atmosphere, independent film poster aesthetic` |
|
|
14
|
+
| 七猫 | 高饱和、强冲击,人物服饰华丽;用火焰、雷电和灵力特效增强海报感,书名大号发光,信息密度高 | `striking high-impact design, vivid dramatic colors, spectacular visual effects, attention-grabbing poster style` |
|
|
15
|
+
| 刺猬猫 | 明亮、线稿清晰的日系二次元插画,搭配 Q 版元素和卡通手绘书名,轻松活泼 | `anime illustration style, vibrant colorful, detailed character art, Japanese light novel aesthetic` |
|
|
9
16
|
|
|
10
|
-
|
|
11
|
-
关键词:`vibrant saturated colors, eye-catching bold design, character portrait dominating frame, mass-market novel cover style, high contrast`
|
|
12
|
-
|
|
13
|
-
### 起点
|
|
14
|
-
|
|
15
|
-
视觉:细腻、偏写实的插画,色彩沉稳;人物与场景均衡,构图层次丰富,有电影感,书名偏传统毛笔楷体。
|
|
16
|
-
关键词:`polished refined illustration, detailed cinematic composition, epic atmospheric, mature sophisticated style, premium quality`
|
|
17
|
-
|
|
18
|
-
### 晋江
|
|
19
|
-
|
|
20
|
-
视觉:粉、紫、浅蓝、暖白等柔和色调,人物五官精致、大眼唯美;画面居中对称,以花瓣、光斑、丝绸和珠宝装饰,书名用优雅行书或纤细圆体。
|
|
21
|
-
关键词:`dreamy ethereal aesthetic, soft pastel tones, elegant romantic, delicate beauty, flower petals and bokeh`
|
|
22
|
-
|
|
23
|
-
### 知乎盐言
|
|
24
|
-
|
|
25
|
-
视觉:灰、蓝、白或暗色的极简画面,大量留白;用场景、物品或抽象意象营造氛围,少刻画人物细节,书名用现代简约无衬线字体,接近独立电影海报。
|
|
26
|
-
关键词:`minimalist literary style, clean composition with negative space, subtle moody atmosphere, independent film poster aesthetic`
|
|
27
|
-
|
|
28
|
-
### 七猫
|
|
29
|
-
|
|
30
|
-
视觉:高饱和、强冲击,人物服饰华丽、装备丰富;用火焰、雷电和灵力特效增强海报感,书名大号发光,画面信息密度高。
|
|
31
|
-
关键词:`striking high-impact design, vivid dramatic colors, spectacular visual effects, attention-grabbing poster style`
|
|
32
|
-
|
|
33
|
-
### 刺猬猫
|
|
34
|
-
|
|
35
|
-
视觉:明亮、线稿清晰的日系二次元插画,搭配 Q 版元素和卡通手绘书名,整体轻松活泼。
|
|
36
|
-
关键词:`anime illustration style, vibrant colorful, detailed character art, Japanese light novel aesthetic`
|
|
17
|
+
表里没有的平台不加平台关键词串。
|
|
37
18
|
|
|
38
19
|
---
|
|
39
20
|
|
|
40
21
|
## 题材推断规则
|
|
41
22
|
|
|
42
|
-
|
|
43
|
-
|:-------|:-----|:---------|
|
|
44
|
-
| 仙/道/剑/灵/修/宗/天/帝/尊/神 | 玄幻/仙侠 | xianxia fantasy |
|
|
45
|
-
| 都市/总裁/校园/重生/系统/学霸/医生/兵王 | 都市 | urban modern |
|
|
46
|
-
| 妃/皇/侯/宫/嫡/庶/后/朝/凤/鸾 | 古言 | ancient romance |
|
|
47
|
-
| 总裁/契约/替嫁/甜宠/娇妻/萌宝/闪婚 | 现言 | modern romance |
|
|
48
|
-
| 诡/案/侦探/悬疑/推理/密室/连环 | 悬疑 | mystery thriller |
|
|
49
|
-
| 星际/末世/机甲/赛博/废土/进化 | 科幻 | sci-fi |
|
|
50
|
-
| 龙/骑/魔法/异世界/精灵/领主 | 西幻 | western fantasy |
|
|
51
|
-
| 三国/大明/大唐/战场/将军/谋士 | 历史 | historical epic |
|
|
52
|
-
| 鬼/僵尸/阴阳/风水/盗墓/咒 | 灵异 | supernatural horror |
|
|
53
|
-
| 萌/喵/团宠/娇/转生 | 轻小说 | light novel |
|
|
54
|
-
|
|
55
|
-
---
|
|
56
|
-
|
|
57
|
-
## 提示词构建公式
|
|
58
|
-
|
|
59
|
-
```
|
|
60
|
-
[平台风格] + [文字层:书名+作者名+字体设计] + [题材风格标签] + [人物描述]
|
|
61
|
-
+ [背景元素] + [色彩指令] + [光效指令] + [通用修饰]
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
通用修饰:`professional book cover design, high detail digital painting, portrait orientation 2:3 ratio, no watermark`
|
|
23
|
+
只在没有题材类型、或题材类型对不上风格库时用。按词匹配书名(必要时简介),不按单字。
|
|
65
24
|
|
|
66
|
-
|
|
25
|
+
| 关键词 | 题材 |
|
|
26
|
+
|:-------|:-----|
|
|
27
|
+
| 修仙、修真、仙尊、仙帝、仙门、宗门、剑仙、剑尊、剑道、帝尊、神帝、灵根、飞升、渡劫、长生、玄幻 | 玄幻 / 仙侠 |
|
|
28
|
+
| 都市、校园、兵王、神医、战神、赘婿、神豪、首富、学霸 | 都市 |
|
|
29
|
+
| 王妃、皇后、贵妃、太子妃、嫡女、庶女、侯府、王府、宫斗、宅斗、公主、娘娘 | 古言 / 宫斗 |
|
|
30
|
+
| 总裁、霸总、豪门、契约、替嫁、甜宠、娇妻、萌宝、闪婚、离婚、前夫、追妻 | 现言 / 甜宠 |
|
|
31
|
+
| 命案、凶案、诡案、刑侦、法医、侦探、悬疑、推理、密室、连环 | 悬疑 / 推理 |
|
|
32
|
+
| 星际、末世、末日、丧尸、天灾、机甲、赛博、废土、进化 | 科幻 / 末世 |
|
|
33
|
+
| 魔法、魔王、巨龙、龙族、骑士、精灵、领主、异世界 | 西幻 |
|
|
34
|
+
| 三国、大明、大唐、大宋、大秦、战场、将军、谋士 | 历史 / 军事 |
|
|
35
|
+
| 鬼怪、捉鬼、诡异、僵尸、阴阳、风水、盗墓、诅咒、冥婚 | 灵异 / 恐怖 |
|
|
36
|
+
| 二次元、动漫、猫娘、萌娘、转生 | 轻小说 / 二次元 |
|
|
67
37
|
|
|
68
|
-
|
|
38
|
+
命中多个题材时按这个顺序取第一个:玄幻 / 仙侠 > 西幻 > 古言 / 宫斗 > 现言 / 甜宠 > 都市 > 悬疑 / 推理 > 科幻 / 末世 > 历史 / 军事 > 灵异 / 恐怖 > 轻小说 / 二次元。都没命中先用「都市」,给作者看方案时说明。
|
|
69
39
|
|
|
70
40
|
---
|
|
71
41
|
|
|
72
|
-
##
|
|
42
|
+
## 构图变体
|
|
73
43
|
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### 人物描述要具体
|
|
83
|
-
|
|
84
|
-
写清人物的服饰、发型、姿态和道具,避免只写“a man”:
|
|
85
|
-
```
|
|
86
|
-
a young man in flowing white silk robes with gold embroidery,
|
|
87
|
-
long black hair tied in a topknot with a jade crown,
|
|
88
|
-
piercing dark eyes, confident expression,
|
|
89
|
-
holding a glowing blue spirit sword
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### 背景三层
|
|
44
|
+
| 构图 | 关键词 | 适合 |
|
|
45
|
+
|:-----|:-------|:-----|
|
|
46
|
+
| 人物特写 + 场景 | `close-up portrait, face filling upper half` | 全题材通用,强调角色 |
|
|
47
|
+
| 全身像 + 动态姿势 | `full body shot, dynamic pose` | 玄幻、都市、西幻,展示服装动作 |
|
|
48
|
+
| 纯场景 / 氛围 | `no human figure, landscape composition` | 悬疑、科幻、历史;知乎盐言 |
|
|
49
|
+
| 双人 | `two figures facing each other` | 现言、古言等言情类 |
|
|
93
50
|
|
|
94
|
-
|
|
51
|
+
---
|
|
95
52
|
|
|
96
|
-
|
|
53
|
+
## 光效
|
|
97
54
|
|
|
98
55
|
| 光效 | 关键词 | 感觉 |
|
|
99
56
|
|------|--------|------|
|
|
@@ -102,23 +59,12 @@ holding a glowing blue spirit sword
|
|
|
102
59
|
| 温暖 | `warm sunset glow backlighting the figure` | 温暖感 |
|
|
103
60
|
| 科幻 | `neon blue and purple lights from below` | 科幻感 |
|
|
104
61
|
|
|
105
|
-
### 避免真人照片感
|
|
106
|
-
|
|
107
|
-
加 `digital painting style`,网文封面需要插画感。
|
|
108
|
-
|
|
109
|
-
### 构图变体
|
|
110
|
-
|
|
111
|
-
| 类型 | 关键词 | 适用 |
|
|
112
|
-
|:-----|:-------|:-----|
|
|
113
|
-
| 人物特写 | `close-up portrait, face filling upper half` | 强调角色 |
|
|
114
|
-
| 全身像 | `full body shot, dynamic pose` | 展示服装动作 |
|
|
115
|
-
| 纯场景 | `no human figure, landscape composition` | 悬疑/科幻 |
|
|
116
|
-
| 双人 | `two figures facing each other` | 言情类 |
|
|
117
|
-
|
|
118
62
|
---
|
|
119
63
|
|
|
120
64
|
## 风格库
|
|
121
65
|
|
|
66
|
+
每节的书名字体、笔名字体直接填进模板的文字层。
|
|
67
|
+
|
|
122
68
|
### 玄幻 / 仙侠
|
|
123
69
|
|
|
124
70
|
**标签**:`xianxia Chinese fantasy art style, ethereal atmosphere`
|
|
@@ -126,17 +72,19 @@ holding a glowing blue spirit sword
|
|
|
126
72
|
**人物**:男-长发束冠/散发,持剑/法器,衣袂飘飞 | 女-仙裙飘逸,灵兽伴随,莲花装饰
|
|
127
73
|
**背景**:云海、仙山、古建筑楼阁、灵力光效
|
|
128
74
|
**光效**:`divine golden light rays, mystical mist, spiritual energy glow`
|
|
129
|
-
|
|
75
|
+
**书名字体**:`bold golden brush calligraphy with metallic glow and sharp strokes`
|
|
76
|
+
**笔名字体**:`small refined white serif text with faint golden glow, flanked by delicate cloud-scroll ornaments on both sides, resting on a thin horizontal gold line`
|
|
77
|
+
**示例**(起点,2:3):
|
|
130
78
|
```
|
|
131
|
-
Chinese web novel cover,
|
|
79
|
+
Chinese web novel cover design, polished refined illustration, detailed cinematic composition, epic atmospheric, mature sophisticated style, premium quality.
|
|
132
80
|
Title text '剑道独尊' at top center in bold golden brush calligraphy with metallic glow and sharp strokes.
|
|
133
81
|
Author name '青椒炒肉' at bottom center in small refined white serif text with faint golden glow, flanked by delicate cloud-scroll ornaments, resting on a thin horizontal gold line.
|
|
82
|
+
xianxia Chinese fantasy art style, ethereal atmosphere. full body shot, dynamic pose.
|
|
134
83
|
A young swordsman in flowing white robes standing on a mountain peak,
|
|
135
84
|
holding a glowing blue spirit sword, long black hair flowing in the wind.
|
|
136
|
-
Ethereal clouds swirling below,
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
Professional book cover, high detail digital painting, portrait 2:3 ratio, no watermark
|
|
85
|
+
Ethereal clouds swirling below, dark misty mountain peaks in background.
|
|
86
|
+
Color palette: deep blue, gold, white, black. Dramatic golden divine light from above, spiritual energy particles.
|
|
87
|
+
Professional book cover, high detail digital painting, portrait 2:3 ratio, keep title and author name inside the central safe area away from edges (inner ~85%), no watermark
|
|
140
88
|
```
|
|
141
89
|
|
|
142
90
|
### 都市
|
|
@@ -146,6 +94,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
146
94
|
**人物**:男-西装/休闲装干练轮廓分明 | 女-时尚穿搭自信表情
|
|
147
95
|
**背景**:城市天际线、高端办公室、校园、霓虹街道
|
|
148
96
|
**光效**:`sharp city lights, sunset glow reflecting on glass buildings, neon rim light`
|
|
97
|
+
**书名字体**:`modern bold sans-serif with metallic silver finish`
|
|
98
|
+
**笔名字体**:`small clean white modern text with subtle drop shadow, positioned above a thin silver horizontal divider line`
|
|
149
99
|
|
|
150
100
|
### 古言 / 宫斗
|
|
151
101
|
|
|
@@ -154,6 +104,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
154
104
|
**人物**:女-华服盛装凤冠步摇精致妆容 | 男-帝王/将军威严或温润
|
|
155
105
|
**背景**:宫殿、庭院、红墙、珠帘、屏风、灯笼
|
|
156
106
|
**光效**:`warm lantern light, golden candle glow, silk fabric shimmering`
|
|
107
|
+
**书名字体**:`elegant golden traditional Kai script with ornate decoration`
|
|
108
|
+
**笔名字体**:`small elegant dark red traditional text inside a thin golden rectangular border frame with corner decorations`
|
|
157
109
|
|
|
158
110
|
### 现言 / 甜宠
|
|
159
111
|
|
|
@@ -162,6 +114,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
162
114
|
**人物**:双人构图为主,甜蜜互动(拥抱/对视/牵手)
|
|
163
115
|
**背景**:咖啡厅、花园、温馨室内、夕阳海滩
|
|
164
116
|
**光效**:`soft warm backlighting, dreamy bokeh, gentle sunset glow`
|
|
117
|
+
**书名字体**:`soft rounded handwritten style in white with pink glow`
|
|
118
|
+
**笔名字体**:`small soft pink-white handwritten text with a tiny heart motif on the left side, light sparkle effect`
|
|
165
119
|
|
|
166
120
|
### 悬疑 / 推理
|
|
167
121
|
|
|
@@ -170,6 +124,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
170
124
|
**人物**:剪影/半遮面/背影,冷静或紧张
|
|
171
125
|
**背景**:雨夜街道、老旧建筑、密室、暗巷
|
|
172
126
|
**光效**:`dramatic chiaroscuro, single spotlight, rain-slicked reflections`
|
|
127
|
+
**书名字体**:`distorted bold cracked letters in blood red`
|
|
128
|
+
**笔名字体**:`small pale grey text with slight blur effect, almost hidden in the shadows, a thin cracked line underneath`
|
|
173
129
|
|
|
174
130
|
### 科幻 / 末世
|
|
175
131
|
|
|
@@ -178,6 +134,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
178
134
|
**人物**:机甲装/战术服/实验室服,科幻武器/全息界面
|
|
179
135
|
**背景**:太空、废墟城市、实验室、空间站
|
|
180
136
|
**光效**:`holographic blue glow, neon rim lighting, energy arcs`
|
|
137
|
+
**书名字体**:`neon glowing futuristic font in electric blue`
|
|
138
|
+
**笔名字体**:`small crisp white monospace text with subtle cyan scanline overlay, flanked by small geometric brackets`
|
|
181
139
|
|
|
182
140
|
### 西幻
|
|
183
141
|
|
|
@@ -186,6 +144,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
186
144
|
**人物**:骑士铠甲/法师长袍/游侠皮甲,伴随龙/狮鹫
|
|
187
145
|
**背景**:城堡、龙巢、魔法阵、广阔原野
|
|
188
146
|
**光效**:`magic spell glow, dramatic stormy sky, firelight from torches`
|
|
147
|
+
**书名字体**:`metallic embossed fantasy lettering with glow effect`
|
|
148
|
+
**笔名字体**:`small bronze medieval script text with aged parchment texture, enclosed in a small decorative shield or banner shape`
|
|
189
149
|
|
|
190
150
|
### 历史 / 军事
|
|
191
151
|
|
|
@@ -194,6 +154,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
194
154
|
**人物**:将军铠甲/谋士长袍,持兵器
|
|
195
155
|
**背景**:战场、城墙、军营、烽火
|
|
196
156
|
**光效**:`dramatic battlefield firelight, smoke-filled sky, sunset over war`
|
|
157
|
+
**书名字体**:`heavy stone-carved seal script in deep red`
|
|
158
|
+
**笔名字体**:`small dignified white Song typeface text above a double horizontal line in dark red`
|
|
197
159
|
|
|
198
160
|
### 灵异 / 恐怖
|
|
199
161
|
|
|
@@ -202,6 +164,8 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
202
164
|
**人物**:道士装扮/普通人陷入诡异,鬼影/纸人/僵尸
|
|
203
165
|
**背景**:墓地、古庙、暗巷、棺材
|
|
204
166
|
**光效**:`eerie green glow, flickering candlelight, cold ghostly luminescence`
|
|
167
|
+
**书名字体**:`eerie dripping handwritten font in sickly green`
|
|
168
|
+
**笔名字体**:`small faded grey-green text slightly tilted, with a thin dripping ink line above`
|
|
205
169
|
|
|
206
170
|
### 轻小说 / 二次元
|
|
207
171
|
|
|
@@ -210,3 +174,5 @@ Professional book cover, high detail digital painting, portrait 2:3 ratio, no wa
|
|
|
210
174
|
**人物**:Q版/萌系角色,猫耳/翅膀等萌属性
|
|
211
175
|
**背景**:奇幻世界、校园、异世界、星空
|
|
212
176
|
**光效**:`sparkly star effects, magical particle effects, soft luminous glow`
|
|
177
|
+
**书名字体**:`colorful cartoon outlined bubbly font`
|
|
178
|
+
**笔名字体**:`small playful rounded white text with pastel color outline, tiny star decorations on both sides`
|
|
@@ -12,17 +12,14 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
12
12
|
|
|
13
13
|
---
|
|
14
14
|
|
|
15
|
-
> 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 registry / `invoke_subagent`、返回未知 agent,或检测到 `.zcode/`(ZCode 3.3.4 不执行项目 custom agents)时降级 solo/direct:报告里一句白话告诉作者「这次由我直接改」,`Fallback: project custom agents unavailable -> solo` 原文只写进报告最后一行「技术备注:」。
|
|
16
|
-
>
|
|
17
|
-
> Spawn 版本提示(不阻断 spawn):先读取项目根 `.story-deployed` 的 `agents_version`。与本版 `agents_version: 35` 不一致时(标记缺失、字段缺失/非整数、小于或大于 35)**照常按文件存在性检查并 spawn**,同时用一句白话提示作者「写作助手是旧版,运行 /story-setup 后新开对话」,`Notice: agents bundle 版本不匹配(项目 {N},本版 35)` 原文写进技术备注行;大于 35 时额外提示先更新 oh-story-claudecode,不要用本地旧版 setup 降级覆盖。只有 agent 文件缺失、或运行时不暴露 custom agent 时才降级 solo/direct,`Fallback: ... -> solo` 同样只进技术备注行。
|
|
18
|
-
|
|
19
15
|
## 执行边界
|
|
20
16
|
|
|
21
|
-
-
|
|
17
|
+
- 未限定范围的独立去味,完整检查表达、用笔、故事三层。三层是检查对象,不按词频分轻中重;每层可以没有问题。用户明确只查词句、某段或某类问题时,尊重范围。
|
|
22
18
|
- 普通去味可修表达、恢复已有承接、调整已定内容的详略;允许删除整段无功能内容,保护伏笔、因果、人物选择、情绪体验与揭露顺序。需要改变事件、动机、结果或新增成立条件时,按故事层区分设计提案和已授权重写。不能用新微动作、粗话、证据或冲突制造“真人感”。
|
|
23
19
|
- 文风裁决只影响表达,不改变事实与信息边界。准确直写、心理活动、带立场的叙述和有功能的停顿均可保留,不机械套 Show/Tell、句长或删减率。
|
|
24
|
-
-
|
|
25
|
-
-
|
|
20
|
+
- 用户只要检测或标注时,只出诊断,不修改正文。作者只说「去AI味」「这篇太AI了」时按改稿处理:表达与用笔直接改,故事层缺口给出方案,作者授权后再改。作者报告用白话、原文位置与阅读后果,不把检测类别名、脚本字段当评价。
|
|
21
|
+
- 长篇项目(书目录下有 `正文/` 与 `追踪/`)需要改变事件、关系、人物所知或结果时,即使作者已授权,也带着诊断和授权转 `/story-long-write`「修改第X章」执行,由那边备份原文并同步追踪;本流程只改表达、用笔和已有依据的承接。
|
|
22
|
+
- 不推断作者身份或承诺检测分数。用户提供外部检测报告或 `/story-review` 的审稿结论时,只提取能对应到正文的具体问题,作为本次范围。
|
|
26
23
|
|
|
27
24
|
### 作者偏好边界
|
|
28
25
|
|
|
@@ -32,7 +29,7 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
32
29
|
|
|
33
30
|
### Phase 1:读原文与三层扫描
|
|
34
31
|
|
|
35
|
-
从正文路径确定书目录和篇幅:单个 `正文.md` 一般是短篇,`正文/`
|
|
32
|
+
从正文路径确定书目录和篇幅:单个 `正文.md` 一般是短篇,`正文/` 下逐章文件一般是长篇;优先采用作者与项目的明确说明。按开头的文风裁决读本书要求,通读本次正文,按需查相关前文和已定设计,不整读无关全书。资料缺失时继续有依据的部分,标明未知。本次涉及多章时,逐章完成 Phase 1–4 再进下一章,交给写手时每章派一次。
|
|
36
33
|
|
|
37
34
|
默认完整读取以下三份方法后扫描;明确限定范围时按 [references/deslop-gates.md](references/deslop-gates.md) 选择需要的方法:
|
|
38
35
|
|
|
@@ -48,13 +45,15 @@ metadata: {"openclaw":{"source":"https://github.com/zenstory-ai/oh-story-claudec
|
|
|
48
45
|
node scripts/check-ai-patterns.js --check --fail-on=blocking <正文文件...>
|
|
49
46
|
```
|
|
50
47
|
|
|
51
|
-
|
|
48
|
+
脚本命中是定位线索,零命中不代替三层扫描。每类提示归哪层、判断什么,见 expression.md 末节的索引;blocking 要改到净或按白名单保留(见 Phase 4),advisory 回到语境判断,不为归零机械改稿。完整词条仅在需要定位某种表达时查 [references/banned-words.md](references/banned-words.md)。
|
|
49
|
+
|
|
50
|
+
文件前 6 行内、章节标题下有 `<!-- 去味:跳过 -->` 而作者这次要求去味时,照常处理:blocking 清零后删掉这一行;仍有剩余阻塞时保留,并在报告里告诉作者这章仍按跳过处理。
|
|
52
51
|
|
|
53
52
|
### Phase 2:定位问题与确定改法
|
|
54
53
|
|
|
55
54
|
每个实际问题记录原文位置、造成的阅读后果、所缺依据和最小改法。区分三种处置:可以直接修复;需要设计但尚未授权;资料不足不能定论。无需凑齐问题数量,也不用表层命中数决定后两层是否检查。
|
|
56
55
|
|
|
57
|
-
|
|
56
|
+
先判断故事的成立条件,再安排场景用笔,最后处理词句。若剧情缺口暂不能改,继续完成独立可修部分,在报告中保留缺口;不要添加表情或总结句假装因果已经修好。作者已授权的剧情重写按执行边界直接执行或转交,不重复询问同一授权。
|
|
58
57
|
|
|
59
58
|
仅检测时到此交付,使用下表,保持正文不变;改稿时表中内容作为执行依据,交付统一走 Phase 5。
|
|
60
59
|
|
|
@@ -74,33 +73,46 @@ node scripts/check-ai-patterns.js --check --fail-on=blocking <正文文件...>
|
|
|
74
73
|
|
|
75
74
|
### Phase 3:按授权改稿
|
|
76
75
|
|
|
76
|
+
> 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 registry / `invoke_subagent`、返回未知 agent,或检测到 `.zcode/`(ZCode 3.3.4 不执行项目 custom agents)时降级 solo/direct:报告里一句白话告诉作者「这次由我直接改」,`Fallback: project custom agents unavailable -> solo` 原文只写进报告最后一行「技术备注:」。
|
|
77
|
+
>
|
|
78
|
+
> 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: ... -> solo` 同样只进技术备注行。
|
|
79
|
+
|
|
80
|
+
改动文件前,先把原文复制到书内 `.story/work/去味原稿/{YYYYMMDD}_{原文件名}`,Phase 4 对照它回读;作者要撤回时用它恢复。
|
|
81
|
+
|
|
77
82
|
1. 已在 narrative-writer 内,按本次范围直接执行,不嵌套 spawn。
|
|
78
|
-
2. 主会话找到当前运行时的 narrative-writer
|
|
83
|
+
2. 主会话找到当前运行时的 narrative-writer,按上方兼容说明调用;只在此时读 [references/agent-calls.md](references/agent-calls.md),传递实际诊断、原文依据、文风和授权范围。
|
|
79
84
|
3. 文件缺失、运行时未暴露 custom agent 或 spawn 失败时,由主会话直接改。
|
|
80
85
|
|
|
81
86
|
实际执行者按三份方法落改。用笔调整同时处理过详和过略:压缩无功能过程,演出已有的交锋和判断;缺少成立依据就按故事层处理,不凭空补条件。涉及本次要求的视角切换,也核对每项感知/认知的来源,不添加观察经历来保全信息。
|
|
82
87
|
|
|
83
88
|
### Phase 4:回读与文件收尾
|
|
84
89
|
|
|
85
|
-
|
|
90
|
+
对照改前原稿、已定设计和授权,回读完整场景:事实、人物选择、因果、情绪承接、空间方向和悬念是否保住,详写重心是否恢复,有没有引入新套式或新的剧情依据。三层各自复核;信息齐全却仍逐项播报、对白仍像提纲时,表达检查不算完成,脚本不能替代这一遍。
|
|
86
91
|
|
|
87
|
-
|
|
92
|
+
文件改稿落盘后先复扫:
|
|
88
93
|
|
|
89
94
|
```bash
|
|
90
95
|
node scripts/check-ai-patterns.js --check --fail-on=blocking <正文文件...>
|
|
91
|
-
node scripts/check-degeneration.js --check <正文文件...>
|
|
96
|
+
node scripts/check-degeneration.js --check --fail-on=blocking <正文文件...>
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
- 两个脚本只报告;退出 1 表示有 blocking,退出 2 是命令或文件错误。
|
|
100
|
+
- 句式 blocking:保留叙事功能自然改写;作者明确选择的原句按文风裁决文件登记白名单;两样都做不到就列为剩余阻塞。破折号按功能改写,不留给标点脚本机械替换。advisory 按文风和语境判断,功能性写法可以保留并说明。
|
|
101
|
+
- 退化 blocking(逐字复读、打转、截断、占位符或工程词泄漏)重新生成受损段,再核对已有事实;advisory 只作提示。
|
|
102
|
+
|
|
103
|
+
语义改完、复扫没有 blocking 后再整理标点。整份文件的完整去味默认整理;只改指定段落或问题时不跑,在范围内人工整理,范围外问题只作提示:
|
|
104
|
+
|
|
105
|
+
```bash
|
|
92
106
|
node scripts/normalize-punctuation.js <正文文件...>
|
|
93
107
|
```
|
|
94
108
|
|
|
95
|
-
-
|
|
96
|
-
- 退化脚本默认任意 finding 即退出 1,要读每条 severity;blocking 的逐字复读、打转、截断、占位符或工程词泄漏需重新生成受损段,再核对已有事实;advisory 只作提示。
|
|
97
|
-
- 标点脚本保留书级白名单获准停顿,清除其余省略号、破折号、双连字符及独立分隔线;保留功能性问号和少量感叹号,默认不变引号。仅作者或项目明确要求时才加 `--quote-mode ascii` 或 `--quote-mode yan`。白名单登记按文风裁决文件执行,不因脚本报警自行放行。
|
|
109
|
+
标点脚本把白名单以外的省略号、破折号、双连字符换成逗号、句号、冒号或删去,并删除独立分隔线;不动问号和感叹号,默认不改引号。仅作者或项目明确要求时才加 `--quote-mode ascii` 或 `--quote-mode yan`。白名单登记按文风裁决文件执行,不因脚本报警自行放行。
|
|
98
110
|
|
|
99
111
|
完成一次改稿与复扫;仅为新发现的具体问题继续修补,全文扫描最多三轮。没有新问题即停,达到上限仍未解决的列入报告。脚本不可用时如实说明,继续可完成的语义检查,不宣称已通过。
|
|
100
112
|
|
|
101
113
|
### Phase 5:交付实际结果
|
|
102
114
|
|
|
103
|
-
|
|
115
|
+
报告分别说明三层实际处理情况,多章时逐章写一组;设计缺口尚存时不能称全文问题已清除。数量与字数只报告实际核对的数据,不以删除比例或“AI味等级下降”代替质量判断。只有用户要求另存报告时才新建报告文件。
|
|
104
116
|
|
|
105
117
|
<!-- author-report -->
|
|
106
118
|
```md
|
|
@@ -116,17 +128,10 @@ node scripts/normalize-punctuation.js <正文文件...>
|
|
|
116
128
|
{原文位置、缺什么、最小设计选项及会影响的后文;已经授权的修改应先执行,不在此重复求确认。没有则省略。}
|
|
117
129
|
|
|
118
130
|
{文件模式:给修改文件路径,只附 ≤200 字代表片段,不回全文;交互贴入且无文件路径的零散片段:给改后全文。}
|
|
131
|
+
{有原稿备份时:改前原文留在 {备份路径},想撤回告诉我。}
|
|
119
132
|
技术备注:{仅确有降级、版本提示或未运行的检查时保留;否则删此行}
|
|
120
133
|
```
|
|
121
134
|
|
|
122
|
-
## 按需参考
|
|
123
|
-
|
|
124
|
-
| 文件 | 何时读取 |
|
|
125
|
-
|---|---|
|
|
126
|
-
| [references/deslop-gates.md](references/deslop-gates.md) | 调用方指定定点问题或 Gate 时,确定范围与分工 |
|
|
127
|
-
| [references/banned-words.md](references/banned-words.md) | 表达层需要检索词句信号时 |
|
|
128
|
-
| [references/agent-calls.md](references/agent-calls.md) | 交给 narrative-writer 执行时 |
|
|
129
|
-
|
|
130
135
|
## 流程衔接
|
|
131
136
|
|
|
132
|
-
|
|
137
|
+
表达和用笔修改按本流程完成;长篇剧情级改动按执行边界转 `/story-long-write`;需要继续设计剧情时,携带具体缺口与已知约束进入 `/story-long-write` 或 `/story-short-write`,不把作者创作问题送去拆解他人作品。完整审稿可用 `/story-review`;这些跳转不替代本次已授权的改稿。
|
|
@@ -4,16 +4,16 @@
|
|
|
4
4
|
|
|
5
5
|
```text
|
|
6
6
|
项目目录:{绝对路径}
|
|
7
|
-
|
|
8
|
-
正文文件:{
|
|
7
|
+
任务描述:审查+去AI味
|
|
8
|
+
正文文件:{本次这一章或这一篇的绝对路径}
|
|
9
9
|
已读依据:{相关前文、设定与设计文件路径;缺失写明}
|
|
10
|
-
检查范围:{
|
|
10
|
+
检查范围:{默认完整三层诊断;或作者/调用方指定段落、问题、检测类别}
|
|
11
11
|
本次诊断:{表达、用笔、故事各自的实际问题及原文位置;可写无/资料不足}
|
|
12
12
|
执行授权:{允许直接修改的范围;已授权的剧情重写及必须保留的事实、结果、揭露时机}
|
|
13
13
|
文风路径:{本书文风全文路径;无则写无}
|
|
14
14
|
style_resolution:{生效要求及来源、覆盖的默认条款、事实与信息边界}
|
|
15
15
|
作者偏好:{调用方已有的偏好;无则写无}
|
|
16
16
|
篇幅与格式:{长篇/短篇、字数范围及本次格式要求}
|
|
17
|
-
|
|
17
|
+
检查分工:你只负责本次语义改稿,不按细纲补写情节;父流程负责最终文件扫描,按每条 severity 分流。
|
|
18
18
|
返回:直接改写获准正文;只回路径、实际修改与未解决项、必要的设计方案,不返回全文。
|
|
19
19
|
```
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# AI 味词句信号索引
|
|
2
2
|
|
|
3
|
-
>
|
|
4
|
-
|
|
5
|
-
<!-- 共享副本由 scripts/shared-references.json 管理,改动后同步并跑 scripts/check-shared-files.sh -->
|
|
3
|
+
> 这里列的是需回到上下文判断的信号,不是出现即错的禁词。表达服从 [style-resolution.md](style-resolution.md);不据词频判断作者身份,不以清零为目标。具体修法由调用方加载的方法文件承担。
|
|
6
4
|
|
|
7
5
|
## 句式与组织信号
|
|
8
6
|
|
|
@@ -36,11 +34,11 @@
|
|
|
36
34
|
|
|
37
35
|
“她感到”“意识到”“知道”“原来”可以准确表达感受、判断和发现;“仿佛/好像/似乎”可以限定视角置信度;“坚定/冰冷/深邃”可以是准确描述。“突然/瞬间/猛地”也可能承担真实突发或时间压缩。只凭这些词不能认定告知式心理、模板比喻或偷懒。
|
|
38
36
|
|
|
39
|
-
##
|
|
37
|
+
## 复合样本
|
|
40
38
|
|
|
41
|
-
|
|
39
|
+
例句展示组合风险,不是合格与不合格的标准答案;判断及改法仍按三层方法,不能照例句新增动作、改变人物态度或一律拆短。
|
|
42
40
|
|
|
43
|
-
| 观察对象 |
|
|
41
|
+
| 观察对象 | 例句或模板 | 回到语境核对 |
|
|
44
42
|
|---|---|---|
|
|
45
43
|
| 否定、状语与声线 | “他不是冷漠,而是绝望”“他笑了一下,带着一丝不易察觉的嘲讽”“他说,带着一丝无奈”“她声音不大,却带着不容置疑的力量”“好的,他说道” | 对比是否有纠错对象,状语与标签是否机械复现;普通“说”不用替换成动作 |
|
|
46
44
|
| 跨段铺排与预告 | “不是嚎啕大哭。/也不是扯着嗓子喊不舍。/只是一个人走远了……”“他不知道的是,更大的风暴即将来临”“命运终于露出獠牙;属于他的反击才刚刚开始”“早已布好的棋局” | 是否反复铺垫同一意思、空泛宣告或越过揭露边界;排除猜测与题材承诺另判 |
|
|
@@ -54,10 +52,10 @@
|
|
|
54
52
|
| 温和请求、完整解释与笼统反应 | “我觉得你这样做不太合适,能不能考虑一下我的感受?”“其实我这样做是有原因的,因为当时的情况非常复杂……”“所有人都震惊了,不敢相信自己的耳朵。”“她很害怕,不知道该怎么办,只能等着事情过去。” | 是否所有人都用同一套说法,关键交锋或选择是否被概括;不能把请求改辱骂、解释改挑衅,或凭空补锁门、录音与群体动作 |
|
|
55
53
|
| 比喻的功能边界 | “像一头被抛弃的野狗”“像一把刀”“脸色惨白得像这漫天的雪”“力道大得像是要把骨头捏碎” | 生活化、物品、环境与身体感知比喻均可能有效;看是否传递角色特有信息,不按类别全删 |
|
|
56
54
|
| 二修伪自然 | “手里拿着刀,他冲了上去”;连续“伸手拿起、取过、挑开、放下、转身”;强加口误、脏话、每句换行或对话占比 | 一次伴随动作前置不等于油腻;检查是否机械套用另一种句法、流程或格式 |
|
|
57
|
-
|
|
|
55
|
+
| 替换的误改风险 | “美丽动人的笑容”“白色的药片”“手里那截链子”“飞驰的汽车”“他因为害怕而……”;垂下眼、目光微沉、攥拳 | 修饰、指示与原因可能承担区分、承接或动作条件;不能仅为去词删成信息残缺,也不能把每个情绪词换成同一微动作 |
|
|
58
56
|
|
|
59
|
-
##
|
|
57
|
+
## 使用边界
|
|
60
58
|
|
|
61
|
-
|
|
59
|
+
脚本提示只供定位,不能替代语义结论。是否构成问题、如何修复及获准保留,由本次方法与文风裁决确定。
|
|
62
60
|
|
|
63
61
|
标点、句长、段落疏密和对话占比均不在此设置统一指标。不通过同义词轮换、错误用字、英文点省略号或机械补动作规避提示。
|
|
@@ -10,22 +10,22 @@
|
|
|
10
10
|
| 用笔 | [narrative-focus.md](narrative-focus.md) | 详略、关键过程、细节功能、情绪承接和收尾 |
|
|
11
11
|
| 故事 | [story-logic.md](story-logic.md) | 行为依据、因果、人物立场、结果与知情顺序 |
|
|
12
12
|
|
|
13
|
-
|
|
13
|
+
独立去味或完整去味审查未限定范围时,三层都诊断;每层可以没有问题。调用方已指定问题、段落或检测类别时,只检查该范围所需方法,不借此另起一次全篇重写。章末脚本只负责提示可检测的表达问题,不能凭零命中推断后两层正常。
|
|
14
14
|
|
|
15
|
-
##
|
|
15
|
+
## 按检测类别或问题限定范围
|
|
16
16
|
|
|
17
|
-
|
|
17
|
+
调用方传来检测类别时,按 expression.md 末节「脚本提示怎样进入语义判断」的索引找判断对象和要转交的层。传来的是问题名时按下表;范围只划定检查对象,不对应轻中重,也不决定作者是否允许改剧情。
|
|
18
18
|
|
|
19
|
-
|
|
|
19
|
+
| 问题 | 对应方法 |
|
|
20
20
|
|---|---|
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
28
|
-
|
|
21
|
+
| 套词、句式 | 表达层的词句与模板判断 |
|
|
22
|
+
| 情绪 | 用笔层的心理过程与删除测试;表达层的直写与套式反应 |
|
|
23
|
+
| 节奏 | 用笔层的详略、重复与关键过程;表达层的句段组织 |
|
|
24
|
+
| 对话 | 用笔层的交锋与人物诉求;表达层的声口 |
|
|
25
|
+
| 收尾 | 用笔层的信息、兑现与余韵;表达层的空泛总结 |
|
|
26
|
+
| 解释与安排感 | 表达层的解释与叙述者;用笔层的信息交付;故事层的因果与知识边界 |
|
|
27
|
+
|
|
28
|
+
类别不明时检查上表全部表达与用笔项;调用方要求完整三层诊断时,再按故事层完整检查。发现范围外的明显设计缺口可以单列提示,不擅自扩大改稿。
|
|
29
29
|
|
|
30
30
|
## 执行与复核
|
|
31
31
|
|