oh-my-claude-sisyphus 3.8.8 → 3.8.10

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 (460) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +1 -1
  4. package/agents/architect.md +78 -0
  5. package/agents/explore.md +15 -0
  6. package/agents/qa-tester.md +159 -1
  7. package/agents/writer.md +20 -0
  8. package/commands/help.md +1 -1
  9. package/commands/omc-setup.md +1 -1
  10. package/dist/__tests__/agent-registry.test.d.ts +2 -0
  11. package/dist/__tests__/agent-registry.test.d.ts.map +1 -0
  12. package/dist/__tests__/agent-registry.test.js +39 -0
  13. package/dist/__tests__/agent-registry.test.js.map +1 -0
  14. package/dist/__tests__/hooks.test.js +6 -6
  15. package/dist/__tests__/hooks.test.js.map +1 -1
  16. package/dist/__tests__/load-agent-prompt.test.d.ts +2 -0
  17. package/dist/__tests__/load-agent-prompt.test.d.ts.map +1 -0
  18. package/dist/__tests__/load-agent-prompt.test.js +68 -0
  19. package/dist/__tests__/load-agent-prompt.test.js.map +1 -0
  20. package/dist/__tests__/model-routing.test.js +5 -34
  21. package/dist/__tests__/model-routing.test.js.map +1 -1
  22. package/dist/agents/analyst.d.ts.map +1 -1
  23. package/dist/agents/analyst.js +2 -77
  24. package/dist/agents/analyst.js.map +1 -1
  25. package/dist/agents/architect.d.ts.map +1 -1
  26. package/dist/agents/architect.js +3 -148
  27. package/dist/agents/architect.js.map +1 -1
  28. package/dist/agents/coordinator-deprecated.d.ts +18 -0
  29. package/dist/agents/coordinator-deprecated.d.ts.map +1 -0
  30. package/dist/agents/coordinator-deprecated.js +34 -0
  31. package/dist/agents/coordinator-deprecated.js.map +1 -0
  32. package/dist/agents/critic.d.ts.map +1 -1
  33. package/dist/agents/critic.js +2 -90
  34. package/dist/agents/critic.js.map +1 -1
  35. package/dist/agents/definitions.d.ts +2 -0
  36. package/dist/agents/definitions.d.ts.map +1 -1
  37. package/dist/agents/definitions.js +3 -32
  38. package/dist/agents/definitions.js.map +1 -1
  39. package/dist/agents/designer.d.ts.map +1 -1
  40. package/dist/agents/designer.js +2 -73
  41. package/dist/agents/designer.js.map +1 -1
  42. package/dist/agents/executor.d.ts +1 -0
  43. package/dist/agents/executor.d.ts.map +1 -1
  44. package/dist/agents/executor.js +3 -56
  45. package/dist/agents/executor.js.map +1 -1
  46. package/dist/agents/explore.d.ts.map +1 -1
  47. package/dist/agents/explore.js +2 -64
  48. package/dist/agents/explore.js.map +1 -1
  49. package/dist/agents/index.d.ts +4 -3
  50. package/dist/agents/index.d.ts.map +1 -1
  51. package/dist/agents/index.js +6 -3
  52. package/dist/agents/index.js.map +1 -1
  53. package/dist/agents/planner.d.ts.map +1 -1
  54. package/dist/agents/planner.js +2 -157
  55. package/dist/agents/planner.js.map +1 -1
  56. package/dist/agents/qa-tester.d.ts.map +1 -1
  57. package/dist/agents/qa-tester.js +2 -324
  58. package/dist/agents/qa-tester.js.map +1 -1
  59. package/dist/agents/researcher.d.ts.map +1 -1
  60. package/dist/agents/researcher.js +2 -65
  61. package/dist/agents/researcher.js.map +1 -1
  62. package/dist/agents/scientist.d.ts.map +1 -1
  63. package/dist/agents/scientist.js +2 -293
  64. package/dist/agents/scientist.js.map +1 -1
  65. package/dist/agents/utils.d.ts +7 -0
  66. package/dist/agents/utils.d.ts.map +1 -1
  67. package/dist/agents/utils.js +50 -0
  68. package/dist/agents/utils.js.map +1 -1
  69. package/dist/agents/vision.d.ts.map +1 -1
  70. package/dist/agents/vision.js +2 -32
  71. package/dist/agents/vision.js.map +1 -1
  72. package/dist/agents/writer.d.ts.map +1 -1
  73. package/dist/agents/writer.js +2 -171
  74. package/dist/agents/writer.js.map +1 -1
  75. package/dist/cli/analytics.js +0 -0
  76. package/dist/cli/index.js +0 -0
  77. package/dist/features/model-routing/index.d.ts +1 -1
  78. package/dist/features/model-routing/index.d.ts.map +1 -1
  79. package/dist/features/model-routing/index.js +1 -1
  80. package/dist/features/model-routing/index.js.map +1 -1
  81. package/dist/features/model-routing/router.d.ts +1 -15
  82. package/dist/features/model-routing/router.d.ts.map +1 -1
  83. package/dist/features/model-routing/router.js +2 -33
  84. package/dist/features/model-routing/router.js.map +1 -1
  85. package/dist/features/model-routing/rules.d.ts.map +1 -1
  86. package/dist/features/model-routing/rules.js +0 -8
  87. package/dist/features/model-routing/rules.js.map +1 -1
  88. package/dist/features/model-routing/types.d.ts +1 -2
  89. package/dist/features/model-routing/types.d.ts.map +1 -1
  90. package/dist/features/model-routing/types.js +2 -6
  91. package/dist/features/model-routing/types.js.map +1 -1
  92. package/dist/features/task-decomposer/index.d.ts +1 -1
  93. package/dist/features/task-decomposer/index.d.ts.map +1 -1
  94. package/dist/features/task-decomposer/index.js +5 -8
  95. package/dist/features/task-decomposer/index.js.map +1 -1
  96. package/dist/features/task-decomposer/types.d.ts +4 -4
  97. package/dist/features/task-decomposer/types.d.ts.map +1 -1
  98. package/dist/hooks/bridge.d.ts.map +1 -1
  99. package/dist/hooks/bridge.js +10 -2
  100. package/dist/hooks/bridge.js.map +1 -1
  101. package/dist/hooks/persistent-mode/index.d.ts.map +1 -1
  102. package/dist/hooks/persistent-mode/index.js +14 -12
  103. package/dist/hooks/persistent-mode/index.js.map +1 -1
  104. package/dist/hooks/todo-continuation/index.d.ts +9 -0
  105. package/dist/hooks/todo-continuation/index.d.ts.map +1 -1
  106. package/dist/hooks/todo-continuation/index.js +19 -0
  107. package/dist/hooks/todo-continuation/index.js.map +1 -1
  108. package/dist/hooks/ultrapilot/decomposer.d.ts +1 -1
  109. package/dist/hooks/ultrapilot/decomposer.js +2 -2
  110. package/dist/index.d.ts +1 -1
  111. package/dist/index.d.ts.map +1 -1
  112. package/dist/index.js +4 -2
  113. package/dist/index.js.map +1 -1
  114. package/docs/CLAUDE.md +44 -4
  115. package/docs/FEATURES.md +1 -1
  116. package/docs/MIGRATION.md +5 -5
  117. package/docs/REFERENCE.md +6 -2
  118. package/package.json +1 -1
  119. package/scripts/persistent-mode.mjs +27 -12
  120. package/skills/help/SKILL.md +1 -1
  121. package/skills/omc-setup/SKILL.md +1 -1
  122. package/templates/hooks/persistent-mode.mjs +26 -12
  123. package/templates/hooks/stop-continuation.mjs +30 -0
  124. package/dist/__tests__/analytics/analytics-summary.test.d.ts +0 -2
  125. package/dist/__tests__/analytics/analytics-summary.test.d.ts.map +0 -1
  126. package/dist/__tests__/analytics/analytics-summary.test.js +0 -267
  127. package/dist/__tests__/analytics/analytics-summary.test.js.map +0 -1
  128. package/dist/__tests__/analytics/cost-estimator.test.d.ts +0 -2
  129. package/dist/__tests__/analytics/cost-estimator.test.d.ts.map +0 -1
  130. package/dist/__tests__/analytics/cost-estimator.test.js +0 -212
  131. package/dist/__tests__/analytics/cost-estimator.test.js.map +0 -1
  132. package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts +0 -7
  133. package/dist/__tests__/hooks/auto-slash-command/executor.test.d.ts.map +0 -1
  134. package/dist/__tests__/hooks/auto-slash-command/executor.test.js +0 -374
  135. package/dist/__tests__/hooks/auto-slash-command/executor.test.js.map +0 -1
  136. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts +0 -2
  137. package/dist/__tests__/hud/auto-tracking.integration.test.d.ts.map +0 -1
  138. package/dist/__tests__/hud/auto-tracking.integration.test.js +0 -12
  139. package/dist/__tests__/hud/auto-tracking.integration.test.js.map +0 -1
  140. package/dist/__tests__/learned-skills/config.test.d.ts +0 -2
  141. package/dist/__tests__/learned-skills/config.test.d.ts.map +0 -1
  142. package/dist/__tests__/learned-skills/config.test.js +0 -37
  143. package/dist/__tests__/learned-skills/config.test.js.map +0 -1
  144. package/dist/__tests__/learned-skills/detector.test.d.ts +0 -2
  145. package/dist/__tests__/learned-skills/detector.test.d.ts.map +0 -1
  146. package/dist/__tests__/learned-skills/detector.test.js +0 -99
  147. package/dist/__tests__/learned-skills/detector.test.js.map +0 -1
  148. package/dist/__tests__/learned-skills/finder.test.d.ts +0 -2
  149. package/dist/__tests__/learned-skills/finder.test.d.ts.map +0 -1
  150. package/dist/__tests__/learned-skills/finder.test.js +0 -59
  151. package/dist/__tests__/learned-skills/finder.test.js.map +0 -1
  152. package/dist/__tests__/learned-skills/loader.test.d.ts +0 -2
  153. package/dist/__tests__/learned-skills/loader.test.d.ts.map +0 -1
  154. package/dist/__tests__/learned-skills/loader.test.js +0 -69
  155. package/dist/__tests__/learned-skills/loader.test.js.map +0 -1
  156. package/dist/__tests__/learned-skills/parser.test.d.ts +0 -2
  157. package/dist/__tests__/learned-skills/parser.test.d.ts.map +0 -1
  158. package/dist/__tests__/learned-skills/parser.test.js +0 -81
  159. package/dist/__tests__/learned-skills/parser.test.js.map +0 -1
  160. package/dist/__tests__/learned-skills/validator.test.d.ts +0 -2
  161. package/dist/__tests__/learned-skills/validator.test.d.ts.map +0 -1
  162. package/dist/__tests__/learned-skills/validator.test.js +0 -85
  163. package/dist/__tests__/learned-skills/validator.test.js.map +0 -1
  164. package/dist/agents/codex-agents.d.ts +0 -20
  165. package/dist/agents/codex-agents.d.ts.map +0 -1
  166. package/dist/agents/codex-agents.js +0 -36
  167. package/dist/agents/codex-agents.js.map +0 -1
  168. package/dist/agents/coordinator.d.ts +0 -11
  169. package/dist/agents/coordinator.d.ts.map +0 -1
  170. package/dist/agents/coordinator.js +0 -115
  171. package/dist/agents/coordinator.js.map +0 -1
  172. package/dist/agents/document-writer.d.ts +0 -11
  173. package/dist/agents/document-writer.d.ts.map +0 -1
  174. package/dist/agents/document-writer.js +0 -209
  175. package/dist/agents/document-writer.js.map +0 -1
  176. package/dist/agents/frontend-engineer.d.ts +0 -11
  177. package/dist/agents/frontend-engineer.d.ts.map +0 -1
  178. package/dist/agents/frontend-engineer.js +0 -115
  179. package/dist/agents/frontend-engineer.js.map +0 -1
  180. package/dist/agents/librarian.d.ts +0 -12
  181. package/dist/agents/librarian.d.ts.map +0 -1
  182. package/dist/agents/librarian.js +0 -103
  183. package/dist/agents/librarian.js.map +0 -1
  184. package/dist/agents/metis.d.ts +0 -12
  185. package/dist/agents/metis.d.ts.map +0 -1
  186. package/dist/agents/metis.js +0 -117
  187. package/dist/agents/metis.js.map +0 -1
  188. package/dist/agents/momus.d.ts +0 -12
  189. package/dist/agents/momus.d.ts.map +0 -1
  190. package/dist/agents/momus.js +0 -128
  191. package/dist/agents/momus.js.map +0 -1
  192. package/dist/agents/multimodal-looker.d.ts +0 -11
  193. package/dist/agents/multimodal-looker.d.ts.map +0 -1
  194. package/dist/agents/multimodal-looker.js +0 -70
  195. package/dist/agents/multimodal-looker.js.map +0 -1
  196. package/dist/agents/oracle.d.ts +0 -13
  197. package/dist/agents/oracle.d.ts.map +0 -1
  198. package/dist/agents/oracle.js +0 -191
  199. package/dist/agents/oracle.js.map +0 -1
  200. package/dist/agents/orchestrator-sisyphus.d.ts +0 -11
  201. package/dist/agents/orchestrator-sisyphus.d.ts.map +0 -1
  202. package/dist/agents/orchestrator-sisyphus.js +0 -115
  203. package/dist/agents/orchestrator-sisyphus.js.map +0 -1
  204. package/dist/agents/prometheus.d.ts +0 -12
  205. package/dist/agents/prometheus.d.ts.map +0 -1
  206. package/dist/agents/prometheus.js +0 -195
  207. package/dist/agents/prometheus.js.map +0 -1
  208. package/dist/agents/sisyphus-junior.d.ts +0 -12
  209. package/dist/agents/sisyphus-junior.d.ts.map +0 -1
  210. package/dist/agents/sisyphus-junior.js +0 -93
  211. package/dist/agents/sisyphus-junior.js.map +0 -1
  212. package/dist/cli/components/CostDashboard.d.ts +0 -15
  213. package/dist/cli/components/CostDashboard.d.ts.map +0 -1
  214. package/dist/cli/components/CostDashboard.js +0 -15
  215. package/dist/cli/components/CostDashboard.js.map +0 -1
  216. package/dist/cli/components/LiveStats.d.ts +0 -16
  217. package/dist/cli/components/LiveStats.d.ts.map +0 -1
  218. package/dist/cli/components/LiveStats.js +0 -16
  219. package/dist/cli/components/LiveStats.js.map +0 -1
  220. package/dist/cli/components/SessionBrowser.d.ts +0 -14
  221. package/dist/cli/components/SessionBrowser.d.ts.map +0 -1
  222. package/dist/cli/components/SessionBrowser.js +0 -14
  223. package/dist/cli/components/SessionBrowser.js.map +0 -1
  224. package/dist/cli/tui.d.ts +0 -21
  225. package/dist/cli/tui.d.ts.map +0 -1
  226. package/dist/cli/tui.js +0 -21
  227. package/dist/cli/tui.js.map +0 -1
  228. package/dist/hooks/autopilot/signals.d.ts +0 -20
  229. package/dist/hooks/autopilot/signals.d.ts.map +0 -1
  230. package/dist/hooks/autopilot/signals.js +0 -75
  231. package/dist/hooks/autopilot/signals.js.map +0 -1
  232. package/dist/hooks/autopilot/summary.d.ts +0 -27
  233. package/dist/hooks/autopilot/summary.d.ts.map +0 -1
  234. package/dist/hooks/autopilot/summary.js +0 -160
  235. package/dist/hooks/autopilot/summary.js.map +0 -1
  236. package/dist/hooks/autopilot/transition.d.ts +0 -39
  237. package/dist/hooks/autopilot/transition.d.ts.map +0 -1
  238. package/dist/hooks/autopilot/transition.js +0 -216
  239. package/dist/hooks/autopilot/transition.js.map +0 -1
  240. package/dist/hooks/context-window-limit-recovery/constants.d.ts +0 -28
  241. package/dist/hooks/context-window-limit-recovery/constants.d.ts.map +0 -1
  242. package/dist/hooks/context-window-limit-recovery/constants.js +0 -85
  243. package/dist/hooks/context-window-limit-recovery/constants.js.map +0 -1
  244. package/dist/hooks/context-window-limit-recovery/index.d.ts +0 -62
  245. package/dist/hooks/context-window-limit-recovery/index.d.ts.map +0 -1
  246. package/dist/hooks/context-window-limit-recovery/index.js +0 -201
  247. package/dist/hooks/context-window-limit-recovery/index.js.map +0 -1
  248. package/dist/hooks/context-window-limit-recovery/parser.d.ts +0 -31
  249. package/dist/hooks/context-window-limit-recovery/parser.d.ts.map +0 -1
  250. package/dist/hooks/context-window-limit-recovery/parser.js +0 -241
  251. package/dist/hooks/context-window-limit-recovery/parser.js.map +0 -1
  252. package/dist/hooks/context-window-limit-recovery/types.d.ts +0 -84
  253. package/dist/hooks/context-window-limit-recovery/types.d.ts.map +0 -1
  254. package/dist/hooks/context-window-limit-recovery/types.js +0 -34
  255. package/dist/hooks/context-window-limit-recovery/types.js.map +0 -1
  256. package/dist/hooks/edit-error-recovery/index.d.ts +0 -62
  257. package/dist/hooks/edit-error-recovery/index.d.ts.map +0 -1
  258. package/dist/hooks/edit-error-recovery/index.js +0 -89
  259. package/dist/hooks/edit-error-recovery/index.js.map +0 -1
  260. package/dist/hooks/github-auto-responder/classifier.d.ts +0 -43
  261. package/dist/hooks/github-auto-responder/classifier.d.ts.map +0 -1
  262. package/dist/hooks/github-auto-responder/classifier.js +0 -150
  263. package/dist/hooks/github-auto-responder/classifier.js.map +0 -1
  264. package/dist/hooks/github-auto-responder/config.d.ts +0 -109
  265. package/dist/hooks/github-auto-responder/config.d.ts.map +0 -1
  266. package/dist/hooks/github-auto-responder/config.js +0 -69
  267. package/dist/hooks/github-auto-responder/config.js.map +0 -1
  268. package/dist/hooks/github-auto-responder/constants.d.ts +0 -45
  269. package/dist/hooks/github-auto-responder/constants.d.ts.map +0 -1
  270. package/dist/hooks/github-auto-responder/constants.js +0 -60
  271. package/dist/hooks/github-auto-responder/constants.js.map +0 -1
  272. package/dist/hooks/github-auto-responder/filters.d.ts +0 -95
  273. package/dist/hooks/github-auto-responder/filters.d.ts.map +0 -1
  274. package/dist/hooks/github-auto-responder/filters.js +0 -174
  275. package/dist/hooks/github-auto-responder/filters.js.map +0 -1
  276. package/dist/hooks/github-auto-responder/github-client.d.ts +0 -65
  277. package/dist/hooks/github-auto-responder/github-client.d.ts.map +0 -1
  278. package/dist/hooks/github-auto-responder/github-client.js +0 -128
  279. package/dist/hooks/github-auto-responder/github-client.js.map +0 -1
  280. package/dist/hooks/github-auto-responder/idempotency.d.ts +0 -68
  281. package/dist/hooks/github-auto-responder/idempotency.d.ts.map +0 -1
  282. package/dist/hooks/github-auto-responder/idempotency.js +0 -147
  283. package/dist/hooks/github-auto-responder/idempotency.js.map +0 -1
  284. package/dist/hooks/github-auto-responder/index.d.ts +0 -140
  285. package/dist/hooks/github-auto-responder/index.d.ts.map +0 -1
  286. package/dist/hooks/github-auto-responder/index.js +0 -145
  287. package/dist/hooks/github-auto-responder/index.js.map +0 -1
  288. package/dist/hooks/github-auto-responder/persona.d.ts +0 -40
  289. package/dist/hooks/github-auto-responder/persona.d.ts.map +0 -1
  290. package/dist/hooks/github-auto-responder/persona.js +0 -99
  291. package/dist/hooks/github-auto-responder/persona.js.map +0 -1
  292. package/dist/hooks/github-auto-responder/responder.d.ts +0 -122
  293. package/dist/hooks/github-auto-responder/responder.d.ts.map +0 -1
  294. package/dist/hooks/github-auto-responder/responder.js +0 -264
  295. package/dist/hooks/github-auto-responder/responder.js.map +0 -1
  296. package/dist/hooks/github-auto-responder/server.d.ts +0 -140
  297. package/dist/hooks/github-auto-responder/server.d.ts.map +0 -1
  298. package/dist/hooks/github-auto-responder/server.js +0 -301
  299. package/dist/hooks/github-auto-responder/server.js.map +0 -1
  300. package/dist/hooks/github-auto-responder/signature.d.ts +0 -34
  301. package/dist/hooks/github-auto-responder/signature.d.ts.map +0 -1
  302. package/dist/hooks/github-auto-responder/signature.js +0 -79
  303. package/dist/hooks/github-auto-responder/signature.js.map +0 -1
  304. package/dist/hooks/github-auto-responder/templates.d.ts +0 -16
  305. package/dist/hooks/github-auto-responder/templates.d.ts.map +0 -1
  306. package/dist/hooks/github-auto-responder/templates.js +0 -93
  307. package/dist/hooks/github-auto-responder/templates.js.map +0 -1
  308. package/dist/hooks/github-auto-responder/types.d.ts +0 -246
  309. package/dist/hooks/github-auto-responder/types.d.ts.map +0 -1
  310. package/dist/hooks/github-auto-responder/types.js +0 -7
  311. package/dist/hooks/github-auto-responder/types.js.map +0 -1
  312. package/dist/hooks/learned-skills/config.d.ts +0 -53
  313. package/dist/hooks/learned-skills/config.d.ts.map +0 -1
  314. package/dist/hooks/learned-skills/config.js +0 -103
  315. package/dist/hooks/learned-skills/config.js.map +0 -1
  316. package/dist/hooks/learned-skills/constants.d.ts +0 -24
  317. package/dist/hooks/learned-skills/constants.d.ts.map +0 -1
  318. package/dist/hooks/learned-skills/constants.js +0 -26
  319. package/dist/hooks/learned-skills/constants.js.map +0 -1
  320. package/dist/hooks/learned-skills/detection-hook.d.ts +0 -39
  321. package/dist/hooks/learned-skills/detection-hook.d.ts.map +0 -1
  322. package/dist/hooks/learned-skills/detection-hook.js +0 -83
  323. package/dist/hooks/learned-skills/detection-hook.js.map +0 -1
  324. package/dist/hooks/learned-skills/detector.d.ts +0 -30
  325. package/dist/hooks/learned-skills/detector.d.ts.map +0 -1
  326. package/dist/hooks/learned-skills/detector.js +0 -150
  327. package/dist/hooks/learned-skills/detector.js.map +0 -1
  328. package/dist/hooks/learned-skills/finder.d.ts +0 -21
  329. package/dist/hooks/learned-skills/finder.d.ts.map +0 -1
  330. package/dist/hooks/learned-skills/finder.js +0 -117
  331. package/dist/hooks/learned-skills/finder.js.map +0 -1
  332. package/dist/hooks/learned-skills/index.d.ts +0 -62
  333. package/dist/hooks/learned-skills/index.d.ts.map +0 -1
  334. package/dist/hooks/learned-skills/index.js +0 -137
  335. package/dist/hooks/learned-skills/index.js.map +0 -1
  336. package/dist/hooks/learned-skills/loader.d.ts +0 -20
  337. package/dist/hooks/learned-skills/loader.d.ts.map +0 -1
  338. package/dist/hooks/learned-skills/loader.js +0 -107
  339. package/dist/hooks/learned-skills/loader.js.map +0 -1
  340. package/dist/hooks/learned-skills/parser.d.ts +0 -21
  341. package/dist/hooks/learned-skills/parser.d.ts.map +0 -1
  342. package/dist/hooks/learned-skills/parser.js +0 -190
  343. package/dist/hooks/learned-skills/parser.js.map +0 -1
  344. package/dist/hooks/learned-skills/promotion.d.ts +0 -29
  345. package/dist/hooks/learned-skills/promotion.d.ts.map +0 -1
  346. package/dist/hooks/learned-skills/promotion.js +0 -87
  347. package/dist/hooks/learned-skills/promotion.js.map +0 -1
  348. package/dist/hooks/learned-skills/types.d.ts +0 -109
  349. package/dist/hooks/learned-skills/types.d.ts.map +0 -1
  350. package/dist/hooks/learned-skills/types.js +0 -8
  351. package/dist/hooks/learned-skills/types.js.map +0 -1
  352. package/dist/hooks/learned-skills/validator.d.ts +0 -15
  353. package/dist/hooks/learned-skills/validator.d.ts.map +0 -1
  354. package/dist/hooks/learned-skills/validator.js +0 -87
  355. package/dist/hooks/learned-skills/validator.js.map +0 -1
  356. package/dist/hooks/learned-skills/writer.d.ts +0 -27
  357. package/dist/hooks/learned-skills/writer.d.ts.map +0 -1
  358. package/dist/hooks/learned-skills/writer.js +0 -126
  359. package/dist/hooks/learned-skills/writer.js.map +0 -1
  360. package/dist/hooks/mnemosyne/config.d.ts +0 -53
  361. package/dist/hooks/mnemosyne/config.d.ts.map +0 -1
  362. package/dist/hooks/mnemosyne/config.js +0 -103
  363. package/dist/hooks/mnemosyne/config.js.map +0 -1
  364. package/dist/hooks/mnemosyne/constants.d.ts +0 -24
  365. package/dist/hooks/mnemosyne/constants.d.ts.map +0 -1
  366. package/dist/hooks/mnemosyne/constants.js +0 -26
  367. package/dist/hooks/mnemosyne/constants.js.map +0 -1
  368. package/dist/hooks/mnemosyne/detection-hook.d.ts +0 -39
  369. package/dist/hooks/mnemosyne/detection-hook.d.ts.map +0 -1
  370. package/dist/hooks/mnemosyne/detection-hook.js +0 -83
  371. package/dist/hooks/mnemosyne/detection-hook.js.map +0 -1
  372. package/dist/hooks/mnemosyne/detector.d.ts +0 -30
  373. package/dist/hooks/mnemosyne/detector.d.ts.map +0 -1
  374. package/dist/hooks/mnemosyne/detector.js +0 -150
  375. package/dist/hooks/mnemosyne/detector.js.map +0 -1
  376. package/dist/hooks/mnemosyne/finder.d.ts +0 -21
  377. package/dist/hooks/mnemosyne/finder.d.ts.map +0 -1
  378. package/dist/hooks/mnemosyne/finder.js +0 -117
  379. package/dist/hooks/mnemosyne/finder.js.map +0 -1
  380. package/dist/hooks/mnemosyne/index.d.ts +0 -62
  381. package/dist/hooks/mnemosyne/index.d.ts.map +0 -1
  382. package/dist/hooks/mnemosyne/index.js +0 -137
  383. package/dist/hooks/mnemosyne/index.js.map +0 -1
  384. package/dist/hooks/mnemosyne/loader.d.ts +0 -20
  385. package/dist/hooks/mnemosyne/loader.d.ts.map +0 -1
  386. package/dist/hooks/mnemosyne/loader.js +0 -113
  387. package/dist/hooks/mnemosyne/loader.js.map +0 -1
  388. package/dist/hooks/mnemosyne/parser.d.ts +0 -21
  389. package/dist/hooks/mnemosyne/parser.d.ts.map +0 -1
  390. package/dist/hooks/mnemosyne/parser.js +0 -190
  391. package/dist/hooks/mnemosyne/parser.js.map +0 -1
  392. package/dist/hooks/mnemosyne/promotion.d.ts +0 -29
  393. package/dist/hooks/mnemosyne/promotion.d.ts.map +0 -1
  394. package/dist/hooks/mnemosyne/promotion.js +0 -87
  395. package/dist/hooks/mnemosyne/promotion.js.map +0 -1
  396. package/dist/hooks/mnemosyne/types.d.ts +0 -109
  397. package/dist/hooks/mnemosyne/types.d.ts.map +0 -1
  398. package/dist/hooks/mnemosyne/types.js +0 -8
  399. package/dist/hooks/mnemosyne/types.js.map +0 -1
  400. package/dist/hooks/mnemosyne/validator.d.ts +0 -15
  401. package/dist/hooks/mnemosyne/validator.d.ts.map +0 -1
  402. package/dist/hooks/mnemosyne/validator.js +0 -87
  403. package/dist/hooks/mnemosyne/validator.js.map +0 -1
  404. package/dist/hooks/mnemosyne/writer.d.ts +0 -27
  405. package/dist/hooks/mnemosyne/writer.d.ts.map +0 -1
  406. package/dist/hooks/mnemosyne/writer.js +0 -126
  407. package/dist/hooks/mnemosyne/writer.js.map +0 -1
  408. package/dist/hooks/ralph-loop/index.d.ts +0 -116
  409. package/dist/hooks/ralph-loop/index.d.ts.map +0 -1
  410. package/dist/hooks/ralph-loop/index.js +0 -322
  411. package/dist/hooks/ralph-loop/index.js.map +0 -1
  412. package/dist/hooks/ralph-prd/index.d.ts +0 -130
  413. package/dist/hooks/ralph-prd/index.d.ts.map +0 -1
  414. package/dist/hooks/ralph-prd/index.js +0 -310
  415. package/dist/hooks/ralph-prd/index.js.map +0 -1
  416. package/dist/hooks/ralph-progress/index.d.ts +0 -102
  417. package/dist/hooks/ralph-progress/index.d.ts.map +0 -1
  418. package/dist/hooks/ralph-progress/index.js +0 -408
  419. package/dist/hooks/ralph-progress/index.js.map +0 -1
  420. package/dist/hooks/ralph-verifier/index.d.ts +0 -72
  421. package/dist/hooks/ralph-verifier/index.d.ts.map +0 -1
  422. package/dist/hooks/ralph-verifier/index.js +0 -223
  423. package/dist/hooks/ralph-verifier/index.js.map +0 -1
  424. package/dist/hooks/session-recovery/constants.d.ts +0 -56
  425. package/dist/hooks/session-recovery/constants.d.ts.map +0 -1
  426. package/dist/hooks/session-recovery/constants.js +0 -78
  427. package/dist/hooks/session-recovery/constants.js.map +0 -1
  428. package/dist/hooks/session-recovery/index.d.ts +0 -53
  429. package/dist/hooks/session-recovery/index.d.ts.map +0 -1
  430. package/dist/hooks/session-recovery/index.js +0 -321
  431. package/dist/hooks/session-recovery/index.js.map +0 -1
  432. package/dist/hooks/session-recovery/storage.d.ts +0 -76
  433. package/dist/hooks/session-recovery/storage.d.ts.map +0 -1
  434. package/dist/hooks/session-recovery/storage.js +0 -383
  435. package/dist/hooks/session-recovery/storage.js.map +0 -1
  436. package/dist/hooks/session-recovery/types.d.ts +0 -145
  437. package/dist/hooks/session-recovery/types.d.ts.map +0 -1
  438. package/dist/hooks/session-recovery/types.js +0 -8
  439. package/dist/hooks/session-recovery/types.js.map +0 -1
  440. package/dist/hooks/sisyphus-orchestrator/constants.d.ts +0 -23
  441. package/dist/hooks/sisyphus-orchestrator/constants.d.ts.map +0 -1
  442. package/dist/hooks/sisyphus-orchestrator/constants.js +0 -142
  443. package/dist/hooks/sisyphus-orchestrator/constants.js.map +0 -1
  444. package/dist/hooks/sisyphus-orchestrator/index.d.ts +0 -113
  445. package/dist/hooks/sisyphus-orchestrator/index.d.ts.map +0 -1
  446. package/dist/hooks/sisyphus-orchestrator/index.js +0 -309
  447. package/dist/hooks/sisyphus-orchestrator/index.js.map +0 -1
  448. package/dist/hooks/ultraqa-loop/index.d.ts +0 -94
  449. package/dist/hooks/ultraqa-loop/index.d.ts.map +0 -1
  450. package/dist/hooks/ultraqa-loop/index.js +0 -216
  451. package/dist/hooks/ultraqa-loop/index.js.map +0 -1
  452. package/dist/hooks/ultrawork-state/index.d.ts +0 -62
  453. package/dist/hooks/ultrawork-state/index.d.ts.map +0 -1
  454. package/dist/hooks/ultrawork-state/index.js +0 -208
  455. package/dist/hooks/ultrawork-state/index.js.map +0 -1
  456. package/dist/hud/sisyphus-state.d.ts +0 -31
  457. package/dist/hud/sisyphus-state.d.ts.map +0 -1
  458. package/dist/hud/sisyphus-state.js +0 -163
  459. package/dist/hud/sisyphus-state.js.map +0 -1
  460. package/dist/mcp/standalone-server.cjs +0 -19135
@@ -1,21 +0,0 @@
1
- /**
2
- * Skill Parser
3
- *
4
- * Parses YAML frontmatter from skill files.
5
- */
6
- import type { SkillMetadata } from './types.js';
7
- export interface SkillParseResult {
8
- metadata: Partial<SkillMetadata>;
9
- content: string;
10
- valid: boolean;
11
- errors: string[];
12
- }
13
- /**
14
- * Parse skill file frontmatter and content.
15
- */
16
- export declare function parseSkillFile(rawContent: string): SkillParseResult;
17
- /**
18
- * Generate YAML frontmatter for a skill.
19
- */
20
- export declare function generateSkillFrontmatter(metadata: SkillMetadata): string;
21
- //# sourceMappingURL=parser.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/parser.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,CAAC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,gBAAgB,CA2CnE;AAsHD;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,aAAa,GAAG,MAAM,CAoCxE"}
@@ -1,190 +0,0 @@
1
- /**
2
- * Skill Parser
3
- *
4
- * Parses YAML frontmatter from skill files.
5
- */
6
- /**
7
- * Parse skill file frontmatter and content.
8
- */
9
- export function parseSkillFile(rawContent) {
10
- const frontmatterRegex = /^---\r?\n([\s\S]*?)\r?\n---\r?\n?([\s\S]*)$/;
11
- const match = rawContent.match(frontmatterRegex);
12
- if (!match) {
13
- return {
14
- metadata: {},
15
- content: rawContent,
16
- valid: false,
17
- errors: ['Missing YAML frontmatter'],
18
- };
19
- }
20
- const yamlContent = match[1];
21
- const content = match[2].trim();
22
- const errors = [];
23
- try {
24
- const metadata = parseYamlMetadata(yamlContent);
25
- // Validate required fields
26
- if (!metadata.id)
27
- errors.push('Missing required field: id');
28
- if (!metadata.name)
29
- errors.push('Missing required field: name');
30
- if (!metadata.description)
31
- errors.push('Missing required field: description');
32
- if (!metadata.triggers || metadata.triggers.length === 0) {
33
- errors.push('Missing required field: triggers');
34
- }
35
- if (!metadata.source)
36
- errors.push('Missing required field: source');
37
- return {
38
- metadata,
39
- content,
40
- valid: errors.length === 0,
41
- errors,
42
- };
43
- }
44
- catch (e) {
45
- return {
46
- metadata: {},
47
- content: rawContent,
48
- valid: false,
49
- errors: [`YAML parse error: ${e}`],
50
- };
51
- }
52
- }
53
- /**
54
- * Parse YAML metadata without external library.
55
- */
56
- function parseYamlMetadata(yamlContent) {
57
- const lines = yamlContent.split('\n');
58
- const metadata = {};
59
- let i = 0;
60
- while (i < lines.length) {
61
- const line = lines[i];
62
- const colonIndex = line.indexOf(':');
63
- if (colonIndex === -1) {
64
- i++;
65
- continue;
66
- }
67
- const key = line.slice(0, colonIndex).trim();
68
- const rawValue = line.slice(colonIndex + 1).trim();
69
- switch (key) {
70
- case 'id':
71
- metadata.id = parseStringValue(rawValue);
72
- break;
73
- case 'name':
74
- metadata.name = parseStringValue(rawValue);
75
- break;
76
- case 'description':
77
- metadata.description = parseStringValue(rawValue);
78
- break;
79
- case 'source':
80
- metadata.source = parseStringValue(rawValue);
81
- break;
82
- case 'createdAt':
83
- metadata.createdAt = parseStringValue(rawValue);
84
- break;
85
- case 'sessionId':
86
- metadata.sessionId = parseStringValue(rawValue);
87
- break;
88
- case 'quality':
89
- metadata.quality = parseInt(rawValue, 10) || undefined;
90
- break;
91
- case 'usageCount':
92
- metadata.usageCount = parseInt(rawValue, 10) || 0;
93
- break;
94
- case 'triggers':
95
- case 'tags': {
96
- const { value, consumed } = parseArrayValue(rawValue, lines, i);
97
- if (key === 'triggers') {
98
- metadata.triggers = Array.isArray(value) ? value : [value];
99
- }
100
- else {
101
- metadata.tags = Array.isArray(value) ? value : [value];
102
- }
103
- i += consumed - 1;
104
- break;
105
- }
106
- }
107
- i++;
108
- }
109
- return metadata;
110
- }
111
- function parseStringValue(value) {
112
- if (!value)
113
- return '';
114
- if ((value.startsWith('"') && value.endsWith('"')) ||
115
- (value.startsWith("'") && value.endsWith("'"))) {
116
- return value.slice(1, -1);
117
- }
118
- return value;
119
- }
120
- function parseArrayValue(rawValue, lines, currentIndex) {
121
- // Inline array: ["a", "b"]
122
- if (rawValue.startsWith('[')) {
123
- const content = rawValue.slice(1, rawValue.lastIndexOf(']')).trim();
124
- if (!content)
125
- return { value: [], consumed: 1 };
126
- const items = content.split(',').map(s => parseStringValue(s.trim())).filter(Boolean);
127
- return { value: items, consumed: 1 };
128
- }
129
- // Multi-line array
130
- if (!rawValue || rawValue === '') {
131
- const items = [];
132
- let consumed = 1;
133
- for (let j = currentIndex + 1; j < lines.length; j++) {
134
- const nextLine = lines[j];
135
- const arrayMatch = nextLine.match(/^\s+-\s*(.*)$/);
136
- if (arrayMatch) {
137
- const itemValue = parseStringValue(arrayMatch[1].trim());
138
- if (itemValue)
139
- items.push(itemValue);
140
- consumed++;
141
- }
142
- else if (nextLine.trim() === '') {
143
- consumed++;
144
- }
145
- else {
146
- break;
147
- }
148
- }
149
- if (items.length > 0) {
150
- return { value: items, consumed };
151
- }
152
- }
153
- // Single value
154
- return { value: parseStringValue(rawValue), consumed: 1 };
155
- }
156
- /**
157
- * Generate YAML frontmatter for a skill.
158
- */
159
- export function generateSkillFrontmatter(metadata) {
160
- const lines = [
161
- '---',
162
- `id: "${metadata.id}"`,
163
- `name: "${metadata.name}"`,
164
- `description: "${metadata.description}"`,
165
- `source: ${metadata.source}`,
166
- `createdAt: "${metadata.createdAt}"`,
167
- ];
168
- if (metadata.sessionId) {
169
- lines.push(`sessionId: "${metadata.sessionId}"`);
170
- }
171
- if (metadata.quality !== undefined) {
172
- lines.push(`quality: ${metadata.quality}`);
173
- }
174
- if (metadata.usageCount !== undefined) {
175
- lines.push(`usageCount: ${metadata.usageCount}`);
176
- }
177
- lines.push('triggers:');
178
- for (const trigger of metadata.triggers) {
179
- lines.push(` - "${trigger}"`);
180
- }
181
- if (metadata.tags && metadata.tags.length > 0) {
182
- lines.push('tags:');
183
- for (const tag of metadata.tags) {
184
- lines.push(` - "${tag}"`);
185
- }
186
- }
187
- lines.push('---');
188
- return lines.join('\n');
189
- }
190
- //# sourceMappingURL=parser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/parser.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- /**
2
- * Ralph-Progress Promotion
3
- *
4
- * Promotes learnings from ralph-progress to full skills.
5
- */
6
- import type { WriteSkillResult } from './writer.js';
7
- export interface PromotionCandidate {
8
- /** The learning text */
9
- learning: string;
10
- /** Story ID it came from */
11
- storyId: string;
12
- /** Timestamp */
13
- timestamp: string;
14
- /** Suggested triggers (extracted from text) */
15
- suggestedTriggers: string[];
16
- }
17
- /**
18
- * Get promotion candidates from ralph-progress learnings.
19
- */
20
- export declare function getPromotionCandidates(directory: string, limit?: number): PromotionCandidate[];
21
- /**
22
- * Promote a learning to a full skill.
23
- */
24
- export declare function promoteLearning(candidate: PromotionCandidate, skillName: string, additionalTriggers: string[], targetScope: 'user' | 'project', projectRoot: string | null): WriteSkillResult;
25
- /**
26
- * List learnings that could be promoted.
27
- */
28
- export declare function listPromotableLearnings(directory: string): string;
29
- //# sourceMappingURL=promotion.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promotion.d.ts","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/promotion.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,+CAA+C;IAC/C,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAgBD;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,EAAE,MAAM,EACjB,KAAK,GAAE,MAAW,GACjB,kBAAkB,EAAE,CA2BtB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC7B,SAAS,EAAE,kBAAkB,EAC7B,SAAS,EAAE,MAAM,EACjB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB,gBAAgB,CASlB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CA4BjE"}
@@ -1,87 +0,0 @@
1
- /**
2
- * Ralph-Progress Promotion
3
- *
4
- * Promotes learnings from ralph-progress to full skills.
5
- */
6
- import { readProgress } from '../ralph-progress/index.js';
7
- import { writeSkill } from './writer.js';
8
- /**
9
- * Extract trigger keywords from learning text.
10
- */
11
- function extractTriggers(text) {
12
- const technicalKeywords = [
13
- 'react', 'typescript', 'javascript', 'python', 'api', 'database',
14
- 'testing', 'debugging', 'performance', 'async', 'state', 'component',
15
- 'error', 'validation', 'authentication', 'cache', 'query', 'mutation',
16
- ];
17
- const textLower = text.toLowerCase();
18
- return technicalKeywords.filter(kw => textLower.includes(kw));
19
- }
20
- /**
21
- * Get promotion candidates from ralph-progress learnings.
22
- */
23
- export function getPromotionCandidates(directory, limit = 10) {
24
- const progress = readProgress(directory);
25
- if (!progress) {
26
- return [];
27
- }
28
- const candidates = [];
29
- // Get recent entries with learnings
30
- const recentEntries = progress.entries.slice(-limit);
31
- for (const entry of recentEntries) {
32
- for (const learning of entry.learnings) {
33
- // Skip very short learnings
34
- if (learning.length < 20)
35
- continue;
36
- candidates.push({
37
- learning,
38
- storyId: entry.storyId,
39
- timestamp: entry.timestamp,
40
- suggestedTriggers: extractTriggers(learning),
41
- });
42
- }
43
- }
44
- // Sort by number of triggers (more specific = better candidate)
45
- return candidates.sort((a, b) => b.suggestedTriggers.length - a.suggestedTriggers.length);
46
- }
47
- /**
48
- * Promote a learning to a full skill.
49
- */
50
- export function promoteLearning(candidate, skillName, additionalTriggers, targetScope, projectRoot) {
51
- const request = {
52
- problem: `Learning from ${candidate.storyId}: ${candidate.learning.slice(0, 100)}...`,
53
- solution: candidate.learning,
54
- triggers: [...new Set([...candidate.suggestedTriggers, ...additionalTriggers])],
55
- targetScope,
56
- };
57
- return writeSkill(request, projectRoot, skillName);
58
- }
59
- /**
60
- * List learnings that could be promoted.
61
- */
62
- export function listPromotableLearnings(directory) {
63
- const candidates = getPromotionCandidates(directory);
64
- if (candidates.length === 0) {
65
- return 'No promotion candidates found in ralph-progress learnings.';
66
- }
67
- const lines = [
68
- '# Promotion Candidates',
69
- '',
70
- 'The following learnings from ralph-progress could be promoted to skills:',
71
- '',
72
- ];
73
- candidates.forEach((candidate, index) => {
74
- lines.push(`## ${index + 1}. From ${candidate.storyId} (${candidate.timestamp})`);
75
- lines.push('');
76
- lines.push(candidate.learning);
77
- lines.push('');
78
- if (candidate.suggestedTriggers.length > 0) {
79
- lines.push(`**Suggested triggers:** ${candidate.suggestedTriggers.join(', ')}`);
80
- }
81
- lines.push('');
82
- lines.push('---');
83
- lines.push('');
84
- });
85
- return lines.join('\n');
86
- }
87
- //# sourceMappingURL=promotion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"promotion.js","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/promotion.ts"],"names":[],"mappings":"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"}
@@ -1,109 +0,0 @@
1
- /**
2
- * Learned Skills Types
3
- *
4
- * Type definitions for skill files and metadata.
5
- * Follows patterns from rules-injector/types.ts
6
- */
7
- /**
8
- * Skill metadata from YAML frontmatter.
9
- */
10
- export interface SkillMetadata {
11
- /** Unique identifier for the skill */
12
- id: string;
13
- /** Human-readable name */
14
- name: string;
15
- /** Description of what this skill does */
16
- description: string;
17
- /** Keywords that trigger skill injection */
18
- triggers: string[];
19
- /** When the skill was created */
20
- createdAt: string;
21
- /** Source: 'extracted' | 'promoted' | 'manual' */
22
- source: 'extracted' | 'promoted' | 'manual';
23
- /** Original session ID if extracted */
24
- sessionId?: string;
25
- /** Quality score (0-100) */
26
- quality?: number;
27
- /** Number of times successfully applied */
28
- usageCount?: number;
29
- /** Tags for categorization */
30
- tags?: string[];
31
- }
32
- /**
33
- * Parsed skill file with content.
34
- */
35
- export interface LearnedSkill {
36
- /** Absolute path to skill file */
37
- path: string;
38
- /** Path relative to skills directory */
39
- relativePath: string;
40
- /** Whether from user (~/.claude) or project (.sisyphus) */
41
- scope: 'user' | 'project';
42
- /** Parsed frontmatter metadata */
43
- metadata: SkillMetadata;
44
- /** Skill content (the actual instructions) */
45
- content: string;
46
- /** SHA-256 hash for deduplication */
47
- contentHash: string;
48
- /** Priority: project > user */
49
- priority: number;
50
- }
51
- /**
52
- * Skill file candidate during discovery.
53
- */
54
- export interface SkillFileCandidate {
55
- /** Path to the skill file */
56
- path: string;
57
- /** Real path after symlink resolution */
58
- realPath: string;
59
- /** Scope: user or project */
60
- scope: 'user' | 'project';
61
- }
62
- /**
63
- * Quality gate validation result.
64
- */
65
- export interface QualityValidation {
66
- /** Whether skill passes quality gates */
67
- valid: boolean;
68
- /** Missing required fields */
69
- missingFields: string[];
70
- /** Warnings (non-blocking) */
71
- warnings: string[];
72
- /** Quality score (0-100) */
73
- score: number;
74
- }
75
- /**
76
- * Skill extraction request.
77
- */
78
- export interface SkillExtractionRequest {
79
- /** The problem being solved */
80
- problem: string;
81
- /** The solution/approach */
82
- solution: string;
83
- /** Trigger keywords */
84
- triggers: string[];
85
- /** Optional tags */
86
- tags?: string[];
87
- /** Target scope: user or project */
88
- targetScope: 'user' | 'project';
89
- }
90
- /**
91
- * Session storage for tracking injected skills.
92
- */
93
- export interface InjectedSkillsData {
94
- /** Session ID */
95
- sessionId: string;
96
- /** Content hashes of already injected skills */
97
- injectedHashes: string[];
98
- /** Timestamp of last update */
99
- updatedAt: number;
100
- }
101
- /**
102
- * Hook context passed to skill processing.
103
- */
104
- export interface HookContext {
105
- sessionId: string;
106
- directory: string;
107
- prompt?: string;
108
- }
109
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,sCAAsC;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,0BAA0B;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,kDAAkD;IAClD,MAAM,EAAE,WAAW,GAAG,UAAU,GAAG,QAAQ,CAAC;IAC5C,uCAAuC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4BAA4B;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8BAA8B;IAC9B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,kCAAkC;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,kCAAkC;IAClC,QAAQ,EAAE,aAAa,CAAC;IACxB,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,+BAA+B;IAC/B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,yCAAyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,KAAK,EAAE,OAAO,CAAC;IACf,8BAA8B;IAC9B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,4BAA4B;IAC5B,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,+BAA+B;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,4BAA4B;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,uBAAuB;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oBAAoB;IACpB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,oCAAoC;IACpC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,iBAAiB;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Learned Skills Types
3
- *
4
- * Type definitions for skill files and metadata.
5
- * Follows patterns from rules-injector/types.ts
6
- */
7
- export {};
8
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
@@ -1,15 +0,0 @@
1
- /**
2
- * Skill Quality Validator
3
- *
4
- * Validates skill extraction requests against quality gates.
5
- */
6
- import type { SkillExtractionRequest, QualityValidation, SkillMetadata } from './types.js';
7
- /**
8
- * Validate a skill extraction request.
9
- */
10
- export declare function validateExtractionRequest(request: SkillExtractionRequest): QualityValidation;
11
- /**
12
- * Validate existing skill metadata.
13
- */
14
- export declare function validateSkillMetadata(metadata: Partial<SkillMetadata>): QualityValidation;
15
- //# sourceMappingURL=validator.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAE3F;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,sBAAsB,GAAG,iBAAiB,CAqD5F;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG,iBAAiB,CAgCzF"}
@@ -1,87 +0,0 @@
1
- /**
2
- * Skill Quality Validator
3
- *
4
- * Validates skill extraction requests against quality gates.
5
- */
6
- import { REQUIRED_METADATA_FIELDS, MIN_QUALITY_SCORE, MAX_SKILL_CONTENT_LENGTH } from './constants.js';
7
- /**
8
- * Validate a skill extraction request.
9
- */
10
- export function validateExtractionRequest(request) {
11
- const missingFields = [];
12
- const warnings = [];
13
- let score = 100;
14
- // Check required fields
15
- if (!request.problem || request.problem.trim().length < 10) {
16
- missingFields.push('problem (minimum 10 characters)');
17
- score -= 30;
18
- }
19
- if (!request.solution || request.solution.trim().length < 20) {
20
- missingFields.push('solution (minimum 20 characters)');
21
- score -= 30;
22
- }
23
- if (!request.triggers || request.triggers.length === 0) {
24
- missingFields.push('triggers (at least one required)');
25
- score -= 20;
26
- }
27
- // Check content length
28
- const totalLength = (request.problem?.length || 0) + (request.solution?.length || 0);
29
- if (totalLength > MAX_SKILL_CONTENT_LENGTH) {
30
- warnings.push(`Content exceeds ${MAX_SKILL_CONTENT_LENGTH} chars (${totalLength}). Consider condensing.`);
31
- score -= 10;
32
- }
33
- // Check trigger quality
34
- if (request.triggers) {
35
- const shortTriggers = request.triggers.filter(t => t.length < 3);
36
- if (shortTriggers.length > 0) {
37
- warnings.push(`Short triggers may cause false matches: ${shortTriggers.join(', ')}`);
38
- score -= 5;
39
- }
40
- const genericTriggers = ['the', 'a', 'an', 'this', 'that', 'it', 'is', 'are'];
41
- const foundGeneric = request.triggers.filter(t => genericTriggers.includes(t.toLowerCase()));
42
- if (foundGeneric.length > 0) {
43
- warnings.push(`Generic triggers should be avoided: ${foundGeneric.join(', ')}`);
44
- score -= 10;
45
- }
46
- }
47
- // Ensure score doesn't go negative
48
- score = Math.max(0, score);
49
- return {
50
- valid: missingFields.length === 0 && score >= MIN_QUALITY_SCORE,
51
- missingFields,
52
- warnings,
53
- score,
54
- };
55
- }
56
- /**
57
- * Validate existing skill metadata.
58
- */
59
- export function validateSkillMetadata(metadata) {
60
- const missingFields = [];
61
- const warnings = [];
62
- let score = 100;
63
- for (const field of REQUIRED_METADATA_FIELDS) {
64
- if (!metadata[field]) {
65
- missingFields.push(field);
66
- score -= 15;
67
- }
68
- }
69
- // Check triggers array
70
- if (metadata.triggers && metadata.triggers.length === 0) {
71
- missingFields.push('triggers (empty array)');
72
- score -= 20;
73
- }
74
- // Check source value
75
- if (metadata.source && !['extracted', 'promoted', 'manual'].includes(metadata.source)) {
76
- warnings.push(`Invalid source value: ${metadata.source}`);
77
- score -= 10;
78
- }
79
- score = Math.max(0, score);
80
- return {
81
- valid: missingFields.length === 0 && score >= MIN_QUALITY_SCORE,
82
- missingFields,
83
- warnings,
84
- score,
85
- };
86
- }
87
- //# sourceMappingURL=validator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/validator.ts"],"names":[],"mappings":"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"}
@@ -1,27 +0,0 @@
1
- /**
2
- * Skill Writer
3
- *
4
- * Writes skill files to disk with proper formatting.
5
- */
6
- import type { SkillExtractionRequest, QualityValidation } from './types.js';
7
- /**
8
- * Result of skill writing operation.
9
- */
10
- export interface WriteSkillResult {
11
- success: boolean;
12
- path?: string;
13
- error?: string;
14
- validation: QualityValidation;
15
- }
16
- /**
17
- * Write a new skill from extraction request.
18
- */
19
- export declare function writeSkill(request: SkillExtractionRequest, projectRoot: string | null, skillName: string): WriteSkillResult;
20
- /**
21
- * Check if a skill with similar triggers already exists.
22
- */
23
- export declare function checkDuplicateTriggers(triggers: string[], projectRoot: string | null): {
24
- isDuplicate: boolean;
25
- existingSkillId?: string;
26
- };
27
- //# sourceMappingURL=writer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"writer.d.ts","sourceRoot":"","sources":["../../../src/hooks/mnemosyne/writer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAiB,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAsB3F;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,sBAAsB,EAC/B,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,SAAS,EAAE,MAAM,GAChB,gBAAgB,CA8ElB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,QAAQ,EAAE,MAAM,EAAE,EAClB,WAAW,EAAE,MAAM,GAAG,IAAI,GACzB;IAAE,WAAW,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,CAoBpD"}