zero-workspace 0.0.2

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 (507) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/README.md +187 -0
  3. package/config/component-versions.json +16 -0
  4. package/config/scenarioCapabilities.json +29 -0
  5. package/config/version-notes.yaml +244 -0
  6. package/dist/adapters/OutputAdapter.d.ts +79 -0
  7. package/dist/adapters/OutputAdapter.d.ts.map +1 -0
  8. package/dist/adapters/OutputAdapter.js +124 -0
  9. package/dist/adapters/OutputAdapter.js.map +1 -0
  10. package/dist/cli/check-node-version.d.ts +3 -0
  11. package/dist/cli/check-node-version.d.ts.map +1 -0
  12. package/dist/cli/check-node-version.js +153 -0
  13. package/dist/cli/check-node-version.js.map +1 -0
  14. package/dist/cli/plugins.d.ts +41 -0
  15. package/dist/cli/plugins.d.ts.map +1 -0
  16. package/dist/cli/plugins.js +742 -0
  17. package/dist/cli/plugins.js.map +1 -0
  18. package/dist/cli/rebuild.d.ts +63 -0
  19. package/dist/cli/rebuild.d.ts.map +1 -0
  20. package/dist/cli/rebuild.js +989 -0
  21. package/dist/cli/rebuild.js.map +1 -0
  22. package/dist/cli/repair.d.ts +7 -0
  23. package/dist/cli/repair.d.ts.map +1 -0
  24. package/dist/cli/repair.js +925 -0
  25. package/dist/cli/repair.js.map +1 -0
  26. package/dist/cli/setup.d.ts +7 -0
  27. package/dist/cli/setup.d.ts.map +1 -0
  28. package/dist/cli/setup.js +452 -0
  29. package/dist/cli/setup.js.map +1 -0
  30. package/dist/cli/update.d.ts +10 -0
  31. package/dist/cli/update.d.ts.map +1 -0
  32. package/dist/cli/update.js +426 -0
  33. package/dist/cli/update.js.map +1 -0
  34. package/dist/cli/webui.d.ts +6 -0
  35. package/dist/cli/webui.d.ts.map +1 -0
  36. package/dist/cli/webui.js +210 -0
  37. package/dist/cli/webui.js.map +1 -0
  38. package/dist/http/index.d.ts +3 -0
  39. package/dist/http/index.d.ts.map +1 -0
  40. package/dist/http/index.js +15 -0
  41. package/dist/http/index.js.map +1 -0
  42. package/dist/http/middleware/errorHandler.d.ts +16 -0
  43. package/dist/http/middleware/errorHandler.d.ts.map +1 -0
  44. package/dist/http/middleware/errorHandler.js +79 -0
  45. package/dist/http/middleware/errorHandler.js.map +1 -0
  46. package/dist/http/routes/admin.d.ts +3 -0
  47. package/dist/http/routes/admin.d.ts.map +1 -0
  48. package/dist/http/routes/admin.js +730 -0
  49. package/dist/http/routes/admin.js.map +1 -0
  50. package/dist/http/routes/backup.d.ts +3 -0
  51. package/dist/http/routes/backup.d.ts.map +1 -0
  52. package/dist/http/routes/backup.js +172 -0
  53. package/dist/http/routes/backup.js.map +1 -0
  54. package/dist/http/routes/config.d.ts +3 -0
  55. package/dist/http/routes/config.d.ts.map +1 -0
  56. package/dist/http/routes/config.js +157 -0
  57. package/dist/http/routes/config.js.map +1 -0
  58. package/dist/http/routes/context.d.ts +3 -0
  59. package/dist/http/routes/context.d.ts.map +1 -0
  60. package/dist/http/routes/context.js +82 -0
  61. package/dist/http/routes/context.js.map +1 -0
  62. package/dist/http/routes/log.d.ts +3 -0
  63. package/dist/http/routes/log.d.ts.map +1 -0
  64. package/dist/http/routes/log.js +105 -0
  65. package/dist/http/routes/log.js.map +1 -0
  66. package/dist/http/routes/memo.d.ts +6 -0
  67. package/dist/http/routes/memo.d.ts.map +1 -0
  68. package/dist/http/routes/memo.js +29 -0
  69. package/dist/http/routes/memo.js.map +1 -0
  70. package/dist/http/routes/node.d.ts +3 -0
  71. package/dist/http/routes/node.d.ts.map +1 -0
  72. package/dist/http/routes/node.js +251 -0
  73. package/dist/http/routes/node.js.map +1 -0
  74. package/dist/http/routes/state.d.ts +3 -0
  75. package/dist/http/routes/state.d.ts.map +1 -0
  76. package/dist/http/routes/state.js +48 -0
  77. package/dist/http/routes/state.js.map +1 -0
  78. package/dist/http/routes/workspace.d.ts +3 -0
  79. package/dist/http/routes/workspace.d.ts.map +1 -0
  80. package/dist/http/routes/workspace.js +249 -0
  81. package/dist/http/routes/workspace.js.map +1 -0
  82. package/dist/http/server.d.ts +10 -0
  83. package/dist/http/server.d.ts.map +1 -0
  84. package/dist/http/server.js +284 -0
  85. package/dist/http/server.js.map +1 -0
  86. package/dist/http/services.d.ts +93 -0
  87. package/dist/http/services.d.ts.map +1 -0
  88. package/dist/http/services.js +297 -0
  89. package/dist/http/services.js.map +1 -0
  90. package/dist/index.d.ts +3 -0
  91. package/dist/index.d.ts.map +1 -0
  92. package/dist/index.js +1073 -0
  93. package/dist/index.js.map +1 -0
  94. package/dist/prompts/guidanceContent.d.ts +18 -0
  95. package/dist/prompts/guidanceContent.d.ts.map +1 -0
  96. package/dist/prompts/guidanceContent.js +814 -0
  97. package/dist/prompts/guidanceContent.js.map +1 -0
  98. package/dist/prompts/index.d.ts +2 -0
  99. package/dist/prompts/index.d.ts.map +1 -0
  100. package/dist/prompts/index.js +4 -0
  101. package/dist/prompts/index.js.map +1 -0
  102. package/dist/prompts/instructions.d.ts +56 -0
  103. package/dist/prompts/instructions.d.ts.map +1 -0
  104. package/dist/prompts/instructions.js +1343 -0
  105. package/dist/prompts/instructions.js.map +1 -0
  106. package/dist/services/BackupService.d.ts +104 -0
  107. package/dist/services/BackupService.d.ts.map +1 -0
  108. package/dist/services/BackupService.js +549 -0
  109. package/dist/services/BackupService.js.map +1 -0
  110. package/dist/services/CapabilityService.d.ts +38 -0
  111. package/dist/services/CapabilityService.d.ts.map +1 -0
  112. package/dist/services/CapabilityService.js +256 -0
  113. package/dist/services/CapabilityService.js.map +1 -0
  114. package/dist/services/ConfigService.d.ts +35 -0
  115. package/dist/services/ConfigService.d.ts.map +1 -0
  116. package/dist/services/ConfigService.js +105 -0
  117. package/dist/services/ConfigService.js.map +1 -0
  118. package/dist/services/ContextService.d.ts +65 -0
  119. package/dist/services/ContextService.d.ts.map +1 -0
  120. package/dist/services/ContextService.js +503 -0
  121. package/dist/services/ContextService.js.map +1 -0
  122. package/dist/services/DetectionService.d.ts +76 -0
  123. package/dist/services/DetectionService.d.ts.map +1 -0
  124. package/dist/services/DetectionService.js +262 -0
  125. package/dist/services/DetectionService.js.map +1 -0
  126. package/dist/services/DispatchService.d.ts +267 -0
  127. package/dist/services/DispatchService.d.ts.map +1 -0
  128. package/dist/services/DispatchService.js +1357 -0
  129. package/dist/services/DispatchService.js.map +1 -0
  130. package/dist/services/EventService.d.ts +81 -0
  131. package/dist/services/EventService.d.ts.map +1 -0
  132. package/dist/services/EventService.js +187 -0
  133. package/dist/services/EventService.js.map +1 -0
  134. package/dist/services/GuidanceService.d.ts +64 -0
  135. package/dist/services/GuidanceService.d.ts.map +1 -0
  136. package/dist/services/GuidanceService.js +259 -0
  137. package/dist/services/GuidanceService.js.map +1 -0
  138. package/dist/services/HealthService.d.ts +43 -0
  139. package/dist/services/HealthService.d.ts.map +1 -0
  140. package/dist/services/HealthService.js +276 -0
  141. package/dist/services/HealthService.js.map +1 -0
  142. package/dist/services/InstallationService.d.ts +62 -0
  143. package/dist/services/InstallationService.d.ts.map +1 -0
  144. package/dist/services/InstallationService.js +204 -0
  145. package/dist/services/InstallationService.js.map +1 -0
  146. package/dist/services/LogService.d.ts +35 -0
  147. package/dist/services/LogService.d.ts.map +1 -0
  148. package/dist/services/LogService.js +189 -0
  149. package/dist/services/LogService.js.map +1 -0
  150. package/dist/services/MemoService.d.ts +39 -0
  151. package/dist/services/MemoService.d.ts.map +1 -0
  152. package/dist/services/MemoService.js +288 -0
  153. package/dist/services/MemoService.js.map +1 -0
  154. package/dist/services/NodeService.d.ts +90 -0
  155. package/dist/services/NodeService.d.ts.map +1 -0
  156. package/dist/services/NodeService.js +958 -0
  157. package/dist/services/NodeService.js.map +1 -0
  158. package/dist/services/OpenSpecParser.d.ts +43 -0
  159. package/dist/services/OpenSpecParser.d.ts.map +1 -0
  160. package/dist/services/OpenSpecParser.js +191 -0
  161. package/dist/services/OpenSpecParser.js.map +1 -0
  162. package/dist/services/ReferenceService.d.ts +35 -0
  163. package/dist/services/ReferenceService.d.ts.map +1 -0
  164. package/dist/services/ReferenceService.js +195 -0
  165. package/dist/services/ReferenceService.js.map +1 -0
  166. package/dist/services/RepairService.d.ts +36 -0
  167. package/dist/services/RepairService.d.ts.map +1 -0
  168. package/dist/services/RepairService.js +429 -0
  169. package/dist/services/RepairService.js.map +1 -0
  170. package/dist/services/SearchService.d.ts +34 -0
  171. package/dist/services/SearchService.d.ts.map +1 -0
  172. package/dist/services/SearchService.js +293 -0
  173. package/dist/services/SearchService.js.map +1 -0
  174. package/dist/services/SessionService.d.ts +136 -0
  175. package/dist/services/SessionService.d.ts.map +1 -0
  176. package/dist/services/SessionService.js +297 -0
  177. package/dist/services/SessionService.js.map +1 -0
  178. package/dist/services/StateService.d.ts +97 -0
  179. package/dist/services/StateService.d.ts.map +1 -0
  180. package/dist/services/StateService.js +846 -0
  181. package/dist/services/StateService.js.map +1 -0
  182. package/dist/services/TutorialService.d.ts +114 -0
  183. package/dist/services/TutorialService.d.ts.map +1 -0
  184. package/dist/services/TutorialService.js +1262 -0
  185. package/dist/services/TutorialService.js.map +1 -0
  186. package/dist/services/WorkspaceService.d.ts +273 -0
  187. package/dist/services/WorkspaceService.d.ts.map +1 -0
  188. package/dist/services/WorkspaceService.js +1764 -0
  189. package/dist/services/WorkspaceService.js.map +1 -0
  190. package/dist/services/index.d.ts +15 -0
  191. package/dist/services/index.d.ts.map +1 -0
  192. package/dist/services/index.js +14 -0
  193. package/dist/services/index.js.map +1 -0
  194. package/dist/storage/FileSystemAdapter.d.ts +223 -0
  195. package/dist/storage/FileSystemAdapter.d.ts.map +1 -0
  196. package/dist/storage/FileSystemAdapter.js +384 -0
  197. package/dist/storage/FileSystemAdapter.js.map +1 -0
  198. package/dist/storage/JsonStorage.d.ts +158 -0
  199. package/dist/storage/JsonStorage.d.ts.map +1 -0
  200. package/dist/storage/JsonStorage.js +613 -0
  201. package/dist/storage/JsonStorage.js.map +1 -0
  202. package/dist/storage/MarkdownStorage.d.ts +178 -0
  203. package/dist/storage/MarkdownStorage.d.ts.map +1 -0
  204. package/dist/storage/MarkdownStorage.js +918 -0
  205. package/dist/storage/MarkdownStorage.js.map +1 -0
  206. package/dist/storage/SessionBindingStorage.d.ts +69 -0
  207. package/dist/storage/SessionBindingStorage.d.ts.map +1 -0
  208. package/dist/storage/SessionBindingStorage.js +131 -0
  209. package/dist/storage/SessionBindingStorage.js.map +1 -0
  210. package/dist/storage/index.d.ts +6 -0
  211. package/dist/storage/index.d.ts.map +1 -0
  212. package/dist/storage/index.js +6 -0
  213. package/dist/storage/index.js.map +1 -0
  214. package/dist/tools/capability.d.ts +18 -0
  215. package/dist/tools/capability.d.ts.map +1 -0
  216. package/dist/tools/capability.js +73 -0
  217. package/dist/tools/capability.js.map +1 -0
  218. package/dist/tools/config.d.ts +14 -0
  219. package/dist/tools/config.d.ts.map +1 -0
  220. package/dist/tools/config.js +61 -0
  221. package/dist/tools/config.js.map +1 -0
  222. package/dist/tools/context.d.ts +22 -0
  223. package/dist/tools/context.d.ts.map +1 -0
  224. package/dist/tools/context.js +139 -0
  225. package/dist/tools/context.js.map +1 -0
  226. package/dist/tools/dispatch.d.ts +41 -0
  227. package/dist/tools/dispatch.d.ts.map +1 -0
  228. package/dist/tools/dispatch.js +380 -0
  229. package/dist/tools/dispatch.js.map +1 -0
  230. package/dist/tools/help.d.ts +44 -0
  231. package/dist/tools/help.d.ts.map +1 -0
  232. package/dist/tools/help.js +227 -0
  233. package/dist/tools/help.js.map +1 -0
  234. package/dist/tools/import.d.ts +17 -0
  235. package/dist/tools/import.d.ts.map +1 -0
  236. package/dist/tools/import.js +96 -0
  237. package/dist/tools/import.js.map +1 -0
  238. package/dist/tools/index.d.ts +12 -0
  239. package/dist/tools/index.d.ts.map +1 -0
  240. package/dist/tools/index.js +13 -0
  241. package/dist/tools/index.js.map +1 -0
  242. package/dist/tools/log.d.ts +21 -0
  243. package/dist/tools/log.d.ts.map +1 -0
  244. package/dist/tools/log.js +93 -0
  245. package/dist/tools/log.js.map +1 -0
  246. package/dist/tools/memo.d.ts +26 -0
  247. package/dist/tools/memo.d.ts.map +1 -0
  248. package/dist/tools/memo.js +188 -0
  249. package/dist/tools/memo.js.map +1 -0
  250. package/dist/tools/node.d.ts +34 -0
  251. package/dist/tools/node.d.ts.map +1 -0
  252. package/dist/tools/node.js +328 -0
  253. package/dist/tools/node.js.map +1 -0
  254. package/dist/tools/search.d.ts +14 -0
  255. package/dist/tools/search.d.ts.map +1 -0
  256. package/dist/tools/search.js +95 -0
  257. package/dist/tools/search.js.map +1 -0
  258. package/dist/tools/session.d.ts +22 -0
  259. package/dist/tools/session.d.ts.map +1 -0
  260. package/dist/tools/session.js +127 -0
  261. package/dist/tools/session.js.map +1 -0
  262. package/dist/tools/state.d.ts +10 -0
  263. package/dist/tools/state.d.ts.map +1 -0
  264. package/dist/tools/state.js +79 -0
  265. package/dist/tools/state.js.map +1 -0
  266. package/dist/tools/workspace.d.ts +38 -0
  267. package/dist/tools/workspace.d.ts.map +1 -0
  268. package/dist/tools/workspace.js +240 -0
  269. package/dist/tools/workspace.js.map +1 -0
  270. package/dist/types/capability.d.ts +36 -0
  271. package/dist/types/capability.d.ts.map +1 -0
  272. package/dist/types/capability.js +3 -0
  273. package/dist/types/capability.js.map +1 -0
  274. package/dist/types/confirmation.d.ts +35 -0
  275. package/dist/types/confirmation.d.ts.map +1 -0
  276. package/dist/types/confirmation.js +3 -0
  277. package/dist/types/confirmation.js.map +1 -0
  278. package/dist/types/context.d.ts +174 -0
  279. package/dist/types/context.d.ts.map +1 -0
  280. package/dist/types/context.js +3 -0
  281. package/dist/types/context.js.map +1 -0
  282. package/dist/types/errors.d.ts +81 -0
  283. package/dist/types/errors.d.ts.map +1 -0
  284. package/dist/types/errors.js +154 -0
  285. package/dist/types/errors.js.map +1 -0
  286. package/dist/types/guidance.d.ts +162 -0
  287. package/dist/types/guidance.d.ts.map +1 -0
  288. package/dist/types/guidance.js +4 -0
  289. package/dist/types/guidance.js.map +1 -0
  290. package/dist/types/health.d.ts +61 -0
  291. package/dist/types/health.d.ts.map +1 -0
  292. package/dist/types/health.js +3 -0
  293. package/dist/types/health.js.map +1 -0
  294. package/dist/types/index.d.ts +10 -0
  295. package/dist/types/index.d.ts.map +1 -0
  296. package/dist/types/index.js +11 -0
  297. package/dist/types/index.js.map +1 -0
  298. package/dist/types/memo.d.ts +132 -0
  299. package/dist/types/memo.d.ts.map +1 -0
  300. package/dist/types/memo.js +3 -0
  301. package/dist/types/memo.js.map +1 -0
  302. package/dist/types/node.d.ts +316 -0
  303. package/dist/types/node.d.ts.map +1 -0
  304. package/dist/types/node.js +3 -0
  305. package/dist/types/node.js.map +1 -0
  306. package/dist/types/repair.d.ts +62 -0
  307. package/dist/types/repair.d.ts.map +1 -0
  308. package/dist/types/repair.js +4 -0
  309. package/dist/types/repair.js.map +1 -0
  310. package/dist/types/search.d.ts +58 -0
  311. package/dist/types/search.d.ts.map +1 -0
  312. package/dist/types/search.js +3 -0
  313. package/dist/types/search.js.map +1 -0
  314. package/dist/types/settings.d.ts +109 -0
  315. package/dist/types/settings.d.ts.map +1 -0
  316. package/dist/types/settings.js +30 -0
  317. package/dist/types/settings.js.map +1 -0
  318. package/dist/types/workspace.d.ts +357 -0
  319. package/dist/types/workspace.d.ts.map +1 -0
  320. package/dist/types/workspace.js +3 -0
  321. package/dist/types/workspace.js.map +1 -0
  322. package/dist/utils/contentValidation.d.ts +47 -0
  323. package/dist/utils/contentValidation.d.ts.map +1 -0
  324. package/dist/utils/contentValidation.js +93 -0
  325. package/dist/utils/contentValidation.js.map +1 -0
  326. package/dist/utils/devLog.d.ts +43 -0
  327. package/dist/utils/devLog.d.ts.map +1 -0
  328. package/dist/utils/devLog.js +94 -0
  329. package/dist/utils/devLog.js.map +1 -0
  330. package/dist/utils/errorLogger.d.ts +27 -0
  331. package/dist/utils/errorLogger.d.ts.map +1 -0
  332. package/dist/utils/errorLogger.js +105 -0
  333. package/dist/utils/errorLogger.js.map +1 -0
  334. package/dist/utils/git.d.ts +123 -0
  335. package/dist/utils/git.d.ts.map +1 -0
  336. package/dist/utils/git.js +400 -0
  337. package/dist/utils/git.js.map +1 -0
  338. package/dist/utils/hash.d.ts +32 -0
  339. package/dist/utils/hash.d.ts.map +1 -0
  340. package/dist/utils/hash.js +37 -0
  341. package/dist/utils/hash.js.map +1 -0
  342. package/dist/utils/id.d.ts +54 -0
  343. package/dist/utils/id.d.ts.map +1 -0
  344. package/dist/utils/id.js +96 -0
  345. package/dist/utils/id.js.map +1 -0
  346. package/dist/utils/index.d.ts +8 -0
  347. package/dist/utils/index.d.ts.map +1 -0
  348. package/dist/utils/index.js +9 -0
  349. package/dist/utils/index.js.map +1 -0
  350. package/dist/utils/logger.d.ts +42 -0
  351. package/dist/utils/logger.d.ts.map +1 -0
  352. package/dist/utils/logger.js +228 -0
  353. package/dist/utils/logger.js.map +1 -0
  354. package/dist/utils/manualChangeFormatter.d.ts +8 -0
  355. package/dist/utils/manualChangeFormatter.d.ts.map +1 -0
  356. package/dist/utils/manualChangeFormatter.js +21 -0
  357. package/dist/utils/manualChangeFormatter.js.map +1 -0
  358. package/dist/utils/paramValidator.d.ts +35 -0
  359. package/dist/utils/paramValidator.d.ts.map +1 -0
  360. package/dist/utils/paramValidator.js +214 -0
  361. package/dist/utils/paramValidator.js.map +1 -0
  362. package/dist/utils/port.d.ts +7 -0
  363. package/dist/utils/port.d.ts.map +1 -0
  364. package/dist/utils/port.js +28 -0
  365. package/dist/utils/port.js.map +1 -0
  366. package/dist/utils/processManager.d.ts +53 -0
  367. package/dist/utils/processManager.d.ts.map +1 -0
  368. package/dist/utils/processManager.js +267 -0
  369. package/dist/utils/processManager.js.map +1 -0
  370. package/dist/utils/sessionLogger.d.ts +28 -0
  371. package/dist/utils/sessionLogger.d.ts.map +1 -0
  372. package/dist/utils/sessionLogger.js +142 -0
  373. package/dist/utils/sessionLogger.js.map +1 -0
  374. package/dist/utils/time.d.ts +15 -0
  375. package/dist/utils/time.d.ts.map +1 -0
  376. package/dist/utils/time.js +32 -0
  377. package/dist/utils/time.js.map +1 -0
  378. package/dist/utils/validation.d.ts +23 -0
  379. package/dist/utils/validation.d.ts.map +1 -0
  380. package/dist/utils/validation.js +88 -0
  381. package/dist/utils/validation.js.map +1 -0
  382. package/docs//346/227/245/345/277/227/347/263/273/347/273/237.md +389 -0
  383. package/docs//347/224/250/346/210/267/346/211/213/345/206/214.md +1446 -0
  384. package/docs//347/224/250/346/210/267/346/211/213/345/206/214/344/270/216/346/212/200/346/234/257/346/214/207/345/215/227.md +873 -0
  385. package/package.json +94 -0
  386. package/plugin/README.md +141 -0
  387. package/plugin/agents/zero-executor.md +114 -0
  388. package/plugin/agents/zero-reviewer.md +133 -0
  389. package/plugin/docs/diagnostic-guide.md +128 -0
  390. package/plugin/hooks/hooks.json.deprecated +70 -0
  391. package/plugin/scripts/cursor-hook-entry.cjs +217 -0
  392. package/plugin/scripts/hook-entry.cjs +663 -0
  393. package/plugin/scripts/openspec-import.cjs +714 -0
  394. package/plugin/scripts/shared/binding.cjs +98 -0
  395. package/plugin/scripts/shared/config.cjs +65 -0
  396. package/plugin/scripts/shared/context.cjs +120 -0
  397. package/plugin/scripts/shared/index.cjs +34 -0
  398. package/plugin/scripts/shared/logger.cjs +196 -0
  399. package/plugin/scripts/shared/reminder.cjs +261 -0
  400. package/plugin/scripts/shared/utils.cjs +62 -0
  401. package/plugin/scripts/shared/workspace.cjs +322 -0
  402. package/plugin/skills/aligning-intent/SKILL.md +275 -0
  403. package/plugin/skills/analyzing-measurements/SKILL.md +223 -0
  404. package/plugin/skills/bootstrapping-workspace/SKILL.md +260 -0
  405. package/plugin/skills/designing-solutions/SKILL.md +363 -0
  406. package/plugin/skills/diagnosing-issues/SKILL.md +219 -0
  407. package/plugin/skills/discovering-context/SKILL.md +283 -0
  408. package/plugin/skills/dispatching-parent/SKILL.md +399 -0
  409. package/plugin/skills/executing-task/SKILL.md +340 -0
  410. package/plugin/skills/memo-create/SKILL.md +222 -0
  411. package/plugin/skills/planning-verification/SKILL.md +245 -0
  412. package/plugin/skills/preparing-dispatch/SKILL.md +299 -0
  413. package/plugin/skills/researching-tech/SKILL.md +223 -0
  414. package/plugin/skills/reviewing-quality/SKILL.md +354 -0
  415. package/plugin/skills/reviewing-spec/SKILL.md +333 -0
  416. package/plugin/skills/starting-info-flow/SKILL.md +196 -0
  417. package/web/README.md +5 -0
  418. package/web/dist/assets/DocsView-Bls_Vjsr.css +1 -0
  419. package/web/dist/assets/DocsView-Cxc0B63r.js +1447 -0
  420. package/web/dist/assets/HomeView-C7df9thb.js +9 -0
  421. package/web/dist/assets/HomeView-ufUdnfHk.css +1 -0
  422. package/web/dist/assets/MarkdownContent-DXp6CtSP.js +308 -0
  423. package/web/dist/assets/MarkdownContent-NFqiOBLH.css +1 -0
  424. package/web/dist/assets/NotFoundView-BYX1oZAn.css +1 -0
  425. package/web/dist/assets/NotFoundView-zrc0lT9q.js +1 -0
  426. package/web/dist/assets/WorkspaceView-BckqgNcX.js +27 -0
  427. package/web/dist/assets/WorkspaceView-J1dgpYMx.css +1 -0
  428. package/web/dist/assets/WsConfirmDialog-C1CvL4my.css +1 -0
  429. package/web/dist/assets/WsConfirmDialog-gLEP7uBD.js +4 -0
  430. package/web/dist/assets/arc-DPkKTkUT.js +1 -0
  431. package/web/dist/assets/architectureDiagram-VXUJARFQ-CEGpqUlZ.js +36 -0
  432. package/web/dist/assets/blockDiagram-VD42YOAC-Bv-mqdQH.js +122 -0
  433. package/web/dist/assets/c4Diagram-YG6GDRKO-DRyPatZ_.js +10 -0
  434. package/web/dist/assets/channel-B84mKLDZ.js +1 -0
  435. package/web/dist/assets/chunk-4BX2VUAB-c7DivX0u.js +1 -0
  436. package/web/dist/assets/chunk-55IACEB6-CGKTaLlo.js +1 -0
  437. package/web/dist/assets/chunk-B4BG7PRW-Czhx5Q_P.js +165 -0
  438. package/web/dist/assets/chunk-DI55MBZ5-CQVA7hcZ.js +220 -0
  439. package/web/dist/assets/chunk-FMBD7UC4-hEiPmi7V.js +15 -0
  440. package/web/dist/assets/chunk-QN33PNHL-rL6yYI-E.js +1 -0
  441. package/web/dist/assets/chunk-QZHKN3VN-BRyHBBzq.js +1 -0
  442. package/web/dist/assets/chunk-TZMSLE5B-D4PXmTz9.js +1 -0
  443. package/web/dist/assets/classDiagram-2ON5EDUG-CNn53ohi.js +1 -0
  444. package/web/dist/assets/classDiagram-v2-WZHVMYZB-CNn53ohi.js +1 -0
  445. package/web/dist/assets/cose-bilkent-S5V4N54A-BAREnRga.js +1 -0
  446. package/web/dist/assets/cytoscape.esm-BnkdMOzK.js +321 -0
  447. package/web/dist/assets/dagre-6UL2VRFP-DaYzb3MT.js +4 -0
  448. package/web/dist/assets/defaultLocale-C4B-KCzX.js +1 -0
  449. package/web/dist/assets/diagram-PSM6KHXK-BFltDqvd.js +24 -0
  450. package/web/dist/assets/diagram-QEK2KX5R-CR4VU2La.js +43 -0
  451. package/web/dist/assets/diagram-S2PKOQOG-0UfIeT-1.js +24 -0
  452. package/web/dist/assets/erDiagram-Q2GNP2WA-Bo17Xmng.js +60 -0
  453. package/web/dist/assets/flowDiagram-NV44I4VS-CzqhQp8s.js +162 -0
  454. package/web/dist/assets/ganttDiagram-JELNMOA3-TXwXtUcq.js +267 -0
  455. package/web/dist/assets/gitGraphDiagram-NY62KEGX-CoFQTy9O.js +65 -0
  456. package/web/dist/assets/graph-CIQcRIVd.js +1 -0
  457. package/web/dist/assets/index-BgLd_o_M.css +1 -0
  458. package/web/dist/assets/index-Cd_J3fZn.js +30 -0
  459. package/web/dist/assets/infoDiagram-WHAUD3N6-Dq0xXfVu.js +2 -0
  460. package/web/dist/assets/init-Gi6I4Gst.js +1 -0
  461. package/web/dist/assets/journeyDiagram-XKPGCS4Q-jIg5BOfC.js +139 -0
  462. package/web/dist/assets/kanban-definition-3W4ZIXB7-D2giu6aZ.js +89 -0
  463. package/web/dist/assets/katex-XbL3y5x-.js +261 -0
  464. package/web/dist/assets/layout-Bm-XCM-8.js +1 -0
  465. package/web/dist/assets/linear-FbekP9OZ.js +1 -0
  466. package/web/dist/assets/min-BrRCpYmF.js +1 -0
  467. package/web/dist/assets/mindmap-definition-VGOIOE7T-o-4ubbY9.js +68 -0
  468. package/web/dist/assets/noto-emoji-0-400-normal-BTQbhB77.woff +0 -0
  469. package/web/dist/assets/noto-emoji-0-400-normal-DHdy6Uhy.woff2 +0 -0
  470. package/web/dist/assets/noto-emoji-1-400-normal-0IvkdXBB.woff +0 -0
  471. package/web/dist/assets/noto-emoji-1-400-normal-BY9OovbM.woff2 +0 -0
  472. package/web/dist/assets/noto-emoji-10-400-normal-D9w4QCof.woff2 +0 -0
  473. package/web/dist/assets/noto-emoji-10-400-normal-DtCumcZR.woff +0 -0
  474. package/web/dist/assets/noto-emoji-11-400-normal-BboTlyvx.woff +0 -0
  475. package/web/dist/assets/noto-emoji-12-400-normal-BB5pgBKj.woff2 +0 -0
  476. package/web/dist/assets/noto-emoji-12-400-normal-g186qhiA.woff +0 -0
  477. package/web/dist/assets/noto-emoji-2-400-normal-BKCR1azW.woff2 +0 -0
  478. package/web/dist/assets/noto-emoji-2-400-normal-BYH0KhDr.woff +0 -0
  479. package/web/dist/assets/noto-emoji-3-400-normal-CnPTUeEK.woff +0 -0
  480. package/web/dist/assets/noto-emoji-3-400-normal-TrTb2VQM.woff2 +0 -0
  481. package/web/dist/assets/noto-emoji-4-400-normal-BxD0KVdj.woff +0 -0
  482. package/web/dist/assets/noto-emoji-4-400-normal-s_n9EyG1.woff2 +0 -0
  483. package/web/dist/assets/noto-emoji-5-400-normal-C190AIxR.woff +0 -0
  484. package/web/dist/assets/noto-emoji-5-400-normal-Ctfx4xc6.woff2 +0 -0
  485. package/web/dist/assets/noto-emoji-6-400-normal-DlXlXWt7.woff +0 -0
  486. package/web/dist/assets/noto-emoji-6-400-normal-NzsjD754.woff2 +0 -0
  487. package/web/dist/assets/noto-emoji-7-400-normal-BHP8KeA6.woff2 +0 -0
  488. package/web/dist/assets/noto-emoji-7-400-normal-CtuKhtAZ.woff +0 -0
  489. package/web/dist/assets/noto-emoji-8-400-normal-DR49ZFe7.woff +0 -0
  490. package/web/dist/assets/noto-emoji-8-400-normal-Dvmkf6b2.woff2 +0 -0
  491. package/web/dist/assets/noto-emoji-9-400-normal-BeHJQ2iK.woff2 +0 -0
  492. package/web/dist/assets/noto-emoji-9-400-normal-BlXmCgeQ.woff +0 -0
  493. package/web/dist/assets/ordinal-Cboi1Yqb.js +1 -0
  494. package/web/dist/assets/pieDiagram-ADFJNKIX-C45wSpld.js +30 -0
  495. package/web/dist/assets/quadrantDiagram-AYHSOK5B-tv-_fe-W.js +7 -0
  496. package/web/dist/assets/reduce-CoLNNlNb.js +1 -0
  497. package/web/dist/assets/requirementDiagram-UZGBJVZJ-Dn6PDfkL.js +64 -0
  498. package/web/dist/assets/sankeyDiagram-TZEHDZUN-CbXTZAsG.js +10 -0
  499. package/web/dist/assets/sequenceDiagram-WL72ISMW-B-o1CUJ5.js +145 -0
  500. package/web/dist/assets/stateDiagram-FKZM4ZOC-hzrupXQi.js +1 -0
  501. package/web/dist/assets/stateDiagram-v2-4FDKWEC3-DN-c2M96.js +1 -0
  502. package/web/dist/assets/timeline-definition-IT6M3QCI-R5SP9GDo.js +61 -0
  503. package/web/dist/assets/treemap-KMMF4GRG-Pg9KlUOt.js +128 -0
  504. package/web/dist/assets/xychartDiagram-PRI3JC2R-C3vbJhd1.js +7 -0
  505. package/web/dist/favicon.svg +13 -0
  506. package/web/dist/index.html +17 -0
  507. package//351/205/215/347/275/256/346/226/271/345/274/217.md +330 -0
@@ -0,0 +1,174 @@
1
+ import type { NodeStatus, AcceptanceCriteria } from "./node.js";
2
+ import type { DispatchConfig, DocRef } from "./workspace.js";
3
+ export type { DocRef };
4
+ /**
5
+ * 带类型的日志条目(Phase 2)
6
+ */
7
+ export interface TypedLogEntry {
8
+ timestamp: string;
9
+ operator: "AI" | "Human";
10
+ event: string;
11
+ }
12
+ /**
13
+ * 上下文链项
14
+ */
15
+ export interface ContextChainItem {
16
+ nodeId: string;
17
+ title: string;
18
+ requirement: string;
19
+ docs: DocRef[];
20
+ note: string;
21
+ conclusion?: string;
22
+ problem?: string;
23
+ logEntries?: TypedLogEntry[];
24
+ acceptanceCriteria?: AcceptanceCriteria[];
25
+ }
26
+ /**
27
+ * 子节点结论项
28
+ */
29
+ export interface ChildConclusionItem {
30
+ nodeId: string;
31
+ title: string;
32
+ status: NodeStatus;
33
+ conclusion: string;
34
+ }
35
+ /**
36
+ * Memo 引用项
37
+ */
38
+ export interface MemoReferenceItem {
39
+ memoId: string;
40
+ title: string;
41
+ summary: string;
42
+ content: string;
43
+ tags: string[];
44
+ }
45
+ /**
46
+ * context_get 结果
47
+ */
48
+ export interface ContextGetResult {
49
+ workspace: {
50
+ goal: string;
51
+ rules: string[];
52
+ rulesHash: string;
53
+ docs: DocRef[];
54
+ dispatch?: DispatchConfig;
55
+ };
56
+ chain: ContextChainItem[];
57
+ references: ContextChainItem[];
58
+ memoReferences: MemoReferenceItem[];
59
+ childConclusions: ChildConclusionItem[];
60
+ conclusionsHash: string;
61
+ hint?: string;
62
+ guidance?: string;
63
+ }
64
+ /**
65
+ * context_get 输入
66
+ */
67
+ export interface ContextGetParams {
68
+ workspaceId: string;
69
+ nodeId: string;
70
+ includeLog?: boolean;
71
+ maxLogEntries?: number;
72
+ reverseLog?: boolean;
73
+ includeProblem?: boolean;
74
+ }
75
+ /**
76
+ * context_focus 输入
77
+ */
78
+ export interface ContextFocusParams {
79
+ workspaceId: string;
80
+ nodeId: string;
81
+ }
82
+ /**
83
+ * context_focus 输出
84
+ */
85
+ export interface ContextFocusResult {
86
+ success: boolean;
87
+ previousFocus: string | null;
88
+ currentFocus: string;
89
+ error?: "CONCLUSION_STALE";
90
+ staleNodeId?: string;
91
+ hint?: string;
92
+ }
93
+ /**
94
+ * node_isolate 输入
95
+ */
96
+ export interface NodeIsolateParams {
97
+ workspaceId: string;
98
+ nodeId: string;
99
+ isolate: boolean;
100
+ }
101
+ /**
102
+ * node_isolate 输出
103
+ */
104
+ export interface NodeIsolateResult {
105
+ success: boolean;
106
+ }
107
+ /**
108
+ * node_reference 操作类型
109
+ */
110
+ export type ReferenceAction = "add" | "remove";
111
+ /**
112
+ * node_reference 输入
113
+ */
114
+ export interface NodeReferenceParams {
115
+ workspaceId: string;
116
+ nodeId: string;
117
+ targetIdOrPath: string;
118
+ action: ReferenceAction;
119
+ description?: string;
120
+ }
121
+ /**
122
+ * node_reference 输出
123
+ */
124
+ export interface NodeReferenceResult {
125
+ success: boolean;
126
+ references: DocRef[];
127
+ }
128
+ /**
129
+ * log_append 输入
130
+ */
131
+ export interface LogAppendParams {
132
+ workspaceId: string;
133
+ nodeId?: string;
134
+ operator: "AI" | "Human";
135
+ event: string;
136
+ }
137
+ /**
138
+ * log_append 输出
139
+ */
140
+ export interface LogAppendResult {
141
+ success: boolean;
142
+ timestamp: string;
143
+ hint?: string;
144
+ }
145
+ /**
146
+ * problem_update 输入
147
+ */
148
+ export interface ProblemUpdateParams {
149
+ workspaceId: string;
150
+ nodeId?: string;
151
+ problem: string;
152
+ nextStep?: string;
153
+ }
154
+ /**
155
+ * problem_update 输出
156
+ */
157
+ export interface ProblemUpdateResult {
158
+ success: boolean;
159
+ hint?: string;
160
+ }
161
+ /**
162
+ * problem_clear 输入
163
+ */
164
+ export interface ProblemClearParams {
165
+ workspaceId: string;
166
+ nodeId?: string;
167
+ }
168
+ /**
169
+ * problem_clear 输出
170
+ */
171
+ export interface ProblemClearResult {
172
+ success: boolean;
173
+ }
174
+ //# sourceMappingURL=context.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ // src/types/context.ts
2
+ export {};
3
+ //# sourceMappingURL=context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/types/context.ts"],"names":[],"mappings":"AAAA,uBAAuB"}
@@ -0,0 +1,81 @@
1
+ /**
2
+ * 错误码定义
3
+ */
4
+ export declare const ErrorCodes: {
5
+ readonly WORKSPACE_EXISTS: "WORKSPACE_EXISTS";
6
+ readonly WORKSPACE_NOT_FOUND: "WORKSPACE_NOT_FOUND";
7
+ readonly WORKSPACE_ACTIVE: "WORKSPACE_ACTIVE";
8
+ readonly WORKSPACE_ARCHIVED: "WORKSPACE_ARCHIVED";
9
+ readonly WORKSPACE_ERROR: "WORKSPACE_ERROR";
10
+ readonly INVALID_NAME: "INVALID_NAME";
11
+ readonly INVALID_PATH: "INVALID_PATH";
12
+ readonly INIT_FAILED: "INIT_FAILED";
13
+ readonly NODE_NOT_FOUND: "NODE_NOT_FOUND";
14
+ readonly PARENT_NOT_FOUND: "PARENT_NOT_FOUND";
15
+ readonly INVALID_TITLE: "INVALID_TITLE";
16
+ readonly INVALID_CONTENT: "INVALID_CONTENT";
17
+ readonly CANNOT_DELETE_ROOT: "CANNOT_DELETE_ROOT";
18
+ readonly INVALID_TRANSITION: "INVALID_TRANSITION";
19
+ readonly CONCLUSION_REQUIRED: "CONCLUSION_REQUIRED";
20
+ readonly CONCLUSION_TOO_LONG: "CONCLUSION_TOO_LONG";
21
+ readonly CONCLUSION_STALE: "CONCLUSION_STALE";
22
+ readonly CONCLUSIONS_HASH_REQUIRED: "CONCLUSIONS_HASH_REQUIRED";
23
+ readonly CONCLUSIONS_HASH_MISMATCH: "CONCLUSIONS_HASH_MISMATCH";
24
+ readonly INFO_COLLECTION_REQUIRED: "INFO_COLLECTION_REQUIRED";
25
+ readonly INVALID_CONFIRMATION_TOKEN: "INVALID_CONFIRMATION_TOKEN";
26
+ readonly CONFIRMATION_MISMATCH: "CONFIRMATION_MISMATCH";
27
+ readonly REFERENCE_NOT_FOUND: "REFERENCE_NOT_FOUND";
28
+ readonly REFERENCE_EXISTS: "REFERENCE_EXISTS";
29
+ readonly MEMO_NOT_FOUND: "MEMO_NOT_FOUND";
30
+ readonly LOG_APPEND_FAILED: "LOG_APPEND_FAILED";
31
+ readonly INVALID_NODE_TYPE: "INVALID_NODE_TYPE";
32
+ readonly INVALID_NODE_ROLE: "INVALID_NODE_ROLE";
33
+ readonly EXECUTION_CANNOT_HAVE_CHILDREN: "EXECUTION_CANNOT_HAVE_CHILDREN";
34
+ readonly INVALID_PARENT_STATUS: "INVALID_PARENT_STATUS";
35
+ readonly INCOMPLETE_CHILDREN: "INCOMPLETE_CHILDREN";
36
+ readonly CONCURRENT_EXECUTION: "CONCURRENT_EXECUTION";
37
+ readonly RULES_HASH_MISMATCH: "RULES_HASH_MISMATCH";
38
+ readonly INVALID_PARAMS: "INVALID_PARAMS";
39
+ readonly UNKNOWN_PARAMS: "UNKNOWN_PARAMS";
40
+ readonly CONTENT_CHANGED: "CONTENT_CHANGED";
41
+ readonly NO_MATCH: "NO_MATCH";
42
+ readonly MULTI_MATCH: "MULTI_MATCH";
43
+ readonly GRAPH_CORRUPTED: "GRAPH_CORRUPTED";
44
+ readonly NODE_DIR_MISSING: "NODE_DIR_MISSING";
45
+ readonly NODE_INFO_MISSING: "NODE_INFO_MISSING";
46
+ readonly GIT_NOT_FOUND: "GIT_NOT_FOUND";
47
+ readonly DISPATCH_CONFLICT: "DISPATCH_CONFLICT";
48
+ readonly DISPATCH_NOT_ENABLED: "DISPATCH_NOT_ENABLED";
49
+ readonly DISPATCH_REQUIRED: "DISPATCH_REQUIRED";
50
+ readonly DISPATCH_IN_PROGRESS: "DISPATCH_IN_PROGRESS";
51
+ readonly INVALID_NODE_STATUS: "INVALID_NODE_STATUS";
52
+ readonly INVALID_TEST_NODE: "INVALID_TEST_NODE";
53
+ readonly EXEC_NODE_NOT_FOUND: "EXEC_NODE_NOT_FOUND";
54
+ readonly DISPATCH_ALREADY_ENABLED: "DISPATCH_ALREADY_ENABLED";
55
+ readonly DISPATCH_MODE_CONFLICT: "DISPATCH_MODE_CONFLICT";
56
+ readonly GIT_ENVIRONMENT_LOST: "GIT_ENVIRONMENT_LOST";
57
+ readonly NODE_NOT_READY: "NODE_NOT_READY";
58
+ readonly DISPATCH_SKIP: "DISPATCH_SKIP";
59
+ readonly INVALID_DISPATCH_PARENT: "INVALID_DISPATCH_PARENT";
60
+ readonly INVALID_DISPATCH_STATUS: "INVALID_DISPATCH_STATUS";
61
+ readonly DISPATCH_CHILDREN_EXIST: "DISPATCH_CHILDREN_EXIST";
62
+ readonly INVALID_CONFIG: "INVALID_CONFIG";
63
+ readonly VERSION_TOO_HIGH: "VERSION_TOO_HIGH";
64
+ readonly VERSION_READONLY: "VERSION_READONLY";
65
+ };
66
+ /**
67
+ * 错误码类型
68
+ */
69
+ export type ErrorCode = keyof typeof ErrorCodes;
70
+ /**
71
+ * 自定义错误类
72
+ */
73
+ export declare class ZeroError extends Error {
74
+ code: ErrorCode;
75
+ constructor(code: ErrorCode, message: string);
76
+ }
77
+ /**
78
+ * 错误消息映射
79
+ */
80
+ export declare const ErrorMessages: Record<ErrorCode, string>;
81
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFb,CAAC;AAEX;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,OAAO,UAAU,CAAC;AAEhD;;GAEG;AACH,qBAAa,SAAU,SAAQ,KAAK;IAEzB,IAAI,EAAE,SAAS;gBAAf,IAAI,EAAE,SAAS,EACtB,OAAO,EAAE,MAAM;CAKlB;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CA6DnD,CAAC"}
@@ -0,0 +1,154 @@
1
+ // src/types/errors.ts
2
+ /**
3
+ * 错误码定义
4
+ */
5
+ export const ErrorCodes = {
6
+ // 工作区错误
7
+ WORKSPACE_EXISTS: "WORKSPACE_EXISTS",
8
+ WORKSPACE_NOT_FOUND: "WORKSPACE_NOT_FOUND",
9
+ WORKSPACE_ACTIVE: "WORKSPACE_ACTIVE",
10
+ WORKSPACE_ARCHIVED: "WORKSPACE_ARCHIVED",
11
+ WORKSPACE_ERROR: "WORKSPACE_ERROR",
12
+ INVALID_NAME: "INVALID_NAME",
13
+ INVALID_PATH: "INVALID_PATH",
14
+ INIT_FAILED: "INIT_FAILED",
15
+ // 节点错误
16
+ NODE_NOT_FOUND: "NODE_NOT_FOUND",
17
+ PARENT_NOT_FOUND: "PARENT_NOT_FOUND",
18
+ INVALID_TITLE: "INVALID_TITLE",
19
+ INVALID_CONTENT: "INVALID_CONTENT",
20
+ CANNOT_DELETE_ROOT: "CANNOT_DELETE_ROOT",
21
+ // 状态转换错误
22
+ INVALID_TRANSITION: "INVALID_TRANSITION",
23
+ CONCLUSION_REQUIRED: "CONCLUSION_REQUIRED",
24
+ CONCLUSION_TOO_LONG: "CONCLUSION_TOO_LONG",
25
+ CONCLUSION_STALE: "CONCLUSION_STALE",
26
+ CONCLUSIONS_HASH_REQUIRED: "CONCLUSIONS_HASH_REQUIRED",
27
+ CONCLUSIONS_HASH_MISMATCH: "CONCLUSIONS_HASH_MISMATCH",
28
+ INFO_COLLECTION_REQUIRED: "INFO_COLLECTION_REQUIRED",
29
+ INVALID_CONFIRMATION_TOKEN: "INVALID_CONFIRMATION_TOKEN",
30
+ CONFIRMATION_MISMATCH: "CONFIRMATION_MISMATCH",
31
+ // 引用错误
32
+ REFERENCE_NOT_FOUND: "REFERENCE_NOT_FOUND",
33
+ REFERENCE_EXISTS: "REFERENCE_EXISTS",
34
+ // 备忘错误
35
+ MEMO_NOT_FOUND: "MEMO_NOT_FOUND",
36
+ // 日志错误
37
+ LOG_APPEND_FAILED: "LOG_APPEND_FAILED",
38
+ // 节点类型错误
39
+ INVALID_NODE_TYPE: "INVALID_NODE_TYPE",
40
+ INVALID_NODE_ROLE: "INVALID_NODE_ROLE",
41
+ EXECUTION_CANNOT_HAVE_CHILDREN: "EXECUTION_CANNOT_HAVE_CHILDREN",
42
+ INVALID_PARENT_STATUS: "INVALID_PARENT_STATUS",
43
+ INCOMPLETE_CHILDREN: "INCOMPLETE_CHILDREN",
44
+ CONCURRENT_EXECUTION: "CONCURRENT_EXECUTION",
45
+ RULES_HASH_MISMATCH: "RULES_HASH_MISMATCH",
46
+ INVALID_PARAMS: "INVALID_PARAMS",
47
+ UNKNOWN_PARAMS: "UNKNOWN_PARAMS",
48
+ CONTENT_CHANGED: "CONTENT_CHANGED",
49
+ NO_MATCH: "NO_MATCH",
50
+ MULTI_MATCH: "MULTI_MATCH",
51
+ // 校验错误
52
+ GRAPH_CORRUPTED: "GRAPH_CORRUPTED",
53
+ NODE_DIR_MISSING: "NODE_DIR_MISSING",
54
+ NODE_INFO_MISSING: "NODE_INFO_MISSING",
55
+ // 派发错误
56
+ GIT_NOT_FOUND: "GIT_NOT_FOUND",
57
+ DISPATCH_CONFLICT: "DISPATCH_CONFLICT",
58
+ DISPATCH_NOT_ENABLED: "DISPATCH_NOT_ENABLED",
59
+ DISPATCH_REQUIRED: "DISPATCH_REQUIRED",
60
+ DISPATCH_IN_PROGRESS: "DISPATCH_IN_PROGRESS",
61
+ INVALID_NODE_STATUS: "INVALID_NODE_STATUS",
62
+ INVALID_TEST_NODE: "INVALID_TEST_NODE",
63
+ EXEC_NODE_NOT_FOUND: "EXEC_NODE_NOT_FOUND",
64
+ DISPATCH_ALREADY_ENABLED: "DISPATCH_ALREADY_ENABLED",
65
+ DISPATCH_MODE_CONFLICT: "DISPATCH_MODE_CONFLICT",
66
+ GIT_ENVIRONMENT_LOST: "GIT_ENVIRONMENT_LOST",
67
+ NODE_NOT_READY: "NODE_NOT_READY",
68
+ DISPATCH_SKIP: "DISPATCH_SKIP",
69
+ INVALID_DISPATCH_PARENT: "INVALID_DISPATCH_PARENT",
70
+ INVALID_DISPATCH_STATUS: "INVALID_DISPATCH_STATUS",
71
+ DISPATCH_CHILDREN_EXIST: "DISPATCH_CHILDREN_EXIST",
72
+ // 配置错误
73
+ INVALID_CONFIG: "INVALID_CONFIG",
74
+ // 版本错误
75
+ VERSION_TOO_HIGH: "VERSION_TOO_HIGH",
76
+ VERSION_READONLY: "VERSION_READONLY",
77
+ };
78
+ /**
79
+ * 自定义错误类
80
+ */
81
+ export class ZeroError extends Error {
82
+ code;
83
+ constructor(code, message) {
84
+ super(message);
85
+ this.code = code;
86
+ this.name = "ZeroError";
87
+ }
88
+ }
89
+ /**
90
+ * 错误消息映射
91
+ */
92
+ export const ErrorMessages = {
93
+ WORKSPACE_EXISTS: "工作区已存在",
94
+ WORKSPACE_NOT_FOUND: "工作区不存在",
95
+ WORKSPACE_ACTIVE: "工作区处于活动状态,无法删除(使用 force 强制删除)",
96
+ WORKSPACE_ARCHIVED: "工作区状态不符合操作要求",
97
+ WORKSPACE_ERROR: "工作区处于错误状态,需要修复",
98
+ INVALID_NAME: "名称不合法,不能包含特殊字符: / \\ : * ? \" < > |",
99
+ INVALID_PATH: "路径不合法或不存在",
100
+ INIT_FAILED: "工作区初始化失败",
101
+ NODE_NOT_FOUND: "节点不存在",
102
+ PARENT_NOT_FOUND: "父节点不存在",
103
+ INVALID_TITLE: "标题不合法,不能包含特殊字符: / \\ : * ? \" < > |",
104
+ INVALID_CONTENT: "内容格式不合法,包含会破坏解析的字符",
105
+ CANNOT_DELETE_ROOT: "无法删除根节点",
106
+ INVALID_TRANSITION: "非法状态转换",
107
+ CONCLUSION_REQUIRED: "complete/fail 动作必须提供 conclusion",
108
+ CONCLUSION_TOO_LONG: "结论过长,请创建 memo 记录详情后提交精简结论",
109
+ CONCLUSION_STALE: "结论已过期,请先更新结论后再切换焦点",
110
+ CONCLUSIONS_HASH_REQUIRED: "规划节点 complete 需要提供 conclusionsHash,请先调用 context_get",
111
+ CONCLUSIONS_HASH_MISMATCH: "conclusionsHash 不匹配,子节点结论可能已变化,请重新 context_get",
112
+ INFO_COLLECTION_REQUIRED: "根节点 start 前必须完成信息收集节点",
113
+ INVALID_CONFIRMATION_TOKEN: "confirmation token 无效或已过期",
114
+ CONFIRMATION_MISMATCH: "confirmation token 对应的节点不匹配",
115
+ REFERENCE_NOT_FOUND: "引用不存在",
116
+ REFERENCE_EXISTS: "引用已存在",
117
+ MEMO_NOT_FOUND: "备忘不存在",
118
+ LOG_APPEND_FAILED: "日志追加失败",
119
+ INVALID_NODE_TYPE: "节点类型无效,必须是 planning 或 execution",
120
+ INVALID_NODE_ROLE: "节点角色无效,派发子节点不能再升级为派发母节点",
121
+ EXECUTION_CANNOT_HAVE_CHILDREN: "执行节点不能创建子节点",
122
+ INVALID_PARENT_STATUS: "父节点状态不允许创建子节点",
123
+ INCOMPLETE_CHILDREN: "存在未完成的子节点",
124
+ CONCURRENT_EXECUTION: "同级节点正在执行中,请遵循一次一个节点原则",
125
+ RULES_HASH_MISMATCH: "规则哈希不匹配,请先获取最新规则",
126
+ INVALID_PARAMS: "参数无效",
127
+ UNKNOWN_PARAMS: "存在未知参数",
128
+ CONTENT_CHANGED: "内容已变更,请重新获取",
129
+ NO_MATCH: "未找到匹配内容",
130
+ MULTI_MATCH: "找到多处匹配,请提供更多上下文",
131
+ GRAPH_CORRUPTED: "节点图数据损坏",
132
+ NODE_DIR_MISSING: "节点目录不存在",
133
+ NODE_INFO_MISSING: "节点 Info.md 不存在",
134
+ GIT_NOT_FOUND: "当前项目不是 git 仓库",
135
+ DISPATCH_CONFLICT: "已有其他工作区正在派发中",
136
+ DISPATCH_NOT_ENABLED: "派发模式未启用",
137
+ DISPATCH_REQUIRED: "派发模式已启用,执行节点必须通过 dispatch_node 派发执行",
138
+ DISPATCH_IN_PROGRESS: "节点正在派发执行中,请等待 subagent 完成",
139
+ INVALID_NODE_STATUS: "节点状态不符合操作要求",
140
+ INVALID_TEST_NODE: "无效的测试节点",
141
+ EXEC_NODE_NOT_FOUND: "关联的执行节点不存在",
142
+ DISPATCH_ALREADY_ENABLED: "派发模式已启用,如需切换模式请先禁用",
143
+ DISPATCH_MODE_CONFLICT: "同一项目只能使用一种派发模式",
144
+ GIT_ENVIRONMENT_LOST: "Git 环境已丢失",
145
+ NODE_NOT_READY: "节点未准备好派发,缺少必要信息",
146
+ DISPATCH_SKIP: "节点无需派发,可直接执行",
147
+ INVALID_DISPATCH_PARENT: "节点不是派发母节点,需先调用 dispatch_node 升级",
148
+ INVALID_DISPATCH_STATUS: "派发状态不正确,需先调用 node_transition(action=start) 开始执行",
149
+ DISPATCH_CHILDREN_EXIST: "派发子节点已存在,无法重复创建",
150
+ INVALID_CONFIG: "配置文件无效",
151
+ VERSION_TOO_HIGH: "数据版本过高,请升级 zero-workspace",
152
+ VERSION_READONLY: "数据版本高于当前代码版本,禁止写入",
153
+ };
154
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../../src/types/errors.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * 引导级别
3
+ * - L0: 简短提示(1-2 句话,嵌入在工具返回值的 hint 中)
4
+ * - L1: 工作流片段(关键步骤列表,3-5 个要点)
5
+ * - L2: 完整指南(详细说明,包含示例和错误处理)
6
+ */
7
+ export type GuidanceLevel = 0 | 1 | 2;
8
+ /**
9
+ * 触发场景类型
10
+ * 定义何时需要显示引导内容
11
+ */
12
+ export type GuidanceScenario = "workspace_init" | "workspace_first_planning" | "workspace_archived" | "workspace_restored" | "scenario_feature" | "scenario_summary" | "scenario_optimize" | "scenario_debug" | "scenario_misc" | "node_create_planning" | "node_create_execution" | "node_create_info_collection" | "execution_start" | "execution_complete" | "execution_fail" | "planning_start" | "planning_complete" | "planning_monitoring" | "node_reopen_with_children" | "actionRequired_triggered" | "confirmation_required" | "info_collection_missing" | "docs_派发_missing" | "error_invalid_transition" | "error_execution_has_children" | "error_workspace_not_found" | "unknown";
13
+ /**
14
+ * 引导内容
15
+ * 包含不同级别的引导信息
16
+ */
17
+ export interface Guidance {
18
+ /** 引导级别 */
19
+ level: GuidanceLevel;
20
+ /** 触发场景 */
21
+ scenario: GuidanceScenario;
22
+ /** 引导内容 */
23
+ content: string;
24
+ /** 是否可展开到更详细级别 */
25
+ expandable: boolean;
26
+ /** 展开到更详细级别时的场景(如果 expandable 为 true) */
27
+ expandTo?: GuidanceScenario;
28
+ /** 相关主题(用于关联到 zero_help 主题) */
29
+ relatedHelpTopics?: string[];
30
+ /** 元数据(可选) */
31
+ metadata?: {
32
+ /** 优先级(数字越大优先级越高) */
33
+ priority?: number;
34
+ /** 触发频率限制(避免重复提示) */
35
+ frequencyLimit?: "once" | "session" | "always";
36
+ /** 是否为关键协议(违反将导致任务失败) */
37
+ critical?: boolean;
38
+ };
39
+ }
40
+ /**
41
+ * 引导配置
42
+ * 定义不同场景下的引导内容(所有级别)
43
+ */
44
+ export interface GuidanceConfig {
45
+ /** 场景标识 */
46
+ scenario: GuidanceScenario;
47
+ /** L0 级别:简短提示(1-2 句话) */
48
+ l0: string;
49
+ /** L1 级别:工作流片段(关键步骤,3-5 个要点) */
50
+ l1: string;
51
+ /** L2 级别:完整指南(详细说明,包含示例) */
52
+ l2: string;
53
+ /** 相关 zero_help 主题 */
54
+ relatedHelpTopics?: string[];
55
+ /** 配置元数据 */
56
+ metadata?: {
57
+ priority?: number;
58
+ frequencyLimit?: "once" | "session" | "always";
59
+ critical?: boolean;
60
+ };
61
+ }
62
+ /**
63
+ * 引导内容生成器接口
64
+ * 用于根据场景和上下文动态生成引导内容
65
+ */
66
+ export interface GuidanceGenerator {
67
+ /**
68
+ * 检测当前场景
69
+ * @param context 当前操作上下文
70
+ * @returns 检测到的场景类型
71
+ */
72
+ detectScenario(context: GuidanceContext): GuidanceScenario;
73
+ /**
74
+ * 生成引导内容
75
+ * @param scenario 场景类型
76
+ * @param level 引导级别
77
+ * @param context 上下文数据(用于动态填充)
78
+ * @returns 引导内容
79
+ */
80
+ generate(scenario: GuidanceScenario, level: GuidanceLevel, context?: GuidanceContext): Guidance;
81
+ /**
82
+ * 获取场景的完整配置
83
+ * @param scenario 场景类型
84
+ * @returns 引导配置
85
+ */
86
+ getConfig(scenario: GuidanceScenario): GuidanceConfig | null;
87
+ }
88
+ /**
89
+ * 引导上下文
90
+ * 用于场景检测和内容生成的上下文数据
91
+ */
92
+ export interface GuidanceContext {
93
+ /** 工具名称(如 workspace_init, node_create 等) */
94
+ toolName?: string;
95
+ /** 工具输入参数 */
96
+ toolInput?: Record<string, unknown>;
97
+ /** 工具输出结果 */
98
+ toolOutput?: Record<string, unknown>;
99
+ /** 节点类型 */
100
+ nodeType?: "planning" | "execution";
101
+ /** 节点状态 */
102
+ nodeStatus?: string;
103
+ /** 节点角色 */
104
+ nodeRole?: string;
105
+ /** 是否有子节点 */
106
+ hasChildren?: boolean;
107
+ /** 是否有文档引用 */
108
+ hasDocs?: boolean;
109
+ /** 错误信息(如果有) */
110
+ error?: {
111
+ code: string;
112
+ message: string;
113
+ };
114
+ /** 其他上下文数据 */
115
+ extra?: Record<string, unknown>;
116
+ }
117
+ /**
118
+ * 引导内容注入策略
119
+ * 定义如何将引导内容注入到工具返回值中
120
+ */
121
+ export interface GuidanceInjectionStrategy {
122
+ /** 注入目标字段 */
123
+ targetField: "hint" | "actionRequired.message" | "error.message" | "custom";
124
+ /** 自定义字段名(当 targetField 为 "custom" 时使用) */
125
+ customField?: string;
126
+ /** 是否追加到现有内容(false 则替换) */
127
+ append?: boolean;
128
+ /** 内容格式化函数 */
129
+ format?: (guidance: Guidance, existingContent?: string) => string;
130
+ }
131
+ /**
132
+ * 引导内容存储接口
133
+ * 用于持久化引导配置和使用记录
134
+ */
135
+ export interface GuidanceStorage {
136
+ /**
137
+ * 加载所有引导配置
138
+ * @returns 引导配置映射
139
+ */
140
+ loadConfigs(): Promise<Map<GuidanceScenario, GuidanceConfig>>;
141
+ /**
142
+ * 保存引导配置
143
+ * @param configs 引导配置映射
144
+ */
145
+ saveConfigs(configs: Map<GuidanceScenario, GuidanceConfig>): Promise<void>;
146
+ /**
147
+ * 记录引导内容使用
148
+ * @param scenario 场景类型
149
+ * @param level 引导级别
150
+ * @param sessionId 会话 ID
151
+ */
152
+ recordUsage(scenario: GuidanceScenario, level: GuidanceLevel, sessionId?: string): Promise<void>;
153
+ /**
154
+ * 检查引导内容是否应该显示(基于频率限制)
155
+ * @param scenario 场景类型
156
+ * @param frequencyLimit 频率限制
157
+ * @param sessionId 会话 ID
158
+ * @returns 是否应该显示
159
+ */
160
+ shouldShow(scenario: GuidanceScenario, frequencyLimit: "once" | "session" | "always", sessionId?: string): Promise<boolean>;
161
+ }
162
+ //# sourceMappingURL=guidance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidance.d.ts","sourceRoot":"","sources":["../../src/types/guidance.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ // src/types/guidance.ts
2
+ // 层级式引导内容结构定义
3
+ export {};
4
+ //# sourceMappingURL=guidance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guidance.js","sourceRoot":"","sources":["../../src/types/guidance.ts"],"names":[],"mappings":"AAAA,wBAAwB;AACxB,cAAc"}
@@ -0,0 +1,61 @@
1
+ export type HealthIssueType = "version_mismatch" | "index_corrupt" | "node_corrupt" | "dir_missing" | "graph_corrupt" | "config_corrupt";
2
+ export type IssueSeverity = "error" | "warning";
3
+ export interface HealthIssue {
4
+ type: HealthIssueType;
5
+ severity: IssueSeverity;
6
+ target?: string;
7
+ message: string;
8
+ suggestion: string;
9
+ }
10
+ export interface WorkspaceHealthResult {
11
+ workspaceId: string;
12
+ workspaceName: string;
13
+ status: "healthy" | "warning" | "error";
14
+ issues: HealthIssue[];
15
+ }
16
+ export interface HealthReport {
17
+ status: "healthy" | "warning" | "error";
18
+ checkedAt: string;
19
+ codeVersion: string;
20
+ issues: HealthIssue[];
21
+ summary: {
22
+ totalWorkspaces: number;
23
+ healthyWorkspaces: number;
24
+ warningWorkspaces: number;
25
+ errorWorkspaces: number;
26
+ };
27
+ }
28
+ export interface BackupMeta {
29
+ name: string;
30
+ workspaceId: string;
31
+ workspaceName: string;
32
+ createdAt: string;
33
+ trigger: "manual" | "auto" | "pre_operation";
34
+ codeVersion: string;
35
+ size: number;
36
+ verified: boolean;
37
+ }
38
+ export interface BackupListItem extends BackupMeta {
39
+ path: string;
40
+ }
41
+ export type GlobalBackupTrigger = "beta_update" | "manual" | "pre_restore";
42
+ export interface GlobalBackupManifest {
43
+ format: "twbak";
44
+ version: "1.0";
45
+ createdAt: string;
46
+ codeVersion: string;
47
+ trigger: GlobalBackupTrigger;
48
+ checksum: string;
49
+ contents: {
50
+ workspaceCount: number;
51
+ };
52
+ }
53
+ export interface GlobalBackupItem {
54
+ name: string;
55
+ path: string;
56
+ createdAt: string;
57
+ codeVersion: string;
58
+ trigger: GlobalBackupTrigger;
59
+ size: number;
60
+ }
61
+ //# sourceMappingURL=health.d.ts.map