@cleocode/cleo 2026.3.56 → 2026.3.58

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 (705) hide show
  1. package/dist/cli/commander-shim.d.ts +112 -0
  2. package/dist/cli/commander-shim.d.ts.map +1 -0
  3. package/dist/cli/commander-shim.js +233 -0
  4. package/dist/cli/commander-shim.js.map +1 -0
  5. package/dist/cli/commands/add.d.ts +12 -0
  6. package/dist/cli/commands/add.d.ts.map +1 -0
  7. package/dist/cli/commands/add.js +91 -0
  8. package/dist/cli/commands/add.js.map +1 -0
  9. package/dist/cli/commands/adr.d.ts +27 -0
  10. package/dist/cli/commands/adr.d.ts.map +1 -0
  11. package/dist/cli/commands/adr.js +79 -0
  12. package/dist/cli/commands/adr.js.map +1 -0
  13. package/dist/cli/commands/analyze.d.ts +12 -0
  14. package/dist/cli/commands/analyze.d.ts.map +1 -0
  15. package/dist/cli/commands/analyze.js +20 -0
  16. package/dist/cli/commands/analyze.js.map +1 -0
  17. package/dist/cli/commands/archive-stats.d.ts +18 -0
  18. package/dist/cli/commands/archive-stats.d.ts.map +1 -0
  19. package/dist/cli/commands/archive-stats.js +49 -0
  20. package/dist/cli/commands/archive-stats.js.map +1 -0
  21. package/dist/cli/commands/archive.d.ts +12 -0
  22. package/dist/cli/commands/archive.d.ts.map +1 -0
  23. package/dist/cli/commands/archive.js +32 -0
  24. package/dist/cli/commands/archive.js.map +1 -0
  25. package/dist/cli/commands/backup.d.ts +8 -0
  26. package/dist/cli/commands/backup.d.ts.map +1 -0
  27. package/dist/cli/commands/backup.js +35 -0
  28. package/dist/cli/commands/backup.js.map +1 -0
  29. package/dist/cli/commands/blockers.d.ts +7 -0
  30. package/dist/cli/commands/blockers.d.ts.map +1 -0
  31. package/dist/cli/commands/blockers.js +16 -0
  32. package/dist/cli/commands/blockers.js.map +1 -0
  33. package/dist/cli/commands/briefing.d.ts +22 -0
  34. package/dist/cli/commands/briefing.d.ts.map +1 -0
  35. package/dist/cli/commands/briefing.js +45 -0
  36. package/dist/cli/commands/briefing.js.map +1 -0
  37. package/dist/cli/commands/bug.d.ts +12 -0
  38. package/dist/cli/commands/bug.d.ts.map +1 -0
  39. package/dist/cli/commands/bug.js +81 -0
  40. package/dist/cli/commands/bug.js.map +1 -0
  41. package/dist/cli/commands/checkpoint.d.ts +15 -0
  42. package/dist/cli/commands/checkpoint.d.ts.map +1 -0
  43. package/dist/cli/commands/checkpoint.js +91 -0
  44. package/dist/cli/commands/checkpoint.js.map +1 -0
  45. package/dist/cli/commands/commands.d.ts +13 -0
  46. package/dist/cli/commands/commands.d.ts.map +1 -0
  47. package/dist/cli/commands/commands.js +30 -0
  48. package/dist/cli/commands/commands.js.map +1 -0
  49. package/dist/cli/commands/complete.d.ts +12 -0
  50. package/dist/cli/commands/complete.d.ts.map +1 -0
  51. package/dist/cli/commands/complete.js +43 -0
  52. package/dist/cli/commands/complete.js.map +1 -0
  53. package/dist/cli/commands/compliance.d.ts +8 -0
  54. package/dist/cli/commands/compliance.d.ts.map +1 -0
  55. package/dist/cli/commands/compliance.js +85 -0
  56. package/dist/cli/commands/compliance.js.map +1 -0
  57. package/dist/cli/commands/config.d.ts +9 -0
  58. package/dist/cli/commands/config.d.ts.map +1 -0
  59. package/dist/cli/commands/config.js +43 -0
  60. package/dist/cli/commands/config.js.map +1 -0
  61. package/dist/cli/commands/consensus.d.ts +13 -0
  62. package/dist/cli/commands/consensus.d.ts.map +1 -0
  63. package/dist/cli/commands/consensus.js +45 -0
  64. package/dist/cli/commands/consensus.js.map +1 -0
  65. package/dist/cli/commands/context.d.ts +8 -0
  66. package/dist/cli/commands/context.d.ts.map +1 -0
  67. package/dist/cli/commands/context.js +40 -0
  68. package/dist/cli/commands/context.js.map +1 -0
  69. package/dist/cli/commands/contribution.d.ts +13 -0
  70. package/dist/cli/commands/contribution.d.ts.map +1 -0
  71. package/dist/cli/commands/contribution.js +41 -0
  72. package/dist/cli/commands/contribution.js.map +1 -0
  73. package/dist/cli/commands/current.d.ts +13 -0
  74. package/dist/cli/commands/current.d.ts.map +1 -0
  75. package/dist/cli/commands/current.js +20 -0
  76. package/dist/cli/commands/current.js.map +1 -0
  77. package/dist/cli/commands/dash.d.ts +12 -0
  78. package/dist/cli/commands/dash.d.ts.map +1 -0
  79. package/dist/cli/commands/dash.js +24 -0
  80. package/dist/cli/commands/dash.js.map +1 -0
  81. package/dist/cli/commands/decomposition.d.ts +13 -0
  82. package/dist/cli/commands/decomposition.d.ts.map +1 -0
  83. package/dist/cli/commands/decomposition.js +45 -0
  84. package/dist/cli/commands/decomposition.js.map +1 -0
  85. package/dist/cli/commands/delete.d.ts +12 -0
  86. package/dist/cli/commands/delete.d.ts.map +1 -0
  87. package/dist/cli/commands/delete.js +37 -0
  88. package/dist/cli/commands/delete.js.map +1 -0
  89. package/dist/cli/commands/deps.d.ts +9 -0
  90. package/dist/cli/commands/deps.d.ts.map +1 -0
  91. package/dist/cli/commands/deps.js +73 -0
  92. package/dist/cli/commands/deps.js.map +1 -0
  93. package/dist/cli/commands/detect-drift.d.ts +15 -0
  94. package/dist/cli/commands/detect-drift.d.ts.map +1 -0
  95. package/dist/cli/commands/detect-drift.js +386 -0
  96. package/dist/cli/commands/detect-drift.js.map +1 -0
  97. package/dist/cli/commands/detect.d.ts +10 -0
  98. package/dist/cli/commands/detect.d.ts.map +1 -0
  99. package/dist/cli/commands/detect.js +24 -0
  100. package/dist/cli/commands/detect.js.map +1 -0
  101. package/dist/cli/commands/docs.d.ts +13 -0
  102. package/dist/cli/commands/docs.d.ts.map +1 -0
  103. package/dist/cli/commands/docs.js +169 -0
  104. package/dist/cli/commands/docs.js.map +1 -0
  105. package/dist/cli/commands/doctor.d.ts +11 -0
  106. package/dist/cli/commands/doctor.d.ts.map +1 -0
  107. package/dist/cli/commands/doctor.js +54 -0
  108. package/dist/cli/commands/doctor.js.map +1 -0
  109. package/dist/cli/commands/dynamic.d.ts +24 -0
  110. package/dist/cli/commands/dynamic.d.ts.map +1 -0
  111. package/dist/cli/commands/dynamic.js +27 -0
  112. package/dist/cli/commands/dynamic.js.map +1 -0
  113. package/dist/cli/commands/env.d.ts +12 -0
  114. package/dist/cli/commands/env.d.ts.map +1 -0
  115. package/dist/cli/commands/env.js +44 -0
  116. package/dist/cli/commands/env.js.map +1 -0
  117. package/dist/cli/commands/exists.d.ts +7 -0
  118. package/dist/cli/commands/exists.d.ts.map +1 -0
  119. package/dist/cli/commands/exists.js +33 -0
  120. package/dist/cli/commands/exists.js.map +1 -0
  121. package/dist/cli/commands/export-tasks.d.ts +10 -0
  122. package/dist/cli/commands/export-tasks.d.ts.map +1 -0
  123. package/dist/cli/commands/export-tasks.js +47 -0
  124. package/dist/cli/commands/export-tasks.js.map +1 -0
  125. package/dist/cli/commands/export.d.ts +9 -0
  126. package/dist/cli/commands/export.d.ts.map +1 -0
  127. package/dist/cli/commands/export.js +46 -0
  128. package/dist/cli/commands/export.js.map +1 -0
  129. package/dist/cli/commands/find.d.ts +14 -0
  130. package/dist/cli/commands/find.d.ts.map +1 -0
  131. package/dist/cli/commands/find.js +70 -0
  132. package/dist/cli/commands/find.js.map +1 -0
  133. package/dist/cli/commands/generate-changelog.d.ts +14 -0
  134. package/dist/cli/commands/generate-changelog.d.ts.map +1 -0
  135. package/dist/cli/commands/generate-changelog.js +252 -0
  136. package/dist/cli/commands/generate-changelog.js.map +1 -0
  137. package/dist/cli/commands/grade.d.ts +13 -0
  138. package/dist/cli/commands/grade.d.ts.map +1 -0
  139. package/dist/cli/commands/grade.js +26 -0
  140. package/dist/cli/commands/grade.js.map +1 -0
  141. package/dist/cli/commands/history.d.ts +9 -0
  142. package/dist/cli/commands/history.d.ts.map +1 -0
  143. package/dist/cli/commands/history.js +30 -0
  144. package/dist/cli/commands/history.js.map +1 -0
  145. package/dist/cli/commands/implementation.d.ts +13 -0
  146. package/dist/cli/commands/implementation.d.ts.map +1 -0
  147. package/dist/cli/commands/implementation.js +41 -0
  148. package/dist/cli/commands/implementation.js.map +1 -0
  149. package/dist/cli/commands/import-tasks.d.ts +10 -0
  150. package/dist/cli/commands/import-tasks.d.ts.map +1 -0
  151. package/dist/cli/commands/import-tasks.js +38 -0
  152. package/dist/cli/commands/import-tasks.js.map +1 -0
  153. package/dist/cli/commands/import.d.ts +9 -0
  154. package/dist/cli/commands/import.d.ts.map +1 -0
  155. package/dist/cli/commands/import.js +28 -0
  156. package/dist/cli/commands/import.js.map +1 -0
  157. package/dist/cli/commands/init.d.ts +34 -0
  158. package/dist/cli/commands/init.d.ts.map +1 -0
  159. package/dist/cli/commands/init.js +89 -0
  160. package/dist/cli/commands/init.js.map +1 -0
  161. package/dist/cli/commands/inject.d.ts +8 -0
  162. package/dist/cli/commands/inject.d.ts.map +1 -0
  163. package/dist/cli/commands/inject.js +28 -0
  164. package/dist/cli/commands/inject.js.map +1 -0
  165. package/dist/cli/commands/install-global.d.ts +19 -0
  166. package/dist/cli/commands/install-global.d.ts.map +1 -0
  167. package/dist/cli/commands/install-global.js +50 -0
  168. package/dist/cli/commands/install-global.js.map +1 -0
  169. package/dist/cli/commands/issue.d.ts +14 -0
  170. package/dist/cli/commands/issue.d.ts.map +1 -0
  171. package/dist/cli/commands/issue.js +105 -0
  172. package/dist/cli/commands/issue.js.map +1 -0
  173. package/dist/cli/commands/labels.d.ts +13 -0
  174. package/dist/cli/commands/labels.d.ts.map +1 -0
  175. package/dist/cli/commands/labels.js +44 -0
  176. package/dist/cli/commands/labels.js.map +1 -0
  177. package/dist/cli/commands/lifecycle.d.ts +8 -0
  178. package/dist/cli/commands/lifecycle.d.ts.map +1 -0
  179. package/dist/cli/commands/lifecycle.js +72 -0
  180. package/dist/cli/commands/lifecycle.js.map +1 -0
  181. package/dist/cli/commands/list.d.ts +14 -0
  182. package/dist/cli/commands/list.d.ts.map +1 -0
  183. package/dist/cli/commands/list.js +71 -0
  184. package/dist/cli/commands/list.js.map +1 -0
  185. package/dist/cli/commands/log.d.ts +12 -0
  186. package/dist/cli/commands/log.d.ts.map +1 -0
  187. package/dist/cli/commands/log.js +30 -0
  188. package/dist/cli/commands/log.js.map +1 -0
  189. package/dist/cli/commands/map.d.ts +10 -0
  190. package/dist/cli/commands/map.d.ts.map +1 -0
  191. package/dist/cli/commands/map.js +23 -0
  192. package/dist/cli/commands/map.js.map +1 -0
  193. package/dist/cli/commands/mcp-install.d.ts +17 -0
  194. package/dist/cli/commands/mcp-install.d.ts.map +1 -0
  195. package/dist/cli/commands/mcp-install.js +128 -0
  196. package/dist/cli/commands/mcp-install.js.map +1 -0
  197. package/dist/cli/commands/memory-brain.d.ts +14 -0
  198. package/dist/cli/commands/memory-brain.d.ts.map +1 -0
  199. package/dist/cli/commands/memory-brain.js +151 -0
  200. package/dist/cli/commands/memory-brain.js.map +1 -0
  201. package/dist/cli/commands/migrate-claude-mem.d.ts +18 -0
  202. package/dist/cli/commands/migrate-claude-mem.d.ts.map +1 -0
  203. package/dist/cli/commands/migrate-claude-mem.js +60 -0
  204. package/dist/cli/commands/migrate-claude-mem.js.map +1 -0
  205. package/dist/cli/commands/next.d.ts +9 -0
  206. package/dist/cli/commands/next.d.ts.map +1 -0
  207. package/dist/cli/commands/next.js +20 -0
  208. package/dist/cli/commands/next.js.map +1 -0
  209. package/dist/cli/commands/nexus.d.ts +16 -0
  210. package/dist/cli/commands/nexus.d.ts.map +1 -0
  211. package/dist/cli/commands/nexus.js +155 -0
  212. package/dist/cli/commands/nexus.js.map +1 -0
  213. package/dist/cli/commands/observe.d.ts +9 -0
  214. package/dist/cli/commands/observe.d.ts.map +1 -0
  215. package/dist/cli/commands/observe.js +39 -0
  216. package/dist/cli/commands/observe.js.map +1 -0
  217. package/dist/cli/commands/ops.d.ts +10 -0
  218. package/dist/cli/commands/ops.d.ts.map +1 -0
  219. package/dist/cli/commands/ops.js +19 -0
  220. package/dist/cli/commands/ops.js.map +1 -0
  221. package/dist/cli/commands/orchestrate.d.ts +8 -0
  222. package/dist/cli/commands/orchestrate.d.ts.map +1 -0
  223. package/dist/cli/commands/orchestrate.js +58 -0
  224. package/dist/cli/commands/orchestrate.js.map +1 -0
  225. package/dist/cli/commands/otel.d.ts +12 -0
  226. package/dist/cli/commands/otel.d.ts.map +1 -0
  227. package/dist/cli/commands/otel.js +128 -0
  228. package/dist/cli/commands/otel.js.map +1 -0
  229. package/dist/cli/commands/phase.d.ts +12 -0
  230. package/dist/cli/commands/phase.d.ts.map +1 -0
  231. package/dist/cli/commands/phase.js +88 -0
  232. package/dist/cli/commands/phase.js.map +1 -0
  233. package/dist/cli/commands/phases.d.ts +12 -0
  234. package/dist/cli/commands/phases.d.ts.map +1 -0
  235. package/dist/cli/commands/phases.js +37 -0
  236. package/dist/cli/commands/phases.js.map +1 -0
  237. package/dist/cli/commands/plan.d.ts +8 -0
  238. package/dist/cli/commands/plan.d.ts.map +1 -0
  239. package/dist/cli/commands/plan.js +15 -0
  240. package/dist/cli/commands/plan.js.map +1 -0
  241. package/dist/cli/commands/promote.d.ts +7 -0
  242. package/dist/cli/commands/promote.d.ts.map +1 -0
  243. package/dist/cli/commands/promote.js +15 -0
  244. package/dist/cli/commands/promote.js.map +1 -0
  245. package/dist/cli/commands/refresh-memory.d.ts +9 -0
  246. package/dist/cli/commands/refresh-memory.d.ts.map +1 -0
  247. package/dist/cli/commands/refresh-memory.js +24 -0
  248. package/dist/cli/commands/refresh-memory.js.map +1 -0
  249. package/dist/cli/commands/relates.d.ts +12 -0
  250. package/dist/cli/commands/relates.d.ts.map +1 -0
  251. package/dist/cli/commands/relates.js +53 -0
  252. package/dist/cli/commands/relates.js.map +1 -0
  253. package/dist/cli/commands/release.d.ts +8 -0
  254. package/dist/cli/commands/release.d.ts.map +1 -0
  255. package/dist/cli/commands/release.js +72 -0
  256. package/dist/cli/commands/release.js.map +1 -0
  257. package/dist/cli/commands/remote.d.ts +12 -0
  258. package/dist/cli/commands/remote.d.ts.map +1 -0
  259. package/dist/cli/commands/remote.js +207 -0
  260. package/dist/cli/commands/remote.js.map +1 -0
  261. package/dist/cli/commands/reorder.d.ts +7 -0
  262. package/dist/cli/commands/reorder.d.ts.map +1 -0
  263. package/dist/cli/commands/reorder.js +20 -0
  264. package/dist/cli/commands/reorder.js.map +1 -0
  265. package/dist/cli/commands/reparent.d.ts +10 -0
  266. package/dist/cli/commands/reparent.d.ts.map +1 -0
  267. package/dist/cli/commands/reparent.js +19 -0
  268. package/dist/cli/commands/reparent.js.map +1 -0
  269. package/dist/cli/commands/research.d.ts +8 -0
  270. package/dist/cli/commands/research.d.ts.map +1 -0
  271. package/dist/cli/commands/research.js +129 -0
  272. package/dist/cli/commands/research.js.map +1 -0
  273. package/dist/cli/commands/restore.d.ts +11 -0
  274. package/dist/cli/commands/restore.d.ts.map +1 -0
  275. package/dist/cli/commands/restore.js +224 -0
  276. package/dist/cli/commands/restore.js.map +1 -0
  277. package/dist/cli/commands/roadmap.d.ts +8 -0
  278. package/dist/cli/commands/roadmap.d.ts.map +1 -0
  279. package/dist/cli/commands/roadmap.js +21 -0
  280. package/dist/cli/commands/roadmap.js.map +1 -0
  281. package/dist/cli/commands/safestop.d.ts +14 -0
  282. package/dist/cli/commands/safestop.d.ts.map +1 -0
  283. package/dist/cli/commands/safestop.js +32 -0
  284. package/dist/cli/commands/safestop.js.map +1 -0
  285. package/dist/cli/commands/self-update.d.ts +15 -0
  286. package/dist/cli/commands/self-update.d.ts.map +1 -0
  287. package/dist/cli/commands/self-update.js +329 -0
  288. package/dist/cli/commands/self-update.js.map +1 -0
  289. package/dist/cli/commands/sequence.d.ts +8 -0
  290. package/dist/cli/commands/sequence.d.ts.map +1 -0
  291. package/dist/cli/commands/sequence.js +30 -0
  292. package/dist/cli/commands/sequence.js.map +1 -0
  293. package/dist/cli/commands/session.d.ts +12 -0
  294. package/dist/cli/commands/session.d.ts.map +1 -0
  295. package/dist/cli/commands/session.js +160 -0
  296. package/dist/cli/commands/session.js.map +1 -0
  297. package/dist/cli/commands/show.d.ts +13 -0
  298. package/dist/cli/commands/show.d.ts.map +1 -0
  299. package/dist/cli/commands/show.js +20 -0
  300. package/dist/cli/commands/show.js.map +1 -0
  301. package/dist/cli/commands/skills.d.ts +13 -0
  302. package/dist/cli/commands/skills.d.ts.map +1 -0
  303. package/dist/cli/commands/skills.js +131 -0
  304. package/dist/cli/commands/skills.js.map +1 -0
  305. package/dist/cli/commands/snapshot.d.ts +9 -0
  306. package/dist/cli/commands/snapshot.d.ts.map +1 -0
  307. package/dist/cli/commands/snapshot.js +50 -0
  308. package/dist/cli/commands/snapshot.js.map +1 -0
  309. package/dist/cli/commands/specification.d.ts +13 -0
  310. package/dist/cli/commands/specification.d.ts.map +1 -0
  311. package/dist/cli/commands/specification.js +45 -0
  312. package/dist/cli/commands/specification.js.map +1 -0
  313. package/dist/cli/commands/start.d.ts +13 -0
  314. package/dist/cli/commands/start.d.ts.map +1 -0
  315. package/dist/cli/commands/start.js +20 -0
  316. package/dist/cli/commands/start.js.map +1 -0
  317. package/dist/cli/commands/stats.d.ts +12 -0
  318. package/dist/cli/commands/stats.d.ts.map +1 -0
  319. package/dist/cli/commands/stats.js +23 -0
  320. package/dist/cli/commands/stats.js.map +1 -0
  321. package/dist/cli/commands/sticky.d.ts +16 -0
  322. package/dist/cli/commands/sticky.d.ts.map +1 -0
  323. package/dist/cli/commands/sticky.js +211 -0
  324. package/dist/cli/commands/sticky.js.map +1 -0
  325. package/dist/cli/commands/stop.d.ts +13 -0
  326. package/dist/cli/commands/stop.d.ts.map +1 -0
  327. package/dist/cli/commands/stop.js +20 -0
  328. package/dist/cli/commands/stop.js.map +1 -0
  329. package/dist/cli/commands/testing.d.ts +13 -0
  330. package/dist/cli/commands/testing.d.ts.map +1 -0
  331. package/dist/cli/commands/testing.js +64 -0
  332. package/dist/cli/commands/testing.js.map +1 -0
  333. package/dist/cli/commands/token.d.ts +10 -0
  334. package/dist/cli/commands/token.d.ts.map +1 -0
  335. package/dist/cli/commands/token.js +135 -0
  336. package/dist/cli/commands/token.js.map +1 -0
  337. package/dist/cli/commands/update.d.ts +12 -0
  338. package/dist/cli/commands/update.d.ts.map +1 -0
  339. package/dist/cli/commands/update.js +77 -0
  340. package/dist/cli/commands/update.js.map +1 -0
  341. package/dist/cli/commands/upgrade.d.ts +16 -0
  342. package/dist/cli/commands/upgrade.d.ts.map +1 -0
  343. package/dist/cli/commands/upgrade.js +83 -0
  344. package/dist/cli/commands/upgrade.js.map +1 -0
  345. package/dist/cli/commands/validate.d.ts +12 -0
  346. package/dist/cli/commands/validate.d.ts.map +1 -0
  347. package/dist/cli/commands/validate.js +23 -0
  348. package/dist/cli/commands/validate.js.map +1 -0
  349. package/dist/cli/commands/verify.d.ts +8 -0
  350. package/dist/cli/commands/verify.d.ts.map +1 -0
  351. package/dist/cli/commands/verify.js +28 -0
  352. package/dist/cli/commands/verify.js.map +1 -0
  353. package/dist/cli/commands/web.d.ts +13 -0
  354. package/dist/cli/commands/web.d.ts.map +1 -0
  355. package/dist/cli/commands/web.js +264 -0
  356. package/dist/cli/commands/web.js.map +1 -0
  357. package/dist/cli/field-context.d.ts +32 -0
  358. package/dist/cli/field-context.d.ts.map +1 -0
  359. package/dist/cli/field-context.js +47 -0
  360. package/dist/cli/field-context.js.map +1 -0
  361. package/dist/cli/format-context.d.ts +32 -0
  362. package/dist/cli/format-context.d.ts.map +1 -0
  363. package/dist/cli/format-context.js +50 -0
  364. package/dist/cli/format-context.js.map +1 -0
  365. package/dist/cli/index.d.ts +9 -0
  366. package/dist/cli/index.d.ts.map +1 -0
  367. package/dist/cli/index.js +16876 -14937
  368. package/dist/cli/index.js.map +4 -4
  369. package/dist/cli/logger-bootstrap.d.ts +6 -0
  370. package/dist/cli/logger-bootstrap.d.ts.map +1 -0
  371. package/dist/cli/logger-bootstrap.js +10 -0
  372. package/dist/cli/logger-bootstrap.js.map +1 -0
  373. package/dist/cli/middleware/output-format.d.ts +30 -0
  374. package/dist/cli/middleware/output-format.d.ts.map +1 -0
  375. package/dist/cli/middleware/output-format.js +35 -0
  376. package/dist/cli/middleware/output-format.js.map +1 -0
  377. package/dist/cli/progress.d.ts +84 -0
  378. package/dist/cli/progress.d.ts.map +1 -0
  379. package/dist/cli/progress.js +169 -0
  380. package/dist/cli/progress.js.map +1 -0
  381. package/dist/cli/renderers/colors.d.ts +32 -0
  382. package/dist/cli/renderers/colors.d.ts.map +1 -0
  383. package/dist/cli/renderers/colors.js +141 -0
  384. package/dist/cli/renderers/colors.js.map +1 -0
  385. package/dist/cli/renderers/error.d.ts +13 -0
  386. package/dist/cli/renderers/error.d.ts.map +1 -0
  387. package/dist/cli/renderers/error.js +42 -0
  388. package/dist/cli/renderers/error.js.map +1 -0
  389. package/dist/cli/renderers/index.d.ts +59 -0
  390. package/dist/cli/renderers/index.d.ts.map +1 -0
  391. package/dist/cli/renderers/index.js +184 -0
  392. package/dist/cli/renderers/index.js.map +1 -0
  393. package/dist/cli/renderers/normalizer.d.ts +21 -0
  394. package/dist/cli/renderers/normalizer.d.ts.map +1 -0
  395. package/dist/cli/renderers/normalizer.js +106 -0
  396. package/dist/cli/renderers/normalizer.js.map +1 -0
  397. package/dist/cli/renderers/system.d.ts +25 -0
  398. package/dist/cli/renderers/system.d.ts.map +1 -0
  399. package/dist/cli/renderers/system.js +416 -0
  400. package/dist/cli/renderers/system.js.map +1 -0
  401. package/dist/cli/renderers/tasks.d.ts +28 -0
  402. package/dist/cli/renderers/tasks.d.ts.map +1 -0
  403. package/dist/cli/renderers/tasks.js +306 -0
  404. package/dist/cli/renderers/tasks.js.map +1 -0
  405. package/dist/dispatch/adapters/cli.d.ts +67 -0
  406. package/dist/dispatch/adapters/cli.d.ts.map +1 -0
  407. package/dist/dispatch/adapters/cli.js +205 -0
  408. package/dist/dispatch/adapters/cli.js.map +1 -0
  409. package/dist/dispatch/adapters/mcp.d.ts +37 -0
  410. package/dist/dispatch/adapters/mcp.d.ts.map +1 -0
  411. package/dist/dispatch/adapters/mcp.js +122 -0
  412. package/dist/dispatch/adapters/mcp.js.map +1 -0
  413. package/dist/dispatch/context/session-context.d.ts +54 -0
  414. package/dist/dispatch/context/session-context.d.ts.map +1 -0
  415. package/dist/dispatch/context/session-context.js +61 -0
  416. package/dist/dispatch/context/session-context.js.map +1 -0
  417. package/dist/dispatch/dispatcher.d.ts +23 -0
  418. package/dist/dispatch/dispatcher.d.ts.map +1 -0
  419. package/dist/dispatch/dispatcher.js +84 -0
  420. package/dist/dispatch/dispatcher.js.map +1 -0
  421. package/dist/dispatch/domains/_base.d.ts +59 -0
  422. package/dist/dispatch/domains/_base.d.ts.map +1 -0
  423. package/dist/dispatch/domains/_base.js +77 -0
  424. package/dist/dispatch/domains/_base.js.map +1 -0
  425. package/dist/dispatch/domains/_meta.d.ts +23 -0
  426. package/dist/dispatch/domains/_meta.d.ts.map +1 -0
  427. package/dist/dispatch/domains/_meta.js +25 -0
  428. package/dist/dispatch/domains/_meta.js.map +1 -0
  429. package/dist/dispatch/domains/_routing.d.ts +8 -0
  430. package/dist/dispatch/domains/_routing.d.ts.map +1 -0
  431. package/dist/dispatch/domains/_routing.js +20 -0
  432. package/dist/dispatch/domains/_routing.js.map +1 -0
  433. package/dist/dispatch/domains/admin.d.ts +25 -0
  434. package/dist/dispatch/domains/admin.d.ts.map +1 -0
  435. package/dist/dispatch/domains/admin.js +670 -0
  436. package/dist/dispatch/domains/admin.js.map +1 -0
  437. package/dist/dispatch/domains/check.d.ts +22 -0
  438. package/dist/dispatch/domains/check.d.ts.map +1 -0
  439. package/dist/dispatch/domains/check.js +279 -0
  440. package/dist/dispatch/domains/check.js.map +1 -0
  441. package/dist/dispatch/domains/index.d.ts +26 -0
  442. package/dist/dispatch/domains/index.d.ts.map +1 -0
  443. package/dist/dispatch/domains/index.js +38 -0
  444. package/dist/dispatch/domains/index.js.map +1 -0
  445. package/dist/dispatch/domains/memory.d.ts +22 -0
  446. package/dist/dispatch/domains/memory.d.ts.map +1 -0
  447. package/dist/dispatch/domains/memory.js +303 -0
  448. package/dist/dispatch/domains/memory.js.map +1 -0
  449. package/dist/dispatch/domains/nexus.d.ts +22 -0
  450. package/dist/dispatch/domains/nexus.d.ts.map +1 -0
  451. package/dist/dispatch/domains/nexus.js +286 -0
  452. package/dist/dispatch/domains/nexus.js.map +1 -0
  453. package/dist/dispatch/domains/orchestrate.d.ts +19 -0
  454. package/dist/dispatch/domains/orchestrate.d.ts.map +1 -0
  455. package/dist/dispatch/domains/orchestrate.js +259 -0
  456. package/dist/dispatch/domains/orchestrate.js.map +1 -0
  457. package/dist/dispatch/domains/pipeline.d.ts +35 -0
  458. package/dist/dispatch/domains/pipeline.d.ts.map +1 -0
  459. package/dist/dispatch/domains/pipeline.js +553 -0
  460. package/dist/dispatch/domains/pipeline.js.map +1 -0
  461. package/dist/dispatch/domains/session.d.ts +22 -0
  462. package/dist/dispatch/domains/session.d.ts.map +1 -0
  463. package/dist/dispatch/domains/session.js +255 -0
  464. package/dist/dispatch/domains/session.js.map +1 -0
  465. package/dist/dispatch/domains/sticky.d.ts +20 -0
  466. package/dist/dispatch/domains/sticky.d.ts.map +1 -0
  467. package/dist/dispatch/domains/sticky.js +164 -0
  468. package/dist/dispatch/domains/sticky.js.map +1 -0
  469. package/dist/dispatch/domains/tasks.d.ts +25 -0
  470. package/dist/dispatch/domains/tasks.d.ts.map +1 -0
  471. package/dist/dispatch/domains/tasks.js +323 -0
  472. package/dist/dispatch/domains/tasks.js.map +1 -0
  473. package/dist/dispatch/domains/tools.d.ts +36 -0
  474. package/dist/dispatch/domains/tools.d.ts.map +1 -0
  475. package/dist/dispatch/domains/tools.js +451 -0
  476. package/dist/dispatch/domains/tools.js.map +1 -0
  477. package/dist/dispatch/engines/_error.d.ts +42 -0
  478. package/dist/dispatch/engines/_error.d.ts.map +1 -0
  479. package/dist/dispatch/engines/_error.js +201 -0
  480. package/dist/dispatch/engines/_error.js.map +1 -0
  481. package/dist/dispatch/engines/codebase-map-engine.d.ts +17 -0
  482. package/dist/dispatch/engines/codebase-map-engine.d.ts.map +1 -0
  483. package/dist/dispatch/engines/codebase-map-engine.js +29 -0
  484. package/dist/dispatch/engines/codebase-map-engine.js.map +1 -0
  485. package/dist/dispatch/engines/config-engine.d.ts +21 -0
  486. package/dist/dispatch/engines/config-engine.d.ts.map +1 -0
  487. package/dist/dispatch/engines/config-engine.js +45 -0
  488. package/dist/dispatch/engines/config-engine.js.map +1 -0
  489. package/dist/dispatch/engines/hooks-engine.d.ts +47 -0
  490. package/dist/dispatch/engines/hooks-engine.d.ts.map +1 -0
  491. package/dist/dispatch/engines/hooks-engine.js +57 -0
  492. package/dist/dispatch/engines/hooks-engine.js.map +1 -0
  493. package/dist/dispatch/engines/init-engine.d.ts +43 -0
  494. package/dist/dispatch/engines/init-engine.d.ts.map +1 -0
  495. package/dist/dispatch/engines/init-engine.js +73 -0
  496. package/dist/dispatch/engines/init-engine.js.map +1 -0
  497. package/dist/dispatch/engines/lifecycle-engine.d.ts +66 -0
  498. package/dist/dispatch/engines/lifecycle-engine.d.ts.map +1 -0
  499. package/dist/dispatch/engines/lifecycle-engine.js +213 -0
  500. package/dist/dispatch/engines/lifecycle-engine.js.map +1 -0
  501. package/dist/dispatch/engines/memory-engine.d.ts +10 -0
  502. package/dist/dispatch/engines/memory-engine.d.ts.map +1 -0
  503. package/dist/dispatch/engines/memory-engine.js +10 -0
  504. package/dist/dispatch/engines/memory-engine.js.map +1 -0
  505. package/dist/dispatch/engines/nexus-engine.d.ts +167 -0
  506. package/dist/dispatch/engines/nexus-engine.d.ts.map +1 -0
  507. package/dist/dispatch/engines/nexus-engine.js +356 -0
  508. package/dist/dispatch/engines/nexus-engine.js.map +1 -0
  509. package/dist/dispatch/engines/orchestrate-engine.d.ts +133 -0
  510. package/dist/dispatch/engines/orchestrate-engine.d.ts.map +1 -0
  511. package/dist/dispatch/engines/orchestrate-engine.js +769 -0
  512. package/dist/dispatch/engines/orchestrate-engine.js.map +1 -0
  513. package/dist/dispatch/engines/pipeline-engine.d.ts +51 -0
  514. package/dist/dispatch/engines/pipeline-engine.d.ts.map +1 -0
  515. package/dist/dispatch/engines/pipeline-engine.js +191 -0
  516. package/dist/dispatch/engines/pipeline-engine.js.map +1 -0
  517. package/dist/dispatch/engines/release-engine.d.ts +94 -0
  518. package/dist/dispatch/engines/release-engine.d.ts.map +1 -0
  519. package/dist/dispatch/engines/release-engine.js +669 -0
  520. package/dist/dispatch/engines/release-engine.js.map +1 -0
  521. package/dist/dispatch/engines/session-engine.d.ts +323 -0
  522. package/dist/dispatch/engines/session-engine.d.ts.map +1 -0
  523. package/dist/dispatch/engines/session-engine.js +865 -0
  524. package/dist/dispatch/engines/session-engine.js.map +1 -0
  525. package/dist/dispatch/engines/sticky-engine.d.ts +100 -0
  526. package/dist/dispatch/engines/sticky-engine.d.ts.map +1 -0
  527. package/dist/dispatch/engines/sticky-engine.js +181 -0
  528. package/dist/dispatch/engines/sticky-engine.js.map +1 -0
  529. package/dist/dispatch/engines/system-engine.d.ts +377 -0
  530. package/dist/dispatch/engines/system-engine.d.ts.map +1 -0
  531. package/dist/dispatch/engines/system-engine.js +979 -0
  532. package/dist/dispatch/engines/system-engine.js.map +1 -0
  533. package/dist/dispatch/engines/task-engine.d.ts +612 -0
  534. package/dist/dispatch/engines/task-engine.d.ts.map +1 -0
  535. package/dist/dispatch/engines/task-engine.js +950 -0
  536. package/dist/dispatch/engines/task-engine.js.map +1 -0
  537. package/dist/dispatch/engines/template-parser.d.ts +34 -0
  538. package/dist/dispatch/engines/template-parser.d.ts.map +1 -0
  539. package/dist/dispatch/engines/template-parser.js +57 -0
  540. package/dist/dispatch/engines/template-parser.js.map +1 -0
  541. package/dist/dispatch/engines/tools-engine.d.ts +270 -0
  542. package/dist/dispatch/engines/tools-engine.d.ts.map +1 -0
  543. package/dist/dispatch/engines/tools-engine.js +636 -0
  544. package/dist/dispatch/engines/tools-engine.js.map +1 -0
  545. package/dist/dispatch/engines/validate-engine.d.ts +154 -0
  546. package/dist/dispatch/engines/validate-engine.d.ts.map +1 -0
  547. package/dist/dispatch/engines/validate-engine.js +524 -0
  548. package/dist/dispatch/engines/validate-engine.js.map +1 -0
  549. package/dist/dispatch/index.d.ts +20 -0
  550. package/dist/dispatch/index.d.ts.map +1 -0
  551. package/dist/dispatch/index.js +19 -0
  552. package/dist/dispatch/index.js.map +1 -0
  553. package/dist/dispatch/lib/capability-matrix.d.ts +11 -0
  554. package/dist/dispatch/lib/capability-matrix.d.ts.map +1 -0
  555. package/dist/dispatch/lib/capability-matrix.js +10 -0
  556. package/dist/dispatch/lib/capability-matrix.js.map +1 -0
  557. package/dist/dispatch/lib/config.d.ts +16 -0
  558. package/dist/dispatch/lib/config.d.ts.map +1 -0
  559. package/dist/dispatch/lib/config.js +15 -0
  560. package/dist/dispatch/lib/config.js.map +1 -0
  561. package/dist/dispatch/lib/engine.d.ts +25 -0
  562. package/dist/dispatch/lib/engine.d.ts.map +1 -0
  563. package/dist/dispatch/lib/engine.js +44 -0
  564. package/dist/dispatch/lib/engine.js.map +1 -0
  565. package/dist/dispatch/lib/meta.d.ts +26 -0
  566. package/dist/dispatch/lib/meta.d.ts.map +1 -0
  567. package/dist/dispatch/lib/meta.js +37 -0
  568. package/dist/dispatch/lib/meta.js.map +1 -0
  569. package/dist/dispatch/lib/param-utils.d.ts +11 -0
  570. package/dist/dispatch/lib/param-utils.d.ts.map +1 -0
  571. package/dist/dispatch/lib/param-utils.js +10 -0
  572. package/dist/dispatch/lib/param-utils.js.map +1 -0
  573. package/dist/dispatch/lib/projections.d.ts +23 -0
  574. package/dist/dispatch/lib/projections.d.ts.map +1 -0
  575. package/dist/dispatch/lib/projections.js +48 -0
  576. package/dist/dispatch/lib/projections.js.map +1 -0
  577. package/dist/dispatch/lib/schema-utils.d.ts +42 -0
  578. package/dist/dispatch/lib/schema-utils.d.ts.map +1 -0
  579. package/dist/dispatch/lib/schema-utils.js +93 -0
  580. package/dist/dispatch/lib/schema-utils.js.map +1 -0
  581. package/dist/dispatch/lib/security.d.ts +11 -0
  582. package/dist/dispatch/lib/security.d.ts.map +1 -0
  583. package/dist/dispatch/lib/security.js +10 -0
  584. package/dist/dispatch/lib/security.js.map +1 -0
  585. package/dist/dispatch/middleware/audit.d.ts +23 -0
  586. package/dist/dispatch/middleware/audit.d.ts.map +1 -0
  587. package/dist/dispatch/middleware/audit.js +169 -0
  588. package/dist/dispatch/middleware/audit.js.map +1 -0
  589. package/dist/dispatch/middleware/field-filter.d.ts +24 -0
  590. package/dist/dispatch/middleware/field-filter.d.ts.map +1 -0
  591. package/dist/dispatch/middleware/field-filter.js +65 -0
  592. package/dist/dispatch/middleware/field-filter.js.map +1 -0
  593. package/dist/dispatch/middleware/pipeline.d.ts +20 -0
  594. package/dist/dispatch/middleware/pipeline.d.ts.map +1 -0
  595. package/dist/dispatch/middleware/pipeline.js +47 -0
  596. package/dist/dispatch/middleware/pipeline.js.map +1 -0
  597. package/dist/dispatch/middleware/projection.d.ts +35 -0
  598. package/dist/dispatch/middleware/projection.d.ts.map +1 -0
  599. package/dist/dispatch/middleware/projection.js +145 -0
  600. package/dist/dispatch/middleware/projection.js.map +1 -0
  601. package/dist/dispatch/middleware/protocol-enforcement.d.ts +12 -0
  602. package/dist/dispatch/middleware/protocol-enforcement.d.ts.map +1 -0
  603. package/dist/dispatch/middleware/protocol-enforcement.js +30 -0
  604. package/dist/dispatch/middleware/protocol-enforcement.js.map +1 -0
  605. package/dist/dispatch/middleware/rate-limiter.d.ts +30 -0
  606. package/dist/dispatch/middleware/rate-limiter.d.ts.map +1 -0
  607. package/dist/dispatch/middleware/rate-limiter.js +101 -0
  608. package/dist/dispatch/middleware/rate-limiter.js.map +1 -0
  609. package/dist/dispatch/middleware/sanitizer.d.ts +10 -0
  610. package/dist/dispatch/middleware/sanitizer.d.ts.map +1 -0
  611. package/dist/dispatch/middleware/sanitizer.js +42 -0
  612. package/dist/dispatch/middleware/sanitizer.js.map +1 -0
  613. package/dist/dispatch/middleware/session-resolver.d.ts +26 -0
  614. package/dist/dispatch/middleware/session-resolver.d.ts.map +1 -0
  615. package/dist/dispatch/middleware/session-resolver.js +65 -0
  616. package/dist/dispatch/middleware/session-resolver.js.map +1 -0
  617. package/dist/dispatch/middleware/verification-gates.d.ts +3 -0
  618. package/dist/dispatch/middleware/verification-gates.d.ts.map +1 -0
  619. package/dist/dispatch/middleware/verification-gates.js +40 -0
  620. package/dist/dispatch/middleware/verification-gates.js.map +1 -0
  621. package/dist/dispatch/registry.d.ts +91 -0
  622. package/dist/dispatch/registry.d.ts.map +1 -0
  623. package/dist/dispatch/registry.js +2833 -0
  624. package/dist/dispatch/registry.js.map +1 -0
  625. package/dist/dispatch/types.d.ts +218 -0
  626. package/dist/dispatch/types.d.ts.map +1 -0
  627. package/dist/dispatch/types.js +25 -0
  628. package/dist/dispatch/types.js.map +1 -0
  629. package/dist/mcp/gateways/mutate.d.ts +146 -0
  630. package/dist/mcp/gateways/mutate.d.ts.map +1 -0
  631. package/dist/mcp/gateways/mutate.js +1016 -0
  632. package/dist/mcp/gateways/mutate.js.map +1 -0
  633. package/dist/mcp/gateways/query.d.ts +138 -0
  634. package/dist/mcp/gateways/query.d.ts.map +1 -0
  635. package/dist/mcp/gateways/query.js +186 -0
  636. package/dist/mcp/gateways/query.js.map +1 -0
  637. package/dist/mcp/index.d.ts +16 -0
  638. package/dist/mcp/index.d.ts.map +1 -0
  639. package/dist/mcp/index.js +16735 -14861
  640. package/dist/mcp/index.js.map +4 -4
  641. package/dist/mcp/lib/background-jobs.d.ts +86 -0
  642. package/dist/mcp/lib/background-jobs.d.ts.map +1 -0
  643. package/dist/mcp/lib/background-jobs.js +183 -0
  644. package/dist/mcp/lib/background-jobs.js.map +1 -0
  645. package/dist/mcp/lib/budget.d.ts +35 -0
  646. package/dist/mcp/lib/budget.d.ts.map +1 -0
  647. package/dist/mcp/lib/budget.js +102 -0
  648. package/dist/mcp/lib/budget.js.map +1 -0
  649. package/dist/mcp/lib/cache.d.ts +78 -0
  650. package/dist/mcp/lib/cache.d.ts.map +1 -0
  651. package/dist/mcp/lib/cache.js +207 -0
  652. package/dist/mcp/lib/cache.js.map +1 -0
  653. package/dist/mcp/lib/config.d.ts +42 -0
  654. package/dist/mcp/lib/config.d.ts.map +1 -0
  655. package/dist/mcp/lib/config.js +241 -0
  656. package/dist/mcp/lib/config.js.map +1 -0
  657. package/dist/mcp/lib/defaults.d.ts +115 -0
  658. package/dist/mcp/lib/defaults.d.ts.map +1 -0
  659. package/dist/mcp/lib/defaults.js +61 -0
  660. package/dist/mcp/lib/defaults.js.map +1 -0
  661. package/dist/mcp/lib/gate-validators.d.ts +13 -0
  662. package/dist/mcp/lib/gate-validators.d.ts.map +1 -0
  663. package/dist/mcp/lib/gate-validators.js +13 -0
  664. package/dist/mcp/lib/gate-validators.js.map +1 -0
  665. package/dist/mcp/lib/gateway-meta.d.ts +37 -0
  666. package/dist/mcp/lib/gateway-meta.d.ts.map +1 -0
  667. package/dist/mcp/lib/gateway-meta.js +50 -0
  668. package/dist/mcp/lib/gateway-meta.js.map +1 -0
  669. package/dist/mcp/lib/job-manager-accessor.d.ts +10 -0
  670. package/dist/mcp/lib/job-manager-accessor.d.ts.map +1 -0
  671. package/dist/mcp/lib/job-manager-accessor.js +14 -0
  672. package/dist/mcp/lib/job-manager-accessor.js.map +1 -0
  673. package/dist/mcp/lib/protocol-enforcement.d.ts +12 -0
  674. package/dist/mcp/lib/protocol-enforcement.d.ts.map +1 -0
  675. package/dist/mcp/lib/protocol-enforcement.js +12 -0
  676. package/dist/mcp/lib/protocol-enforcement.js.map +1 -0
  677. package/dist/mcp/lib/protocol-rules.d.ts +12 -0
  678. package/dist/mcp/lib/protocol-rules.d.ts.map +1 -0
  679. package/dist/mcp/lib/protocol-rules.js +12 -0
  680. package/dist/mcp/lib/protocol-rules.js.map +1 -0
  681. package/dist/mcp/lib/rate-limiter.d.ts +110 -0
  682. package/dist/mcp/lib/rate-limiter.d.ts.map +1 -0
  683. package/dist/mcp/lib/rate-limiter.js +208 -0
  684. package/dist/mcp/lib/rate-limiter.js.map +1 -0
  685. package/dist/mcp/lib/router.d.ts +58 -0
  686. package/dist/mcp/lib/router.d.ts.map +1 -0
  687. package/dist/mcp/lib/router.js +12 -0
  688. package/dist/mcp/lib/router.js.map +1 -0
  689. package/dist/mcp/lib/security.d.ts +161 -0
  690. package/dist/mcp/lib/security.d.ts.map +1 -0
  691. package/dist/mcp/lib/security.js +360 -0
  692. package/dist/mcp/lib/security.js.map +1 -0
  693. package/dist/mcp/lib/verification-gates.d.ts +13 -0
  694. package/dist/mcp/lib/verification-gates.d.ts.map +1 -0
  695. package/dist/mcp/lib/verification-gates.js +12 -0
  696. package/dist/mcp/lib/verification-gates.js.map +1 -0
  697. package/dist/mcp/resources/budget.d.ts +22 -0
  698. package/dist/mcp/resources/budget.d.ts.map +1 -0
  699. package/dist/mcp/resources/budget.js +46 -0
  700. package/dist/mcp/resources/budget.js.map +1 -0
  701. package/dist/mcp/resources/index.d.ts +53 -0
  702. package/dist/mcp/resources/index.d.ts.map +1 -0
  703. package/dist/mcp/resources/index.js +278 -0
  704. package/dist/mcp/resources/index.js.map +1 -0
  705. package/package.json +3 -3
@@ -0,0 +1,207 @@
1
+ /**
2
+ * In-memory query cache for CLEO MCP Server
3
+ *
4
+ * Caches query responses with configurable TTL.
5
+ * Cache key = domain + operation + hash(params).
6
+ * Invalidated on any mutate operation for the relevant domain.
7
+ *
8
+ * @task T3145
9
+ */
10
+ import { createHash } from 'crypto';
11
+ /**
12
+ * Query cache with per-domain invalidation
13
+ */
14
+ export class QueryCache {
15
+ store = new Map();
16
+ domainKeys = new Map();
17
+ stats = {
18
+ hits: 0,
19
+ misses: 0,
20
+ evictions: 0,
21
+ size: 0,
22
+ domains: {},
23
+ };
24
+ ttl;
25
+ enabled;
26
+ cleanupTimer = null;
27
+ constructor(ttlMs = 30000, enabled = true) {
28
+ this.ttl = ttlMs;
29
+ this.enabled = enabled;
30
+ // Periodic cleanup of expired entries every TTL interval
31
+ if (enabled && ttlMs > 0) {
32
+ this.cleanupTimer = setInterval(() => this.evictExpired(), ttlMs);
33
+ // Allow Node to exit even if timer is running
34
+ if (this.cleanupTimer.unref) {
35
+ this.cleanupTimer.unref();
36
+ }
37
+ }
38
+ }
39
+ /**
40
+ * Build cache key from domain, operation, and params
41
+ */
42
+ buildKey(domain, operation, params) {
43
+ const paramsHash = params
44
+ ? createHash('md5')
45
+ .update(JSON.stringify(sortObject(params)))
46
+ .digest('hex')
47
+ .slice(0, 12)
48
+ : 'no-params';
49
+ return `${domain}:${operation}:${paramsHash}`;
50
+ }
51
+ /**
52
+ * Get cached value, or undefined if not found/expired
53
+ */
54
+ get(domain, operation, params) {
55
+ if (!this.enabled) {
56
+ this.stats.misses++;
57
+ return undefined;
58
+ }
59
+ const key = this.buildKey(domain, operation, params);
60
+ const entry = this.store.get(key);
61
+ if (!entry) {
62
+ this.stats.misses++;
63
+ return undefined;
64
+ }
65
+ // Check TTL expiration
66
+ if (Date.now() > entry.expiresAt) {
67
+ this.delete(key, domain);
68
+ this.stats.misses++;
69
+ this.stats.evictions++;
70
+ return undefined;
71
+ }
72
+ this.stats.hits++;
73
+ return entry.value;
74
+ }
75
+ /**
76
+ * Store a value in the cache
77
+ */
78
+ set(domain, operation, params, value) {
79
+ if (!this.enabled || this.ttl <= 0) {
80
+ return;
81
+ }
82
+ const key = this.buildKey(domain, operation, params);
83
+ const now = Date.now();
84
+ this.store.set(key, {
85
+ value,
86
+ expiresAt: now + this.ttl,
87
+ createdAt: now,
88
+ });
89
+ // Track key under its domain for bulk invalidation
90
+ if (!this.domainKeys.has(domain)) {
91
+ this.domainKeys.set(domain, new Set());
92
+ }
93
+ this.domainKeys.get(domain).add(key);
94
+ // Update stats
95
+ this.stats.size = this.store.size;
96
+ this.stats.domains[domain] = this.domainKeys.get(domain).size;
97
+ }
98
+ /**
99
+ * Invalidate all cached entries for a domain
100
+ *
101
+ * Called on any mutate operation to ensure consistency.
102
+ */
103
+ invalidateDomain(domain) {
104
+ const keys = this.domainKeys.get(domain);
105
+ if (!keys || keys.size === 0) {
106
+ return 0;
107
+ }
108
+ const count = keys.size;
109
+ for (const key of keys) {
110
+ this.store.delete(key);
111
+ }
112
+ keys.clear();
113
+ this.stats.evictions += count;
114
+ this.stats.size = this.store.size;
115
+ this.stats.domains[domain] = 0;
116
+ return count;
117
+ }
118
+ /**
119
+ * Clear entire cache
120
+ */
121
+ clear() {
122
+ const count = this.store.size;
123
+ this.store.clear();
124
+ this.domainKeys.clear();
125
+ this.stats.evictions += count;
126
+ this.stats.size = 0;
127
+ this.stats.domains = {};
128
+ }
129
+ /**
130
+ * Get cache statistics
131
+ */
132
+ getStats() {
133
+ return { ...this.stats, size: this.store.size };
134
+ }
135
+ /**
136
+ * Reset statistics counters
137
+ */
138
+ resetStats() {
139
+ this.stats.hits = 0;
140
+ this.stats.misses = 0;
141
+ this.stats.evictions = 0;
142
+ }
143
+ /**
144
+ * Evict all expired entries
145
+ */
146
+ evictExpired() {
147
+ const now = Date.now();
148
+ let count = 0;
149
+ for (const [key, entry] of this.store) {
150
+ if (now > entry.expiresAt) {
151
+ // Find the domain for this key
152
+ const domain = key.split(':')[0];
153
+ this.delete(key, domain);
154
+ count++;
155
+ }
156
+ }
157
+ if (count > 0) {
158
+ this.stats.evictions += count;
159
+ }
160
+ return count;
161
+ }
162
+ /**
163
+ * Stop the cleanup timer (call on shutdown)
164
+ */
165
+ destroy() {
166
+ if (this.cleanupTimer) {
167
+ clearInterval(this.cleanupTimer);
168
+ this.cleanupTimer = null;
169
+ }
170
+ this.clear();
171
+ }
172
+ /**
173
+ * Check if cache is enabled
174
+ */
175
+ isEnabled() {
176
+ return this.enabled;
177
+ }
178
+ /**
179
+ * Delete a single key and update domain tracking
180
+ */
181
+ delete(key, domain) {
182
+ this.store.delete(key);
183
+ const keys = this.domainKeys.get(domain);
184
+ if (keys) {
185
+ keys.delete(key);
186
+ this.stats.domains[domain] = keys.size;
187
+ }
188
+ this.stats.size = this.store.size;
189
+ }
190
+ }
191
+ /**
192
+ * Sort object keys recursively for deterministic hashing
193
+ */
194
+ function sortObject(obj) {
195
+ const sorted = {};
196
+ for (const key of Object.keys(obj).sort()) {
197
+ const val = obj[key];
198
+ if (val !== null && typeof val === 'object' && !Array.isArray(val)) {
199
+ sorted[key] = sortObject(val);
200
+ }
201
+ else {
202
+ sorted[key] = val;
203
+ }
204
+ }
205
+ return sorted;
206
+ }
207
+ //# sourceMappingURL=cache.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache.js","sourceRoot":"","sources":["../../../src/mcp/lib/cache.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAsBpC;;GAEG;AACH,MAAM,OAAO,UAAU;IACb,KAAK,GAA4B,IAAI,GAAG,EAAE,CAAC;IAC3C,UAAU,GAA6B,IAAI,GAAG,EAAE,CAAC;IACjD,KAAK,GAAe;QAC1B,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,CAAC;QACZ,IAAI,EAAE,CAAC;QACP,OAAO,EAAE,EAAE;KACZ,CAAC;IACM,GAAG,CAAS;IACZ,OAAO,CAAU;IACjB,YAAY,GAA0C,IAAI,CAAC;IAEnE,YAAY,QAAgB,KAAK,EAAE,UAAmB,IAAI;QACxD,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,yDAAyD;QACzD,IAAI,OAAO,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACzB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,KAAK,CAAC,CAAC;YAClE,8CAA8C;YAC9C,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;gBAC5B,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;YAC5B,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ,CAAC,MAAc,EAAE,SAAiB,EAAE,MAAgC;QAC1E,MAAM,UAAU,GAAG,MAAM;YACvB,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;iBACd,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC1C,MAAM,CAAC,KAAK,CAAC;iBACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YACjB,CAAC,CAAC,WAAW,CAAC;QAChB,OAAO,GAAG,MAAM,IAAI,SAAS,IAAI,UAAU,EAAE,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,GAAG,CACD,MAAc,EACd,SAAiB,EACjB,MAAgC;QAEhC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAElC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACpB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,uBAAuB;QACvB,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;YACjC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;YACzB,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;YACvB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAClB,OAAO,KAAK,CAAC,KAAU,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,GAAG,CACD,MAAc,EACd,SAAiB,EACjB,MAA2C,EAC3C,KAAQ;QAER,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACrD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE;YAClB,KAAK;YACL,SAAS,EAAE,GAAG,GAAG,IAAI,CAAC,GAAG;YACzB,SAAS,EAAE,GAAG;SACf,CAAC,CAAC;QAEH,mDAAmD;QACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEtC,eAAe;QACf,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC,IAAI,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACH,gBAAgB,CAAC,MAAc;QAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;QACxB,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;QAEb,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE/B,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,KAAK;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IAED;;OAEG;IACH,UAAU;QACR,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,YAAY;QACV,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,IAAI,GAAG,GAAG,KAAK,CAAC,SAAS,EAAE,CAAC;gBAC1B,+BAA+B;gBAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBACzB,KAAK,EAAE,CAAC;YACV,CAAC;QACH,CAAC;QAED,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;QAChC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACtB,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACjC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC3B,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,GAAW,EAAE,MAAc;QACxC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACzC,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACpC,CAAC;CACF;AAED;;GAEG;AACH,SAAS,UAAU,CAAC,GAA4B;IAC9C,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACnE,MAAM,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,GAA8B,CAAC,CAAC;QAC3D,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Configuration loader for CLEO MCP Server
3
+ *
4
+ * Loads configuration from:
5
+ * 1. Environment variables (CLEO_MCP_*)
6
+ * 2. Config file (.cleo/config.json)
7
+ * 3. Defaults (fallback values)
8
+ *
9
+ * @task T2928
10
+ */
11
+ import { type MCPConfig } from './defaults.js';
12
+ /**
13
+ * Configuration validation error
14
+ */
15
+ export declare class ConfigValidationError extends Error {
16
+ field: string;
17
+ value: unknown;
18
+ constraint: string;
19
+ constructor(field: string, value: unknown, constraint: string);
20
+ }
21
+ /**
22
+ * Validate complete configuration
23
+ */
24
+ export declare function validateConfig(config: MCPConfig): void;
25
+ /**
26
+ * Load configuration from all sources
27
+ *
28
+ * Priority order:
29
+ * 1. Environment variables (CLEO_MCP_*)
30
+ * 2. Config file (.cleo/config.json)
31
+ * 3. Defaults
32
+ */
33
+ export declare function loadConfig(projectRoot?: string): MCPConfig;
34
+ /**
35
+ * Get global configuration (singleton)
36
+ */
37
+ export declare function getConfig(): MCPConfig;
38
+ /**
39
+ * Reset global configuration (for testing)
40
+ */
41
+ export declare function resetConfig(): void;
42
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/mcp/lib/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,EAOL,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB;;GAEG;AACH,qBAAa,qBAAsB,SAAQ,KAAK;IAErC,KAAK,EAAE,MAAM;IACb,KAAK,EAAE,OAAO;IACd,UAAU,EAAE,MAAM;gBAFlB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM;CAK5B;AA2ID;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAatD;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAsD1D;AAQD;;GAEG;AACH,wBAAgB,SAAS,IAAI,SAAS,CAKrC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
@@ -0,0 +1,241 @@
1
+ /**
2
+ * Configuration loader for CLEO MCP Server
3
+ *
4
+ * Loads configuration from:
5
+ * 1. Environment variables (CLEO_MCP_*)
6
+ * 2. Config file (.cleo/config.json)
7
+ * 3. Defaults (fallback values)
8
+ *
9
+ * @task T2928
10
+ */
11
+ import { existsSync, readFileSync } from 'fs';
12
+ import { join } from 'path';
13
+ import { CONFIG_SCHEMA, DEFAULT_CONFIG, DEFAULT_LIFECYCLE_ENFORCEMENT, DEFAULT_PROTOCOL_VALIDATION, DEFAULT_RATE_LIMITING, ENV_PREFIX, } from './defaults.js';
14
+ /**
15
+ * Configuration validation error
16
+ */
17
+ export class ConfigValidationError extends Error {
18
+ field;
19
+ value;
20
+ constraint;
21
+ constructor(field, value, constraint) {
22
+ super(`Invalid config field '${field}': ${constraint} (got ${value})`);
23
+ this.field = field;
24
+ this.value = value;
25
+ this.constraint = constraint;
26
+ this.name = 'ConfigValidationError';
27
+ }
28
+ }
29
+ /**
30
+ * Load configuration value from environment variable
31
+ */
32
+ function loadFromEnv(key) {
33
+ const envKey = `${ENV_PREFIX}${key.toUpperCase()}`;
34
+ return process.env[envKey];
35
+ }
36
+ /**
37
+ * Parse environment variable to appropriate type
38
+ */
39
+ function parseEnvValue(key, value) {
40
+ const schema = CONFIG_SCHEMA[key];
41
+ if (schema.type === 'boolean') {
42
+ return value.toLowerCase() === 'true' || value === '1';
43
+ }
44
+ if (schema.type === 'number') {
45
+ const num = parseInt(value, 10);
46
+ if (Number.isNaN(num)) {
47
+ throw new ConfigValidationError(key, value, 'must be a number');
48
+ }
49
+ return num;
50
+ }
51
+ return value;
52
+ }
53
+ /**
54
+ * Load configuration from .cleo/config.json file
55
+ */
56
+ function loadFromFile(projectRoot) {
57
+ const root = projectRoot || process.cwd();
58
+ const configPath = join(root, '.cleo', 'config.json');
59
+ if (!existsSync(configPath)) {
60
+ return {};
61
+ }
62
+ try {
63
+ const content = readFileSync(configPath, 'utf-8');
64
+ const config = JSON.parse(content);
65
+ // Extract MCP-specific config if nested
66
+ const result = {};
67
+ if (config.mcp) {
68
+ if (config.mcp.cliPath !== undefined)
69
+ result.cliPath = config.mcp.cliPath;
70
+ if (config.mcp.timeout !== undefined)
71
+ result.timeout = config.mcp.timeout;
72
+ if (config.mcp.logLevel !== undefined)
73
+ result.logLevel = config.mcp.logLevel;
74
+ if (config.mcp.enableMetrics !== undefined)
75
+ result.enableMetrics = config.mcp.enableMetrics;
76
+ if (config.mcp.maxRetries !== undefined)
77
+ result.maxRetries = config.mcp.maxRetries;
78
+ if (config.mcp.features?.queryCache !== undefined)
79
+ result.queryCache = config.mcp.features.queryCache;
80
+ if (config.mcp.features?.queryCacheTtl !== undefined)
81
+ result.queryCacheTtl = config.mcp.features.queryCacheTtl;
82
+ if (config.mcp.features?.auditLog !== undefined)
83
+ result.auditLog = config.mcp.features.auditLog;
84
+ if (config.mcp.features?.strictValidation !== undefined)
85
+ result.strictValidation = config.mcp.features.strictValidation;
86
+ }
87
+ // Extract lifecycle enforcement config (Section 12.2)
88
+ if (config.lifecycleEnforcement) {
89
+ result.lifecycleEnforcement = {
90
+ ...DEFAULT_LIFECYCLE_ENFORCEMENT,
91
+ ...config.lifecycleEnforcement,
92
+ };
93
+ }
94
+ // Extract protocol validation config (Section 12.3)
95
+ if (config.protocolValidation) {
96
+ result.protocolValidation = {
97
+ ...DEFAULT_PROTOCOL_VALIDATION,
98
+ ...config.protocolValidation,
99
+ };
100
+ }
101
+ // Extract rate limiting config (Section 13.3)
102
+ if (config.rateLimiting || config.mcp?.rateLimiting) {
103
+ const rlConfig = config.rateLimiting || config.mcp?.rateLimiting;
104
+ result.rateLimiting = {
105
+ ...DEFAULT_RATE_LIMITING,
106
+ ...rlConfig,
107
+ query: { ...DEFAULT_RATE_LIMITING.query, ...rlConfig?.query },
108
+ mutate: { ...DEFAULT_RATE_LIMITING.mutate, ...rlConfig?.mutate },
109
+ spawn: { ...DEFAULT_RATE_LIMITING.spawn, ...rlConfig?.spawn },
110
+ };
111
+ }
112
+ // If no mcp block, check for flat config keys
113
+ if (!config.mcp) {
114
+ return config;
115
+ }
116
+ return result;
117
+ }
118
+ catch (error) {
119
+ // Log error but don't fail - fall back to defaults
120
+ console.error(`Warning: Failed to load config file: ${error}`);
121
+ return {};
122
+ }
123
+ }
124
+ /**
125
+ * Validate configuration field
126
+ */
127
+ function validateField(key, value) {
128
+ const schema = CONFIG_SCHEMA[key];
129
+ if (!schema) {
130
+ return; // Unknown fields are ignored
131
+ }
132
+ // Type check
133
+ const actualType = typeof value;
134
+ if (actualType !== schema.type) {
135
+ throw new ConfigValidationError(key, value, `must be of type ${schema.type}`);
136
+ }
137
+ // Enum check
138
+ if ('enum' in schema && schema.enum && !schema.enum.includes(value)) {
139
+ throw new ConfigValidationError(key, value, `must be one of: ${schema.enum.join(', ')}`);
140
+ }
141
+ // Range check for numbers
142
+ if (schema.type === 'number') {
143
+ const numValue = value;
144
+ if ('min' in schema && numValue < schema.min) {
145
+ throw new ConfigValidationError(key, value, `must be >= ${schema.min}`);
146
+ }
147
+ if ('max' in schema && numValue > schema.max) {
148
+ throw new ConfigValidationError(key, value, `must be <= ${schema.max}`);
149
+ }
150
+ }
151
+ }
152
+ /**
153
+ * Validate complete configuration
154
+ */
155
+ export function validateConfig(config) {
156
+ for (const [key, value] of Object.entries(config)) {
157
+ validateField(key, value);
158
+ }
159
+ // Required field check
160
+ for (const [key, schema] of Object.entries(CONFIG_SCHEMA)) {
161
+ if ('required' in schema && schema.required) {
162
+ if (config[key] === undefined) {
163
+ throw new ConfigValidationError(key, undefined, 'is required');
164
+ }
165
+ }
166
+ }
167
+ }
168
+ /**
169
+ * Load configuration from all sources
170
+ *
171
+ * Priority order:
172
+ * 1. Environment variables (CLEO_MCP_*)
173
+ * 2. Config file (.cleo/config.json)
174
+ * 3. Defaults
175
+ */
176
+ export function loadConfig(projectRoot) {
177
+ // Start with defaults (deep copy nested objects)
178
+ const config = {
179
+ ...DEFAULT_CONFIG,
180
+ lifecycleEnforcement: { ...DEFAULT_LIFECYCLE_ENFORCEMENT },
181
+ protocolValidation: { ...DEFAULT_PROTOCOL_VALIDATION },
182
+ rateLimiting: {
183
+ ...DEFAULT_RATE_LIMITING,
184
+ query: { ...DEFAULT_RATE_LIMITING.query },
185
+ mutate: { ...DEFAULT_RATE_LIMITING.mutate },
186
+ spawn: { ...DEFAULT_RATE_LIMITING.spawn },
187
+ },
188
+ };
189
+ // Load from file (overrides defaults)
190
+ const fileConfig = loadFromFile(projectRoot);
191
+ // Merge nested objects carefully
192
+ // Destructure nested config fields to merge them deeply, then spread the rest shallowly
193
+ const { lifecycleEnforcement: fileLc, protocolValidation: filePv, rateLimiting: fileRl, ...restFileConfig } = fileConfig;
194
+ if (fileLc) {
195
+ config.lifecycleEnforcement = { ...config.lifecycleEnforcement, ...fileLc };
196
+ }
197
+ if (filePv) {
198
+ config.protocolValidation = { ...config.protocolValidation, ...filePv };
199
+ }
200
+ if (fileRl) {
201
+ config.rateLimiting = {
202
+ ...config.rateLimiting,
203
+ ...fileRl,
204
+ query: { ...config.rateLimiting.query, ...fileRl.query },
205
+ mutate: { ...config.rateLimiting.mutate, ...fileRl.mutate },
206
+ spawn: { ...config.rateLimiting.spawn, ...fileRl.spawn },
207
+ };
208
+ }
209
+ Object.assign(config, restFileConfig);
210
+ // Load from environment (overrides file and defaults)
211
+ for (const key of Object.keys(DEFAULT_CONFIG)) {
212
+ const envValue = loadFromEnv(key);
213
+ if (envValue !== undefined) {
214
+ config[key] = parseEnvValue(key, envValue);
215
+ }
216
+ }
217
+ // Validate final configuration
218
+ validateConfig(config);
219
+ return config;
220
+ }
221
+ /**
222
+ * Global configuration singleton
223
+ * Loaded once at module initialization
224
+ */
225
+ let globalConfig = null;
226
+ /**
227
+ * Get global configuration (singleton)
228
+ */
229
+ export function getConfig() {
230
+ if (globalConfig === null) {
231
+ globalConfig = loadConfig();
232
+ }
233
+ return globalConfig;
234
+ }
235
+ /**
236
+ * Reset global configuration (for testing)
237
+ */
238
+ export function resetConfig() {
239
+ globalConfig = null;
240
+ }
241
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/mcp/lib/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ /**
2
+ * Default configuration values for CLEO MCP Server
3
+ *
4
+ * @task T2928
5
+ * @task T3145
6
+ * @task T2916 - Rate limiting configuration (Section 13.3)
7
+ */
8
+ import type { RateLimitingConfig } from './rate-limiter.js';
9
+ export type { RateLimitingConfig } from './rate-limiter.js';
10
+ export { DEFAULT_RATE_LIMITING } from './rate-limiter.js';
11
+ /**
12
+ * Lifecycle enforcement configuration (Section 12.2)
13
+ */
14
+ export interface LifecycleEnforcementConfig {
15
+ /** Enforcement mode: strict blocks, advisory warns, off skips */
16
+ mode: 'strict' | 'advisory' | 'off';
17
+ /** Stages that may be skipped without failing gates */
18
+ allowSkip: string[];
19
+ /** Emergency bypass flag - disables all gate checks */
20
+ emergencyBypass: boolean;
21
+ }
22
+ /**
23
+ * Protocol validation configuration (Section 12.3)
24
+ */
25
+ export interface ProtocolValidationConfig {
26
+ /** Enable strict protocol validation */
27
+ strictMode: boolean;
28
+ /** Block operations on protocol violations */
29
+ blockOnViolation: boolean;
30
+ /** Log protocol violations to audit trail */
31
+ logViolations: boolean;
32
+ }
33
+ export interface MCPConfig {
34
+ /** Path to CLEO CLI binary (default: 'cleo') */
35
+ cliPath: string;
36
+ /** Operation timeout in milliseconds (default: 30000) */
37
+ timeout: number;
38
+ /** Logging verbosity level (default: 'info') */
39
+ logLevel: 'debug' | 'info' | 'warn' | 'error';
40
+ /** Enable token tracking metrics (default: false) */
41
+ enableMetrics: boolean;
42
+ /** Retry count for failed operations (default: 3) */
43
+ maxRetries: number;
44
+ /** Enable query cache (default: true) */
45
+ queryCache: boolean;
46
+ /** Query cache TTL in milliseconds (default: 30000) */
47
+ queryCacheTtl: number;
48
+ /** Enable audit logging (default: true) */
49
+ auditLog: boolean;
50
+ /** Strict validation mode (default: true) */
51
+ strictValidation: boolean;
52
+ /** Lifecycle enforcement configuration (Section 12.2) */
53
+ lifecycleEnforcement: LifecycleEnforcementConfig;
54
+ /** Protocol validation configuration (Section 12.3) */
55
+ protocolValidation: ProtocolValidationConfig;
56
+ /** Rate limiting configuration (Section 13.3) */
57
+ rateLimiting: RateLimitingConfig;
58
+ }
59
+ /**
60
+ * Default lifecycle enforcement configuration
61
+ */
62
+ export declare const DEFAULT_LIFECYCLE_ENFORCEMENT: LifecycleEnforcementConfig;
63
+ /**
64
+ * Default protocol validation configuration
65
+ */
66
+ export declare const DEFAULT_PROTOCOL_VALIDATION: ProtocolValidationConfig;
67
+ /**
68
+ * Default configuration values
69
+ */
70
+ export declare const DEFAULT_CONFIG: MCPConfig;
71
+ /**
72
+ * Environment variable prefix for CLEO configuration
73
+ */
74
+ export declare const ENV_PREFIX = "CLEO_MCP_";
75
+ /**
76
+ * Configuration schema for validation
77
+ */
78
+ export declare const CONFIG_SCHEMA: {
79
+ readonly cliPath: {
80
+ readonly type: "string";
81
+ readonly required: true;
82
+ };
83
+ readonly timeout: {
84
+ readonly type: "number";
85
+ readonly min: 1000;
86
+ readonly max: 300000;
87
+ };
88
+ readonly logLevel: {
89
+ readonly type: "string";
90
+ readonly enum: readonly ["debug", "info", "warn", "error"];
91
+ };
92
+ readonly enableMetrics: {
93
+ readonly type: "boolean";
94
+ };
95
+ readonly maxRetries: {
96
+ readonly type: "number";
97
+ readonly min: 0;
98
+ readonly max: 10;
99
+ };
100
+ readonly queryCache: {
101
+ readonly type: "boolean";
102
+ };
103
+ readonly queryCacheTtl: {
104
+ readonly type: "number";
105
+ readonly min: 0;
106
+ readonly max: 600000;
107
+ };
108
+ readonly auditLog: {
109
+ readonly type: "boolean";
110
+ };
111
+ readonly strictValidation: {
112
+ readonly type: "boolean";
113
+ };
114
+ };
115
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/mcp/lib/defaults.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAE5D,YAAY,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAI5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,iEAAiE;IACjE,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,KAAK,CAAC;IACpC,uDAAuD;IACvD,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,uDAAuD;IACvD,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,wCAAwC;IACxC,UAAU,EAAE,OAAO,CAAC;IACpB,8CAA8C;IAC9C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6CAA6C;IAC7C,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,SAAS;IACxB,gDAAgD;IAChD,OAAO,EAAE,MAAM,CAAC;IAEhB,yDAAyD;IACzD,OAAO,EAAE,MAAM,CAAC;IAEhB,gDAAgD;IAChD,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAE9C,qDAAqD;IACrD,aAAa,EAAE,OAAO,CAAC;IAEvB,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IAEnB,yCAAyC;IACzC,UAAU,EAAE,OAAO,CAAC;IAEpB,uDAAuD;IACvD,aAAa,EAAE,MAAM,CAAC;IAEtB,2CAA2C;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAElB,6CAA6C;IAC7C,gBAAgB,EAAE,OAAO,CAAC;IAE1B,yDAAyD;IACzD,oBAAoB,EAAE,0BAA0B,CAAC;IAEjD,uDAAuD;IACvD,kBAAkB,EAAE,wBAAwB,CAAC;IAE7C,iDAAiD;IACjD,YAAY,EAAE,kBAAkB,CAAC;CAClC;AAED;;GAEG;AACH,eAAO,MAAM,6BAA6B,EAAE,0BAI3C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,wBAIzC,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,SAa5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,UAAU,cAAc,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAUhB,CAAC"}