@winspan/claude-forge 8.51.1 → 8.54.3

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 (409) hide show
  1. package/DEVELOPMENT.md +290 -221
  2. package/README.md +50 -8
  3. package/dist/cli/commands/skills.d.ts.map +1 -1
  4. package/dist/cli/commands/skills.js +121 -2
  5. package/dist/cli/commands/skills.js.map +1 -1
  6. package/dist/cli/init/hook-manager.d.ts +1 -1
  7. package/dist/cli/init/hook-manager.d.ts.map +1 -1
  8. package/dist/cli/init/hook-manager.js +1 -0
  9. package/dist/cli/init/hook-manager.js.map +1 -1
  10. package/dist/core/constants.d.ts +2 -0
  11. package/dist/core/constants.d.ts.map +1 -1
  12. package/dist/core/constants.js +4 -0
  13. package/dist/core/constants.js.map +1 -1
  14. package/dist/core/storage/events.d.ts.map +1 -1
  15. package/dist/core/storage/events.js +0 -1
  16. package/dist/core/storage/events.js.map +1 -1
  17. package/dist/core/storage/maintenance.d.ts +25 -3
  18. package/dist/core/storage/maintenance.d.ts.map +1 -1
  19. package/dist/core/storage/maintenance.js +33 -4
  20. package/dist/core/storage/maintenance.js.map +1 -1
  21. package/dist/core/storage/routing.d.ts +4 -0
  22. package/dist/core/storage/routing.d.ts.map +1 -1
  23. package/dist/core/storage/routing.js +10 -4
  24. package/dist/core/storage/routing.js.map +1 -1
  25. package/dist/core/storage/sessions.d.ts +17 -0
  26. package/dist/core/storage/sessions.d.ts.map +1 -1
  27. package/dist/core/storage/sessions.js +64 -0
  28. package/dist/core/storage/sessions.js.map +1 -1
  29. package/dist/core/storage/skills.d.ts +4 -0
  30. package/dist/core/storage/skills.d.ts.map +1 -1
  31. package/dist/core/storage/skills.js +10 -2
  32. package/dist/core/storage/skills.js.map +1 -1
  33. package/dist/core/storage/sqlite.d.ts +5 -0
  34. package/dist/core/storage/sqlite.d.ts.map +1 -1
  35. package/dist/core/storage/sqlite.js +6 -0
  36. package/dist/core/storage/sqlite.js.map +1 -1
  37. package/dist/core/storage/tasks.d.ts.map +1 -1
  38. package/dist/core/storage/tasks.js +2 -0
  39. package/dist/core/storage/tasks.js.map +1 -1
  40. package/dist/core/types.d.ts +7 -0
  41. package/dist/core/types.d.ts.map +1 -1
  42. package/dist/daemon/index.d.ts.map +1 -1
  43. package/dist/daemon/index.js +30 -5
  44. package/dist/daemon/index.js.map +1 -1
  45. package/dist/daemon/skill-sync.d.ts +21 -0
  46. package/dist/daemon/skill-sync.d.ts.map +1 -0
  47. package/dist/daemon/skill-sync.js +75 -0
  48. package/dist/daemon/skill-sync.js.map +1 -0
  49. package/dist/hooks/notification.sh +1 -1
  50. package/dist/hooks/post-tool-use.sh +1 -1
  51. package/dist/hooks/pre-tool-use.sh +1 -1
  52. package/dist/hooks/stop.sh +1 -1
  53. package/dist/hooks/user-prompt-submit.sh +1 -1
  54. package/dist/skills/official/code-simplifier.md +37 -1
  55. package/dist/skills/official/find-skills.md +120 -1
  56. package/dist/skills/official/official-api-design.md +14 -1
  57. package/dist/skills/official/official-architecture-decision.md +22 -1
  58. package/dist/skills/official/official-db-schema-design.md +19 -1
  59. package/dist/skills/official/official-debug.md +9 -1
  60. package/dist/skills/official/official-pr-review.md +1 -1
  61. package/dist/skills/official/official-security-hardening.md +7 -1
  62. package/dist/skills/official/planning-with-files.md +206 -2
  63. package/dist/skills/official/ui-ux-pro-max.md +88 -1
  64. package/dist/skills/official/webapp-testing.md +85 -1
  65. package/dist/skills/registry.d.ts +1 -1
  66. package/dist/skills/registry.d.ts.map +1 -1
  67. package/dist/skills/registry.js +15 -4
  68. package/dist/skills/registry.js.map +1 -1
  69. package/dist/skills/semantic-matcher.d.ts +4 -3
  70. package/dist/skills/semantic-matcher.d.ts.map +1 -1
  71. package/dist/skills/semantic-matcher.js +20 -22
  72. package/dist/skills/semantic-matcher.js.map +1 -1
  73. package/dist/skills/upgrade-engine.d.ts +93 -0
  74. package/dist/skills/upgrade-engine.d.ts.map +1 -0
  75. package/dist/skills/upgrade-engine.js +447 -0
  76. package/dist/skills/upgrade-engine.js.map +1 -0
  77. package/dist/skills/upgrade-prompt.d.ts +20 -0
  78. package/dist/skills/upgrade-prompt.d.ts.map +1 -0
  79. package/dist/skills/upgrade-prompt.js +75 -0
  80. package/dist/skills/upgrade-prompt.js.map +1 -0
  81. package/dist/web/analytics/weekly-report.d.ts.map +1 -1
  82. package/dist/web/analytics/weekly-report.js +21 -29
  83. package/dist/web/analytics/weekly-report.js.map +1 -1
  84. package/dist/web/routes/patch.d.ts.map +1 -1
  85. package/dist/web/routes/patch.js +32 -2
  86. package/dist/web/routes/patch.js.map +1 -1
  87. package/dist/web/routes/sessions.d.ts.map +1 -1
  88. package/dist/web/routes/sessions.js +9 -7
  89. package/dist/web/routes/sessions.js.map +1 -1
  90. package/dist/web/routes/trace.d.ts.map +1 -1
  91. package/dist/web/routes/trace.js +2 -3
  92. package/dist/web/routes/trace.js.map +1 -1
  93. package/dist/web/server.d.ts.map +1 -1
  94. package/dist/web/server.js +3 -2
  95. package/dist/web/server.js.map +1 -1
  96. package/package.json +12 -2
  97. package/scripts/postinstall.cjs +21 -0
  98. package/.claude/CLAUDE.md +0 -17
  99. package/.eslintrc.js +0 -23
  100. package/.prettierrc +0 -8
  101. package/ARCHITECTURE_ISSUES.md +0 -249
  102. package/CLAUDE.md +0 -265
  103. package/CLAUDE.md.backup +0 -488
  104. package/docs/concurrent-agents.md +0 -129
  105. package/docs/design/architecture-review-20260516.md +0 -232
  106. package/docs/design/fix-skills-data-and-set-leak-spec-20260516-1300.md +0 -219
  107. package/docs/design/h1-storage-aggregation-spec-20260518-1121.md +0 -299
  108. package/docs/design/h2-getdatabase-encapsulation-spec-20260518-1450.md +0 -191
  109. package/docs/design/h3-fallback-removal-spec-20260518-1245.md +0 -76
  110. package/docs/design/h4-index-dedup-spec-20260518-1230.md +0 -109
  111. package/docs/design/h6-services-migration-spec-20260518-1355.md +0 -82
  112. package/docs/design/hook-failure-queue-spec-20260516-1530.md +0 -204
  113. package/docs/design/l1-swarm-protocol-extract-spec-20260518-1605.md +0 -106
  114. package/docs/design/m10-forge-paths-spec-20260518-1320.md +0 -121
  115. package/docs/design/m2-m3-tool-input-spec-20260518-1425.md +0 -131
  116. package/docs/design/m7-routing-event-association-spec-20260518-1545.md +0 -103
  117. package/docs/design/project-path-gitroot-spec-20260518-1715.md +0 -134
  118. package/docs/design/refactor-phase1-spec-20260515-1600.md +0 -543
  119. package/docs/design/refactor-phase2-spec-20260515-1700.md +0 -424
  120. package/docs/design/task-active-gc-spec-20260518-1745.md +0 -146
  121. package/docs/design/tasks-list-filter-pagination-spec-20260518-0930.md +0 -208
  122. package/docs/implementation/fix-skills-data-and-set-leak-changelog-20260516-1300.md +0 -104
  123. package/docs/implementation/h1-storage-aggregation-changelog-20260518-1121.md +0 -82
  124. package/docs/implementation/h2-final-changelog-20260518-1530.md +0 -61
  125. package/docs/implementation/h2-phase1-safety-net-changelog-20260518-1450.md +0 -70
  126. package/docs/implementation/h2-phase2-operations-changelog-20260518-1450.md +0 -120
  127. package/docs/implementation/h2-phase3-callsites-changelog-20260518-1450.md +0 -71
  128. package/docs/implementation/h3-fallback-removal-changelog-20260518-1245.md +0 -71
  129. package/docs/implementation/h4-index-dedup-changelog-20260518-1230.md +0 -60
  130. package/docs/implementation/h6-services-migration-changelog-20260518-1355.md +0 -46
  131. package/docs/implementation/h7-m9-defaults-changelog-20260518-1300.md +0 -46
  132. package/docs/implementation/hook-failure-queue-changelog-20260516-1530.md +0 -196
  133. package/docs/implementation/hotfix-daemon-event-reject-20260516-1430.md +0 -56
  134. package/docs/implementation/l1-swarm-protocol-extract-changelog-20260518-1605.md +0 -45
  135. package/docs/implementation/l3-l4-daemon-perf-changelog-20260518-1410.md +0 -63
  136. package/docs/implementation/l6-l8-final-cleanup-changelog-20260518-1640.md +0 -38
  137. package/docs/implementation/m1-m4-m5-l7-cleanup-changelog-20260518-1310.md +0 -58
  138. package/docs/implementation/m10-forge-paths-changelog-20260518-1320.md +0 -60
  139. package/docs/implementation/m2-m3-tool-input-changelog-20260518-1425.md +0 -43
  140. package/docs/implementation/m6-m8-naming-shutdown-changelog-20260518-1340.md +0 -56
  141. package/docs/implementation/m7-routing-association-changelog-20260518-1545.md +0 -69
  142. package/docs/implementation/project-path-gitroot-changelog-20260518-1715.md +0 -63
  143. package/docs/implementation/refactor-phase1-changelog-20260515-1630.md +0 -354
  144. package/docs/implementation/refactor-phase2-changelog-20260515-1705.md +0 -421
  145. package/docs/implementation/task-active-gc-changelog-20260518-1745.md +0 -35
  146. package/docs/implementation/task-title-summary-changelog-20260518-1130.md +0 -39
  147. package/docs/implementation/tasks-detail-back-loses-filters-changelog-20260518-1100.md +0 -22
  148. package/docs/implementation/tasks-list-filter-pagination-changelog-20260518-0930.md +0 -72
  149. package/docs/implementation/tasks-page-white-screen-hotfix-changelog-20260518-1015.md +0 -56
  150. package/docs/reviews/claudemd-template-sync.md +0 -54
  151. package/docs/reviews/task-title-summary.md +0 -92
  152. package/docs/reviews/tasks-detail-back-loses-filters.md +0 -58
  153. package/docs/reviews/tasks-filter-pagination.md +0 -80
  154. package/docs/reviews/tasks-page-white-screen-hotfix.md +0 -126
  155. package/docs/ruflo-learning-strategy.md +0 -322
  156. package/docs/skills-deduplication-analysis.md +0 -83
  157. package/docs/skills-multiformat-support.md +0 -177
  158. package/docs/skills-third-party.md +0 -183
  159. package/docs/testing/tasks-filter-pagination-test-report.md +0 -86
  160. package/forge +0 -321
  161. package/playwright.config.ts +0 -40
  162. package/scripts/demo-v2.ts +0 -91
  163. package/scripts/dev-daemon.sh +0 -232
  164. package/scripts/dev-web.ts +0 -109
  165. package/scripts/e2e-mcp-link.ts +0 -423
  166. package/scripts/e2e-methodology-quality.ts +0 -253
  167. package/scripts/e2e-routing.ts +0 -456
  168. package/scripts/e2e-user-methodology.ts +0 -326
  169. package/scripts/e2e-web-workflows.ts +0 -299
  170. package/scripts/migrate-legacy-to-dynamic.sql +0 -108
  171. package/scripts/regenerate-execution-docs.ts +0 -116
  172. package/scripts/sync-agent-skills.ts +0 -193
  173. package/scripts/test-hook.sh +0 -71
  174. package/scripts/verify-skill-loading.ts +0 -62
  175. package/src/claudemd/claudemd-generator.ts +0 -568
  176. package/src/claudemd/convention-extractor.ts +0 -69
  177. package/src/claudemd/index.ts +0 -35
  178. package/src/claudemd/persona-manager.ts +0 -88
  179. package/src/claudemd/resume-manager.ts +0 -236
  180. package/src/claudemd/tech-detector.ts +0 -220
  181. package/src/claudemd/templates/swarm-protocol.md +0 -222
  182. package/src/cli/commands/claudemd.ts +0 -84
  183. package/src/cli/commands/config.ts +0 -46
  184. package/src/cli/commands/daemon.ts +0 -310
  185. package/src/cli/commands/executions.ts +0 -115
  186. package/src/cli/commands/init.ts +0 -204
  187. package/src/cli/commands/logs.ts +0 -181
  188. package/src/cli/commands/mcp.ts +0 -242
  189. package/src/cli/commands/menu.ts +0 -357
  190. package/src/cli/commands/skills.ts +0 -185
  191. package/src/cli/commands/stats.ts +0 -73
  192. package/src/cli/commands/status.ts +0 -69
  193. package/src/cli/commands/template.ts +0 -77
  194. package/src/cli/commands/trace.ts +0 -148
  195. package/src/cli/index.ts +0 -42
  196. package/src/cli/init/hook-manager.ts +0 -132
  197. package/src/core/ai/provider.ts +0 -308
  198. package/src/core/ai/types.ts +0 -51
  199. package/src/core/config.ts +0 -124
  200. package/src/core/constants.ts +0 -62
  201. package/src/core/event-fields.ts +0 -32
  202. package/src/core/queue/index.ts +0 -192
  203. package/src/core/storage/base.ts +0 -302
  204. package/src/core/storage/events.ts +0 -434
  205. package/src/core/storage/injections.ts +0 -78
  206. package/src/core/storage/maintenance.ts +0 -59
  207. package/src/core/storage/migrations/002_add_skill_tracking.sql +0 -6
  208. package/src/core/storage/migrations/003_add_skill_invocations.sql +0 -23
  209. package/src/core/storage/performance-indexes.sql +0 -23
  210. package/src/core/storage/routing.ts +0 -322
  211. package/src/core/storage/rows.ts +0 -112
  212. package/src/core/storage/schema.sql +0 -224
  213. package/src/core/storage/sessions.ts +0 -168
  214. package/src/core/storage/skills.ts +0 -233
  215. package/src/core/storage/sqlite.ts +0 -293
  216. package/src/core/storage/tasks.ts +0 -318
  217. package/src/core/storage/token-usage.ts +0 -93
  218. package/src/core/types.ts +0 -181
  219. package/src/core/utils/error-handler.ts +0 -257
  220. package/src/core/utils/forge-resume-block.ts +0 -74
  221. package/src/core/utils/format.ts +0 -69
  222. package/src/core/utils/git.ts +0 -23
  223. package/src/core/utils/logger.ts +0 -134
  224. package/src/core/utils/lru-cache.ts +0 -54
  225. package/src/core/utils/path.ts +0 -19
  226. package/src/core/utils/session.ts +0 -26
  227. package/src/core/utils/time.ts +0 -37
  228. package/src/core/utils/token-tracker.ts +0 -97
  229. package/src/daemon/event-parser.ts +0 -36
  230. package/src/daemon/handlers/history-exporter.ts +0 -117
  231. package/src/daemon/handlers/post-tool-use.ts +0 -54
  232. package/src/daemon/handlers/stop.ts +0 -208
  233. package/src/daemon/handlers/user-prompt.ts +0 -178
  234. package/src/daemon/hook-sync.ts +0 -91
  235. package/src/daemon/index.ts +0 -302
  236. package/src/daemon/launchd/com.claude-forge.daemon.plist.template +0 -47
  237. package/src/daemon/launchd-installer.ts +0 -260
  238. package/src/daemon/lifecycle.ts +0 -128
  239. package/src/daemon/router.ts +0 -40
  240. package/src/daemon/server.ts +0 -196
  241. package/src/daemon/services/task-segmenter.ts +0 -112
  242. package/src/hooks/hook-lib.sh +0 -118
  243. package/src/hooks/notification.sh +0 -35
  244. package/src/hooks/post-tool-use.sh +0 -61
  245. package/src/hooks/pre-tool-use.sh +0 -63
  246. package/src/hooks/stop.sh +0 -43
  247. package/src/hooks/user-prompt-submit.sh +0 -69
  248. package/src/mcp/server.ts +0 -322
  249. package/src/skills/index.ts +0 -2
  250. package/src/skills/invocation-guard.ts +0 -177
  251. package/src/skills/matcher.ts +0 -148
  252. package/src/skills/official/code-simplifier.md +0 -16
  253. package/src/skills/official/find-skills.md +0 -23
  254. package/src/skills/official/official-api-design.md +0 -17
  255. package/src/skills/official/official-architecture-decision.md +0 -20
  256. package/src/skills/official/official-bmad.md +0 -118
  257. package/src/skills/official/official-db-schema-design.md +0 -16
  258. package/src/skills/official/official-debug.md +0 -17
  259. package/src/skills/official/official-doc-driven.md +0 -31
  260. package/src/skills/official/official-harness-engineering.md +0 -108
  261. package/src/skills/official/official-performance-optimization.md +0 -30
  262. package/src/skills/official/official-pr-review.md +0 -35
  263. package/src/skills/official/official-release-checklist.md +0 -30
  264. package/src/skills/official/official-security-hardening.md +0 -26
  265. package/src/skills/official/official-spec-driven-design.md +0 -31
  266. package/src/skills/official/planning-with-files.md +0 -37
  267. package/src/skills/official/ui-ux-pro-max.md +0 -18
  268. package/src/skills/official/webapp-testing.md +0 -12
  269. package/src/skills/official-skills.ts +0 -89
  270. package/src/skills/registry.ts +0 -355
  271. package/src/skills/semantic-matcher.ts +0 -231
  272. package/src/skills/tools/pipeline-suggest.ts +0 -226
  273. package/src/skills/tools/skill-invoke.ts +0 -168
  274. package/src/skills/tools/skill-list.ts +0 -59
  275. package/src/templates/go.yaml +0 -53
  276. package/src/templates/python.yaml +0 -59
  277. package/src/templates/react.yaml +0 -55
  278. package/src/templates/template-manager.ts +0 -170
  279. package/src/web/analytics/anti-pattern-detector.ts +0 -367
  280. package/src/web/analytics/drift-detector.ts +0 -219
  281. package/src/web/analytics/weekly-report.ts +0 -431
  282. package/src/web/auth-middleware.ts +0 -54
  283. package/src/web/routes/_helpers.ts +0 -34
  284. package/src/web/routes/ai.ts +0 -204
  285. package/src/web/routes/auth.ts +0 -22
  286. package/src/web/routes/drift.ts +0 -25
  287. package/src/web/routes/error-handler.ts +0 -120
  288. package/src/web/routes/events.ts +0 -47
  289. package/src/web/routes/insights.ts +0 -43
  290. package/src/web/routes/patch.ts +0 -117
  291. package/src/web/routes/reports.ts +0 -34
  292. package/src/web/routes/rules.ts +0 -76
  293. package/src/web/routes/sessions.ts +0 -250
  294. package/src/web/routes/skill-stats.ts +0 -92
  295. package/src/web/routes/skills.ts +0 -350
  296. package/src/web/routes/static.ts +0 -67
  297. package/src/web/routes/stats.ts +0 -50
  298. package/src/web/routes/status.ts +0 -30
  299. package/src/web/routes/tasks.ts +0 -193
  300. package/src/web/routes/token-usage.ts +0 -20
  301. package/src/web/routes/trace.ts +0 -126
  302. package/src/web/routes/types.ts +0 -57
  303. package/src/web/server.ts +0 -134
  304. package/src/web/ssrf-guard.ts +0 -112
  305. package/src/web/static/index.html +0 -3251
  306. package/src/web/static/vendor/chart.umd.min.js +0 -20
  307. package/tests/e2e/dashboard.spec.ts +0 -205
  308. package/tests/e2e/routing-skill-e2e.test.ts +0 -39
  309. package/tests/helpers/mock-ai.ts +0 -92
  310. package/tests/helpers/mock-storage.ts +0 -159
  311. package/tests/integration/claudemd-generator.test.ts +0 -90
  312. package/tests/integration/queue-replay.integration.test.ts +0 -193
  313. package/tests/integration/tasks-filter.integration.test.ts +0 -154
  314. package/tests/integration/web-analytics.integration.test.ts +0 -133
  315. package/tests/integration/web-stats.integration.test.ts +0 -135
  316. package/tests/integration/web-trace.integration.test.ts +0 -175
  317. package/tests/performance/database.benchmark.ts +0 -161
  318. package/tests/semantic-matcher.test.ts +0 -99
  319. package/tests/skill-matcher.test.ts +0 -110
  320. package/tests/unit/ai-provider-retry.test.ts +0 -194
  321. package/tests/unit/ai-provider-vision.test.ts +0 -224
  322. package/tests/unit/claudemd-generator.test.ts +0 -68
  323. package/tests/unit/cli-mcp.test.ts +0 -141
  324. package/tests/unit/core/forge-paths.test.ts +0 -99
  325. package/tests/unit/daemon/hook-sync.test.ts +0 -71
  326. package/tests/unit/daemon/post-tool-use.test.ts +0 -121
  327. package/tests/unit/daemon/stop-handler-behavior-summary.test.ts +0 -202
  328. package/tests/unit/daemon/task-segmenter-recover.test.ts +0 -84
  329. package/tests/unit/event-fields.test.ts +0 -88
  330. package/tests/unit/event-parser.test.ts +0 -55
  331. package/tests/unit/handlers.test.ts +0 -171
  332. package/tests/unit/hooks/resolve-project-path.test.ts +0 -122
  333. package/tests/unit/invocation-guard.test.ts +0 -125
  334. package/tests/unit/queue.test.ts +0 -272
  335. package/tests/unit/router.test.ts +0 -138
  336. package/tests/unit/security.test.ts +0 -128
  337. package/tests/unit/skill-invocations-workflow.test.ts +0 -495
  338. package/tests/unit/skill-registry.test.ts +0 -94
  339. package/tests/unit/skills/invocation-guard-ttl.test.ts +0 -211
  340. package/tests/unit/skills/official-skills-loader.test.ts +0 -126
  341. package/tests/unit/skills/registry-multiformat.test.ts +0 -92
  342. package/tests/unit/socket-server.test.ts +0 -183
  343. package/tests/unit/storage/event-operations-aggregates.test.ts +0 -342
  344. package/tests/unit/storage/migration-idempotent.test.ts +0 -304
  345. package/tests/unit/storage/routing-aggregates.test.ts +0 -276
  346. package/tests/unit/storage/routing.test.ts +0 -117
  347. package/tests/unit/storage/schema-missing.test.ts +0 -81
  348. package/tests/unit/storage/session-operations-aggregates.test.ts +0 -120
  349. package/tests/unit/storage/sessions-aggregate.test.ts +0 -435
  350. package/tests/unit/storage/skill-operations-counts.test.ts +0 -106
  351. package/tests/unit/storage/skills-aggregates.test.ts +0 -104
  352. package/tests/unit/storage/sqlite-refactor-harness.test.ts +0 -314
  353. package/tests/unit/storage/task-operations-counts.test.ts +0 -46
  354. package/tests/unit/storage/tasks-getById.test.ts +0 -343
  355. package/tests/unit/storage/tasks-stale-gc.test.ts +0 -86
  356. package/tests/unit/storage.test.ts +0 -172
  357. package/tests/unit/token-usage.test.ts +0 -144
  358. package/tests/unit/type-guards.test.ts +0 -201
  359. package/tests/unit/utils/format.test.ts +0 -189
  360. package/tests/unit/utils/session.test.ts +0 -89
  361. package/tests/unit/utils/time.test.ts +0 -112
  362. package/tests/unit/web/navigation-back-contract.test.ts +0 -134
  363. package/tests/unit/web/routes-auth.test.ts +0 -93
  364. package/tests/unit/web/routes-events.test.ts +0 -101
  365. package/tests/unit/web/routes-rules.test.ts +0 -182
  366. package/tests/unit/web/routes-sessions.test.ts +0 -181
  367. package/tests/unit/web/routes-skill-stats.test.ts +0 -179
  368. package/tests/unit/web/routes-stats.test.ts +0 -92
  369. package/tests/unit/web/routes-tasks.test.ts +0 -385
  370. package/tests/unit/web/task-title-contract.test.ts +0 -210
  371. package/tests/unit/web/tasks-component-contract.test.ts +0 -179
  372. package/tsconfig.json +0 -22
  373. package/vitest.config.ts +0 -21
  374. package/vitest.integration.config.ts +0 -16
  375. package/web/CLAUDE.md +0 -20
  376. package/web/index.html +0 -13
  377. package/web/package-lock.json +0 -4854
  378. package/web/package.json +0 -35
  379. package/web/postcss.config.js +0 -6
  380. package/web/src/App.tsx +0 -110
  381. package/web/src/components/CodeBlock.tsx +0 -31
  382. package/web/src/components/Confirm.tsx +0 -96
  383. package/web/src/components/Drawer.tsx +0 -60
  384. package/web/src/components/Layout.tsx +0 -145
  385. package/web/src/components/MarkdownRenderer.tsx +0 -77
  386. package/web/src/components/SearchInput.tsx +0 -31
  387. package/web/src/components/SessionDetailContent.tsx +0 -157
  388. package/web/src/components/Toast.tsx +0 -92
  389. package/web/src/index.css +0 -19
  390. package/web/src/main.tsx +0 -31
  391. package/web/src/pages/AIConfig.tsx +0 -233
  392. package/web/src/pages/Dashboard.tsx +0 -572
  393. package/web/src/pages/Events.tsx +0 -271
  394. package/web/src/pages/Reports.tsx +0 -428
  395. package/web/src/pages/SessionDetail.tsx +0 -162
  396. package/web/src/pages/Sessions.tsx +0 -205
  397. package/web/src/pages/Skills.tsx +0 -180
  398. package/web/src/pages/TaskDetail.tsx +0 -515
  399. package/web/src/pages/Tasks.tsx +0 -415
  400. package/web/src/utils/auth.ts +0 -59
  401. package/web/src/utils/export.ts +0 -54
  402. package/web/src/utils/navigation.ts +0 -25
  403. package/web/src/utils/task-title.ts +0 -49
  404. package/web/src/utils/time.ts +0 -13
  405. package/web/tailwind.config.js +0 -11
  406. package/web/tsconfig.json +0 -21
  407. package/web/tsconfig.node.json +0 -10
  408. package/web/vite.config.ts +0 -76
  409. package/winspan-claude-forge-8.43.0.tgz +0 -0
@@ -1,59 +0,0 @@
1
- /**
2
- * SkillList — 列出所有可用的 Skill
3
- *
4
- * Agent 可以通过此工具查询可用的 Skill,支持关键词过滤。
5
- *
6
- * 示例:
7
- * SkillList({ keywords: ["test", "tdd"] })
8
- * → 返回包含 "test" 或 "tdd" 关键词的 Skill 列表
9
- */
10
-
11
- import type { SkillRegistry } from '../registry.js';
12
- import { logger } from '../../core/utils/logger.js';
13
-
14
- export interface SkillListParams {
15
- keywords?: string[]; // 可选的关键词过滤
16
- }
17
-
18
- export interface SkillListResult {
19
- skills: Array<{
20
- id: string;
21
- name: string;
22
- description: string;
23
- keywords: string[];
24
- }>;
25
- total: number;
26
- }
27
-
28
- export async function skillList(
29
- params: SkillListParams,
30
- context: { skillRegistry: SkillRegistry },
31
- ): Promise<SkillListResult> {
32
- const { keywords } = params;
33
-
34
- logger.info(`[SkillList] Agent requested skill list${keywords ? ` (keywords: ${keywords.join(', ')})` : ''}`);
35
-
36
- const allSkills = Array.from(context.skillRegistry.getAll());
37
-
38
- // Filter by keywords if provided
39
- let filteredSkills = allSkills;
40
- if (keywords && keywords.length > 0) {
41
- const keywordsLower = keywords.map(k => k.toLowerCase());
42
- filteredSkills = allSkills.filter(skill => {
43
- const skillKeywords = skill.keywords.map(k => k.toLowerCase());
44
- return keywordsLower.some(kw => skillKeywords.some(sk => sk.includes(kw)));
45
- });
46
- }
47
-
48
- const result = filteredSkills.map(skill => ({
49
- id: skill.id,
50
- name: skill.name,
51
- description: skill.description || '',
52
- keywords: skill.keywords,
53
- }));
54
-
55
- return {
56
- skills: result,
57
- total: result.length,
58
- };
59
- }
@@ -1,53 +0,0 @@
1
- # Go Project Template
2
- # 为 Go 项目提供开箱即用的规则配置
3
-
4
- name: "Go Project"
5
- description: "Go 项目的推荐规则配置,包含 goroutine 管理、错误处理、并发安全等"
6
- version: "1.0.0"
7
-
8
- # 启用的规则文件
9
- conventions:
10
- - go-best-practices
11
- - basic-security
12
- - git-safety
13
-
14
- # 项目配置
15
- config:
16
- # 文件扩展名
17
- file_extensions:
18
- - .go
19
-
20
- # 忽略的目录
21
- ignore_paths:
22
- - vendor/
23
- - bin/
24
- - .git/
25
- - testdata/
26
-
27
- # 推荐的工具
28
- recommended_tools:
29
- - golangci-lint
30
- - gofmt
31
- - go vet
32
- - staticcheck
33
-
34
- # 初始化脚本
35
- init_commands:
36
- - go mod download
37
- - go build ./...
38
-
39
- # 推荐的 Makefile targets
40
- recommended_make_targets:
41
- lint: "golangci-lint run"
42
- fmt: "gofmt -s -w ."
43
- test: "go test -v -race -coverprofile=coverage.out ./..."
44
- build: "go build -o bin/app ./cmd/app"
45
-
46
- # 文档链接
47
- documentation:
48
- - name: "Go 官方文档"
49
- url: "https://go.dev/doc/"
50
- - name: "Effective Go"
51
- url: "https://go.dev/doc/effective_go"
52
- - name: "Go Code Review Comments"
53
- url: "https://github.com/golang/go/wiki/CodeReviewComments"
@@ -1,59 +0,0 @@
1
- # Python Project Template
2
- # 为 Python 项目提供开箱即用的规则配置
3
-
4
- name: "Python Project"
5
- description: "Python 项目的推荐规则配置,包含安全检查、代码风格、依赖管理等"
6
- version: "1.0.0"
7
-
8
- # 启用的规则文件
9
- conventions:
10
- - python-best-practices
11
- - basic-security
12
- - git-safety
13
-
14
- # 项目配置
15
- config:
16
- # 文件扩展名
17
- file_extensions:
18
- - .py
19
-
20
- # 忽略的目录
21
- ignore_paths:
22
- - __pycache__/
23
- - .venv/
24
- - venv/
25
- - .pytest_cache/
26
- - dist/
27
- - build/
28
- - "*.egg-info/"
29
-
30
- # 推荐的工具
31
- recommended_tools:
32
- - black
33
- - flake8
34
- - mypy
35
- - pytest
36
- - bandit
37
-
38
- # 初始化脚本
39
- init_commands:
40
- - python -m venv .venv
41
- - source .venv/bin/activate
42
- - pip install -r requirements.txt
43
-
44
- # 推荐的 Makefile targets
45
- recommended_make_targets:
46
- lint: "flake8 src tests"
47
- format: "black src tests"
48
- type-check: "mypy src"
49
- security: "bandit -r src"
50
- test: "pytest tests/ -v --cov=src"
51
-
52
- # 文档链接
53
- documentation:
54
- - name: "Python 官方文档"
55
- url: "https://docs.python.org/3/"
56
- - name: "PEP 8 Style Guide"
57
- url: "https://peps.python.org/pep-0008/"
58
- - name: "Python Security Best Practices"
59
- url: "https://python.readthedocs.io/en/stable/library/security_warnings.html"
@@ -1,55 +0,0 @@
1
- # React Project Template
2
- # 为 React 项目提供开箱即用的规则配置
3
-
4
- name: "React Project"
5
- description: "React 项目的推荐规则配置,包含 XSS 防护、性能优化、Hooks 规范等"
6
- version: "1.0.0"
7
-
8
- # 启用的规则文件
9
- conventions:
10
- - react-best-practices
11
- - basic-security
12
- - git-safety
13
-
14
- # 项目配置
15
- config:
16
- # 文件扩展名
17
- file_extensions:
18
- - .jsx
19
- - .tsx
20
- - .js
21
- - .ts
22
-
23
- # 忽略的目录
24
- ignore_paths:
25
- - node_modules/
26
- - build/
27
- - dist/
28
- - .next/
29
- - coverage/
30
-
31
- # 推荐的工具
32
- recommended_tools:
33
- - eslint
34
- - prettier
35
- - typescript
36
- - jest
37
-
38
- # 初始化脚本
39
- init_commands:
40
- - npm install
41
- - npm run build
42
-
43
- # 推荐的 package.json scripts
44
- recommended_scripts:
45
- lint: "eslint src --ext .js,.jsx,.ts,.tsx"
46
- format: "prettier --write \"src/**/*.{js,jsx,ts,tsx}\""
47
- test: "jest"
48
- build: "react-scripts build"
49
-
50
- # 文档链接
51
- documentation:
52
- - name: "React 官方文档"
53
- url: "https://react.dev"
54
- - name: "React Security Best Practices"
55
- url: "https://react.dev/learn/security"
@@ -1,170 +0,0 @@
1
- /**
2
- * Template Manager - 管理项目模板
3
- *
4
- * 提供模板加载、初始化和配置功能
5
- */
6
-
7
- import fs from 'node:fs';
8
- import path from 'node:path';
9
- import yaml from 'js-yaml';
10
- import { fileURLToPath } from 'node:url';
11
-
12
- const __dirname = path.dirname(fileURLToPath(import.meta.url));
13
-
14
- export interface ProjectTemplate {
15
- name: string;
16
- description: string;
17
- version: string;
18
- conventions: string[];
19
- config: {
20
- file_extensions: string[];
21
- ignore_paths: string[];
22
- recommended_tools: string[];
23
- };
24
- init_commands?: string[];
25
- recommended_scripts?: Record<string, string>;
26
- recommended_make_targets?: Record<string, string>;
27
- documentation?: Array<{
28
- name: string;
29
- url: string;
30
- }>;
31
- }
32
-
33
- export class TemplateManager {
34
- private templatesDir: string;
35
- private templates: Map<string, ProjectTemplate> = new Map();
36
-
37
- constructor(templatesDir?: string) {
38
- this.templatesDir = templatesDir ?? path.join(__dirname, '../templates');
39
- }
40
-
41
- /**
42
- * 加载所有模板
43
- */
44
- loadAll(): void {
45
- if (!fs.existsSync(this.templatesDir)) {
46
- throw new Error(`Templates directory not found: ${this.templatesDir}`);
47
- }
48
-
49
- const files = fs.readdirSync(this.templatesDir);
50
- const yamlFiles = files.filter(f => f.endsWith('.yaml') || f.endsWith('.yml'));
51
-
52
- for (const file of yamlFiles) {
53
- const templateId = path.basename(file, path.extname(file));
54
- const templatePath = path.join(this.templatesDir, file);
55
- const content = fs.readFileSync(templatePath, 'utf-8');
56
- const template = yaml.load(content) as ProjectTemplate;
57
-
58
- this.templates.set(templateId, template);
59
- }
60
- }
61
-
62
- /**
63
- * 获取模板
64
- */
65
- getTemplate(templateId: string): ProjectTemplate | undefined {
66
- return this.templates.get(templateId);
67
- }
68
-
69
- /**
70
- * 列出所有模板
71
- */
72
- listTemplates(): Array<{ id: string; template: ProjectTemplate }> {
73
- return Array.from(this.templates.entries()).map(([id, template]) => ({
74
- id,
75
- template,
76
- }));
77
- }
78
-
79
- /**
80
- * 初始化项目模板
81
- */
82
- initProject(templateId: string, projectPath: string): void {
83
- const template = this.getTemplate(templateId);
84
- if (!template) {
85
- throw new Error(`Template not found: ${templateId}`);
86
- }
87
-
88
- // 创建 .claude-forge 目录
89
- const forgeDir = path.join(projectPath, '.claude-forge');
90
- if (!fs.existsSync(forgeDir)) {
91
- fs.mkdirSync(forgeDir, { recursive: true });
92
- }
93
-
94
- // 创建配置文件
95
- const config = {
96
- template: templateId,
97
- conventions: template.conventions,
98
- ignore_paths: template.config.ignore_paths,
99
- };
100
-
101
- const configPath = path.join(forgeDir, 'config.yaml');
102
- fs.writeFileSync(configPath, yaml.dump(config), 'utf-8');
103
-
104
- // 创建 .gitignore(如果不存在)
105
- const gitignorePath = path.join(projectPath, '.gitignore');
106
- if (!fs.existsSync(gitignorePath)) {
107
- const gitignoreContent = template.config.ignore_paths.join('\n') + '\n';
108
- fs.writeFileSync(gitignorePath, gitignoreContent, 'utf-8');
109
- }
110
-
111
- console.log(`✓ Initialized ${template.name} template`);
112
- console.log(`✓ Created ${configPath}`);
113
- console.log(`✓ Enabled conventions: ${template.conventions.join(', ')}`);
114
- }
115
-
116
- /**
117
- * 生成推荐配置
118
- */
119
- generateRecommendations(templateId: string): string {
120
- const template = this.getTemplate(templateId);
121
- if (!template) {
122
- throw new Error(`Template not found: ${templateId}`);
123
- }
124
-
125
- let output = `# ${template.name} - Recommended Configuration\n\n`;
126
-
127
- // 推荐的工具
128
- if (template.config.recommended_tools.length > 0) {
129
- output += `## Recommended Tools\n\n`;
130
- template.config.recommended_tools.forEach(tool => {
131
- output += `- ${tool}\n`;
132
- });
133
- output += '\n';
134
- }
135
-
136
- // 推荐的脚本
137
- if (template.recommended_scripts) {
138
- output += `## Recommended Scripts (package.json)\n\n`;
139
- output += '```json\n';
140
- output += '"scripts": {\n';
141
- Object.entries(template.recommended_scripts).forEach(([name, cmd], idx, arr) => {
142
- const comma = idx < arr.length - 1 ? ',' : '';
143
- output += ` "${name}": "${cmd}"${comma}\n`;
144
- });
145
- output += '}\n';
146
- output += '```\n\n';
147
- }
148
-
149
- // 推荐的 Makefile targets
150
- if (template.recommended_make_targets) {
151
- output += `## Recommended Makefile Targets\n\n`;
152
- output += '```makefile\n';
153
- Object.entries(template.recommended_make_targets).forEach(([name, cmd]) => {
154
- output += `${name}:\n\t${cmd}\n\n`;
155
- });
156
- output += '```\n\n';
157
- }
158
-
159
- // 文档链接
160
- if (template.documentation && template.documentation.length > 0) {
161
- output += `## Documentation\n\n`;
162
- template.documentation.forEach(doc => {
163
- output += `- [${doc.name}](${doc.url})\n`;
164
- });
165
- output += '\n';
166
- }
167
-
168
- return output;
169
- }
170
- }