sillyspec 3.26.9 → 3.26.11

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.
Files changed (98) hide show
  1. package/.claude/skills/sillyspec-archive/SKILL.md +85 -85
  2. package/.claude/skills/sillyspec-brainstorm/SKILL.md +114 -114
  3. package/.claude/skills/sillyspec-commit/SKILL.md +109 -109
  4. package/.claude/skills/sillyspec-continue/SKILL.md +45 -45
  5. package/.claude/skills/sillyspec-doctor/SKILL.md +76 -76
  6. package/.claude/skills/sillyspec-execute/SKILL.md +200 -200
  7. package/.claude/skills/sillyspec-explore/SKILL.md +95 -95
  8. package/.claude/skills/sillyspec-knowledge/SKILL.md +269 -269
  9. package/.claude/skills/sillyspec-plan/SKILL.md +148 -148
  10. package/.claude/skills/sillyspec-quick/SKILL.md +111 -111
  11. package/.claude/skills/sillyspec-resume/SKILL.md +68 -68
  12. package/.claude/skills/sillyspec-scan/SKILL.md +79 -79
  13. package/.claude/skills/sillyspec-state/SKILL.md +64 -64
  14. package/.claude/skills/sillyspec-status/SKILL.md +54 -54
  15. package/.claude/skills/sillyspec-verify/SKILL.md +83 -81
  16. package/.claude/skills/sillyspec-workspace/SKILL.md +169 -169
  17. package/.gitattributes +2 -0
  18. package/.husky/pre-push +20 -20
  19. package/.npmrc-publish +2 -0
  20. package/README.md +201 -201
  21. package/SKILL.md +90 -90
  22. package/package.json +39 -39
  23. package/packages/dashboard/dist/assets/index-Bq_Z2hne.js +7446 -7446
  24. package/packages/dashboard/dist/assets/index-O2W5RV4z.css +1 -1
  25. package/packages/dashboard/dist/index.html +16 -16
  26. package/packages/dashboard/package.json +25 -25
  27. package/packages/dashboard/server/executor.js +86 -86
  28. package/packages/dashboard/server/index.js +601 -601
  29. package/packages/dashboard/server/parser.js +526 -526
  30. package/src/change-risk-profile.js +254 -254
  31. package/src/classify-change.js +109 -109
  32. package/src/config-schema.js +310 -310
  33. package/src/contract-matrix.js +379 -379
  34. package/src/db.js +350 -350
  35. package/src/dispatch/backends/local-agent.js +155 -155
  36. package/src/dispatch/backends/sillyhub-mcp.js +245 -245
  37. package/src/dispatch/probe.js +210 -210
  38. package/src/dispatch/strategy.js +121 -121
  39. package/src/docs-check.js +131 -4
  40. package/src/doctor-diagnostics.js +711 -711
  41. package/src/endpoint-extractor.js +401 -401
  42. package/src/fs-atomic.js +69 -69
  43. package/src/git-helper.js +79 -79
  44. package/src/hooks/claude-pre-tool-use.cjs +125 -125
  45. package/src/hooks/worktree-guard.js +848 -848
  46. package/src/index.js +90 -8
  47. package/src/init.js +623 -623
  48. package/src/knowledge-match.js +130 -130
  49. package/src/local-detect.js +120 -120
  50. package/src/machine-interface.js +543 -543
  51. package/src/migrate.js +127 -127
  52. package/src/progress/change-registry.js +297 -260
  53. package/src/progress/consistency-doctor.js +355 -355
  54. package/src/progress/shared.js +36 -36
  55. package/src/progress/stage-machine.js +29 -1
  56. package/src/progress/step-store.js +261 -261
  57. package/src/progress.js +1131 -1127
  58. package/src/quicklog.js +693 -675
  59. package/src/review-tier.js +77 -77
  60. package/src/run/command.js +1385 -1364
  61. package/src/run/complete-handlers.js +198 -9
  62. package/src/run/complete.js +225 -24
  63. package/src/run/concurrent-detect.js +22 -0
  64. package/src/run/gates.js +755 -755
  65. package/src/run/prompt.js +761 -721
  66. package/src/run/quick-audit.js +155 -146
  67. package/src/run/shared.js +1268 -1197
  68. package/src/run/stage.js +487 -479
  69. package/src/scan-postcheck.js +371 -371
  70. package/src/setup.js +416 -416
  71. package/src/sillyhub-mcp/client.js +529 -529
  72. package/src/spec-sync.js +323 -0
  73. package/src/stage-contract.js +897 -897
  74. package/src/stage-review.js +549 -549
  75. package/src/stages/archive.js +155 -154
  76. package/src/stages/brainstorm-auto.js +236 -236
  77. package/src/stages/brainstorm.js +596 -597
  78. package/src/stages/cmd-existence.js +145 -145
  79. package/src/stages/doctor.js +371 -371
  80. package/src/stages/execute.js +1003 -991
  81. package/src/stages/explore.js +34 -34
  82. package/src/stages/index.js +29 -29
  83. package/src/stages/knowledge.js +498 -498
  84. package/src/stages/plan-postcheck.js +1302 -1281
  85. package/src/stages/plan.js +625 -604
  86. package/src/stages/quick.js +151 -143
  87. package/src/stages/scan.js +606 -605
  88. package/src/stages/status.js +64 -64
  89. package/src/stages/verify.js +264 -261
  90. package/src/sync.js +1223 -1125
  91. package/src/task-review.js +1019 -1019
  92. package/src/verify-postcheck.js +1186 -1186
  93. package/src/workflow.js +600 -600
  94. package/src/worktree-apply.js +1213 -1136
  95. package/src/worktree-deps.js +353 -353
  96. package/src/worktree.js +1481 -1437
  97. package/templates/workflows/archive-impact.yaml +79 -79
  98. package/templates/workflows/scan-docs.yaml +132 -132
@@ -1,45 +1,45 @@
1
- ---
2
- name: sillyspec:continue
3
- description: 自动判断并执行下一步
4
- ---
5
-
6
- ---
7
-
8
- 你现在是 SillySpec 的自动推进器。
9
-
10
- ## 判断逻辑
11
-
12
- 按顺序检查,第一个未完成的就执行:
13
-
14
- ```
15
- 1. 有 HANDOFF.json?→ 执行 /sillyspec:resume
16
-
17
- 2. .sillyspec/changes/ 有进行中的变更?
18
- 2a. 没有任何文件 → 提示检查 proposal 是否需要完善
19
- 2b. 没有 design.md → 提示补充 design(运行 /sillyspec:brainstorm 推进到设计产物步)
20
- 2c. 没有 tasks.md → 执行 /sillyspec:brainstorm(规范文件 proposal/requirements/tasks 由 brainstorm 末步生成)
21
- 2d. 有 tasks.md 但没有 plan.md → 执行 /sillyspec:plan
22
- 2e. tasks.md 有未完成项 + 有计划文件 → 执行 /sillyspec:execute
23
- 2f. tasks.md 全完成 + 没验证 → 执行 /sillyspec:verify
24
- 2g. 已验证通过 → 执行 /sillyspec:archive
25
-
26
- 3. 有设计文档但没有对应变更?
27
- → 提示运行 /sillyspec:brainstorm(基于设计文档建立变更并生成规范文件)
28
-
29
- 4. 有 .sillyspec/docs/*/scan/ 但没有进行中的工作?
30
- → 提示运行 /sillyspec:brainstorm "你的想法"
31
-
32
- 5. 什么都没有?
33
- → 提示运行 /sillyspec:init(新项目)或 /sillyspec:scan(棕地项目)
34
- ```
35
-
36
- ## 输出
37
-
38
- 先报告检测结果,再执行:
39
-
40
- > 🤖 SillySpec 自动检测
41
- >
42
- > 当前状态:[描述]
43
- > 下一步:[执行的命令]
44
- >
45
- > [开始执行...]
1
+ ---
2
+ name: sillyspec:continue
3
+ description: 自动判断并执行下一步
4
+ ---
5
+
6
+ ---
7
+
8
+ 你现在是 SillySpec 的自动推进器。
9
+
10
+ ## 判断逻辑
11
+
12
+ 按顺序检查,第一个未完成的就执行:
13
+
14
+ ```
15
+ 1. 有 HANDOFF.json?→ 执行 /sillyspec:resume
16
+
17
+ 2. .sillyspec/changes/ 有进行中的变更?
18
+ 2a. 没有任何文件 → 提示检查 proposal 是否需要完善
19
+ 2b. 没有 design.md → 提示补充 design(运行 /sillyspec:brainstorm 推进到设计产物步)
20
+ 2c. 没有 tasks.md → 执行 /sillyspec:brainstorm(规范文件 proposal/requirements/tasks 由 brainstorm 末步生成)
21
+ 2d. 有 tasks.md 但没有 plan.md → 执行 /sillyspec:plan
22
+ 2e. tasks.md 有未完成项 + 有计划文件 → 执行 /sillyspec:execute
23
+ 2f. tasks.md 全完成 + 没验证 → 执行 /sillyspec:verify
24
+ 2g. 已验证通过 → 执行 /sillyspec:archive
25
+
26
+ 3. 有设计文档但没有对应变更?
27
+ → 提示运行 /sillyspec:brainstorm(基于设计文档建立变更并生成规范文件)
28
+
29
+ 4. 有 .sillyspec/docs/*/scan/ 但没有进行中的工作?
30
+ → 提示运行 /sillyspec:brainstorm "你的想法"
31
+
32
+ 5. 什么都没有?
33
+ → 提示运行 /sillyspec:init(新项目)或 /sillyspec:scan(棕地项目)
34
+ ```
35
+
36
+ ## 输出
37
+
38
+ 先报告检测结果,再执行:
39
+
40
+ > 🤖 SillySpec 自动检测
41
+ >
42
+ > 当前状态:[描述]
43
+ > 下一步:[执行的命令]
44
+ >
45
+ > [开始执行...]
@@ -1,76 +1,76 @@
1
- ---
2
- name: sillyspec:doctor
3
- description: 用于 SillySpec 自检和状态修复。适合用户说"检查下状态、修复 progress、doctor、状态不对"。全量扫描进度一致性,修复进度数据与实际产出不匹配的问题。
4
- ---
5
-
6
- ## 何时使用
7
-
8
- - 用户说"检查下状态、修复 progress、doctor、状态不对"
9
- - 进度数据与实际产出不匹配时自检修复
10
- - 5 步:环境检查 → 项目配置 → 数据库完整性 → 状态一致性 → 修复建议
11
-
12
- ## 前置检查
13
-
14
- **执行任何步骤前,先确认 SillySpec CLI 可用:**
15
-
16
- ```bash
17
- sillyspec --version
18
- ```
19
-
20
- 失败则提示 `❌ SillySpec CLI 未安装` + 安装命令 `npm install -g sillyspec`,停止。
21
-
22
- ## 步骤生命周期(所有阶段通用)
23
-
24
- > `sillyspec doctor` 是 `sillyspec run doctor` 的顶层别名,两者等价。
25
-
26
- ```bash
27
- sillyspec run doctor # 输出当前步骤 prompt
28
- sillyspec run doctor --done --output "摘要" # 完成当前步骤
29
- sillyspec run doctor --status # 查看阶段进度
30
- sillyspec run doctor --reset # 重置阶段(从头开始)
31
- ```
32
-
33
- ## 通用参数(所有阶段适用)
34
-
35
- | 参数 | 说明 |
36
- |---|---|
37
- | `--spec-dir <path>` | 指定规范目录(默认 `<项目>/.sillyspec`) |
38
- | `--non-interactive` | CI/脚本下禁用交互式 prompt |
39
- | `--json` | 输出 JSON(程序化读取) |
40
-
41
- ## doctor 特有
42
-
43
- doctor 是辅助阶段,用于诊断而非推进流程。配套的轻量诊断命令(不经 run):
44
-
45
- ```bash
46
- sillyspec progress show # 查看当前进度
47
- sillyspec progress check # 状态一致性检查(只报告,不修复)
48
- sillyspec progress repair # 修复状态元数据(dry-run)
49
- sillyspec progress repair --apply # 真正修复
50
- sillyspec progress validate # 校验并修复
51
- sillyspec worktree doctor [--fix] # worktree 健康检查 + 修复
52
- sillyspec doctor --align-execute-progress --change <name> # 按 plan.md 声明对齐 execute 派生戳(dry-run,只报告将补哪些 step)
53
- sillyspec doctor --align-execute-progress --change <name> --confirm # 实际落盘:补 step 戳 + 置 execute stage status=completed
54
- sillyspec doctor --cleanup-remnant # 扫描并报告 0 字节空占位 db(dry-run)
55
- sillyspec doctor --cleanup-remnant --confirm # 实际删除空占位 db(仅删 0 字节,不动有内容的 db)
56
- sillyspec doctor --dump-db --path <db 路径> # dump 指定 db 内容到文件(取证,查 stages/steps/changes 表)
57
- sillyspec doctor --json # 结构化诊断 + 落盘 .sillyspec/.runtime/doctor-diagnosis.json
58
- sillyspec runtime list # 枚举 .sillyspec/.runtime/ 下所有运行时产物(只读,看手上有哪些证据/状态文件)
59
- ```
60
-
61
- > `--align-execute-progress` 仅当 `plan.md` 所有 task checkbox 全勾时才对齐 execute 阶段进度戳。典型用于 worktree 已 cleanup(终态)但 execute 派生戳未盖上的死锁。默认 dry-run,加 `--confirm` 才写盘。doctor 信任 `plan.md` 声明、不复核代码,verify 阶段兜底。`--change` 缺省时按单活跃变更自动兜底。
62
- >
63
- > `--cleanup-remnant` 清理 init/平台切换残留的 0 字节空 db(占位但无数据)。默认 dry-run 只报告,`--confirm` 才删。绝不删有内容的 db。
64
- >
65
- > `runtime list` 是只读枚举:列出 `.sillyspec/.runtime/` 下的 db、doctor-diagnosis.json、workflow-runs/、user-inputs.md 等产物及用途。多会话/压缩后想知道「我手上有哪些证据文件」时用。加 `--json` 程序化读取。
66
- >
67
- > `doctor --json` 的 pointer_health 维度含 `pointer_missing_but_managed` 信号:项目根存在平台接管声明(`.sillyspec-platform-managed`)但恢复指针缺失——此状态下裸调命令会 fail-closed 拒绝静默落本地。恢复路径见信号文案:重跑平台 scan 重建指针 / `sillyspec platform disconnect` 彻底脱离 / 显式 `--spec-dir` 临时指定。
68
-
69
- ## 铁律
70
-
71
- - **必须用 exec 工具(shell)执行 CLI,不要自己编造流程**
72
- - doctor 只诊断和建议,修复操作要让用户确认
73
- - 完成后立即 `--done`,不跳过
74
-
75
- ## 用户指令
76
- $ARGUMENTS
1
+ ---
2
+ name: sillyspec:doctor
3
+ description: 用于 SillySpec 自检和状态修复。适合用户说"检查下状态、修复 progress、doctor、状态不对"。全量扫描进度一致性,修复进度数据与实际产出不匹配的问题。
4
+ ---
5
+
6
+ ## 何时使用
7
+
8
+ - 用户说"检查下状态、修复 progress、doctor、状态不对"
9
+ - 进度数据与实际产出不匹配时自检修复
10
+ - 5 步:环境检查 → 项目配置 → 数据库完整性 → 状态一致性 → 修复建议
11
+
12
+ ## 前置检查
13
+
14
+ **执行任何步骤前,先确认 SillySpec CLI 可用:**
15
+
16
+ ```bash
17
+ sillyspec --version
18
+ ```
19
+
20
+ 失败则提示 `❌ SillySpec CLI 未安装` + 安装命令 `npm install -g sillyspec`,停止。
21
+
22
+ ## 步骤生命周期(所有阶段通用)
23
+
24
+ > `sillyspec doctor` 是 `sillyspec run doctor` 的顶层别名,两者等价。
25
+
26
+ ```bash
27
+ sillyspec run doctor # 输出当前步骤 prompt
28
+ sillyspec run doctor --done --output "摘要" # 完成当前步骤
29
+ sillyspec run doctor --status # 查看阶段进度
30
+ sillyspec run doctor --reset # 重置阶段(从头开始)
31
+ ```
32
+
33
+ ## 通用参数(所有阶段适用)
34
+
35
+ | 参数 | 说明 |
36
+ |---|---|
37
+ | `--spec-dir <path>` | 指定规范目录(默认 `<项目>/.sillyspec`) |
38
+ | `--non-interactive` | CI/脚本下禁用交互式 prompt |
39
+ | `--json` | 输出 JSON(程序化读取) |
40
+
41
+ ## doctor 特有
42
+
43
+ doctor 是辅助阶段,用于诊断而非推进流程。配套的轻量诊断命令(不经 run):
44
+
45
+ ```bash
46
+ sillyspec progress show # 查看当前进度
47
+ sillyspec progress check # 状态一致性检查(只报告,不修复)
48
+ sillyspec progress repair # 修复状态元数据(dry-run)
49
+ sillyspec progress repair --apply # 真正修复
50
+ sillyspec progress validate # 校验并修复
51
+ sillyspec worktree doctor [--fix] # worktree 健康检查 + 修复
52
+ sillyspec doctor --align-execute-progress --change <name> # 按 plan.md 声明对齐 execute 派生戳(dry-run,只报告将补哪些 step)
53
+ sillyspec doctor --align-execute-progress --change <name> --confirm # 实际落盘:补 step 戳 + 置 execute stage status=completed
54
+ sillyspec doctor --cleanup-remnant # 扫描并报告 0 字节空占位 db(dry-run)
55
+ sillyspec doctor --cleanup-remnant --confirm # 实际删除空占位 db(仅删 0 字节,不动有内容的 db)
56
+ sillyspec doctor --dump-db --path <db 路径> # dump 指定 db 内容到文件(取证,查 stages/steps/changes 表)
57
+ sillyspec doctor --json # 结构化诊断 + 落盘 .sillyspec/.runtime/doctor-diagnosis.json
58
+ sillyspec runtime list # 枚举 .sillyspec/.runtime/ 下所有运行时产物(只读,看手上有哪些证据/状态文件)
59
+ ```
60
+
61
+ > `--align-execute-progress` 仅当 `plan.md` 所有 task checkbox 全勾时才对齐 execute 阶段进度戳。典型用于 worktree 已 cleanup(终态)但 execute 派生戳未盖上的死锁。默认 dry-run,加 `--confirm` 才写盘。doctor 信任 `plan.md` 声明、不复核代码,verify 阶段兜底。`--change` 缺省时按单活跃变更自动兜底。
62
+ >
63
+ > `--cleanup-remnant` 清理 init/平台切换残留的 0 字节空 db(占位但无数据)。默认 dry-run 只报告,`--confirm` 才删。绝不删有内容的 db。
64
+ >
65
+ > `runtime list` 是只读枚举:列出 `.sillyspec/.runtime/` 下的 db、doctor-diagnosis.json、workflow-runs/、user-inputs.md 等产物及用途。多会话/压缩后想知道「我手上有哪些证据文件」时用。加 `--json` 程序化读取。
66
+ >
67
+ > `doctor --json` 的 pointer_health 维度含 `pointer_missing_but_managed` 信号:项目根存在平台接管声明(`.sillyspec-platform-managed`)但恢复指针缺失——此状态下裸调命令会 fail-closed 拒绝静默落本地。恢复路径见信号文案:重跑平台 scan 重建指针 / `sillyspec platform disconnect` 彻底脱离 / 显式 `--spec-dir` 临时指定。
68
+
69
+ ## 铁律
70
+
71
+ - **必须用 exec 工具(shell)执行 CLI,不要自己编造流程**
72
+ - doctor 只诊断和建议,修复操作要让用户确认
73
+ - 完成后立即 `--done`,不跳过
74
+
75
+ ## 用户指令
76
+ $ARGUMENTS