qlogicagent 0.2.0 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (453) hide show
  1. package/dist/agent.js +1 -0
  2. package/dist/cli.js +9 -0
  3. package/dist/contracts.js +1 -0
  4. package/dist/index.js +5 -16
  5. package/dist/orchestration.js +118 -0
  6. package/dist/{agent → types/agent}/agent.d.ts +0 -1
  7. package/dist/{agent → types/agent}/tool-loop.d.ts +0 -1
  8. package/dist/{agent → types/agent}/types.d.ts +0 -1
  9. package/dist/{cli → types/cli}/main.d.ts +0 -1
  10. package/dist/{cli → types/cli}/stdio-server.d.ts +0 -1
  11. package/dist/{config → types/config}/config.d.ts +0 -1
  12. package/dist/{contracts → types/contracts}/hooks.d.ts +0 -1
  13. package/dist/{contracts/index.js → types/contracts/index.d.ts} +0 -1
  14. package/dist/{contracts → types/contracts}/planner.d.ts +0 -1
  15. package/dist/{contracts → types/contracts}/skill-candidate.d.ts +0 -1
  16. package/dist/{contracts → types/contracts}/todo.d.ts +0 -1
  17. package/dist/{index.d.ts → types/index.d.ts} +0 -1
  18. package/dist/{llm → types/llm}/builtin-providers.d.ts +0 -1
  19. package/dist/{llm → types/llm}/index.d.ts +0 -1
  20. package/dist/{llm → types/llm}/llm-client.d.ts +0 -1
  21. package/dist/{llm → types/llm}/model-catalog.d.ts +0 -1
  22. package/dist/{llm → types/llm}/provider-def.d.ts +0 -1
  23. package/dist/{llm → types/llm}/provider-registry.d.ts +0 -1
  24. package/dist/{llm → types/llm}/transport.d.ts +0 -1
  25. package/dist/{llm → types/llm}/transports/anthropic-messages.d.ts +0 -1
  26. package/dist/{llm → types/llm}/transports/openai-chat.d.ts +0 -1
  27. package/dist/{orchestration → types/orchestration}/agent-registry.d.ts +0 -1
  28. package/dist/{orchestration → types/orchestration}/approval-aware-tool-plan.d.ts +0 -1
  29. package/dist/{orchestration → types/orchestration}/context-compression.d.ts +0 -1
  30. package/dist/{orchestration → types/orchestration}/conversation-repair.d.ts +0 -1
  31. package/dist/{orchestration → types/orchestration}/curator-scheduler.d.ts +0 -1
  32. package/dist/{orchestration → types/orchestration}/embedded-failover-policy.d.ts +0 -1
  33. package/dist/{orchestration → types/orchestration}/error-classification.d.ts +0 -1
  34. package/dist/{orchestration → types/orchestration}/failover-classification.d.ts +0 -1
  35. package/dist/{orchestration → types/orchestration}/failover-error.d.ts +0 -1
  36. package/dist/{orchestration → types/orchestration}/fork-subagent.d.ts +0 -1
  37. package/dist/{orchestration → types/orchestration}/index.d.ts +0 -1
  38. package/dist/{orchestration → types/orchestration}/memory-flush-policy.d.ts +0 -1
  39. package/dist/{orchestration → types/orchestration}/memory-provider.d.ts +0 -1
  40. package/dist/{orchestration → types/orchestration}/parallel-tool-calls.d.ts +0 -1
  41. package/dist/{orchestration → types/orchestration}/prompt-cache-strategy.d.ts +0 -1
  42. package/dist/{orchestration → types/orchestration}/reactive-compact.d.ts +0 -1
  43. package/dist/{orchestration → types/orchestration}/retry-loop.d.ts +0 -1
  44. package/dist/{orchestration → types/orchestration}/skill-candidate.d.ts +0 -1
  45. package/dist/{orchestration → types/orchestration}/skill-consolidation.d.ts +0 -1
  46. package/dist/{orchestration → types/orchestration}/skill-improvement.d.ts +0 -1
  47. package/dist/{orchestration → types/orchestration}/skill-similarity.d.ts +0 -1
  48. package/dist/{orchestration → types/orchestration}/streaming-tool-executor.d.ts +0 -1
  49. package/dist/{orchestration → types/orchestration}/team-orchestration.d.ts +0 -1
  50. package/dist/{orchestration → types/orchestration}/team-tool-loop-wiring.d.ts +0 -1
  51. package/dist/{orchestration → types/orchestration}/tool-choice-policy.d.ts +0 -1
  52. package/dist/{orchestration → types/orchestration}/tool-loop-state.d.ts +0 -1
  53. package/dist/{orchestration → types/orchestration}/tool-schema.d.ts +0 -1
  54. package/dist/{orchestration → types/orchestration}/transcript-repair.d.ts +0 -1
  55. package/dist/{orchestration → types/orchestration}/turn-loop-guard.d.ts +0 -1
  56. package/dist/{orchestration → types/orchestration}/web-browser-policy.d.ts +0 -1
  57. package/dist/{runtime → types/runtime}/context-compression.d.ts +0 -1
  58. package/dist/{runtime → types/runtime}/hook-registry.d.ts +0 -1
  59. package/dist/{runtime → types/runtime}/memory-hooks.d.ts +0 -1
  60. package/dist/{runtime → types/runtime}/tool-eligibility.d.ts +0 -1
  61. package/dist/{skills → types/skills}/index.d.ts +0 -1
  62. package/dist/{skills → types/skills}/memory-extractor.d.ts +0 -1
  63. package/dist/{skills → types/skills}/memory-query-tool.d.ts +0 -1
  64. package/dist/{skills → types/skills}/memory-store.d.ts +0 -1
  65. package/dist/{skills → types/skills}/memory-tool.d.ts +0 -1
  66. package/dist/{skills → types/skills}/portable-tool.d.ts +0 -1
  67. package/dist/{skills → types/skills}/qmemory-adapter.d.ts +0 -1
  68. package/dist/{skills → types/skills}/skill-frontmatter.d.ts +0 -1
  69. package/dist/{skills → types/skills}/skill-guard.d.ts +0 -1
  70. package/dist/{skills → types/skills}/skill-loader.d.ts +0 -1
  71. package/dist/{skills → types/skills}/skill-source.d.ts +0 -1
  72. package/dist/{skills → types/skills}/skill-types.d.ts +0 -1
  73. package/dist/{skills → types/skills}/think-tool.d.ts +0 -1
  74. package/dist/{skills → types/skills}/todo-tool.d.ts +0 -1
  75. package/dist/{skills → types/skills}/tools/agent-tool.d.ts +0 -1
  76. package/dist/{skills → types/skills}/tools/apply-patch-tool.d.ts +0 -1
  77. package/dist/{skills → types/skills}/tools/ask-user-tool.d.ts +0 -1
  78. package/dist/{skills → types/skills}/tools/brief-tool.d.ts +0 -1
  79. package/dist/{skills → types/skills}/tools/browser-tool.d.ts +0 -1
  80. package/dist/{skills → types/skills}/tools/checkpoint-tool.d.ts +0 -1
  81. package/dist/{skills → types/skills}/tools/config-tool.d.ts +0 -1
  82. package/dist/{skills → types/skills}/tools/cron-tool.d.ts +0 -1
  83. package/dist/{skills → types/skills}/tools/edit-tool.d.ts +0 -1
  84. package/dist/{skills → types/skills}/tools/exec-tool.d.ts +0 -1
  85. package/dist/{skills → types/skills}/tools/image-generate-tool.d.ts +0 -1
  86. package/dist/{skills → types/skills}/tools/instructions-tool.d.ts +0 -1
  87. package/dist/{skills → types/skills}/tools/lsp-tool.d.ts +0 -1
  88. package/dist/{skills → types/skills}/tools/mcp-client-types.d.ts +0 -1
  89. package/dist/{skills → types/skills}/tools/mcp-tool.d.ts +0 -1
  90. package/dist/{skills → types/skills}/tools/memory-tool.d.ts +0 -1
  91. package/dist/{skills → types/skills}/tools/monitor-tool.d.ts +0 -1
  92. package/dist/{skills → types/skills}/tools/music-generate-tool.d.ts +0 -1
  93. package/dist/{skills → types/skills}/tools/notify-tool.d.ts +0 -1
  94. package/dist/{skills → types/skills}/tools/patch-tool.d.ts +0 -1
  95. package/dist/{skills → types/skills}/tools/pdf-tool.d.ts +0 -1
  96. package/dist/{skills → types/skills}/tools/plan-mode-tool.d.ts +0 -1
  97. package/dist/{skills → types/skills}/tools/read-tool.d.ts +0 -1
  98. package/dist/{skills → types/skills}/tools/repl-tool.d.ts +0 -1
  99. package/dist/{skills → types/skills}/tools/search-tool.d.ts +0 -1
  100. package/dist/{skills → types/skills}/tools/send-message-tool.d.ts +0 -1
  101. package/dist/{skills → types/skills}/tools/skill-list-tool.d.ts +0 -1
  102. package/dist/{skills → types/skills}/tools/skill-manage-tool.d.ts +0 -1
  103. package/dist/{skills → types/skills}/tools/skill-view-tool.d.ts +0 -1
  104. package/dist/{skills → types/skills}/tools/sleep-tool.d.ts +0 -1
  105. package/dist/{skills → types/skills}/tools/structured-output-tool.d.ts +0 -1
  106. package/dist/{skills → types/skills}/tools/task-tool.d.ts +0 -1
  107. package/dist/{skills → types/skills}/tools/team-tool.d.ts +0 -1
  108. package/dist/{skills → types/skills}/tools/tool-search-tool.d.ts +0 -1
  109. package/dist/{skills → types/skills}/tools/tts-tool.d.ts +0 -1
  110. package/dist/{skills → types/skills}/tools/video-edit-tool.d.ts +0 -1
  111. package/dist/{skills → types/skills}/tools/video-generate-tool.d.ts +0 -1
  112. package/dist/{skills → types/skills}/tools/video-merge-tool.d.ts +0 -1
  113. package/dist/{skills → types/skills}/tools/video-upscale-tool.d.ts +0 -1
  114. package/dist/{skills → types/skills}/tools/web-fetch-tool.d.ts +0 -1
  115. package/dist/{skills → types/skills}/tools/web-search-tool.d.ts +0 -1
  116. package/dist/{skills → types/skills}/tools/worktree-tool.d.ts +0 -1
  117. package/dist/{skills → types/skills}/tools/write-tool.d.ts +0 -1
  118. package/package.json +56 -42
  119. package/dist/agent/agent.d.ts.map +0 -1
  120. package/dist/agent/agent.js +0 -114
  121. package/dist/agent/agent.js.map +0 -1
  122. package/dist/agent/tool-loop.d.ts.map +0 -1
  123. package/dist/agent/tool-loop.js +0 -576
  124. package/dist/agent/tool-loop.js.map +0 -1
  125. package/dist/agent/types.d.ts.map +0 -1
  126. package/dist/agent/types.js +0 -15
  127. package/dist/agent/types.js.map +0 -1
  128. package/dist/cli/main.d.ts.map +0 -1
  129. package/dist/cli/main.js +0 -24
  130. package/dist/cli/main.js.map +0 -1
  131. package/dist/cli/stdio-server.d.ts.map +0 -1
  132. package/dist/cli/stdio-server.js +0 -464
  133. package/dist/cli/stdio-server.js.map +0 -1
  134. package/dist/config/config.d.ts.map +0 -1
  135. package/dist/config/config.js +0 -22
  136. package/dist/config/config.js.map +0 -1
  137. package/dist/contracts/hooks.d.ts.map +0 -1
  138. package/dist/contracts/hooks.js +0 -8
  139. package/dist/contracts/hooks.js.map +0 -1
  140. package/dist/contracts/index.d.ts +0 -11
  141. package/dist/contracts/index.d.ts.map +0 -1
  142. package/dist/contracts/index.js.map +0 -1
  143. package/dist/contracts/planner.d.ts.map +0 -1
  144. package/dist/contracts/planner.js +0 -3
  145. package/dist/contracts/planner.js.map +0 -1
  146. package/dist/contracts/skill-candidate.d.ts.map +0 -1
  147. package/dist/contracts/skill-candidate.js +0 -196
  148. package/dist/contracts/skill-candidate.js.map +0 -1
  149. package/dist/contracts/todo.d.ts.map +0 -1
  150. package/dist/contracts/todo.js +0 -10
  151. package/dist/contracts/todo.js.map +0 -1
  152. package/dist/index.d.ts.map +0 -1
  153. package/dist/index.js.map +0 -1
  154. package/dist/llm/builtin-providers.d.ts.map +0 -1
  155. package/dist/llm/builtin-providers.js +0 -532
  156. package/dist/llm/builtin-providers.js.map +0 -1
  157. package/dist/llm/index.d.ts.map +0 -1
  158. package/dist/llm/index.js +0 -15
  159. package/dist/llm/index.js.map +0 -1
  160. package/dist/llm/llm-client.d.ts.map +0 -1
  161. package/dist/llm/llm-client.js +0 -68
  162. package/dist/llm/llm-client.js.map +0 -1
  163. package/dist/llm/model-catalog.d.ts.map +0 -1
  164. package/dist/llm/model-catalog.js +0 -192
  165. package/dist/llm/model-catalog.js.map +0 -1
  166. package/dist/llm/provider-def.d.ts.map +0 -1
  167. package/dist/llm/provider-def.js +0 -13
  168. package/dist/llm/provider-def.js.map +0 -1
  169. package/dist/llm/provider-registry.d.ts.map +0 -1
  170. package/dist/llm/provider-registry.js +0 -148
  171. package/dist/llm/provider-registry.js.map +0 -1
  172. package/dist/llm/transport.d.ts.map +0 -1
  173. package/dist/llm/transport.js +0 -28
  174. package/dist/llm/transport.js.map +0 -1
  175. package/dist/llm/transports/anthropic-messages.d.ts.map +0 -1
  176. package/dist/llm/transports/anthropic-messages.js +0 -294
  177. package/dist/llm/transports/anthropic-messages.js.map +0 -1
  178. package/dist/llm/transports/openai-chat.d.ts.map +0 -1
  179. package/dist/llm/transports/openai-chat.js +0 -166
  180. package/dist/llm/transports/openai-chat.js.map +0 -1
  181. package/dist/orchestration/agent-registry.d.ts.map +0 -1
  182. package/dist/orchestration/agent-registry.js +0 -117
  183. package/dist/orchestration/agent-registry.js.map +0 -1
  184. package/dist/orchestration/approval-aware-tool-plan.d.ts.map +0 -1
  185. package/dist/orchestration/approval-aware-tool-plan.js +0 -88
  186. package/dist/orchestration/approval-aware-tool-plan.js.map +0 -1
  187. package/dist/orchestration/context-compression.d.ts.map +0 -1
  188. package/dist/orchestration/context-compression.js +0 -584
  189. package/dist/orchestration/context-compression.js.map +0 -1
  190. package/dist/orchestration/conversation-repair.d.ts.map +0 -1
  191. package/dist/orchestration/conversation-repair.js +0 -430
  192. package/dist/orchestration/conversation-repair.js.map +0 -1
  193. package/dist/orchestration/curator-scheduler.d.ts.map +0 -1
  194. package/dist/orchestration/curator-scheduler.js +0 -136
  195. package/dist/orchestration/curator-scheduler.js.map +0 -1
  196. package/dist/orchestration/embedded-failover-policy.d.ts.map +0 -1
  197. package/dist/orchestration/embedded-failover-policy.js +0 -169
  198. package/dist/orchestration/embedded-failover-policy.js.map +0 -1
  199. package/dist/orchestration/error-classification.d.ts.map +0 -1
  200. package/dist/orchestration/error-classification.js +0 -78
  201. package/dist/orchestration/error-classification.js.map +0 -1
  202. package/dist/orchestration/failover-classification.d.ts.map +0 -1
  203. package/dist/orchestration/failover-classification.js +0 -382
  204. package/dist/orchestration/failover-classification.js.map +0 -1
  205. package/dist/orchestration/failover-error.d.ts.map +0 -1
  206. package/dist/orchestration/failover-error.js +0 -199
  207. package/dist/orchestration/failover-error.js.map +0 -1
  208. package/dist/orchestration/fork-subagent.d.ts.map +0 -1
  209. package/dist/orchestration/fork-subagent.js +0 -99
  210. package/dist/orchestration/fork-subagent.js.map +0 -1
  211. package/dist/orchestration/index.d.ts.map +0 -1
  212. package/dist/orchestration/index.js +0 -268
  213. package/dist/orchestration/index.js.map +0 -1
  214. package/dist/orchestration/memory-flush-policy.d.ts.map +0 -1
  215. package/dist/orchestration/memory-flush-policy.js +0 -86
  216. package/dist/orchestration/memory-flush-policy.js.map +0 -1
  217. package/dist/orchestration/memory-provider.d.ts.map +0 -1
  218. package/dist/orchestration/memory-provider.js +0 -3
  219. package/dist/orchestration/memory-provider.js.map +0 -1
  220. package/dist/orchestration/parallel-tool-calls.d.ts.map +0 -1
  221. package/dist/orchestration/parallel-tool-calls.js +0 -60
  222. package/dist/orchestration/parallel-tool-calls.js.map +0 -1
  223. package/dist/orchestration/prompt-cache-strategy.d.ts.map +0 -1
  224. package/dist/orchestration/prompt-cache-strategy.js +0 -229
  225. package/dist/orchestration/prompt-cache-strategy.js.map +0 -1
  226. package/dist/orchestration/reactive-compact.d.ts.map +0 -1
  227. package/dist/orchestration/reactive-compact.js +0 -79
  228. package/dist/orchestration/reactive-compact.js.map +0 -1
  229. package/dist/orchestration/retry-loop.d.ts.map +0 -1
  230. package/dist/orchestration/retry-loop.js +0 -25
  231. package/dist/orchestration/retry-loop.js.map +0 -1
  232. package/dist/orchestration/skill-candidate.d.ts.map +0 -1
  233. package/dist/orchestration/skill-candidate.js +0 -142
  234. package/dist/orchestration/skill-candidate.js.map +0 -1
  235. package/dist/orchestration/skill-consolidation.d.ts.map +0 -1
  236. package/dist/orchestration/skill-consolidation.js +0 -221
  237. package/dist/orchestration/skill-consolidation.js.map +0 -1
  238. package/dist/orchestration/skill-improvement.d.ts.map +0 -1
  239. package/dist/orchestration/skill-improvement.js +0 -67
  240. package/dist/orchestration/skill-improvement.js.map +0 -1
  241. package/dist/orchestration/skill-similarity.d.ts.map +0 -1
  242. package/dist/orchestration/skill-similarity.js +0 -132
  243. package/dist/orchestration/skill-similarity.js.map +0 -1
  244. package/dist/orchestration/streaming-tool-executor.d.ts.map +0 -1
  245. package/dist/orchestration/streaming-tool-executor.js +0 -97
  246. package/dist/orchestration/streaming-tool-executor.js.map +0 -1
  247. package/dist/orchestration/team-orchestration.d.ts.map +0 -1
  248. package/dist/orchestration/team-orchestration.js +0 -370
  249. package/dist/orchestration/team-orchestration.js.map +0 -1
  250. package/dist/orchestration/team-tool-loop-wiring.d.ts.map +0 -1
  251. package/dist/orchestration/team-tool-loop-wiring.js +0 -148
  252. package/dist/orchestration/team-tool-loop-wiring.js.map +0 -1
  253. package/dist/orchestration/tool-choice-policy.d.ts.map +0 -1
  254. package/dist/orchestration/tool-choice-policy.js +0 -165
  255. package/dist/orchestration/tool-choice-policy.js.map +0 -1
  256. package/dist/orchestration/tool-loop-state.d.ts.map +0 -1
  257. package/dist/orchestration/tool-loop-state.js +0 -134
  258. package/dist/orchestration/tool-loop-state.js.map +0 -1
  259. package/dist/orchestration/tool-schema.d.ts.map +0 -1
  260. package/dist/orchestration/tool-schema.js +0 -298
  261. package/dist/orchestration/tool-schema.js.map +0 -1
  262. package/dist/orchestration/transcript-repair.d.ts.map +0 -1
  263. package/dist/orchestration/transcript-repair.js +0 -427
  264. package/dist/orchestration/transcript-repair.js.map +0 -1
  265. package/dist/orchestration/turn-loop-guard.d.ts.map +0 -1
  266. package/dist/orchestration/turn-loop-guard.js +0 -93
  267. package/dist/orchestration/turn-loop-guard.js.map +0 -1
  268. package/dist/orchestration/web-browser-policy.d.ts.map +0 -1
  269. package/dist/orchestration/web-browser-policy.js +0 -40
  270. package/dist/orchestration/web-browser-policy.js.map +0 -1
  271. package/dist/runtime/context-compression.d.ts.map +0 -1
  272. package/dist/runtime/context-compression.js +0 -275
  273. package/dist/runtime/context-compression.js.map +0 -1
  274. package/dist/runtime/hook-registry.d.ts.map +0 -1
  275. package/dist/runtime/hook-registry.js +0 -54
  276. package/dist/runtime/hook-registry.js.map +0 -1
  277. package/dist/runtime/memory-hooks.d.ts.map +0 -1
  278. package/dist/runtime/memory-hooks.js +0 -66
  279. package/dist/runtime/memory-hooks.js.map +0 -1
  280. package/dist/runtime/tool-eligibility.d.ts.map +0 -1
  281. package/dist/runtime/tool-eligibility.js +0 -112
  282. package/dist/runtime/tool-eligibility.js.map +0 -1
  283. package/dist/skills/index.d.ts.map +0 -1
  284. package/dist/skills/index.js +0 -83
  285. package/dist/skills/index.js.map +0 -1
  286. package/dist/skills/memory-extractor.d.ts.map +0 -1
  287. package/dist/skills/memory-extractor.js +0 -174
  288. package/dist/skills/memory-extractor.js.map +0 -1
  289. package/dist/skills/memory-query-tool.d.ts.map +0 -1
  290. package/dist/skills/memory-query-tool.js +0 -128
  291. package/dist/skills/memory-query-tool.js.map +0 -1
  292. package/dist/skills/memory-store.d.ts.map +0 -1
  293. package/dist/skills/memory-store.js +0 -229
  294. package/dist/skills/memory-store.js.map +0 -1
  295. package/dist/skills/memory-tool.d.ts.map +0 -1
  296. package/dist/skills/memory-tool.js +0 -193
  297. package/dist/skills/memory-tool.js.map +0 -1
  298. package/dist/skills/portable-tool.d.ts.map +0 -1
  299. package/dist/skills/portable-tool.js +0 -15
  300. package/dist/skills/portable-tool.js.map +0 -1
  301. package/dist/skills/qmemory-adapter.d.ts.map +0 -1
  302. package/dist/skills/qmemory-adapter.js +0 -166
  303. package/dist/skills/qmemory-adapter.js.map +0 -1
  304. package/dist/skills/skill-frontmatter.d.ts.map +0 -1
  305. package/dist/skills/skill-frontmatter.js +0 -345
  306. package/dist/skills/skill-frontmatter.js.map +0 -1
  307. package/dist/skills/skill-guard.d.ts.map +0 -1
  308. package/dist/skills/skill-guard.js +0 -230
  309. package/dist/skills/skill-guard.js.map +0 -1
  310. package/dist/skills/skill-loader.d.ts.map +0 -1
  311. package/dist/skills/skill-loader.js +0 -304
  312. package/dist/skills/skill-loader.js.map +0 -1
  313. package/dist/skills/skill-source.d.ts.map +0 -1
  314. package/dist/skills/skill-source.js +0 -127
  315. package/dist/skills/skill-source.js.map +0 -1
  316. package/dist/skills/skill-types.d.ts.map +0 -1
  317. package/dist/skills/skill-types.js +0 -7
  318. package/dist/skills/skill-types.js.map +0 -1
  319. package/dist/skills/think-tool.d.ts.map +0 -1
  320. package/dist/skills/think-tool.js +0 -60
  321. package/dist/skills/think-tool.js.map +0 -1
  322. package/dist/skills/todo-tool.d.ts.map +0 -1
  323. package/dist/skills/todo-tool.js +0 -115
  324. package/dist/skills/todo-tool.js.map +0 -1
  325. package/dist/skills/tools/agent-tool.d.ts.map +0 -1
  326. package/dist/skills/tools/agent-tool.js +0 -143
  327. package/dist/skills/tools/agent-tool.js.map +0 -1
  328. package/dist/skills/tools/apply-patch-tool.d.ts.map +0 -1
  329. package/dist/skills/tools/apply-patch-tool.js +0 -185
  330. package/dist/skills/tools/apply-patch-tool.js.map +0 -1
  331. package/dist/skills/tools/ask-user-tool.d.ts.map +0 -1
  332. package/dist/skills/tools/ask-user-tool.js +0 -122
  333. package/dist/skills/tools/ask-user-tool.js.map +0 -1
  334. package/dist/skills/tools/brief-tool.d.ts.map +0 -1
  335. package/dist/skills/tools/brief-tool.js +0 -96
  336. package/dist/skills/tools/brief-tool.js.map +0 -1
  337. package/dist/skills/tools/browser-tool.d.ts.map +0 -1
  338. package/dist/skills/tools/browser-tool.js +0 -156
  339. package/dist/skills/tools/browser-tool.js.map +0 -1
  340. package/dist/skills/tools/checkpoint-tool.d.ts.map +0 -1
  341. package/dist/skills/tools/checkpoint-tool.js +0 -103
  342. package/dist/skills/tools/checkpoint-tool.js.map +0 -1
  343. package/dist/skills/tools/config-tool.d.ts.map +0 -1
  344. package/dist/skills/tools/config-tool.js +0 -144
  345. package/dist/skills/tools/config-tool.js.map +0 -1
  346. package/dist/skills/tools/cron-tool.d.ts.map +0 -1
  347. package/dist/skills/tools/cron-tool.js +0 -176
  348. package/dist/skills/tools/cron-tool.js.map +0 -1
  349. package/dist/skills/tools/edit-tool.d.ts.map +0 -1
  350. package/dist/skills/tools/edit-tool.js +0 -71
  351. package/dist/skills/tools/edit-tool.js.map +0 -1
  352. package/dist/skills/tools/exec-tool.d.ts.map +0 -1
  353. package/dist/skills/tools/exec-tool.js +0 -134
  354. package/dist/skills/tools/exec-tool.js.map +0 -1
  355. package/dist/skills/tools/image-generate-tool.d.ts.map +0 -1
  356. package/dist/skills/tools/image-generate-tool.js +0 -68
  357. package/dist/skills/tools/image-generate-tool.js.map +0 -1
  358. package/dist/skills/tools/instructions-tool.d.ts.map +0 -1
  359. package/dist/skills/tools/instructions-tool.js +0 -188
  360. package/dist/skills/tools/instructions-tool.js.map +0 -1
  361. package/dist/skills/tools/lsp-tool.d.ts.map +0 -1
  362. package/dist/skills/tools/lsp-tool.js +0 -228
  363. package/dist/skills/tools/lsp-tool.js.map +0 -1
  364. package/dist/skills/tools/mcp-client-types.d.ts.map +0 -1
  365. package/dist/skills/tools/mcp-client-types.js +0 -54
  366. package/dist/skills/tools/mcp-client-types.js.map +0 -1
  367. package/dist/skills/tools/mcp-tool.d.ts.map +0 -1
  368. package/dist/skills/tools/mcp-tool.js +0 -504
  369. package/dist/skills/tools/mcp-tool.js.map +0 -1
  370. package/dist/skills/tools/memory-tool.d.ts.map +0 -1
  371. package/dist/skills/tools/memory-tool.js +0 -89
  372. package/dist/skills/tools/memory-tool.js.map +0 -1
  373. package/dist/skills/tools/monitor-tool.d.ts.map +0 -1
  374. package/dist/skills/tools/monitor-tool.js +0 -132
  375. package/dist/skills/tools/monitor-tool.js.map +0 -1
  376. package/dist/skills/tools/music-generate-tool.d.ts.map +0 -1
  377. package/dist/skills/tools/music-generate-tool.js +0 -63
  378. package/dist/skills/tools/music-generate-tool.js.map +0 -1
  379. package/dist/skills/tools/notify-tool.d.ts.map +0 -1
  380. package/dist/skills/tools/notify-tool.js +0 -63
  381. package/dist/skills/tools/notify-tool.js.map +0 -1
  382. package/dist/skills/tools/patch-tool.d.ts.map +0 -1
  383. package/dist/skills/tools/patch-tool.js +0 -506
  384. package/dist/skills/tools/patch-tool.js.map +0 -1
  385. package/dist/skills/tools/pdf-tool.d.ts.map +0 -1
  386. package/dist/skills/tools/pdf-tool.js +0 -89
  387. package/dist/skills/tools/pdf-tool.js.map +0 -1
  388. package/dist/skills/tools/plan-mode-tool.d.ts.map +0 -1
  389. package/dist/skills/tools/plan-mode-tool.js +0 -123
  390. package/dist/skills/tools/plan-mode-tool.js.map +0 -1
  391. package/dist/skills/tools/read-tool.d.ts.map +0 -1
  392. package/dist/skills/tools/read-tool.js +0 -85
  393. package/dist/skills/tools/read-tool.js.map +0 -1
  394. package/dist/skills/tools/repl-tool.d.ts.map +0 -1
  395. package/dist/skills/tools/repl-tool.js +0 -70
  396. package/dist/skills/tools/repl-tool.js.map +0 -1
  397. package/dist/skills/tools/search-tool.d.ts.map +0 -1
  398. package/dist/skills/tools/search-tool.js +0 -226
  399. package/dist/skills/tools/search-tool.js.map +0 -1
  400. package/dist/skills/tools/send-message-tool.d.ts.map +0 -1
  401. package/dist/skills/tools/send-message-tool.js +0 -77
  402. package/dist/skills/tools/send-message-tool.js.map +0 -1
  403. package/dist/skills/tools/skill-list-tool.d.ts.map +0 -1
  404. package/dist/skills/tools/skill-list-tool.js +0 -55
  405. package/dist/skills/tools/skill-list-tool.js.map +0 -1
  406. package/dist/skills/tools/skill-manage-tool.d.ts.map +0 -1
  407. package/dist/skills/tools/skill-manage-tool.js +0 -154
  408. package/dist/skills/tools/skill-manage-tool.js.map +0 -1
  409. package/dist/skills/tools/skill-view-tool.d.ts.map +0 -1
  410. package/dist/skills/tools/skill-view-tool.js +0 -73
  411. package/dist/skills/tools/skill-view-tool.js.map +0 -1
  412. package/dist/skills/tools/sleep-tool.d.ts.map +0 -1
  413. package/dist/skills/tools/sleep-tool.js +0 -82
  414. package/dist/skills/tools/sleep-tool.js.map +0 -1
  415. package/dist/skills/tools/structured-output-tool.d.ts.map +0 -1
  416. package/dist/skills/tools/structured-output-tool.js +0 -177
  417. package/dist/skills/tools/structured-output-tool.js.map +0 -1
  418. package/dist/skills/tools/task-tool.d.ts.map +0 -1
  419. package/dist/skills/tools/task-tool.js +0 -162
  420. package/dist/skills/tools/task-tool.js.map +0 -1
  421. package/dist/skills/tools/team-tool.d.ts.map +0 -1
  422. package/dist/skills/tools/team-tool.js +0 -106
  423. package/dist/skills/tools/team-tool.js.map +0 -1
  424. package/dist/skills/tools/tool-search-tool.d.ts.map +0 -1
  425. package/dist/skills/tools/tool-search-tool.js +0 -111
  426. package/dist/skills/tools/tool-search-tool.js.map +0 -1
  427. package/dist/skills/tools/tts-tool.d.ts.map +0 -1
  428. package/dist/skills/tools/tts-tool.js +0 -46
  429. package/dist/skills/tools/tts-tool.js.map +0 -1
  430. package/dist/skills/tools/video-edit-tool.d.ts.map +0 -1
  431. package/dist/skills/tools/video-edit-tool.js +0 -75
  432. package/dist/skills/tools/video-edit-tool.js.map +0 -1
  433. package/dist/skills/tools/video-generate-tool.d.ts.map +0 -1
  434. package/dist/skills/tools/video-generate-tool.js +0 -67
  435. package/dist/skills/tools/video-generate-tool.js.map +0 -1
  436. package/dist/skills/tools/video-merge-tool.d.ts.map +0 -1
  437. package/dist/skills/tools/video-merge-tool.js +0 -93
  438. package/dist/skills/tools/video-merge-tool.js.map +0 -1
  439. package/dist/skills/tools/video-upscale-tool.d.ts.map +0 -1
  440. package/dist/skills/tools/video-upscale-tool.js +0 -53
  441. package/dist/skills/tools/video-upscale-tool.js.map +0 -1
  442. package/dist/skills/tools/web-fetch-tool.d.ts.map +0 -1
  443. package/dist/skills/tools/web-fetch-tool.js +0 -93
  444. package/dist/skills/tools/web-fetch-tool.js.map +0 -1
  445. package/dist/skills/tools/web-search-tool.d.ts.map +0 -1
  446. package/dist/skills/tools/web-search-tool.js +0 -87
  447. package/dist/skills/tools/web-search-tool.js.map +0 -1
  448. package/dist/skills/tools/worktree-tool.d.ts.map +0 -1
  449. package/dist/skills/tools/worktree-tool.js +0 -148
  450. package/dist/skills/tools/worktree-tool.js.map +0 -1
  451. package/dist/skills/tools/write-tool.d.ts.map +0 -1
  452. package/dist/skills/tools/write-tool.js +0 -82
  453. package/dist/skills/tools/write-tool.js.map +0 -1
@@ -1,142 +0,0 @@
1
- import { coerceSkillCandidateJsonObject, normalizeSkillCandidateAction, normalizeSkillCandidateArtifact, normalizeSkillCandidateEffectiveness, normalizeSkillCandidateEffectivenessPhase, normalizeSkillCandidateSourceExecution, } from "../contracts/skill-candidate.js";
2
- const DEFAULT_SKILL_IMPROVEMENT_POLICY = {
3
- reviewRequired: true,
4
- canaryRequired: true,
5
- autoPromote: false,
6
- minCanarySampleCount: 10,
7
- minSuccessRate: 0.7,
8
- maxRegressionRate: 0.1,
9
- maxCostIncreaseRate: 0.25,
10
- staleAfterHours: 168,
11
- };
12
- function normalizeOptionalBoolean(value, fallback) {
13
- if (typeof value === "boolean") {
14
- return value;
15
- }
16
- if (typeof value === "string") {
17
- const normalized = value.trim().toLowerCase();
18
- if (normalized === "true") {
19
- return true;
20
- }
21
- if (normalized === "false") {
22
- return false;
23
- }
24
- }
25
- return fallback;
26
- }
27
- function normalizeOptionalFiniteNumber(value, fallback) {
28
- if (typeof value === "number" && Number.isFinite(value)) {
29
- return value;
30
- }
31
- if (typeof value === "string") {
32
- const trimmed = value.trim();
33
- if (trimmed) {
34
- const parsed = Number(trimmed);
35
- if (Number.isFinite(parsed)) {
36
- return parsed;
37
- }
38
- }
39
- }
40
- return fallback;
41
- }
42
- function normalizeOptionalStringArray(value) {
43
- return Array.isArray(value)
44
- ? value
45
- .filter((entry) => typeof entry === "string")
46
- .map((entry) => entry.trim())
47
- .filter(Boolean)
48
- : [];
49
- }
50
- export function createDefaultSkillImprovementPolicy(overrides = {}) {
51
- return normalizeSkillImprovementPolicy(overrides, DEFAULT_SKILL_IMPROVEMENT_POLICY);
52
- }
53
- export function normalizeSkillImprovementPolicy(value, fallback = DEFAULT_SKILL_IMPROVEMENT_POLICY) {
54
- const record = coerceSkillCandidateJsonObject(value);
55
- return {
56
- reviewRequired: normalizeOptionalBoolean(record.reviewRequired, fallback.reviewRequired),
57
- canaryRequired: normalizeOptionalBoolean(record.canaryRequired, fallback.canaryRequired),
58
- autoPromote: normalizeOptionalBoolean(record.autoPromote, fallback.autoPromote),
59
- minCanarySampleCount: Math.max(1, Math.floor(normalizeOptionalFiniteNumber(record.minCanarySampleCount, fallback.minCanarySampleCount))),
60
- minSuccessRate: Math.max(0, Math.min(1, normalizeOptionalFiniteNumber(record.minSuccessRate, fallback.minSuccessRate))),
61
- maxRegressionRate: Math.max(0, Math.min(1, normalizeOptionalFiniteNumber(record.maxRegressionRate, fallback.maxRegressionRate))),
62
- maxCostIncreaseRate: Math.max(0, normalizeOptionalFiniteNumber(record.maxCostIncreaseRate, fallback.maxCostIncreaseRate)),
63
- staleAfterHours: Math.max(1, Math.floor(normalizeOptionalFiniteNumber(record.staleAfterHours, fallback.staleAfterHours))),
64
- };
65
- }
66
- export function buildSkillCandidateEvidencePayload(params) {
67
- const evidence = coerceSkillCandidateJsonObject(params.evidence);
68
- const artifact = params.artifact ? normalizeSkillCandidateArtifact(params.artifact) : null;
69
- const sourceExecution = params.sourceExecution
70
- ? normalizeSkillCandidateSourceExecution(params.sourceExecution)
71
- : null;
72
- const sourceSessionKey = typeof params.sourceSessionKey === "string"
73
- ? params.sourceSessionKey.trim()
74
- : "";
75
- return {
76
- ...evidence,
77
- ...(artifact ? { artifact } : {}),
78
- ...(sourceExecution ? { sourceExecution } : {}),
79
- ...(sourceSessionKey ? { sourceSessionKey } : {}),
80
- };
81
- }
82
- export function buildSkillCandidateImprovementEvidenceBundle(params) {
83
- const evidence = buildSkillCandidateEvidencePayload(params);
84
- const diffSummary = typeof params.diffSummary === "string" && params.diffSummary.trim()
85
- ? params.diffSummary.trim()
86
- : "";
87
- const baselineCandidateId = typeof params.baselineCandidateId === "string"
88
- && params.baselineCandidateId.trim()
89
- ? params.baselineCandidateId.trim()
90
- : "";
91
- const rolloutNotes = typeof params.rolloutNotes === "string" && params.rolloutNotes.trim()
92
- ? params.rolloutNotes.trim()
93
- : "";
94
- const validationRefs = normalizeOptionalStringArray(params.validationRefs);
95
- return {
96
- ...evidence,
97
- ...(diffSummary ? { diffSummary } : {}),
98
- ...(baselineCandidateId ? { baselineCandidateId } : {}),
99
- ...(rolloutNotes ? { rolloutNotes } : {}),
100
- ...(validationRefs.length > 0 ? { validationRefs } : {}),
101
- };
102
- }
103
- export function buildSkillCandidateLatestReview(params) {
104
- return {
105
- action: normalizeSkillCandidateAction(params.action) ?? params.action,
106
- actor: typeof params.actor === "string" && params.actor.trim() ? params.actor.trim() : null,
107
- notes: typeof params.notes === "string" && params.notes.trim() ? params.notes.trim() : null,
108
- payload: coerceSkillCandidateJsonObject(params.payload),
109
- createdAt: typeof params.createdAt === "string" && params.createdAt.trim()
110
- ? params.createdAt.trim()
111
- : new Date().toISOString(),
112
- };
113
- }
114
- export function buildSkillCandidateEffectivenessSummary(params) {
115
- const sampleCount = Math.max(0, Math.floor(params.sampleCount ?? 0));
116
- const successCount = Math.max(0, Math.floor(params.successCount ?? 0));
117
- const failureCount = Math.max(0, Math.floor(params.failureCount ?? Math.max(sampleCount - successCount, 0)));
118
- const regressionCount = Math.max(0, Math.floor(params.regressionCount ?? 0));
119
- const successRate = sampleCount > 0 ? successCount / sampleCount : 0;
120
- const regressionRate = sampleCount > 0 ? regressionCount / sampleCount : 0;
121
- const score = typeof params.score === "number" && Number.isFinite(params.score)
122
- ? params.score
123
- : Number((successRate - regressionRate).toFixed(4));
124
- return normalizeSkillCandidateEffectiveness({
125
- phase: normalizeSkillCandidateEffectivenessPhase(params.phase) ?? params.phase,
126
- sampleCount,
127
- successCount,
128
- failureCount,
129
- regressionCount,
130
- successRate,
131
- regressionRate,
132
- avgLatencyMs: params.avgLatencyMs,
133
- avgCostUsd: params.avgCostUsd,
134
- score,
135
- staleReason: params.staleReason,
136
- notes: params.notes,
137
- summary: coerceSkillCandidateJsonObject(params.summary),
138
- lastObservedAt: params.lastObservedAt ?? new Date().toISOString(),
139
- updatedAt: params.updatedAt ?? new Date().toISOString(),
140
- });
141
- }
142
- //# sourceMappingURL=skill-candidate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-candidate.js","sourceRoot":"","sources":["../../src/orchestration/skill-candidate.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-consolidation.d.ts","sourceRoot":"","sources":["../../src/orchestration/skill-consolidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,+CAA+C;AAC/C,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC3B;AAED,yDAAyD;AACzD,MAAM,WAAW,mBAAmB;IAClC,mCAAmC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,kDAAkD;IAClD,YAAY,EAAE,OAAO,CAAC;IACtB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,mDAAmD;AACnD,MAAM,WAAW,aAAa;IAC5B,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,0BAA0B;IAC1B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,8DAA8D;AAC9D,MAAM,WAAW,iBAAiB;IAChC,cAAc,EAAE,mBAAmB,EAAE,CAAC;IACtC,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,6DAA6D;IAC7D,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,+DAA+D;AAC/D,MAAM,WAAW,2BAA2B;IAC1C,kFAAkF;IAClF,mBAAmB,EAAE,mBAAmB,EAAE,CAAC;IAC3C,gDAAgD;IAChD,aAAa,EAAE,aAAa,EAAE,CAAC;IAC/B,qDAAqD;IACrD,QAAQ,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACrD;AAID,4DAA4D;AAC5D,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,SAAS,MAAM,EAAE,EAC7B,cAAc,SAAI,GACjB,kBAAkB,EAAE,CAuBtB;AAID;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,UAAU,EAAE,SAAS,yBAAyB,EAAE,EAChD,iBAAiB,EAAE,SAAS,MAAM,EAAE,EACpC,QAAQ,EAAE,SAAS,kBAAkB,EAAE,GACtC,MAAM,CA6DR;AAID;;;;GAIG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,iBAAiB,CA6CnB;AAID;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,iBAAiB,EACvB,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,GAC/B,2BAA2B,CAoD7B;AAID,uCAAuC;AACvC,MAAM,WAAW,gBAAgB;IAC/B,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,sBAAsB,EAAE,MAAM,CAAC;IAC/B,qCAAqC;IACrC,eAAe,EAAE,MAAM,CAAC;IACxB,iCAAiC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,sBAAsB,EAAE,MAAM,CAAC;IAC/B,gDAAgD;IAChD,gBAAgB,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,eAAe,EAAE,MAAM,CAAC;IACxB,0CAA0C;IAC1C,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAMvE"}
@@ -1,221 +0,0 @@
1
- /**
2
- * Skill consolidation strategy — pure decision logic for
3
- * the Autonomous Curator's LLM-driven skill merging phase.
4
- *
5
- * This module:
6
- * 1. Detects prefix clusters among skill names.
7
- * 2. Builds the consolidation prompt for the LLM review agent.
8
- * 3. Parses structured LLM output into actionable merge/prune plans.
9
- * 4. Reconciles LLM intent against ground truth (existing skills).
10
- *
11
- * No I/O — the caller invokes the LLM and applies the results.
12
- */
13
- /**
14
- * Detect prefix clusters among skill names.
15
- *
16
- * A cluster is ≥2 skills sharing a common hyphenated prefix of ≥2 chars.
17
- * E.g. `["pr-review", "pr-merge", "pr-label"]` → cluster `"pr"`.
18
- */
19
- export function detectPrefixClusters(skillNames, minClusterSize = 2) {
20
- const prefixMap = new Map();
21
- for (const name of skillNames) {
22
- const dashIdx = name.indexOf("-");
23
- if (dashIdx < 2)
24
- continue;
25
- const prefix = name.slice(0, dashIdx);
26
- const existing = prefixMap.get(prefix);
27
- if (existing) {
28
- existing.push(name);
29
- }
30
- else {
31
- prefixMap.set(prefix, [name]);
32
- }
33
- }
34
- const clusters = [];
35
- for (const [prefix, skills] of prefixMap) {
36
- if (skills.length >= minClusterSize) {
37
- clusters.push({ prefix, skills: skills.sort() });
38
- }
39
- }
40
- return clusters.sort((a, b) => b.skills.length - a.skills.length);
41
- }
42
- // ── LLM prompt construction ────────────────────────────────────────
43
- /**
44
- * Build the consolidation review prompt for the LLM curator agent.
45
- *
46
- * The prompt instructs the model to:
47
- * 1. Identify prefix clusters and overlapping skills.
48
- * 2. Propose umbrella consolidations.
49
- * 3. Mark redundant/trivial skills for pruning (archive, not delete).
50
- * 4. Output a structured YAML block.
51
- */
52
- export function buildConsolidationPrompt(candidates, existingUmbrellas, clusters) {
53
- const candidateList = candidates.map((c) => `- **${c.name}** (${c.state}, uses: ${c.useCount}, tools: ${c.tools})${c.lastActivityAt ? ` last active: ${c.lastActivityAt}` : ""}`).join("\n");
54
- const umbrellaList = existingUmbrellas.length > 0
55
- ? existingUmbrellas.map((u) => `- ${u}`).join("\n")
56
- : "(none)";
57
- const clusterList = clusters.length > 0
58
- ? clusters.map((c) => `- **${c.prefix}-***: ${c.skills.join(", ")}`).join("\n")
59
- : "(no clusters detected)";
60
- return `You are the Autonomous Curator for a skill library.
61
-
62
- ## Goal
63
-
64
- Transform narrow, session-specific skills into a well-organized library of
65
- class-level umbrella skills. A collection of hundreds of narrow skills is FAILURE.
66
-
67
- ## Ground Rules
68
-
69
- 1. **NEVER delete** — only archive (prune). Archived skills can be restored.
70
- 2. **Do NOT touch pinned or bundled skills** — they are already filtered out.
71
- 3. **Identify prefix clusters** and merge them into umbrella skills.
72
- 4. **Move session-specific details** into the umbrella's references/ folder.
73
- 5. **Preserve unique value** — only merge if the source is genuinely redundant
74
- or a subset of the target.
75
-
76
- ## Detected Prefix Clusters
77
-
78
- ${clusterList}
79
-
80
- ## Existing Umbrella Skills
81
-
82
- ${umbrellaList}
83
-
84
- ## Candidate Skills for Review
85
-
86
- ${candidateList}
87
-
88
- ## Required Output Format
89
-
90
- Respond with EXACTLY this YAML block (no extra text outside the block):
91
-
92
- \`\`\`yaml
93
- consolidations:
94
- - source: "skill-name-a"
95
- target: "umbrella-skill"
96
- reason: "subset of umbrella functionality"
97
- - source: "skill-name-b"
98
- target: "new-umbrella-name"
99
- reason: "cluster merge"
100
-
101
- prunings:
102
- - skill: "skill-name-c"
103
- reason: "trivial single-use, no ongoing value"
104
- \`\`\`
105
-
106
- If no consolidations or prunings are warranted, use empty lists.
107
- Respond ONLY with the YAML block.`;
108
- }
109
- // ── LLM output parsing ─────────────────────────────────────────────
110
- /**
111
- * Parse the LLM's structured YAML response into a ConsolidationPlan.
112
- *
113
- * Tolerant: handles minor formatting variations, ignores unknown fields.
114
- */
115
- export function parseConsolidationOutput(llmOutput, knownSkills) {
116
- const consolidations = [];
117
- const prunings = [];
118
- const hallucinations = [];
119
- // Extract YAML block if wrapped in ```yaml ... ```
120
- const yamlMatch = llmOutput.match(/```(?:yaml)?\s*\n([\s\S]*?)```/);
121
- const yaml = yamlMatch ? yamlMatch[1] : llmOutput;
122
- // Parse consolidations
123
- const consolidationBlock = yaml.match(/consolidations:\s*\n((?:\s+-[\s\S]*?)?)(?=prunings:|$)/);
124
- if (consolidationBlock?.[1]) {
125
- const entries = consolidationBlock[1].matchAll(/- source:\s*"([^"]+)"\s*\n\s*target:\s*"([^"]+)"\s*\n\s*reason:\s*"([^"]+)"/g);
126
- for (const [, source, target, reason] of entries) {
127
- if (!knownSkills.has(source)) {
128
- hallucinations.push(source);
129
- continue;
130
- }
131
- consolidations.push({
132
- sourceSkill: source,
133
- targetUmbrella: target,
134
- targetExists: knownSkills.has(target),
135
- reason,
136
- });
137
- }
138
- }
139
- // Parse prunings
140
- const pruningBlock = yaml.match(/prunings:\s*\n([\s\S]*?)$/);
141
- if (pruningBlock?.[1]) {
142
- const entries = pruningBlock[1].matchAll(/- skill:\s*"([^"]+)"\s*\n\s*reason:\s*"([^"]+)"/g);
143
- for (const [, skill, reason] of entries) {
144
- if (!knownSkills.has(skill)) {
145
- hallucinations.push(skill);
146
- continue;
147
- }
148
- prunings.push({ skillName: skill, reason });
149
- }
150
- }
151
- return { consolidations, prunings, hallucinations };
152
- }
153
- // ── Reconciliation ─────────────────────────────────────────────────
154
- /**
155
- * Reconcile the LLM's consolidation plan against ground truth.
156
- *
157
- * Validates that:
158
- * - Source skills exist and aren't already consolidated in this plan.
159
- * - Target umbrellas either exist or are new (will be created).
160
- * - Pruning targets aren't also being consolidated.
161
- */
162
- export function reconcileConsolidationPlan(plan, knownSkills) {
163
- const validConsolidations = [];
164
- const validPrunings = [];
165
- const rejected = [];
166
- const consolidatedSources = new Set();
167
- for (const c of plan.consolidations) {
168
- if (!knownSkills.has(c.sourceSkill)) {
169
- rejected.push({
170
- action: `consolidate ${c.sourceSkill} → ${c.targetUmbrella}`,
171
- reason: `source skill "${c.sourceSkill}" not found`,
172
- });
173
- continue;
174
- }
175
- if (consolidatedSources.has(c.sourceSkill)) {
176
- rejected.push({
177
- action: `consolidate ${c.sourceSkill} → ${c.targetUmbrella}`,
178
- reason: `source skill "${c.sourceSkill}" already consolidated in this plan`,
179
- });
180
- continue;
181
- }
182
- if (c.sourceSkill === c.targetUmbrella) {
183
- rejected.push({
184
- action: `consolidate ${c.sourceSkill} → ${c.targetUmbrella}`,
185
- reason: "source and target are the same skill",
186
- });
187
- continue;
188
- }
189
- consolidatedSources.add(c.sourceSkill);
190
- validConsolidations.push(c);
191
- }
192
- for (const p of plan.prunings) {
193
- if (!knownSkills.has(p.skillName)) {
194
- rejected.push({
195
- action: `prune ${p.skillName}`,
196
- reason: `skill "${p.skillName}" not found`,
197
- });
198
- continue;
199
- }
200
- if (consolidatedSources.has(p.skillName)) {
201
- rejected.push({
202
- action: `prune ${p.skillName}`,
203
- reason: `skill "${p.skillName}" is being consolidated, not pruned`,
204
- });
205
- continue;
206
- }
207
- validPrunings.push(p);
208
- }
209
- return { validConsolidations, validPrunings, rejected };
210
- }
211
- /**
212
- * Build a human-readable summary from a curator run report.
213
- */
214
- export function buildCuratorRunSummary(report) {
215
- const parts = [];
216
- parts.push(`Curator run at ${report.runAt} (${report.durationSeconds.toFixed(1)}s)`);
217
- parts.push(`Auto: ${report.autoTransitionsChecked} checked, ${report.autoMarkedStale} stale, ${report.autoArchived} archived, ${report.autoReactivated} reactivated`);
218
- parts.push(`LLM: ${report.consolidationsAccepted} consolidated, ${report.pruningsAccepted} pruned, ${report.actionsRejected} rejected, ${report.hallucinations} hallucinated`);
219
- return parts.join("; ");
220
- }
221
- //# sourceMappingURL=skill-consolidation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-consolidation.js","sourceRoot":"","sources":["../../src/orchestration/skill-consolidation.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AA6DH;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAA6B,EAC7B,cAAc,GAAG,CAAC;IAElB,MAAM,SAAS,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,OAAO,GAAG,CAAC;YAAE,SAAS;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACvC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACtB,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAyB,EAAE,CAAC;IAC1C,KAAK,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;QACzC,IAAI,MAAM,CAAC,MAAM,IAAI,cAAc,EAAE,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AACpE,CAAC;AAED,sEAAsE;AAEtE;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAAgD,EAChD,iBAAoC,EACpC,QAAuC;IAEvC,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,CAClC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,KAAK,WAAW,CAAC,CAAC,QAAQ,YAAY,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC5I,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAC/C,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACnD,CAAC,CAAC,QAAQ,CAAC;IAEb,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC;QACrC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,MAAM,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAC/E,CAAC,CAAC,wBAAwB,CAAC;IAE7B,OAAO;;;;;;;;;;;;;;;;;;EAkBP,WAAW;;;;EAIX,YAAY;;;;EAIZ,aAAa;;;;;;;;;;;;;;;;;;;;;kCAqBmB,CAAC;AACnC,CAAC;AAED,sEAAsE;AAEtE;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAAiB,EACjB,WAAgC;IAEhC,MAAM,cAAc,GAA0B,EAAE,CAAC;IACjD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,cAAc,GAAa,EAAE,CAAC;IAEpC,mDAAmD;IACnD,MAAM,SAAS,GAAG,SAAS,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAElD,uBAAuB;IACvB,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC;IAChG,IAAI,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5B,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAC5C,8EAA8E,CAC/E,CAAC;QACF,KAAK,MAAM,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACjD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC7B,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5B,SAAS;YACX,CAAC;YACD,cAAc,CAAC,IAAI,CAAC;gBAClB,WAAW,EAAE,MAAM;gBACnB,cAAc,EAAE,MAAM;gBACtB,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC;gBACrC,MAAM;aACP,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,iBAAiB;IACjB,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAC7D,IAAI,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC,QAAQ,CACtC,kDAAkD,CACnD,CAAC;QACF,KAAK,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5B,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC3B,SAAS;YACX,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;AACtD,CAAC;AAED,sEAAsE;AAEtE;;;;;;;GAOG;AACH,MAAM,UAAU,0BAA0B,CACxC,IAAuB,EACvB,WAAgC;IAEhC,MAAM,mBAAmB,GAA0B,EAAE,CAAC;IACtD,MAAM,aAAa,GAAoB,EAAE,CAAC;IAC1C,MAAM,QAAQ,GAA8C,EAAE,CAAC;IAE/D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;IAE9C,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YACpC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,eAAe,CAAC,CAAC,WAAW,MAAM,CAAC,CAAC,cAAc,EAAE;gBAC5D,MAAM,EAAE,iBAAiB,CAAC,CAAC,WAAW,aAAa;aACpD,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,eAAe,CAAC,CAAC,WAAW,MAAM,CAAC,CAAC,cAAc,EAAE;gBAC5D,MAAM,EAAE,iBAAiB,CAAC,CAAC,WAAW,qCAAqC;aAC5E,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC,cAAc,EAAE,CAAC;YACvC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,eAAe,CAAC,CAAC,WAAW,MAAM,CAAC,CAAC,cAAc,EAAE;gBAC5D,MAAM,EAAE,sCAAsC;aAC/C,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;QACvC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9B,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC9B,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YAClC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,SAAS,CAAC,CAAC,SAAS,EAAE;gBAC9B,MAAM,EAAE,UAAU,CAAC,CAAC,SAAS,aAAa;aAC3C,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC;gBACZ,MAAM,EAAE,SAAS,CAAC,CAAC,SAAS,EAAE;gBAC9B,MAAM,EAAE,UAAU,CAAC,CAAC,SAAS,qCAAqC;aACnE,CAAC,CAAC;YACH,SAAS;QACX,CAAC;QACD,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,QAAQ,EAAE,CAAC;AAC1D,CAAC;AA4BD;;GAEG;AACH,MAAM,UAAU,sBAAsB,CAAC,MAAwB;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACrF,KAAK,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,sBAAsB,aAAa,MAAM,CAAC,eAAe,WAAW,MAAM,CAAC,YAAY,cAAc,MAAM,CAAC,eAAe,cAAc,CAAC,CAAC;IACtK,KAAK,CAAC,IAAI,CAAC,QAAQ,MAAM,CAAC,sBAAsB,kBAAkB,MAAM,CAAC,gBAAgB,YAAY,MAAM,CAAC,eAAe,cAAc,MAAM,CAAC,cAAc,eAAe,CAAC,CAAC;IAC/K,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-improvement.d.ts","sourceRoot":"","sources":["../../src/orchestration/skill-improvement.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,8CAA8C;IAC9C,aAAa,EAAE,MAAM,CAAC;IACtB,yCAAyC;IACzC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uDAAuD;IACvD,SAAS,EAAE,OAAO,CAAC;IACnB,wCAAwC;IACxC,YAAY,EAAE,OAAO,CAAC;IACtB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,UAAU,GAAG,UAAU,GAAG,IAAI,CAAC;IAC1C,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC;AAID,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,cAAc,CAAC;IACrB,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,+CAA+C;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,0BAA0B;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,oCAAoC;IACpC,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,eAAe,CAAC;IACtB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,uBAAuB,CAAC;AAehF;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAOlE;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAGnE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAA;CAAE,GACnD,gBAAgB,GAAG,IAAI,CAoBzB"}
@@ -1,67 +0,0 @@
1
- /**
2
- * Skill self-learning: decides whether a completed turn should
3
- * trigger skill creation or improvement instructions.
4
- */
5
- // ── Decision logic ─────────────────────────────────────────────────
6
- /**
7
- * Minimum tool call count to consider a turn "complex enough"
8
- * to warrant creating a reusable skill.
9
- */
10
- const MIN_TOOL_CALLS_FOR_SKILL = 3;
11
- /**
12
- * Minimum distinct tools to suggest a new skill.
13
- */
14
- const MIN_DISTINCT_TOOLS_FOR_SKILL = 2;
15
- /**
16
- * Determine whether a completed turn should produce a skill instruction.
17
- *
18
- * A new skill is suggested when:
19
- * - The turn succeeded
20
- * - It involved multi-step orchestration
21
- * - It used ≥3 tool calls across ≥2 distinct tools
22
- * - No existing skill was already applied
23
- *
24
- * An improvement is suggested when:
25
- * - The turn used an existing skill but got negative feedback
26
- */
27
- export function shouldCreateSkill(result) {
28
- if (!result.ok)
29
- return false;
30
- if (result.existingSkillName)
31
- return false;
32
- if (!result.multiStep)
33
- return false;
34
- if (result.toolCallCount < MIN_TOOL_CALLS_FOR_SKILL)
35
- return false;
36
- if (result.distinctToolCount < MIN_DISTINCT_TOOLS_FOR_SKILL)
37
- return false;
38
- return true;
39
- }
40
- export function shouldImproveSkill(result) {
41
- if (!result.existingSkillName)
42
- return false;
43
- return result.feedback === "negative";
44
- }
45
- /**
46
- * Build a skill instruction from a turn result, or null if none is warranted.
47
- */
48
- export function buildSkillInstruction(result, context) {
49
- if (shouldImproveSkill(result)) {
50
- return {
51
- type: "skill.improve",
52
- skillName: result.existingSkillName,
53
- reason: "negative user feedback on existing skill execution",
54
- };
55
- }
56
- if (shouldCreateSkill(result)) {
57
- return {
58
- type: "skill.create",
59
- suggestedName: context.suggestedName ?? `auto-skill-${context.tools.slice(0, 3).join("-")}`,
60
- description: `Multi-step orchestration using ${context.tools.join(", ")}`,
61
- tools: context.tools,
62
- stepCount: result.toolCallCount,
63
- };
64
- }
65
- return null;
66
- }
67
- //# sourceMappingURL=skill-improvement.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-improvement.js","sourceRoot":"","sources":["../../src/orchestration/skill-improvement.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA4CH,sEAAsE;AAEtE;;;GAGG;AACH,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC;;GAEG;AACH,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAuB;IACvD,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAC7B,IAAI,MAAM,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,CAAC,MAAM,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACpC,IAAI,MAAM,CAAC,aAAa,GAAG,wBAAwB;QAAE,OAAO,KAAK,CAAC;IAClE,IAAI,MAAM,CAAC,iBAAiB,GAAG,4BAA4B;QAAE,OAAO,KAAK,CAAC;IAC1E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,MAAuB;IACxD,IAAI,CAAC,MAAM,CAAC,iBAAiB;QAAE,OAAO,KAAK,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAuB,EACvB,OAAoD;IAEpD,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,SAAS,EAAE,MAAM,CAAC,iBAAkB;YACpC,MAAM,EAAE,oDAAoD;SAC7D,CAAC;IACJ,CAAC;IAED,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,cAAc,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;YAC3F,WAAW,EAAE,kCAAkC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YACzE,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,SAAS,EAAE,MAAM,CAAC,aAAa;SAChC,CAAC;IACJ,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-similarity.d.ts","sourceRoot":"","sources":["../../src/orchestration/skill-similarity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAIH,uDAAuD;AACvD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,kDAAkD;AAClD,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,qCAAqC;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,mCAAmC;IACnC,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,iEAAiE;AACjE,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,eAAe,CAAC;CACxB;AAED,wCAAwC;AACxC,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,sBAAsB,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,sBAAsB,EAAE,MAAM,CAAC;IAC/B,6DAA6D;IAC7D,UAAU,EAAE,MAAM,CAAC;IACnB,iEAAiE;IACjE,WAAW,EAAE,MAAM,CAAC;IACpB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,+BAA+B,EAAE,qBAM7C,CAAC;AAIF;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,MAAM,EAAE,SAAS,MAAM,EAAE,GACxB,MAAM,CAaR;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAc7D;AAWD;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,MAAM,CAMR;AAID;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,CAAC,EAAE,sBAAsB,EACzB,CAAC,EAAE,sBAAsB,EACzB,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GACtC,eAAe,CAajB;AAID;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,sBAAsB,EAChC,cAAc,EAAE,SAAS,sBAAsB,EAAE,EACjD,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GACtC,iBAAiB,EAAE,CAcrB;AAED;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAC1B;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACpC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,MAAM,EAAE,iBAAiB,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1E,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,SAAS,iBAAiB,EAAE,EACrC,MAAM,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,GACtC,kBAAkB,CAqBpB"}
@@ -1,132 +0,0 @@
1
- /**
2
- * Skill similarity — pure strategy for detecting near-duplicate skills
3
- * before creation and during curator consolidation reviews.
4
- *
5
- * Computes multi-signal similarity between skills:
6
- * 1. Tool-set Jaccard overlap (primary signal for auto-generated skills)
7
- * 2. Title/description cosine bigram similarity (complementary signal)
8
- * 3. Step-count proximity (minor signal for workflow complexity)
9
- *
10
- * No I/O — all functions are pure.
11
- */
12
- export const DEFAULT_SKILL_SIMILARITY_POLICY = {
13
- blockCreationThreshold: 0.75,
14
- curatorReviewThreshold: 0.55,
15
- toolWeight: 0.60,
16
- titleWeight: 0.30,
17
- stepWeight: 0.10,
18
- };
19
- // ── Core similarity functions ──────────────────────────────────────
20
- /**
21
- * Compute Jaccard index between two tool sets.
22
- * Returns 0 if both sets are empty.
23
- */
24
- export function toolSetJaccard(toolsA, toolsB) {
25
- const setA = new Set(toolsA.map((t) => t.toLowerCase()));
26
- const setB = new Set(toolsB.map((t) => t.toLowerCase()));
27
- if (setA.size === 0 && setB.size === 0)
28
- return 0;
29
- let intersection = 0;
30
- for (const t of setA) {
31
- if (setB.has(t))
32
- intersection++;
33
- }
34
- const union = setA.size + setB.size - intersection;
35
- return union === 0 ? 0 : intersection / union;
36
- }
37
- /**
38
- * Compute character-bigram similarity between two strings.
39
- * Uses Dice coefficient of bigram sets.
40
- */
41
- export function bigramSimilarity(a, b) {
42
- const bigramsA = extractBigrams(a.toLowerCase());
43
- const bigramsB = extractBigrams(b.toLowerCase());
44
- if (bigramsA.size === 0 && bigramsB.size === 0)
45
- return 0;
46
- if (bigramsA.size === 0 || bigramsB.size === 0)
47
- return 0;
48
- let intersection = 0;
49
- for (const bg of bigramsA) {
50
- if (bigramsB.has(bg))
51
- intersection++;
52
- }
53
- // Dice coefficient = 2 * |intersection| / (|A| + |B|)
54
- return (2 * intersection) / (bigramsA.size + bigramsB.size);
55
- }
56
- function extractBigrams(s) {
57
- const bigrams = new Set();
58
- const normalized = s.replace(/[^a-z0-9\u4e00-\u9fff]/g, " ").trim();
59
- for (let i = 0; i < normalized.length - 1; i++) {
60
- bigrams.add(normalized.slice(i, i + 2));
61
- }
62
- return bigrams;
63
- }
64
- /**
65
- * Compute step-count proximity [0, 1].
66
- * Returns 1 when counts are identical, decreases with difference.
67
- */
68
- export function stepCountProximity(stepsA, stepsB) {
69
- if (stepsA == null || stepsB == null)
70
- return 0.5; // neutral if unknown
71
- if (stepsA === 0 && stepsB === 0)
72
- return 1;
73
- const diff = Math.abs(stepsA - stepsB);
74
- const max = Math.max(stepsA, stepsB);
75
- return 1 - diff / max;
76
- }
77
- // ── Composite similarity ───────────────────────────────────────────
78
- /**
79
- * Compute overall similarity between two skill profiles.
80
- */
81
- export function computeSimilarity(a, b, policy) {
82
- const resolved = { ...DEFAULT_SKILL_SIMILARITY_POLICY, ...policy };
83
- const toolJaccard = toolSetJaccard(a.tools, b.tools);
84
- const titleSimilarity = bigramSimilarity(a.title, b.title);
85
- const stepProximity = stepCountProximity(a.stepCount, b.stepCount);
86
- const overall = resolved.toolWeight * toolJaccard +
87
- resolved.titleWeight * titleSimilarity +
88
- resolved.stepWeight * stepProximity;
89
- return { overall, toolJaccard, titleSimilarity, stepProximity };
90
- }
91
- // ── Pre-creation duplicate check ───────────────────────────────────
92
- /**
93
- * Check a new skill candidate against existing skills for similarity.
94
- *
95
- * Returns all existing skills above curatorReviewThreshold, sorted
96
- * by descending similarity. The caller should:
97
- * - Block creation if any match ≥ blockCreationThreshold (emit improve instead)
98
- * - Tag for curator review if match ≥ curatorReviewThreshold
99
- */
100
- export function findSimilarSkills(newSkill, existingSkills, policy) {
101
- const resolved = { ...DEFAULT_SKILL_SIMILARITY_POLICY, ...policy };
102
- const matches = [];
103
- for (const existing of existingSkills) {
104
- if (existing.skillKey === newSkill.skillKey)
105
- continue; // skip self
106
- const score = computeSimilarity(newSkill, existing, resolved);
107
- if (score.overall >= resolved.curatorReviewThreshold) {
108
- matches.push({ existingSkillKey: existing.skillKey, score });
109
- }
110
- }
111
- return matches.sort((a, b) => b.score.overall - a.score.overall);
112
- }
113
- export function decideSimilarityAction(matches, policy) {
114
- const resolved = { ...DEFAULT_SKILL_SIMILARITY_POLICY, ...policy };
115
- if (matches.length === 0) {
116
- return { action: "create", reason: "no similar skills found" };
117
- }
118
- const top = matches[0];
119
- if (top.score.overall >= resolved.blockCreationThreshold) {
120
- return {
121
- action: "improve",
122
- targetSkillKey: top.existingSkillKey,
123
- reason: `similarity ${(top.score.overall * 100).toFixed(0)}% ≥ creation threshold ${(resolved.blockCreationThreshold * 100).toFixed(0)}% (tool overlap: ${(top.score.toolJaccard * 100).toFixed(0)}%)`,
124
- };
125
- }
126
- return {
127
- action: "flag-for-review",
128
- targetSkillKey: top.existingSkillKey,
129
- reason: `similarity ${(top.score.overall * 100).toFixed(0)}% between review and creation thresholds`,
130
- };
131
- }
132
- //# sourceMappingURL=skill-similarity.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"skill-similarity.js","sourceRoot":"","sources":["../../src/orchestration/skill-similarity.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"streaming-tool-executor.d.ts","sourceRoot":"","sources":["../../src/orchestration/streaming-tool-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;AAED,MAAM,WAAW,mBAAmB,CAAC,CAAC,GAAG,OAAO;IAC9C,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,CAAC,CAAC;IACV,EAAE,EAAE,OAAO,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,2BAA2B;IAC1C,sDAAsD;IACtD,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,OAAO,IAAI,CACxC,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,WAAW,KACtB,OAAO,CAAC,CAAC,CAAC,CAAC;AAShB;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,qBAAqB,CAAC,CAAC,GAAG,OAAO;IAChD,6EAA6E;IAC7E,OAAO,CAAC,QAAQ,EAAE,iBAAiB,GAAG,OAAO,CAAC;IAC9C,sEAAsE;IACtE,mBAAmB,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,0EAA0E;IAC1E,KAAK,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3C,gDAAgD;IAChD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,6CAA6C;IAC7C,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,6CAA6C;IAC7C,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;CAC3B;AAED,wBAAgB,2BAA2B,CAAC,CAAC,GAAG,OAAO,EACrD,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,EAC5B,MAAM,GAAE,OAAO,CAAC,2BAA2B,CAAM,GAChD,qBAAqB,CAAC,CAAC,CAAC,CA0E1B;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE;IACjF,YAAY,CAAC,EAAE,cAAc,GAAG,gBAAgB,CAAC;IACjD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAQV"}