novelws 3.0.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +131 -0
- package/README.md +94 -66
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +35 -33
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/upgrade.d.ts.map +1 -1
- package/dist/commands/upgrade.js +63 -6
- package/dist/commands/upgrade.js.map +1 -1
- package/dist/core/config.d.ts +22 -15
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +28 -16
- package/dist/core/config.js.map +1 -1
- package/dist/core/errors.d.ts +16 -0
- package/dist/core/errors.d.ts.map +1 -1
- package/dist/core/errors.js +26 -0
- package/dist/core/errors.js.map +1 -1
- package/dist/utils/diagnostics.d.ts +64 -0
- package/dist/utils/diagnostics.d.ts.map +1 -0
- package/dist/utils/diagnostics.js +227 -0
- package/dist/utils/diagnostics.js.map +1 -0
- package/package.json +1 -1
- package/templates/commands/analyze.md +27 -110
- package/templates/commands/character.md +32 -180
- package/templates/commands/checklist.md +27 -27
- package/templates/commands/clarify.md +2 -2
- package/templates/commands/constitution.md +8 -8
- package/templates/commands/expert.md +3 -3
- package/templates/commands/facts.md +9 -9
- package/templates/commands/guide.md +129 -19
- package/templates/commands/help-me.md +221 -0
- package/templates/commands/plan.md +27 -26
- package/templates/commands/recap.md +16 -16
- package/templates/commands/relations.md +13 -13
- package/templates/commands/revise.md +16 -15
- package/templates/commands/search.md +11 -10
- package/templates/commands/specify.md +4 -4
- package/templates/commands/tasks.md +9 -9
- package/templates/commands/timeline.md +13 -13
- package/templates/commands/track-init.md +8 -8
- package/templates/commands/track.md +177 -552
- package/templates/commands/volume-summary.md +6 -6
- package/templates/commands/write.md +148 -38
- package/templates/dot-claude/CLAUDE.md +5 -5
- package/templates/{config → resources/config}/keyword-mappings.json +19 -19
- package/templates/resources/genres/horror.md +211 -0
- package/templates/resources/genres/military.md +209 -0
- package/templates/resources/genres/sports.md +216 -0
- package/templates/resources/genres/workplace.md +214 -0
- package/templates/resources/genres/youth.md +219 -0
- package/templates/{knowledge-base/requirements/anti-ai-v4.md → resources/requirements/anti-ai-v4-deprecated.md} +13 -1
- package/templates/resources/requirements/anti-ai-v5-balanced.md +203 -0
- package/templates/{scripts → resources/scripts}/README.md +8 -8
- package/templates/{scripts → resources/scripts}/bash/analyze-story.sh +1 -1
- package/templates/resources/scripts/bash/check-analyze-stage.sh +108 -0
- package/templates/{scripts → resources/scripts}/bash/check-consistency.sh +7 -7
- package/templates/{scripts → resources/scripts}/bash/check-facts.sh +1 -1
- package/templates/{scripts → resources/scripts}/bash/check-plot.sh +2 -2
- package/templates/{scripts → resources/scripts}/bash/check-timeline.sh +3 -3
- package/templates/{scripts → resources/scripts}/bash/check-world.sh +5 -5
- package/templates/{scripts → resources/scripts}/bash/check-writing-state.sh +26 -26
- package/templates/{scripts → resources/scripts}/bash/common.sh +3 -3
- package/templates/{scripts → resources/scripts}/bash/constitution.sh +1 -1
- package/templates/{scripts → resources/scripts}/bash/init-tracking.sh +13 -13
- package/templates/{scripts → resources/scripts}/bash/manage-relations.sh +10 -10
- package/templates/resources/scripts/bash/migrate-tracking.sh +183 -0
- package/templates/{scripts → resources/scripts}/bash/plan-story.sh +2 -2
- package/templates/{scripts → resources/scripts}/bash/specify-story.sh +1 -1
- package/templates/{scripts → resources/scripts}/bash/tasks-story.sh +2 -2
- package/templates/{scripts → resources/scripts}/bash/tests/bench-preload-cache.sh +3 -3
- package/templates/{scripts → resources/scripts}/bash/tests/test-cross-platform.sh +1 -1
- package/templates/{scripts → resources/scripts}/bash/tests/test-preload-cache.sh +1 -1
- package/templates/{scripts → resources/scripts}/bash/tests/test-regex-precompile.sh +4 -4
- package/templates/{scripts → resources/scripts}/bash/text-audit.sh +3 -3
- package/templates/{scripts → resources/scripts}/bash/track-progress.sh +5 -5
- package/templates/{scripts → resources/scripts}/powershell/analyze-story.ps1 +1 -1
- package/templates/{scripts → resources/scripts}/powershell/check-consistency.ps1 +8 -8
- package/templates/{scripts → resources/scripts}/powershell/check-plot.ps1 +2 -2
- package/templates/{scripts → resources/scripts}/powershell/check-timeline.ps1 +2 -2
- package/templates/{scripts → resources/scripts}/powershell/check-writing-state.ps1 +31 -31
- package/templates/{scripts → resources/scripts}/powershell/common.ps1 +2 -2
- package/templates/{scripts → resources/scripts}/powershell/constitution.ps1 +1 -1
- package/templates/{scripts → resources/scripts}/powershell/init-tracking.ps1 +5 -5
- package/templates/{scripts → resources/scripts}/powershell/manage-relations.ps1 +6 -6
- package/templates/{scripts → resources/scripts}/powershell/migrate-tracking.ps1 +1 -1
- package/templates/{scripts → resources/scripts}/powershell/plan-story.ps1 +2 -2
- package/templates/{scripts → resources/scripts}/powershell/specify-story.ps1 +1 -1
- package/templates/{scripts → resources/scripts}/powershell/tests/bench-ps-cache.ps1 +10 -10
- package/templates/{scripts → resources/scripts}/powershell/tests/test-ps-cache.ps1 +4 -4
- package/templates/{scripts → resources/scripts}/powershell/text-audit.ps1 +2 -2
- package/templates/{scripts → resources/scripts}/powershell/track-progress.ps1 +2 -2
- package/templates/skills/analysis/character-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/foreshadow-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/hook-analysis/SKILL.md +2 -2
- package/templates/skills/analysis/logic-analysis/SKILL.md +2 -2
- package/templates/skills/analysis/opening-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/pacing-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/power-analysis/SKILL.md +3 -3
- package/templates/skills/analysis/reader-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/style-analysis/SKILL.md +1 -1
- package/templates/skills/analysis/voice-analysis/SKILL.md +1 -1
- package/templates/skills/auto-tracking/SKILL.md +1 -1
- package/templates/skills/quality-assurance/consistency-checker/SKILL.md +1 -1
- package/templates/skills/quality-assurance/facts-checker/SKILL.md +2 -2
- package/templates/skills/quality-assurance/hook-checker/SKILL.md +2 -2
- package/templates/skills/quality-assurance/long-series-continuity/SKILL.md +7 -7
- package/templates/skills/quality-assurance/pre-write-checklist/SKILL.md +22 -22
- package/templates/skills/quality-assurance/setting-detector/SKILL.md +15 -15
- package/templates/skills/quality-assurance/voice-consistency-checker/SKILL.md +1 -1
- package/templates/skills/writing-techniques/character-arc/SKILL.md +1 -1
- package/templates/skills/writing-techniques/multi-thread-narrative/SKILL.md +1 -1
- package/templates/skills/writing-techniques/reader-expectation/SKILL.md +1 -1
- package/templates/skills/writing-techniques/revision-polish/SKILL.md +1 -1
- package/templates/skills/writing-techniques/style-learning/SKILL.md +2 -2
- package/templates/skills/writing-techniques/writing-balance/.gitkeep +0 -0
- package/templates/skills/writing-techniques/writing-balance/SKILL.md +460 -0
- package/templates/skills/writing-techniques/writing-techniques/SKILL.md +727 -0
- package/templates/knowledge-base/README.md +0 -285
- package/templates/scripts/powershell/check-writing-state.ps1.backup +0 -135
- /package/templates/{knowledge-base → resources}/character-archetypes/01-hero.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/02-mentor.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/03-shadow.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/04-ally.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/05-shapeshifter.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/06-trickster.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/07-threshold-guardian.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/08-herald.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/09-father.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/10-mother.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/11-child.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/12-sage.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/README.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/application-guide.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/archetype-combinations.md +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/config.yaml +0 -0
- /package/templates/{knowledge-base → resources}/character-archetypes/examples-analysis.md +0 -0
- /package/templates/{specification-example.md → resources/config/specification-example.md} +0 -0
- /package/templates/{knowledge-base → resources}/craft/character-arc.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/dialogue.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/hook-design.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/pacing.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/power-system.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/scene-structure.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/show-not-tell.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/story-structures.md +0 -0
- /package/templates/{knowledge-base → resources}/craft/tension-management.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/01-first-meeting.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/02-bonding-moment.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/03-declaration.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/04-triumph.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/05-reunion.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/06-forgiveness.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/07-betrayal.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/08-loss.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/09-rejection.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/10-failure.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/11-misunderstanding.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/12-farewell.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/13-revelation.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/14-point-of-no-return.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/15-dark-night.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/16-sacrifice.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/17-awakening.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/18-confrontation.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/19-bittersweet-goodbye.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/20-moral-dilemma.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/21-temptation.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/22-redemption.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/README.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/beat-sequences.md +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/config.yaml +0 -0
- /package/templates/{knowledge-base → resources}/emotional-beats/pacing-guide.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/game-lit.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/historical.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/mystery.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/rebirth.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/revenge.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/romance.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/sci-fi.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/thriller.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/urban.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/wuxia.md +0 -0
- /package/templates/{knowledge-base → resources}/genres/xuanhuan.md +0 -0
- /package/templates/{memory → resources/memory}/constitution.md +0 -0
- /package/templates/{memory → resources/memory}/personal-voice.md +0 -0
- /package/templates/{knowledge-base → resources}/references/README.md +0 -0
- /package/templates/{knowledge-base → resources}/references/china-1920s/culture.md +0 -0
- /package/templates/{knowledge-base → resources}/references/china-1920s/daily-life.md +0 -0
- /package/templates/{knowledge-base → resources}/references/china-1920s/overview.md +0 -0
- /package/templates/{knowledge-base → resources}/references/china-1920s/society.md +0 -0
- /package/templates/{knowledge-base → resources}/references/china-1920s/warlords.md +0 -0
- /package/templates/{knowledge-base → resources}/references/cultivation-world/daily-life.md +0 -0
- /package/templates/{knowledge-base → resources}/references/cultivation-world/overview.md +0 -0
- /package/templates/{knowledge-base → resources}/references/cultivation-world/power-system.md +0 -0
- /package/templates/{knowledge-base → resources}/references/cultivation-world/sects.md +0 -0
- /package/templates/{knowledge-base → resources}/references/cultivation-world/world-setting.md +0 -0
- /package/templates/{knowledge-base → resources}/references/modern-workplace/corporate.md +0 -0
- /package/templates/{knowledge-base → resources}/references/modern-workplace/daily-life.md +0 -0
- /package/templates/{knowledge-base → resources}/references/modern-workplace/overview.md +0 -0
- /package/templates/{knowledge-base → resources}/references/modern-workplace/relationships.md +0 -0
- /package/templates/{knowledge-base → resources}/references/modern-workplace/tech-industry.md +0 -0
- /package/templates/{knowledge-base → resources}/references/tang-dynasty/culture.md +0 -0
- /package/templates/{knowledge-base → resources}/references/tang-dynasty/daily-life.md +0 -0
- /package/templates/{knowledge-base → resources}/references/tang-dynasty/overview.md +0 -0
- /package/templates/{knowledge-base → resources}/references/tang-dynasty/politics.md +0 -0
- /package/templates/{knowledge-base → resources}/references/tang-dynasty/society.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/README.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/anti-ai-v3.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/concretization.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/fast-paced.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/no-poison.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/romance-angst.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/romance-sweet.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/serious-literature.md +0 -0
- /package/templates/{knowledge-base → resources}/requirements/strong-emotion.md +0 -0
- /package/templates/{scripts → resources/scripts}/bash/clarify-story.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/generate-tasks.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/test-word-count.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/run-all-benchmarks.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/test-cache-semantics.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/test-edge-cases-bash.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/test-phase1-bash.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/test-regression-bash.sh +0 -0
- /package/templates/{scripts → resources/scripts}/bash/tests/test-task6-verification.sh +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/check-analyze-stage.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/check-facts.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/clarify-story.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/generate-tasks.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/tests/test-cross-platform.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/tests/test-edge-cases-ps.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/tests/test-phase1-ps.ps1 +0 -0
- /package/templates/{scripts → resources/scripts}/powershell/tests/test-regression-ps.ps1 +0 -0
- /package/templates/{knowledge-base → resources}/styles/README.md +0 -0
- /package/templates/{knowledge-base → resources}/styles/ancient-style.md +0 -0
- /package/templates/{knowledge-base → resources}/styles/literary.md +0 -0
- /package/templates/{knowledge-base → resources}/styles/minimal.md +0 -0
- /package/templates/{knowledge-base → resources}/styles/natural-voice.md +0 -0
- /package/templates/{knowledge-base → resources}/styles/web-novel.md +0 -0
|
@@ -20,6 +20,116 @@ allowed-tools: Read, Glob, Grep
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## 上下文感知推荐引擎
|
|
24
|
+
|
|
25
|
+
在给出推荐前,先检测项目当前状态:
|
|
26
|
+
|
|
27
|
+
### 检测清单
|
|
28
|
+
|
|
29
|
+
1. **文件存在性检测**:
|
|
30
|
+
```javascript
|
|
31
|
+
const hasSpec = fileExists('specification.md')
|
|
32
|
+
const hasPlan = fileExists('creative-plan.md')
|
|
33
|
+
const hasTasks = fileExists('tasks.md')
|
|
34
|
+
const chapterCount = countFiles('stories/*/content/*.md')
|
|
35
|
+
const hasTracking = fileExists('tracking/character-state.json')
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
2. **模式检测**:
|
|
39
|
+
```javascript
|
|
40
|
+
const isSingleFileMode = fileExists('tracking/character-state.json')
|
|
41
|
+
const isShardedMode = dirExists('tracking/volumes')
|
|
42
|
+
const isMCPMode = fileExists('tracking/novel-tracking.db')
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
3. **问题检测**:
|
|
46
|
+
```javascript
|
|
47
|
+
const trackingSize = getFileSize('tracking/character-state.json')
|
|
48
|
+
const needMigration = trackingSize > 50 * 1024 // >50KB
|
|
49
|
+
const mcpAvailable = isMCPMode && chapterCount > 300
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### 决策逻辑
|
|
53
|
+
|
|
54
|
+
```yaml
|
|
55
|
+
IF not hasSpec:
|
|
56
|
+
推荐: /specify 或 /constitution
|
|
57
|
+
原因: 缺少故事规格文件
|
|
58
|
+
|
|
59
|
+
ELSE IF hasSpec and not hasPlan:
|
|
60
|
+
推荐: /plan
|
|
61
|
+
原因: 有规格但无计划
|
|
62
|
+
|
|
63
|
+
ELSE IF hasPlan and not hasTasks:
|
|
64
|
+
推荐: /tasks
|
|
65
|
+
原因: 有计划但无任务分解
|
|
66
|
+
|
|
67
|
+
ELSE IF hasTasks and chapterCount == 0:
|
|
68
|
+
推荐: /write
|
|
69
|
+
原因: 任务已分解,可以开始写作
|
|
70
|
+
|
|
71
|
+
ELSE IF chapterCount > 0:
|
|
72
|
+
推荐: /analyze 或 /track --sync
|
|
73
|
+
原因: 已有内容,建议分析或同步
|
|
74
|
+
|
|
75
|
+
IF needMigration:
|
|
76
|
+
警告: /track --migrate --target sharded
|
|
77
|
+
原因: 追踪文件过大(>50KB)
|
|
78
|
+
|
|
79
|
+
IF chapterCount > 300 and not isMCPMode:
|
|
80
|
+
提示: 考虑启用MCP模式获得更好性能
|
|
81
|
+
命令: /track --migrate --target mcp
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
---
|
|
85
|
+
|
|
86
|
+
## 新手引导模式
|
|
87
|
+
|
|
88
|
+
检测用户是否为新手(通过历史命令数量或配置文件):
|
|
89
|
+
|
|
90
|
+
### 首次使用(显示完整流程图)
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
📖 七步方法论完整流程
|
|
94
|
+
|
|
95
|
+
1. /constitution ─┐
|
|
96
|
+
├─→ 定义创作原则和风格
|
|
97
|
+
2. /specify ──────┘
|
|
98
|
+
|
|
99
|
+
3. /clarify ─────→ 澄清关键决策
|
|
100
|
+
|
|
101
|
+
4. /plan ────────→ 制定创作计划
|
|
102
|
+
|
|
103
|
+
5. /tasks ───────→ 分解任务清单
|
|
104
|
+
|
|
105
|
+
6. /write ───────→ 执行写作
|
|
106
|
+
|
|
107
|
+
7. /analyze ─────→ 质量验证
|
|
108
|
+
|
|
109
|
+
当前位置: ● 1 ○ 2 ○ 3 ○ 4 ○ 5 ○ 6 ○ 7
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### 第2-5次使用(简化提示)
|
|
113
|
+
|
|
114
|
+
```
|
|
115
|
+
📍 当前进度: 已完成 specification.md
|
|
116
|
+
|
|
117
|
+
下一步:
|
|
118
|
+
🎯 /plan - 制定创作计划
|
|
119
|
+
💡 /clarify - 如有疑问可先澄清
|
|
120
|
+
|
|
121
|
+
进度: ● ● ○ ○ ○ ○ ○
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
### 熟练用户(仅显示异常)
|
|
125
|
+
|
|
126
|
+
```
|
|
127
|
+
⚠️ 异常提醒:
|
|
128
|
+
- tracking/ 目录为空 → 建议运行 /track-init
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
23
133
|
## 数据加载策略
|
|
24
134
|
|
|
25
135
|
本命令在检测项目状态时,采用 **三层回退** 机制:
|
|
@@ -40,10 +150,10 @@ const consistencyStats = await mcp.call('novelws-mcp/stats_consistency', {});
|
|
|
40
150
|
### Layer 2: 分片 JSON(次优)
|
|
41
151
|
|
|
42
152
|
```bash
|
|
43
|
-
# 当
|
|
153
|
+
# 当 tracking/volumes/ 存在时
|
|
44
154
|
# 读取 summary/ 文件夹的摘要数据
|
|
45
|
-
character_summary=$(cat
|
|
46
|
-
plot_summary=$(cat
|
|
155
|
+
character_summary=$(cat tracking/summary/characters-summary.json)
|
|
156
|
+
plot_summary=$(cat tracking/summary/plot-summary.json)
|
|
47
157
|
```
|
|
48
158
|
|
|
49
159
|
**适用场景**:
|
|
@@ -55,8 +165,8 @@ plot_summary=$(cat spec/tracking/summary/plot-summary.json)
|
|
|
55
165
|
|
|
56
166
|
```bash
|
|
57
167
|
# 传统模式,加载完整文件
|
|
58
|
-
character_state=$(cat
|
|
59
|
-
plot_tracker=$(cat
|
|
168
|
+
character_state=$(cat tracking/character-state.json)
|
|
169
|
+
plot_tracker=$(cat tracking/plot-tracker.json)
|
|
60
170
|
```
|
|
61
171
|
|
|
62
172
|
**向下兼容**:小型项目(< 300 章)继续使用单文件模式
|
|
@@ -65,7 +175,7 @@ plot_tracker=$(cat spec/tracking/plot-tracker.json)
|
|
|
65
175
|
|
|
66
176
|
```javascript
|
|
67
177
|
// 1. 检测分片模式
|
|
68
|
-
is_sharded = exists('
|
|
178
|
+
is_sharded = exists('tracking/volumes/')
|
|
69
179
|
|
|
70
180
|
// 2. 检测 MCP
|
|
71
181
|
has_mcp = exists('mcp-servers.json')
|
|
@@ -103,26 +213,26 @@ chapters = Glob('stories/*/content/*.md')
|
|
|
103
213
|
→ 统计已写章节数
|
|
104
214
|
|
|
105
215
|
// 2. 检测分片模式
|
|
106
|
-
is_sharded = exists('
|
|
216
|
+
is_sharded = exists('tracking/volumes/')
|
|
107
217
|
has_mcp = exists('mcp-servers.json') // MCP 是否配置
|
|
108
218
|
|
|
109
219
|
// 3. Tracking 文件检测(仅检测存在性和修改时间)
|
|
110
220
|
// 分片模式:检测 summary/ 和 volumes/
|
|
111
221
|
// 单文件模式:检测根目录 JSON
|
|
112
222
|
if (is_sharded) {
|
|
113
|
-
write_checkpoint = exists('
|
|
114
|
-
character_state = exists('
|
|
115
|
-
plot_tracker = exists('
|
|
116
|
-
timeline = exists('
|
|
117
|
-
story_facts = exists('
|
|
118
|
-
tracking_log = exists('
|
|
223
|
+
write_checkpoint = exists('tracking/summary/write-checkpoint.json')
|
|
224
|
+
character_state = exists('tracking/summary/characters-summary.json')
|
|
225
|
+
plot_tracker = exists('tracking/summary/plot-summary.json')
|
|
226
|
+
timeline = exists('tracking/summary/timeline-summary.json')
|
|
227
|
+
story_facts = exists('tracking/summary/story-facts-summary.json')
|
|
228
|
+
tracking_log = exists('tracking/summary/tracking-log-summary.md')
|
|
119
229
|
} else {
|
|
120
|
-
write_checkpoint = exists('
|
|
121
|
-
character_state = exists('
|
|
122
|
-
plot_tracker = exists('
|
|
123
|
-
timeline = exists('
|
|
124
|
-
story_facts = exists('
|
|
125
|
-
tracking_log = exists('
|
|
230
|
+
write_checkpoint = exists('tracking/write-checkpoint.json')
|
|
231
|
+
character_state = exists('tracking/character-state.json')
|
|
232
|
+
plot_tracker = exists('tracking/plot-tracker.json')
|
|
233
|
+
timeline = exists('tracking/timeline.json')
|
|
234
|
+
story_facts = exists('tracking/story-facts.json')
|
|
235
|
+
tracking_log = exists('tracking/tracking-log.md')
|
|
126
236
|
}
|
|
127
237
|
|
|
128
238
|
// 4. 性能优化
|
|
@@ -0,0 +1,221 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: help-me
|
|
3
|
+
description: "通过自然语言描述需求,AI推荐最合适的命令并给出使用示例"
|
|
4
|
+
argument-hint: <你的需求描述>
|
|
5
|
+
recommended-model: claude-haiku-4-5-20251001 # 命令推荐,速度优先
|
|
6
|
+
allowed-tools: Read, Glob
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# help-me - 自然语言命令查询
|
|
10
|
+
|
|
11
|
+
## 命令描述
|
|
12
|
+
|
|
13
|
+
通过自然语言描述需求,AI推荐最合适的命令并给出使用示例。
|
|
14
|
+
|
|
15
|
+
## 用法
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
/help-me <你的需求描述>
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
## 示例
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
/help-me 我想修改角色的性格设定
|
|
25
|
+
/help-me 怎么检查时间线有没有矛盾
|
|
26
|
+
/help-me 查找某个情节
|
|
27
|
+
/help-me 分析最近几章的节奏
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## 工作流程
|
|
33
|
+
|
|
34
|
+
1. 理解用户自然语言需求
|
|
35
|
+
2. 匹配到最合适的命令
|
|
36
|
+
3. 给出使用示例和相关命令
|
|
37
|
+
4. 提供详细文档链接
|
|
38
|
+
|
|
39
|
+
---
|
|
40
|
+
|
|
41
|
+
## 场景映射表(50+场景)
|
|
42
|
+
|
|
43
|
+
### 角色管理
|
|
44
|
+
|
|
45
|
+
| 用户需求 | 推荐命令 |
|
|
46
|
+
|---------|---------|
|
|
47
|
+
| 修改角色性格 | /character update <角色名> |
|
|
48
|
+
| 查看角色卡片 | /character show <角色名> |
|
|
49
|
+
| 创建新角色 | /character create |
|
|
50
|
+
| 分析角色对话风格 | /character voice <角色名> |
|
|
51
|
+
| 查看角色时间线 | /character timeline <角色名> |
|
|
52
|
+
| 查看角色关系 | /character relate <角色名> |
|
|
53
|
+
|
|
54
|
+
### 情节管理
|
|
55
|
+
|
|
56
|
+
| 用户需求 | 推荐命令 |
|
|
57
|
+
|---------|---------|
|
|
58
|
+
| 检查时间线矛盾 | /timeline |
|
|
59
|
+
| 查看角色关系图 | /relations |
|
|
60
|
+
| 追踪情节线进度 | /track --check |
|
|
61
|
+
| 同步追踪数据 | /track --sync |
|
|
62
|
+
| 查看创作统计 | /track --stats |
|
|
63
|
+
|
|
64
|
+
### 内容查询
|
|
65
|
+
|
|
66
|
+
| 用户需求 | 推荐命令 |
|
|
67
|
+
|---------|---------|
|
|
68
|
+
| 查找某个情节 | /search <关键词> (需MCP) |
|
|
69
|
+
| 生成第X卷摘要 | /volume-summary --volume vol-0X |
|
|
70
|
+
| 回顾前情 | /recap --brief |
|
|
71
|
+
| 查看某章内容 | 直接打开文件 stories/*/content/ch-XX.md |
|
|
72
|
+
|
|
73
|
+
### 质量分析
|
|
74
|
+
|
|
75
|
+
| 用户需求 | 推荐命令 |
|
|
76
|
+
|---------|---------|
|
|
77
|
+
| 分析节奏 | /analyze --focus=pacing |
|
|
78
|
+
| 检查人物对话 | /analyze --focus=voice |
|
|
79
|
+
| 检查伏笔 | /analyze --focus=foreshadow |
|
|
80
|
+
| 分析最近3章 | /analyze --range ch-10-12 |
|
|
81
|
+
| 分析整卷 | /analyze --range vol-01 |
|
|
82
|
+
| 检查写作平衡度 | /analyze --focus=balance |
|
|
83
|
+
|
|
84
|
+
### 修改与完善
|
|
85
|
+
|
|
86
|
+
| 用户需求 | 推荐命令 |
|
|
87
|
+
|---------|---------|
|
|
88
|
+
| 修改某章 | /revise <章节> |
|
|
89
|
+
| 系统性修改 | /revise --level structure/pacing/consistency/polish |
|
|
90
|
+
| 质量检查 | /checklist |
|
|
91
|
+
|
|
92
|
+
### 系统操作
|
|
93
|
+
|
|
94
|
+
| 用户需求 | 推荐命令 |
|
|
95
|
+
|---------|---------|
|
|
96
|
+
| 迁移到大型项目模式 | /track --migrate --target sharded |
|
|
97
|
+
| 迁移到MCP模式 | /track --migrate --target mcp |
|
|
98
|
+
| 初始化追踪系统 | /track-init |
|
|
99
|
+
| 升级项目 | novelws upgrade |
|
|
100
|
+
|
|
101
|
+
### 专家咨询
|
|
102
|
+
|
|
103
|
+
| 用户需求 | 推荐命令 |
|
|
104
|
+
|---------|---------|
|
|
105
|
+
| 角色塑造建议 | /expert character |
|
|
106
|
+
| 情节设计建议 | /expert plot |
|
|
107
|
+
| 世界观构建建议 | /expert worldbuilding |
|
|
108
|
+
| 文笔提升建议 | /expert prose |
|
|
109
|
+
| 类型小说建议 | /expert genre |
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## 输出模板
|
|
114
|
+
|
|
115
|
+
```markdown
|
|
116
|
+
📌 推荐命令:<命令名称>
|
|
117
|
+
|
|
118
|
+
用法示例:
|
|
119
|
+
<具体命令示例>
|
|
120
|
+
|
|
121
|
+
这个命令会:
|
|
122
|
+
1. <功能点1>
|
|
123
|
+
2. <功能点2>
|
|
124
|
+
3. <功能点3>
|
|
125
|
+
|
|
126
|
+
💡 相关命令:
|
|
127
|
+
- <相关命令1> - <说明>
|
|
128
|
+
- <相关命令2> - <说明>
|
|
129
|
+
|
|
130
|
+
📖 详细文档:运行 <获取更多帮助的命令>
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
---
|
|
134
|
+
|
|
135
|
+
## 示例对话
|
|
136
|
+
|
|
137
|
+
### 示例1:修改角色
|
|
138
|
+
|
|
139
|
+
```
|
|
140
|
+
用户: /help-me 我想修改角色的性格设定
|
|
141
|
+
|
|
142
|
+
输出:
|
|
143
|
+
📌 推荐命令:/character update
|
|
144
|
+
|
|
145
|
+
用法示例:
|
|
146
|
+
/character update 李明
|
|
147
|
+
|
|
148
|
+
这个命令会:
|
|
149
|
+
1. 读取当前角色卡片(resources/knowledge/characters/李明.md)
|
|
150
|
+
2. 让你修改性格、背景、能力等信息
|
|
151
|
+
3. 自动更新文件
|
|
152
|
+
4. 同步更新 tracking 数据(如已启用)
|
|
153
|
+
|
|
154
|
+
💡 相关命令:
|
|
155
|
+
- /character show 李明 - 查看当前设定
|
|
156
|
+
- /track --sync - 同步修改到追踪文件
|
|
157
|
+
- /character voice 李明 - 分析角色对话风格
|
|
158
|
+
|
|
159
|
+
📖 详细文档:运行 /expert character 获取角色塑造专家咨询
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
### 示例2:检查时间线
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
用户: /help-me 怎么检查时间线有没有矛盾
|
|
166
|
+
|
|
167
|
+
输出:
|
|
168
|
+
📌 推荐命令:/timeline
|
|
169
|
+
|
|
170
|
+
用法示例:
|
|
171
|
+
/timeline
|
|
172
|
+
|
|
173
|
+
这个命令会:
|
|
174
|
+
1. 读取 tracking/timeline.json
|
|
175
|
+
2. 可视化时间线(按时间顺序排列所有事件)
|
|
176
|
+
3. 自动检测时间冲突(同一时间多个事件)
|
|
177
|
+
4. 标记可疑的时间跳跃
|
|
178
|
+
|
|
179
|
+
💡 相关命令:
|
|
180
|
+
- /character timeline <角色名> - 查看某个角色的时间线
|
|
181
|
+
- /track --check - 深度健康检查(包括时间线)
|
|
182
|
+
- /analyze --focus=logic - 逻辑一致性分析
|
|
183
|
+
|
|
184
|
+
📖 详细文档:在 CLAUDE.md 中搜索"时间线管理"
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## 模糊匹配
|
|
190
|
+
|
|
191
|
+
如果用户需求不明确,给出多个选项:
|
|
192
|
+
|
|
193
|
+
```
|
|
194
|
+
用户: /help-me 分析
|
|
195
|
+
|
|
196
|
+
输出:
|
|
197
|
+
🤔 "分析"可能指:
|
|
198
|
+
|
|
199
|
+
1. 分析章节质量 → /analyze
|
|
200
|
+
2. 分析角色对话 → /analyze --focus=voice
|
|
201
|
+
3. 分析节奏 → /analyze --focus=pacing
|
|
202
|
+
4. 分析故事框架 → /analyze(框架模式)
|
|
203
|
+
|
|
204
|
+
请提供更多信息,或选择上述命令之一。
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
---
|
|
208
|
+
|
|
209
|
+
## 实施说明
|
|
210
|
+
|
|
211
|
+
**For Claude Code**:
|
|
212
|
+
- 本命令使用简单的关键词匹配 + 场景映射表
|
|
213
|
+
- 不需要复杂的NLP,基于预定义的映射即可
|
|
214
|
+
- 重点是覆盖常见场景(50+场景)
|
|
215
|
+
- 如果匹配不到,给出相关命令列表供选择
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## 版本历史
|
|
220
|
+
|
|
221
|
+
- **v1.0** (2026-02-15): 初始版本,50+场景映射
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
---
|
|
2
2
|
description: 基于故事规格制定技术实现方案
|
|
3
3
|
argument-hint: [技术偏好和选择] [--detail vol-XX]
|
|
4
|
-
|
|
4
|
+
recommended-model: claude-opus-4-6 # 需要创意和规划能力
|
|
5
|
+
allowed-tools: Read(//stories/**/specification.md), Read(//stories/**/specification.md), Read(//stories/**/creative-plan.md), Read(//stories/**/creative-plan.md), Read(//plugins/**), Read(//plugins/**), Write(//stories/**/creative-plan.md), Write(//stories/**/creative-plan.md), Read(//resources/memory/constitution.md), Read(//resources/memory/constitution.md), Bash(find:*), Bash(grep:*), Bash(*)
|
|
5
6
|
scripts:
|
|
6
|
-
sh:
|
|
7
|
-
ps:
|
|
7
|
+
sh: resources/scripts/bash/plan-story.sh
|
|
8
|
+
ps: resources/scripts/powershell/plan-story.ps1
|
|
8
9
|
---
|
|
9
10
|
|
|
10
11
|
用户输入:$ARGUMENTS
|
|
@@ -27,7 +28,7 @@ scripts:
|
|
|
27
28
|
### 1. 加载前置文档
|
|
28
29
|
|
|
29
30
|
**运行脚本** `{SCRIPT}` 检查并加载:
|
|
30
|
-
-
|
|
31
|
+
- 宪法文件:`resources/memory/constitution.md`
|
|
31
32
|
- 规格文件:`stories/*/specification.md`
|
|
32
33
|
- 澄清记录(如果已运行 `/clarify`)
|
|
33
34
|
|
|
@@ -48,10 +49,10 @@ powershell -File {SCRIPT} -Json
|
|
|
48
49
|
#### Layer 1: 默认推断
|
|
49
50
|
|
|
50
51
|
未配置 resource-loading 或 `auto-load: true` 时,自动加载:
|
|
51
|
-
-
|
|
52
|
-
-
|
|
53
|
-
-
|
|
54
|
-
- `.
|
|
52
|
+
- `resources/craft/scene-structure.md`
|
|
53
|
+
- `resources/craft/character-arc.md`
|
|
54
|
+
- `resources/craft/pacing.md`
|
|
55
|
+
- `.claude/skills/planning/story-structure/SKILL.md`(如存在)
|
|
55
56
|
|
|
56
57
|
#### Layer 2: 配置覆盖
|
|
57
58
|
|
|
@@ -73,12 +74,12 @@ powershell -File {SCRIPT} -Json
|
|
|
73
74
|
**条件加载:黄金开篇法则**:
|
|
74
75
|
|
|
75
76
|
如果总字数 < 10000字 或规划范围包含第1-3章:
|
|
76
|
-
- 检查 `
|
|
77
|
+
- 检查 `resources/presets/golden-opening.md` 是否存在
|
|
77
78
|
- 如存在则读取,在规划前三章时应用五大黄金法则
|
|
78
79
|
|
|
79
80
|
**条件加载:节奏配置**:
|
|
80
81
|
|
|
81
|
-
如果 `
|
|
82
|
+
如果 `resources/presets/rhythm-config.json` 存在:
|
|
82
83
|
- 读取并应用对标作品的节奏参数(章节字数、爽点间隔、内容比例)
|
|
83
84
|
- 参数优先级:用户即时指令 > rhythm-config.json > 类型知识库 > 默认值
|
|
84
85
|
|
|
@@ -108,14 +109,14 @@ const plotData = await mcp.call('novelws-mcp/query_plot', {
|
|
|
108
109
|
### Layer 2: 分片 JSON(次优)
|
|
109
110
|
|
|
110
111
|
```bash
|
|
111
|
-
# 当
|
|
112
|
+
# 当 tracking/volumes/ 存在时
|
|
112
113
|
if [[ -n "$VOLUME_FILTER" ]]; then
|
|
113
114
|
# 仅读取指定卷的 plot-tracker
|
|
114
|
-
cat "
|
|
115
|
+
cat "tracking/volumes/$VOLUME_FILTER/plot-tracker.json"
|
|
115
116
|
else
|
|
116
117
|
# 读取全局摘要 + 所有卷数据
|
|
117
|
-
cat "
|
|
118
|
-
for vol in
|
|
118
|
+
cat "tracking/summary/plot-summary.json"
|
|
119
|
+
for vol in tracking/volumes/vol-*/; do
|
|
119
120
|
cat "$vol/plot-tracker.json"
|
|
120
121
|
done
|
|
121
122
|
fi
|
|
@@ -130,14 +131,14 @@ fi
|
|
|
130
131
|
|
|
131
132
|
```bash
|
|
132
133
|
# 传统模式,加载完整文件
|
|
133
|
-
cat
|
|
134
|
+
cat tracking/plot-tracker.json
|
|
134
135
|
```
|
|
135
136
|
|
|
136
137
|
**向下兼容**:小型项目(< 300 章)继续使用单文件模式
|
|
137
138
|
|
|
138
139
|
### 数据写入协议
|
|
139
140
|
|
|
140
|
-
**分片模式**(
|
|
141
|
+
**分片模式**(tracking/volumes/ 存在):
|
|
141
142
|
|
|
142
143
|
1. **确定目标卷**:
|
|
143
144
|
- 如果指定 `--detail vol-XX`,写入该卷
|
|
@@ -145,13 +146,13 @@ cat spec/tracking/plot-tracker.json
|
|
|
145
146
|
|
|
146
147
|
2. **写入分片文件**:
|
|
147
148
|
```bash
|
|
148
|
-
Write(
|
|
149
|
+
Write(tracking/volumes/${target_volume}/plot-tracker.json)
|
|
149
150
|
```
|
|
150
151
|
|
|
151
152
|
3. **更新全局摘要**:
|
|
152
153
|
```bash
|
|
153
154
|
# 更新 plot-summary.json 的伏笔统计
|
|
154
|
-
Write(
|
|
155
|
+
Write(tracking/summary/plot-summary.json)
|
|
155
156
|
```
|
|
156
157
|
|
|
157
158
|
4. **触发 MCP 同步**(如果启用):
|
|
@@ -166,7 +167,7 @@ cat spec/tracking/plot-tracker.json
|
|
|
166
167
|
|
|
167
168
|
直接写入完整 `plot-tracker.json`:
|
|
168
169
|
```bash
|
|
169
|
-
Write(
|
|
170
|
+
Write(tracking/plot-tracker.json)
|
|
170
171
|
```
|
|
171
172
|
|
|
172
173
|
---
|
|
@@ -185,7 +186,7 @@ Write(spec/tracking/plot-tracker.json)
|
|
|
185
186
|
- **混合方法**:主线+支线使用不同方法
|
|
186
187
|
- **类型专用结构**:如爽文的"爽点分布结构"、悬疑的"线索布局结构"等
|
|
187
188
|
|
|
188
|
-
**网文专用结构**:如果类型为网文类(玄幻、都市、言情、游戏文等),加载
|
|
189
|
+
**网文专用结构**:如果类型为网文类(玄幻、都市、言情、游戏文等),加载 `resources/craft/story-structures.md`,从升级流/副本流/任务流/日常流中选择适合的结构模板。
|
|
189
190
|
|
|
190
191
|
记录选择理由和应用方式。
|
|
191
192
|
|
|
@@ -262,7 +263,7 @@ Write(spec/tracking/plot-tracker.json)
|
|
|
262
263
|
|
|
263
264
|
**触发条件**:`$ARGUMENTS` 包含 `--detail vol-XX` 或 `--detail vol-XX-YY`
|
|
264
265
|
|
|
265
|
-
加载 `.
|
|
266
|
+
加载 `.claude/skills/planning/volume-detail/SKILL.md`,按其流程执行:
|
|
266
267
|
- 单卷:卷概要确认 → 逐章规划 → 节奏总览 → 写入 → 生成 tasks.md → 灵感分配
|
|
267
268
|
- 多卷:范围确认 → 逐卷规划 → 跨卷节奏对比 → 批量生成 tasks.md
|
|
268
269
|
|
|
@@ -409,14 +410,14 @@ Write(spec/tracking/plot-tracker.json)
|
|
|
409
410
|
1. 从 `creative-plan.md` 提取情节线定义、章节分配、伏笔规划
|
|
410
411
|
2. 按三层 Fallback 读取现有 plot-tracker 数据:
|
|
411
412
|
- **MCP 查询(优先)**:`query_plot` 获取现有情节线和伏笔
|
|
412
|
-
- **分片 JSON(次优)**:读取 `
|
|
413
|
-
- **单文件 JSON(兜底)**:读取 `
|
|
413
|
+
- **分片 JSON(次优)**:读取 `tracking/volumes/` 下各卷的 `plot-tracker.json`
|
|
414
|
+
- **单文件 JSON(兜底)**:读取 `tracking/plot-tracker.json`
|
|
414
415
|
3. 生成或合并 plot-tracker 数据(保留已有 progress)
|
|
415
416
|
4. 写入 tracking 数据:
|
|
416
|
-
- **分片模式**:按卷写入 `
|
|
417
|
-
- **单文件模式**:直接写入 `
|
|
417
|
+
- **分片模式**:按卷写入 `tracking/volumes/vol-XX/plot-tracker.json`,同步更新 `tracking/summary/plot-summary.json`
|
|
418
|
+
- **单文件模式**:直接写入 `tracking/plot-tracker.json`
|
|
418
419
|
5. 如果 MCP 可用,调用 `sync_from_json` 同步到 SQLite
|
|
419
|
-
6. 追加更新记录到 `
|
|
420
|
+
6. 追加更新记录到 `tracking/tracking-log.md`(使用 diff 格式)
|
|
420
421
|
7. 验证 JSON 格式有效性
|
|
421
422
|
|
|
422
423
|
**错误处理**:
|
|
@@ -65,27 +65,27 @@ allowed-tools: Read(//**), Bash(find:*), Bash(wc:*), Bash(grep:*), Bash(*)
|
|
|
65
65
|
|
|
66
66
|
如果任一 MCP 调用失败,回退到 Layer 2。
|
|
67
67
|
|
|
68
|
-
**Layer 2: 分片 JSON(检测
|
|
68
|
+
**Layer 2: 分片 JSON(检测 tracking/volumes/ 是否存在)**
|
|
69
69
|
|
|
70
70
|
**--brief 模式:**
|
|
71
|
-
- 只读 `
|
|
72
|
-
- 只读 `
|
|
71
|
+
- 只读 `tracking/summary/volume-summaries.json`
|
|
72
|
+
- 只读 `tracking/summary/characters-summary.json`(仅 active 部分)
|
|
73
73
|
|
|
74
74
|
**默认模式:**
|
|
75
|
-
- 读 `
|
|
76
|
-
- 读 `
|
|
77
|
-
- 读 `
|
|
78
|
-
- 读当前卷详情:`
|
|
75
|
+
- 读 `tracking/summary/volume-summaries.json` → 获取前卷摘要
|
|
76
|
+
- 读 `tracking/summary/characters-summary.json` → 活跃角色概览
|
|
77
|
+
- 读 `tracking/summary/plot-summary.json` → 未解决伏笔
|
|
78
|
+
- 读当前卷详情:`tracking/volumes/[currentVolume]/` 下的 4 个文件
|
|
79
79
|
|
|
80
80
|
**--full vol-XX 模式:**
|
|
81
|
-
- 读 `
|
|
82
|
-
- 读 `
|
|
81
|
+
- 读 `tracking/volumes/vol-XX/` 下的 4 个文件(完整数据)
|
|
82
|
+
- 读 `tracking/summary/volume-summaries.json` → 该卷前后的摘要
|
|
83
83
|
|
|
84
84
|
**Layer 3: 单文件 JSON(兜底,现有逻辑)**
|
|
85
|
-
- 读 `
|
|
86
|
-
- 读 `
|
|
87
|
-
- 读 `
|
|
88
|
-
- 读 `
|
|
85
|
+
- 读 `tracking/character-state.json`
|
|
86
|
+
- 读 `tracking/plot-tracker.json`
|
|
87
|
+
- 读 `tracking/relationships.json`
|
|
88
|
+
- 读 `tracking/timeline.json`
|
|
89
89
|
|
|
90
90
|
#### 创作基础文件(第二优先级)
|
|
91
91
|
|
|
@@ -103,8 +103,8 @@ allowed-tools: Read(//**), Bash(find:*), Bash(wc:*), Bash(grep:*), Bash(*)
|
|
|
103
103
|
|
|
104
104
|
#### 辅助文件(第四优先级,可选)
|
|
105
105
|
|
|
106
|
-
9.
|
|
107
|
-
10. `
|
|
106
|
+
9. `resources/memory/constitution.md` - 创作宪法
|
|
107
|
+
10. `tracking/validation-rules.json` - 验证规则
|
|
108
108
|
|
|
109
109
|
**数据缺失处理**:
|
|
110
110
|
|
|
@@ -123,7 +123,7 @@ allowed-tools: Read(//**), Bash(find:*), Bash(wc:*), Bash(grep:*), Bash(*)
|
|
|
123
123
|
```
|
|
124
124
|
⚠️ 追踪数据缺失
|
|
125
125
|
|
|
126
|
-
未找到任何追踪文件(
|
|
126
|
+
未找到任何追踪文件(tracking/)。
|
|
127
127
|
本简报将基于现有章节内容和规格文件生成简化版。
|
|
128
128
|
|
|
129
129
|
建议:
|