@cleocode/cleo 2026.10.3 → 2026.10.4

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 (307) hide show
  1. package/bin/cleo.js +11 -1
  2. package/dist/cli/adapter-LVXHFBC4.js +158 -0
  3. package/dist/cli/add-WUAV7LDT.js +443 -0
  4. package/dist/cli/add-batch-U2DLKAQC.js +163 -0
  5. package/dist/cli/admin-I7BQYVZD.js +340 -0
  6. package/dist/cli/adr-K2THMQBS.js +171 -0
  7. package/dist/cli/agent-WQ6XY2DW.js +2366 -0
  8. package/dist/cli/agent-outputs-BJIYLVTU.js +84 -0
  9. package/dist/cli/analyze-PGQZWGOC.js +48 -0
  10. package/dist/cli/archive-5LZPF7C3.js +64 -0
  11. package/dist/cli/archive-stats-U6CYC6JM.js +100 -0
  12. package/dist/cli/attention-SOURWCNI.js +167 -0
  13. package/dist/cli/audit-FO2Y4LH2.js +122 -0
  14. package/dist/cli/auth-ED7TAIXI.js +491 -0
  15. package/dist/cli/backfill-32TRAYRD.js +156 -0
  16. package/dist/cli/backup-LEJMZJKL.js +587 -0
  17. package/dist/cli/backup-inspect-6HPLUEI2.js +26 -0
  18. package/dist/cli/backup-recover-2BTYBZU2.js +29 -0
  19. package/dist/cli/blockers-5JULUJTV.js +54 -0
  20. package/dist/cli/brain-273N3FW4.js +400 -0
  21. package/dist/cli/briefing-7H6OLECX.js +212 -0
  22. package/dist/cli/caamp-MFQVN6VU.js +181 -0
  23. package/dist/cli/cancel-SCMJTXZB.js +84 -0
  24. package/dist/cli/canon-NPF5RODM.js +142 -0
  25. package/dist/cli/canon-docs-2GTOLF7Y.js +26 -0
  26. package/dist/cli/cant-46XCUP4P.js +239 -0
  27. package/dist/cli/changeset-32NMBGG2.js +248 -0
  28. package/dist/cli/check-RWJLBCI2.js +907 -0
  29. package/dist/cli/checkpoint-37HMMKD7.js +128 -0
  30. package/dist/cli/chunk-2JIJD2I7.js +108 -0
  31. package/dist/cli/chunk-37NU2XDP.js +171 -0
  32. package/dist/cli/chunk-3IOQVUO7.js +17308 -0
  33. package/dist/cli/chunk-3PGH67MT.js +175 -0
  34. package/dist/cli/chunk-3ZO3M37V.js +1002 -0
  35. package/dist/cli/chunk-47JYZAMS.js +30 -0
  36. package/dist/cli/chunk-5J2VH3BC.js +66 -0
  37. package/dist/cli/chunk-5ZFFUFH7.js +92 -0
  38. package/dist/cli/chunk-6JSJNYH2.js +114 -0
  39. package/dist/cli/chunk-7INMKEAD.js +85 -0
  40. package/dist/cli/chunk-A2IUEIM5.js +278 -0
  41. package/dist/cli/chunk-AWCQH2W5.js +35 -0
  42. package/dist/cli/chunk-AYA6F4ZT.js +56 -0
  43. package/dist/cli/chunk-BCEXRFA2.js +76 -0
  44. package/dist/cli/chunk-BPEVD37G.js +124 -0
  45. package/dist/cli/chunk-C3B7C43W.js +16 -0
  46. package/dist/cli/chunk-DVTPIZJM.js +72 -0
  47. package/dist/cli/chunk-DYABOIHB.js +96 -0
  48. package/dist/cli/chunk-EBRZ76HS.js +51 -0
  49. package/dist/cli/chunk-EGOTK2HA.js +57 -0
  50. package/dist/cli/chunk-EOPQFCSR.js +148 -0
  51. package/dist/cli/chunk-FORFDPP5.js +288 -0
  52. package/dist/cli/chunk-GFGLLDXX.js +110 -0
  53. package/dist/cli/chunk-GH37QXW5.js +280 -0
  54. package/dist/cli/chunk-GZFVDR44.js +320 -0
  55. package/dist/cli/chunk-I3CRQQAD.js +225 -0
  56. package/dist/cli/chunk-J3ZFM3UQ.js +754 -0
  57. package/dist/cli/chunk-JNZJPIPJ.js +90 -0
  58. package/dist/cli/chunk-KHB52JNB.js +209 -0
  59. package/dist/cli/chunk-KJDWWQFY.js +46 -0
  60. package/dist/cli/chunk-LKNUA3SB.js +83 -0
  61. package/dist/cli/chunk-LVGIFMCV.js +163 -0
  62. package/dist/cli/chunk-LWQBJQSE.js +67 -0
  63. package/dist/cli/chunk-MNJRLSEQ.js +107 -0
  64. package/dist/cli/chunk-NRKWJLMS.js +91 -0
  65. package/dist/cli/chunk-NSHV2JNM.js +48 -0
  66. package/dist/cli/chunk-NWTATTEQ.js +210 -0
  67. package/dist/cli/chunk-OAPN46TC.js +89 -0
  68. package/dist/cli/chunk-OGV57L4J.js +59 -0
  69. package/dist/cli/chunk-OILHT47L.js +252 -0
  70. package/dist/cli/chunk-OPTEQKBB.js +258 -0
  71. package/dist/cli/chunk-PKKZPOOP.js +352 -0
  72. package/dist/cli/chunk-QA6T2LQ5.js +71 -0
  73. package/dist/cli/chunk-QFFQSKRC.js +4497 -0
  74. package/dist/cli/chunk-QPUY2HQZ.js +74 -0
  75. package/dist/cli/chunk-REUTEW3O.js +258 -0
  76. package/dist/cli/chunk-S24YI723.js +88 -0
  77. package/dist/cli/chunk-SXXOC6KZ.js +209 -0
  78. package/dist/cli/chunk-ULN4OKQQ.js +259 -0
  79. package/dist/cli/chunk-V5GBGOGM.js +46 -0
  80. package/dist/cli/chunk-VLEYOOPH.js +31 -0
  81. package/dist/cli/chunk-W33Q3FBH.js +66 -0
  82. package/dist/cli/chunk-W3JLYKKY.js +140 -0
  83. package/dist/cli/chunk-XRAX6XFP.js +48 -0
  84. package/dist/cli/chunk-YGKEECTI.js +78 -0
  85. package/dist/cli/chunk-YUZJI67I.js +108 -0
  86. package/dist/cli/chunk-YY66LFZF.js +29 -0
  87. package/dist/cli/chunk-ZBISIPCK.js +78 -0
  88. package/dist/cli/chunk-ZZTHTMQP.js +77 -0
  89. package/dist/cli/claim-KPENYHIQ.js +96 -0
  90. package/dist/cli/classify-DRVMCFQU.js +117 -0
  91. package/dist/cli/cli-T3CR7J57.js +48 -0
  92. package/dist/cli/cloud-PPQ4O5TX.js +565 -0
  93. package/dist/cli/cockpit-RZKLGYPN.js +790 -0
  94. package/dist/cli/code-Z5CTMVTD.js +178 -0
  95. package/dist/cli/complete-UBOCOBRB.js +34 -0
  96. package/dist/cli/complexity-BV2AGQRZ.js +56 -0
  97. package/dist/cli/compliance-32PD5Y47.js +276 -0
  98. package/dist/cli/conduit-VDKCH33F.js +307 -0
  99. package/dist/cli/config-I72JAXK4.js +516 -0
  100. package/dist/cli/consensus-LFILLSTK.js +121 -0
  101. package/dist/cli/context-XUUVFVTP.js +141 -0
  102. package/dist/cli/contribution-37NQ4N5R.js +111 -0
  103. package/dist/cli/curator-TFDXU2EX.js +139 -0
  104. package/dist/cli/current-C4SN5BWV.js +42 -0
  105. package/dist/cli/daemon-DV25JQ62.js +451 -0
  106. package/dist/cli/dash-TFU4RLQW.js +70 -0
  107. package/dist/cli/decide-5VPMNTSI.js +419 -0
  108. package/dist/cli/decompose-KOYEZNJL.js +77 -0
  109. package/dist/cli/decomposition-7OHUFIQN.js +121 -0
  110. package/dist/cli/delete-Q7YCAFY5.js +68 -0
  111. package/dist/cli/deps-6UZKLDGJ.js +463 -0
  112. package/dist/cli/detect-FERY35UL.js +45 -0
  113. package/dist/cli/detect-drift-UL2JTPUK.js +408 -0
  114. package/dist/cli/diagnostics-TI5QAZXR.js +132 -0
  115. package/dist/cli/docs-QI2PRN3T.js +3095 -0
  116. package/dist/cli/doctor-AX5TICQO.js +1253 -0
  117. package/dist/cli/doctor-ac-bindings-YPMYHU2G.js +26 -0
  118. package/dist/cli/doctor-acceptance-drift-PYNFGMKB.js +26 -0
  119. package/dist/cli/doctor-credentials-UZRIADKM.js +26 -0
  120. package/dist/cli/doctor-db-substrate-Q2TOYM2S.js +27 -0
  121. package/dist/cli/doctor-dep-cycles-GCVYZY6F.js +26 -0
  122. package/dist/cli/doctor-exodus-RO5SUTC2.js +26 -0
  123. package/dist/cli/doctor-exodus-residue-EM2AWQXP.js +26 -0
  124. package/dist/cli/doctor-fk-check-Q3FOLECE.js +26 -0
  125. package/dist/cli/doctor-global-delivery-TNOAQ3NP.js +26 -0
  126. package/dist/cli/doctor-heavy-command-hook-IO3QAQLG.js +26 -0
  127. package/dist/cli/doctor-legacy-backups-O2YH5VLS.js +26 -0
  128. package/dist/cli/doctor-legacy-reaper-VSEJEIFA.js +26 -0
  129. package/dist/cli/doctor-malformed-ids-LQ766V5K.js +26 -0
  130. package/dist/cli/doctor-manifest-rows-6FQDNHLH.js +26 -0
  131. package/dist/cli/doctor-memory-guard-J4PSEKB5.js +26 -0
  132. package/dist/cli/doctor-migrations-ONOH56YM.js +26 -0
  133. package/dist/cli/doctor-nexus-residency-FUQAX7PV.js +26 -0
  134. package/dist/cli/doctor-project-identity-GUDK3HYX.js +26 -0
  135. package/dist/cli/doctor-projects-7L3BNL4O.js +30 -0
  136. package/dist/cli/doctor-projects-registry-TEAVHFQU.js +26 -0
  137. package/dist/cli/doctor-release-readiness-IEGHX6SL.js +26 -0
  138. package/dist/cli/doctor-repair-NBONOSZU.js +26 -0
  139. package/dist/cli/doctor-skill-fixtures-7Y6L34A3.js +26 -0
  140. package/dist/cli/doctor-split-brain-TUKIGVHF.js +26 -0
  141. package/dist/cli/doctor-superseded-store-BHZY2B2L.js +26 -0
  142. package/dist/cli/doctor-tool-locks-REQMIVYK.js +26 -0
  143. package/dist/cli/doctor-twin-collapse-222GOSPE.js +26 -0
  144. package/dist/cli/doctor-worktree-stores-J7TCRVJ3.js +26 -0
  145. package/dist/cli/done-V3AOO65B.js +195 -0
  146. package/dist/cli/dynamic-RR4HB7BB.js +29 -0
  147. package/dist/cli/event-EGNPGE5A.js +372 -0
  148. package/dist/cli/exists-H4SDCBPL.js +65 -0
  149. package/dist/cli/exodus-KALO3B3X.js +401 -0
  150. package/dist/cli/export-ROFOCG4M.js +92 -0
  151. package/dist/cli/export-tasks-US3WBIEQ.js +96 -0
  152. package/dist/cli/federation-SUIB5QWT.js +145 -0
  153. package/dist/cli/find-YICG4BG6.js +177 -0
  154. package/dist/cli/focus-TKCZPKOM.js +55 -0
  155. package/dist/cli/gateway-H4HFDC3E.js +77 -0
  156. package/dist/cli/gateway-auto-start-EDK7XI6E.js +36 -0
  157. package/dist/cli/gc-5R2TUY5T.js +291 -0
  158. package/dist/cli/go-PRQFK5YG.js +206 -0
  159. package/dist/cli/goal-7CZRMLHC.js +212 -0
  160. package/dist/cli/grade-PY2YRPUS.js +56 -0
  161. package/dist/cli/graph-XIXMCFKG.js +878 -0
  162. package/dist/cli/history-EIXADPAD.js +137 -0
  163. package/dist/cli/hook-UF7J7R6D.js +57 -0
  164. package/dist/cli/hook-entry.js +244 -19
  165. package/dist/cli/hygiene-3QZ2NI7P.js +55 -0
  166. package/dist/cli/import-R73SO444.js +88 -0
  167. package/dist/cli/import-tasks-O22FZJ4U.js +108 -0
  168. package/dist/cli/index.js +419 -94612
  169. package/dist/cli/init-IHEJDQWU.js +40 -0
  170. package/dist/cli/inject-LSRVWNCP.js +82 -0
  171. package/dist/cli/install-global-4AZUCH6U.js +95 -0
  172. package/dist/cli/intelligence-2OSFOGD2.js +181 -0
  173. package/dist/cli/issue-IIWEDNFC.js +158 -0
  174. package/dist/cli/janitor-GPMC7VOR.js +111 -0
  175. package/dist/cli/labels-5NPOIQXN.js +87 -0
  176. package/dist/cli/lifecycle-4FFS2K2T.js +272 -0
  177. package/dist/cli/list-47KEUGPQ.js +108 -0
  178. package/dist/cli/llm-G5B3I6GD.js +703 -0
  179. package/dist/cli/llm-cost-S7RS6BVA.js +25 -0
  180. package/dist/cli/llm-stream-24A45NTS.js +27 -0
  181. package/dist/cli/log-XF6H2XSD.js +75 -0
  182. package/dist/cli/login-LBPLGHYG.js +43 -0
  183. package/dist/cli/logout-SX4JSJIV.js +74 -0
  184. package/dist/cli/manifest-NMCW4PIW.js +353 -0
  185. package/dist/cli/map-BU72KMGF.js +52 -0
  186. package/dist/cli/memory-UHYIVGVM.js +1956 -0
  187. package/dist/cli/migrate-agents-v2-OO7OILZK.js +33 -0
  188. package/dist/cli/migrate-claude-mem-EDNYUY3K.js +201 -0
  189. package/dist/cli/next-RZFRG5X7.js +56 -0
  190. package/dist/cli/nexus-4S4Z5EVU.js +2923 -0
  191. package/dist/cli/ops-KR7AWCG3.js +51 -0
  192. package/dist/cli/orchestrate-HOYZY3VX.js +948 -0
  193. package/dist/cli/otel-U7IIRBCT.js +188 -0
  194. package/dist/cli/phase-NYZFHUE5.js +220 -0
  195. package/dist/cli/pivot-FF2CVUZL.js +87 -0
  196. package/dist/cli/plan-3SL2NTRV.js +48 -0
  197. package/dist/cli/playbook-2FCBV7N3.js +229 -0
  198. package/dist/cli/project-WDX2TGMC.js +330 -0
  199. package/dist/cli/promote-YINYFBZY.js +52 -0
  200. package/dist/cli/provenance-C7AYD7WG.js +128 -0
  201. package/dist/cli/provider-QLJEDQBR.js +212 -0
  202. package/dist/cli/reason-JF5BHBM5.js +137 -0
  203. package/dist/cli/reconcile-NMISHDGX.js +127 -0
  204. package/dist/cli/refresh-memory-EY5YNICV.js +45 -0
  205. package/dist/cli/relates-R3ZPICAY.js +259 -0
  206. package/dist/cli/release-4ZJTMUUT.js +524 -0
  207. package/dist/cli/remote-QSONJDIK.js +279 -0
  208. package/dist/cli/renderers-64OR3IWX.js +37 -0
  209. package/dist/cli/reorder-J3DOE7ST.js +86 -0
  210. package/dist/cli/reparent-2OUMKEZX.js +58 -0
  211. package/dist/cli/req-TZB7OFKO.js +129 -0
  212. package/dist/cli/research-MTD7EX45.js +365 -0
  213. package/dist/cli/restore-VEUOX7NF.js +423 -0
  214. package/dist/cli/revert-3YF2IL5G.js +240 -0
  215. package/dist/cli/roadmap-7OOQLXKG.js +61 -0
  216. package/dist/cli/run-2U5NZV5Z.js +211 -0
  217. package/dist/cli/safestop-VR4VK56D.js +88 -0
  218. package/dist/cli/saga-SEWPIOX2.js +285 -0
  219. package/dist/cli/schema-C52WZ35V.js +195 -0
  220. package/dist/cli/self-update-GQIGUDPS.js +504 -0
  221. package/dist/cli/selfimprove-3Y5L4ECT.js +88 -0
  222. package/dist/cli/sentient-M4YMAVGV.js +1088 -0
  223. package/dist/cli/sequence-6UBMA4IF.js +93 -0
  224. package/dist/cli/service-5R7SILZ7.js +155 -0
  225. package/dist/cli/session-3C6AAC4Y.js +707 -0
  226. package/dist/cli/setup-BTUBW5PU.js +323 -0
  227. package/dist/cli/show-MXT2V7TF.js +122 -0
  228. package/dist/cli/skill-GFUZOU2C.js +84 -0
  229. package/dist/cli/skills-EDWLKAF3.js +928 -0
  230. package/dist/cli/smoke-provider-SKUFMZXU.js +218 -0
  231. package/dist/cli/snapshot-GUWMURCM.js +119 -0
  232. package/dist/cli/src-66GAKPXR.js +80 -0
  233. package/dist/cli/start-QFG56RGN.js +67 -0
  234. package/dist/cli/stats-GW55P7RR.js +95 -0
  235. package/dist/cli/status-46HTKNRR.js +157 -0
  236. package/dist/cli/sticky-2DUZOUGI.js +338 -0
  237. package/dist/cli/stop-J2QEUKHX.js +42 -0
  238. package/dist/cli/sync-GJP2QYT5.js +154 -0
  239. package/dist/cli/tasks-BNXTM7PB.js +174 -0
  240. package/dist/cli/telemetry-55Z2XJWL.js +120 -0
  241. package/dist/cli/templates-7O77TKPV.js +611 -0
  242. package/dist/cli/testing-37YTBNKP.js +146 -0
  243. package/dist/cli/token-UAVJMNUI.js +220 -0
  244. package/dist/cli/transcript-LORQTV5Z.js +440 -0
  245. package/dist/cli/tui-BPUFHYKK.js +51 -0
  246. package/dist/cli/update-NVCYV2FT.js +476 -0
  247. package/dist/cli/upgrade-OXJXOGEF.js +243 -0
  248. package/dist/cli/verify-LYLDHPT2.js +190 -0
  249. package/dist/cli/web-QP2RP266.js +275 -0
  250. package/dist/cli/workgraph-FXBSZDQE.js +232 -0
  251. package/dist/cli/worktree-6RXAJIST.js +370 -0
  252. package/package.json +13 -13
  253. package/studio-dist/client/_app/immutable/chunks/{DMj27Pxj.js → Btgeq_wq.js} +1 -1
  254. package/studio-dist/client/_app/immutable/chunks/{qq3pe1aT.js → CgBjxmu6.js} +1 -1
  255. package/studio-dist/client/_app/immutable/chunks/{Dc2owyvE.js → DgEKqO6r.js} +1 -1
  256. package/studio-dist/client/_app/immutable/chunks/t81h7afa.js +1 -0
  257. package/studio-dist/client/_app/immutable/entry/{app.CHWXLeE9.js → app.a02HWaRB.js} +2 -2
  258. package/studio-dist/client/_app/immutable/entry/start.BreMSngo.js +1 -0
  259. package/studio-dist/client/_app/immutable/nodes/{0.DmKQGvFh.js → 0.nTXyRfc-.js} +1 -1
  260. package/studio-dist/client/_app/immutable/nodes/{1.DqJk_REO.js → 1.4zrWeHtl.js} +1 -1
  261. package/studio-dist/client/_app/immutable/nodes/{15.GUy6kdW1.js → 15.D9mk4JyY.js} +1 -1
  262. package/studio-dist/client/_app/immutable/nodes/{16.CcnKZ8f9.js → 16._-wt-sQf.js} +1 -1
  263. package/studio-dist/client/_app/immutable/nodes/{17.DAlQF3lQ.js → 17.CUu6LQDj.js} +1 -1
  264. package/studio-dist/client/_app/immutable/nodes/{18.vQFr-vFj.js → 18.Dz4QRTkX.js} +1 -1
  265. package/studio-dist/client/_app/immutable/nodes/{20.GVOj5j_r.js → 20.CJ2_EB0U.js} +1 -1
  266. package/studio-dist/client/_app/immutable/nodes/{24.2-wC6DOh.js → 24.Igj2FS7k.js} +1 -1
  267. package/studio-dist/client/_app/immutable/nodes/{25.D1vYaH8g.js → 25.BnATjVGN.js} +2 -2
  268. package/studio-dist/client/_app/immutable/nodes/{26.C3rNqzZF.js → 26.6iPyjT44.js} +1 -1
  269. package/studio-dist/client/_app/immutable/nodes/{3.b-7pzc3M.js → 3.AA5GwNgP.js} +1 -1
  270. package/studio-dist/client/_app/version.json +1 -1
  271. package/studio-dist/server/chunks/{0-BaCce-O1.js → 0-DGmsoBYm.js} +3 -3
  272. package/studio-dist/server/chunks/1-8PfxPvlK.js +9 -0
  273. package/studio-dist/server/chunks/{15-DRMOSIC9.js → 15-Bg6YTndh.js} +3 -3
  274. package/studio-dist/server/chunks/{16-BulXhoZZ.js → 16-BObLwgyD.js} +3 -3
  275. package/studio-dist/server/chunks/{17-DUEOCM0H.js → 17-BNXGyAHX.js} +3 -3
  276. package/studio-dist/server/chunks/{18-DP7Q8zPs.js → 18-UqQFRIID.js} +3 -3
  277. package/studio-dist/server/chunks/{20-9ta6MI7q.js → 20-CMn8a_yP.js} +3 -3
  278. package/studio-dist/server/chunks/{24-DysdL1ab.js → 24-BuOTDzib.js} +3 -3
  279. package/studio-dist/server/chunks/{25-CYsps38R.js → 25-CIMSmjVx.js} +4 -4
  280. package/studio-dist/server/chunks/{26-Df4YXgg0.js → 26-DWGObn2T.js} +3 -3
  281. package/studio-dist/server/chunks/{3-BEhOhYpL.js → 3-CyiffdJZ.js} +3 -3
  282. package/studio-dist/server/chunks/{_layout.svelte-CnLcXYG-.js → _layout.svelte-DYtClaIk.js} +4 -4
  283. package/studio-dist/server/chunks/{_page.svelte-HUqTICJR.js → _page.svelte-1h9E6s_f.js} +3 -3
  284. package/studio-dist/server/chunks/{_page.svelte-DOl0DGOO.js → _page.svelte-BNNF62Nm.js} +3 -3
  285. package/studio-dist/server/chunks/{_page.svelte-DzcZljiy.js → _page.svelte-BT1EUadj.js} +5 -5
  286. package/studio-dist/server/chunks/{_page.svelte-Dv8tmDEC.js → _page.svelte-Bip079LT.js} +3 -3
  287. package/studio-dist/server/chunks/{_page.svelte-DGhXqeRc.js → _page.svelte-CEATWp_5.js} +3 -3
  288. package/studio-dist/server/chunks/{_page.svelte-C0qgUvzA.js → _page.svelte-CV3xiD1y.js} +4 -4
  289. package/studio-dist/server/chunks/{_page.svelte-CbyEPj2j.js → _page.svelte-Cv_KVJDV.js} +3 -3
  290. package/studio-dist/server/chunks/{_page.svelte-ui7LnWkL.js → _page.svelte-DSSy6LuK.js} +3 -3
  291. package/studio-dist/server/chunks/{_page.svelte-Da4q5l93.js → _page.svelte-TF795TAS.js} +3 -3
  292. package/studio-dist/server/chunks/{_server.ts-CnKVmf_s.js → _server.ts-BlhRFLY3.js} +2 -2
  293. package/studio-dist/server/chunks/{_server.ts-Cr57EKWf.js → _server.ts-C4w6UdU0.js} +3 -3
  294. package/studio-dist/server/chunks/{_server.ts-P4wVVksg.js → _server.ts-CzrwbhkQ.js} +3 -3
  295. package/studio-dist/server/chunks/{_server.ts-2BazvYRP.js → _server.ts-DWt8Dziu.js} +3 -3
  296. package/studio-dist/server/chunks/{_server.ts-C0evMKCk.js → _server.ts-Db6mEile.js} +3 -3
  297. package/studio-dist/server/chunks/{client-CPM4LrO2.js → client-D8f2k-H_.js} +2 -2
  298. package/studio-dist/server/chunks/{dist-CdoCt9zT.js → dist-B8xbIrdB.js} +3 -1
  299. package/studio-dist/server/chunks/{error.svelte-ShcZo43D.js → error.svelte-DbbOwIme.js} +3 -3
  300. package/studio-dist/server/chunks/{http-BiQjEmVU.js → http-1ftNGTs5.js} +2 -2
  301. package/studio-dist/server/chunks/{internal-Cgsrya1j.js → internal-CTULuLPB.js} +2 -2
  302. package/studio-dist/server/chunks/{stores-BGrpEDMK.js → stores-CS5XOReX.js} +2 -2
  303. package/studio-dist/server/index.js +1 -1
  304. package/studio-dist/server/manifest.js +17 -17
  305. package/studio-dist/client/_app/immutable/chunks/Bw6J8NDM.js +0 -1
  306. package/studio-dist/client/_app/immutable/entry/start.C9bwPpvc.js +0 -1
  307. package/studio-dist/server/chunks/1-CVo7Nk6d.js +0 -9
@@ -0,0 +1,451 @@
1
+ (() => {
2
+ const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
3
+ if (globalThis[_installed]) return;
4
+ globalThis[_installed] = true;
5
+ const _origEmitWarning = process.emitWarning;
6
+ process.emitWarning = function(warning, type, code, ctor) {
7
+ if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
8
+ return;
9
+ }
10
+ if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
11
+ return;
12
+ }
13
+ return _origEmitWarning.call(process, warning, type, code, ctor);
14
+ };
15
+ })();
16
+ import {
17
+ resolveStudioStaticDir
18
+ } from "./chunk-GH37QXW5.js";
19
+ import {
20
+ isSubCommandDispatch
21
+ } from "./chunk-YY66LFZF.js";
22
+ import {
23
+ defineCommand
24
+ } from "./chunk-PKKZPOOP.js";
25
+ import {
26
+ createCliGatewayHandler
27
+ } from "./chunk-3IOQVUO7.js";
28
+ import "./chunk-AWCQH2W5.js";
29
+ import "./chunk-OGV57L4J.js";
30
+ import "./chunk-ZBISIPCK.js";
31
+ import {
32
+ cliError,
33
+ cliOutput
34
+ } from "./chunk-3ZO3M37V.js";
35
+ import "./chunk-6JSJNYH2.js";
36
+ import "./chunk-QFFQSKRC.js";
37
+
38
+ // packages/cleo/src/cli/commands/daemon.ts
39
+ import { existsSync } from "node:fs";
40
+ import { join } from "node:path";
41
+ import { fileURLToPath } from "node:url";
42
+ import { getGCDaemonStatus, spawnGCDaemon, stopGCDaemon } from "@cleocode/core/gc/daemon.js";
43
+ import {
44
+ bootstrapDaemon as bootstrapSentientDaemon,
45
+ getSentientDaemonStatus
46
+ } from "@cleocode/core/sentient";
47
+ import { resolveLegacyCleoDir } from "@cleocode/paths";
48
+ import { serveGateway } from "@cleocode/runtime/gateway";
49
+ var DEFAULT_GATEWAY_HTTP_PORT = 7777;
50
+ async function blockUntilSignal(handle) {
51
+ await new Promise((resolve) => {
52
+ const onSignal = () => {
53
+ void handle.close().finally(resolve);
54
+ };
55
+ process.once("SIGTERM", onSignal);
56
+ process.once("SIGINT", onSignal);
57
+ });
58
+ }
59
+ async function showDaemonStatus(cleoDir, projectRoot) {
60
+ try {
61
+ const gcStatus = await getGCDaemonStatus(cleoDir);
62
+ let hygieneLastRunAt = null;
63
+ let hygieneSummary = null;
64
+ let hygieneStats = {
65
+ projectsChecked: 0,
66
+ projectsHealthy: 0,
67
+ tempGcCandidates: 0,
68
+ duplicateEpicGroups: 0,
69
+ worktreesPruned: 0
70
+ };
71
+ let supervisesStudio = null;
72
+ let studioStatus = null;
73
+ try {
74
+ const sentientStatus = await getSentientDaemonStatus(projectRoot);
75
+ hygieneLastRunAt = sentientStatus.hygieneLastRunAt;
76
+ hygieneSummary = sentientStatus.hygieneSummary;
77
+ hygieneStats = sentientStatus.hygieneStats;
78
+ supervisesStudio = sentientStatus.supervisesStudio;
79
+ studioStatus = sentientStatus.studioStatus;
80
+ } catch {
81
+ }
82
+ const data = {
83
+ gc: gcStatus,
84
+ hygiene: {
85
+ lastRunAt: hygieneLastRunAt,
86
+ summary: hygieneSummary,
87
+ stats: hygieneStats
88
+ },
89
+ studio: {
90
+ supervises: supervisesStudio,
91
+ status: studioStatus
92
+ }
93
+ };
94
+ const runningStr = gcStatus.running ? `running (PID ${gcStatus.pid})` : "stopped";
95
+ const diskStr = gcStatus.lastDiskUsedPct !== null ? `${gcStatus.lastDiskUsedPct.toFixed(1)}%` : "unknown";
96
+ const escalationNote = gcStatus.escalationNeeded ? " \u2014 WARNING: Disk threshold breached. Run 'cleo gc run' to reclaim space." : "";
97
+ cliOutput(data, {
98
+ command: "daemon",
99
+ operation: "daemon.status",
100
+ message: `GC Daemon: ${runningStr}, Disk: ${diskStr}${escalationNote}`
101
+ });
102
+ } catch (err) {
103
+ const message = err instanceof Error ? err.message : String(err);
104
+ cliError(
105
+ `Error reading daemon status: ${message}`,
106
+ "E_INTERNAL",
107
+ { name: "E_INTERNAL" },
108
+ {
109
+ operation: "daemon.status"
110
+ }
111
+ );
112
+ process.exit(1);
113
+ }
114
+ }
115
+ function resolveDaemonInstallerScript() {
116
+ const filePath = fileURLToPath(import.meta.url);
117
+ const candidate1 = join(filePath, "..", "..", "..", "scripts", "install-daemon-service.mjs");
118
+ if (existsSync(candidate1)) return candidate1;
119
+ const candidate2 = join(
120
+ filePath,
121
+ "..",
122
+ "..",
123
+ "..",
124
+ "..",
125
+ "scripts",
126
+ "install-daemon-service.mjs"
127
+ );
128
+ return candidate2;
129
+ }
130
+ var startCommand = defineCommand({
131
+ meta: { name: "start", description: "Spawn the GC daemon as a detached background process" },
132
+ args: {
133
+ "cleo-dir": {
134
+ type: "string",
135
+ description: "Override .cleo/ directory path"
136
+ },
137
+ foreground: {
138
+ type: "boolean",
139
+ description: "Run the sentient daemon in the foreground (used by systemd/launchd service units)"
140
+ },
141
+ json: {
142
+ type: "boolean",
143
+ description: "Output result as JSON"
144
+ }
145
+ },
146
+ async run({ args }) {
147
+ const cleoDir = resolveLegacyCleoDir(args["cleo-dir"]);
148
+ const foreground = args.foreground ?? false;
149
+ if (foreground) {
150
+ const projectRoot = process.cwd();
151
+ cliOutput(
152
+ {
153
+ pid: process.pid,
154
+ mode: "foreground",
155
+ message: "Starting sentient daemon in foreground mode"
156
+ },
157
+ {
158
+ command: "daemon",
159
+ operation: "daemon.start",
160
+ message: `[CLEO DAEMON] Starting sentient daemon in foreground mode (PID ${process.pid})`
161
+ }
162
+ );
163
+ await bootstrapSentientDaemon(projectRoot);
164
+ return;
165
+ }
166
+ try {
167
+ const status = await getGCDaemonStatus(cleoDir);
168
+ if (status.running && status.pid) {
169
+ cliOutput(
170
+ { running: true, pid: status.pid, message: `Daemon already running (PID ${status.pid})` },
171
+ {
172
+ command: "daemon",
173
+ operation: "daemon.start",
174
+ message: `Daemon already running (PID ${status.pid})`
175
+ }
176
+ );
177
+ return;
178
+ }
179
+ const pid = await spawnGCDaemon(cleoDir);
180
+ cliOutput(
181
+ {
182
+ pid,
183
+ cleoDir,
184
+ logs: join(cleoDir, "logs", "gc.log"),
185
+ message: `GC daemon started (PID ${pid})`
186
+ },
187
+ {
188
+ command: "daemon",
189
+ operation: "daemon.start",
190
+ message: `GC daemon started (PID ${pid}) \u2014 Logs: ${join(cleoDir, "logs", "gc.log")}`
191
+ }
192
+ );
193
+ } catch (err) {
194
+ const message = err instanceof Error ? err.message : String(err);
195
+ cliError(
196
+ `Error starting daemon: ${message}`,
197
+ "E_INTERNAL",
198
+ { name: "E_INTERNAL" },
199
+ {
200
+ operation: "daemon.start"
201
+ }
202
+ );
203
+ process.exit(1);
204
+ }
205
+ }
206
+ });
207
+ var stopCommand = defineCommand({
208
+ meta: { name: "stop", description: "Stop the GC daemon by sending SIGTERM to its PID" },
209
+ args: {
210
+ "cleo-dir": {
211
+ type: "string",
212
+ description: "Override .cleo/ directory path"
213
+ },
214
+ json: {
215
+ type: "boolean",
216
+ description: "Output result as JSON"
217
+ }
218
+ },
219
+ async run({ args }) {
220
+ const cleoDir = resolveLegacyCleoDir(args["cleo-dir"]);
221
+ try {
222
+ const stopResult = await stopGCDaemon(cleoDir);
223
+ cliOutput(stopResult, {
224
+ command: "daemon",
225
+ operation: "daemon.stop",
226
+ message: stopResult.stopped ? `GC daemon stopped (${stopResult.reason})` : stopResult.reason
227
+ });
228
+ } catch (err) {
229
+ const message = err instanceof Error ? err.message : String(err);
230
+ cliError(
231
+ `Error stopping daemon: ${message}`,
232
+ "E_INTERNAL",
233
+ { name: "E_INTERNAL" },
234
+ {
235
+ operation: "daemon.stop"
236
+ }
237
+ );
238
+ process.exit(1);
239
+ }
240
+ }
241
+ });
242
+ var statusCommand = defineCommand({
243
+ meta: {
244
+ name: "status",
245
+ description: "Show daemon running state, PID, last GC run, disk usage, and cross-project hygiene summary"
246
+ },
247
+ args: {
248
+ "cleo-dir": {
249
+ type: "string",
250
+ description: "Override .cleo/ directory path"
251
+ },
252
+ json: {
253
+ type: "boolean",
254
+ description: "Output result as JSON"
255
+ }
256
+ },
257
+ async run({ args }) {
258
+ const cleoDir = resolveLegacyCleoDir(args["cleo-dir"]);
259
+ await showDaemonStatus(cleoDir, process.cwd());
260
+ }
261
+ });
262
+ var installCommand = defineCommand({
263
+ meta: {
264
+ name: "install",
265
+ description: "Register the CLEO daemon as a user-level system service (systemd / launchd)"
266
+ },
267
+ args: {
268
+ saga: {
269
+ type: "string",
270
+ description: "Scope the daemon to tasks within a Saga (sets CLEO_SENTIENT_SAGA in service env)",
271
+ required: false
272
+ },
273
+ epic: {
274
+ type: "string",
275
+ description: "Scope the daemon to tasks directly under an Epic (sets CLEO_SENTIENT_EPIC in service env)",
276
+ required: false
277
+ },
278
+ json: {
279
+ type: "boolean",
280
+ description: "Output result as JSON"
281
+ }
282
+ },
283
+ async run({ args }) {
284
+ try {
285
+ const scriptPath = resolveDaemonInstallerScript();
286
+ const { installDaemonService } = await import(scriptPath);
287
+ const scopeSagaId = typeof args.saga === "string" && args.saga.length > 0 ? args.saga : void 0;
288
+ const scopeEpicId = typeof args.epic === "string" && args.epic.length > 0 ? args.epic : void 0;
289
+ await installDaemonService({ scopeSagaId, scopeEpicId });
290
+ const scopeNote = scopeEpicId !== void 0 ? ` (scoped to epic ${scopeEpicId})` : scopeSagaId !== void 0 ? ` (scoped to saga ${scopeSagaId})` : "";
291
+ cliOutput(
292
+ {
293
+ platform: process.platform,
294
+ scopeSagaId,
295
+ scopeEpicId,
296
+ message: `Daemon service installation complete${scopeNote}.`
297
+ },
298
+ {
299
+ command: "daemon",
300
+ operation: "daemon.install",
301
+ message: `CLEO: Daemon service installation complete${scopeNote}.`
302
+ }
303
+ );
304
+ } catch (err) {
305
+ const message = err instanceof Error ? err.message : String(err);
306
+ cliError(
307
+ `Error installing daemon service: ${message}`,
308
+ "E_INTERNAL",
309
+ { name: "E_INTERNAL" },
310
+ { operation: "daemon.install" }
311
+ );
312
+ process.exit(1);
313
+ }
314
+ }
315
+ });
316
+ var uninstallCommand = defineCommand({
317
+ meta: {
318
+ name: "uninstall",
319
+ description: "Disable and remove the user-level system service (systemd unit / launchd plist)"
320
+ },
321
+ args: {
322
+ json: {
323
+ type: "boolean",
324
+ description: "Output result as JSON"
325
+ }
326
+ },
327
+ async run({ args: _args }) {
328
+ try {
329
+ const scriptPath = resolveDaemonInstallerScript();
330
+ const { uninstallDaemonService } = await import(scriptPath);
331
+ const result = await uninstallDaemonService();
332
+ cliOutput(result, {
333
+ command: "daemon",
334
+ operation: "daemon.uninstall",
335
+ message: `CLEO: ${result.message}`
336
+ });
337
+ if (!result.success) process.exit(1);
338
+ } catch (err) {
339
+ const message = err instanceof Error ? err.message : String(err);
340
+ cliError(
341
+ `Error uninstalling daemon service: ${message}`,
342
+ "E_INTERNAL",
343
+ { name: "E_INTERNAL" },
344
+ { operation: "daemon.uninstall" }
345
+ );
346
+ process.exit(1);
347
+ }
348
+ }
349
+ });
350
+ var serveCommand = defineCommand({
351
+ meta: {
352
+ name: "serve",
353
+ description: "Start the HTTP gateway listener (versioned /v1 REST facade, loopback by default)"
354
+ },
355
+ args: {
356
+ port: {
357
+ type: "string",
358
+ description: `TCP port to bind (default ${DEFAULT_GATEWAY_HTTP_PORT}; 0 = ephemeral)`
359
+ },
360
+ host: {
361
+ type: "string",
362
+ description: "Host/interface to bind (default 127.0.0.1 \u2014 loopback only)"
363
+ },
364
+ json: {
365
+ type: "boolean",
366
+ description: "Output result as JSON"
367
+ }
368
+ },
369
+ async run({ args }) {
370
+ try {
371
+ const portArg = args.port;
372
+ const port = portArg !== void 0 && portArg.length > 0 ? Number.parseInt(portArg, 10) : DEFAULT_GATEWAY_HTTP_PORT;
373
+ if (Number.isNaN(port) || port < 0 || port > 65535) {
374
+ cliError(
375
+ `Invalid --port '${portArg}'; expected an integer in [0, 65535]`,
376
+ "E_INVALID_INPUT",
377
+ { name: "E_INVALID_INPUT" },
378
+ { operation: "daemon.serve" }
379
+ );
380
+ process.exit(2);
381
+ }
382
+ const host = args.host ?? "127.0.0.1";
383
+ const studioStaticDir = resolveStudioStaticDir();
384
+ const handle = await serveGateway({
385
+ handler: createCliGatewayHandler(),
386
+ port,
387
+ host,
388
+ studioStaticDir
389
+ });
390
+ cliOutput(
391
+ {
392
+ pid: process.pid,
393
+ host: handle.host,
394
+ port: handle.port,
395
+ scope: handle.scope,
396
+ facade: "/v1",
397
+ studioUrl: studioStaticDir !== void 0 ? `http://${handle.host}:${handle.port}/studio/` : null,
398
+ message: `HTTP gateway listening on http://${handle.host}:${handle.port}/v1`
399
+ },
400
+ {
401
+ command: "daemon",
402
+ operation: "daemon.serve",
403
+ message: studioStaticDir !== void 0 ? `HTTP gateway listening on http://${handle.host}:${handle.port}/v1 (Studio: http://${handle.host}:${handle.port}/studio/, PID ${process.pid})` : `HTTP gateway listening on http://${handle.host}:${handle.port}/v1 (PID ${process.pid})`
404
+ }
405
+ );
406
+ await blockUntilSignal(handle);
407
+ } catch (err) {
408
+ const message = err instanceof Error ? err.message : String(err);
409
+ cliError(
410
+ `Error starting HTTP gateway: ${message}`,
411
+ "E_INTERNAL",
412
+ { name: "E_INTERNAL" },
413
+ { operation: "daemon.serve" }
414
+ );
415
+ process.exit(1);
416
+ }
417
+ }
418
+ });
419
+ var daemonCommand = defineCommand({
420
+ meta: {
421
+ name: "daemon",
422
+ description: "Manage the CLEO GC sidecar daemon for autonomous transcript cleanup"
423
+ },
424
+ args: {
425
+ "cleo-dir": {
426
+ type: "string",
427
+ description: "Override .cleo/ directory path"
428
+ },
429
+ json: {
430
+ type: "boolean",
431
+ description: "Output result as JSON"
432
+ }
433
+ },
434
+ subCommands: {
435
+ start: startCommand,
436
+ stop: stopCommand,
437
+ status: statusCommand,
438
+ serve: serveCommand,
439
+ install: installCommand,
440
+ uninstall: uninstallCommand
441
+ },
442
+ async run({ args, cmd, rawArgs }) {
443
+ if (isSubCommandDispatch(rawArgs, cmd.subCommands)) return;
444
+ const cleoDir = resolveLegacyCleoDir(args["cleo-dir"]);
445
+ await showDaemonStatus(cleoDir, process.cwd());
446
+ }
447
+ });
448
+ export {
449
+ daemonCommand
450
+ };
451
+ //# sourceMappingURL=daemon-DV25JQ62.js.map
@@ -0,0 +1,70 @@
1
+ (() => {
2
+ const _installed = Symbol.for('cleocode.cli.sqliteWarningFilter');
3
+ if (globalThis[_installed]) return;
4
+ globalThis[_installed] = true;
5
+ const _origEmitWarning = process.emitWarning;
6
+ process.emitWarning = function(warning, type, code, ctor) {
7
+ if (typeof warning === 'object' && warning.name === 'ExperimentalWarning' && typeof warning.message === 'string' && /SQLite is an experimental feature/i.test(warning.message)) {
8
+ return;
9
+ }
10
+ if (typeof warning === 'string' && /SQLite is an experimental feature/i.test(warning)) {
11
+ return;
12
+ }
13
+ return _origEmitWarning.call(process, warning, type, code, ctor);
14
+ };
15
+ })();
16
+ import {
17
+ negatedFlag
18
+ } from "./chunk-47JYZAMS.js";
19
+ import {
20
+ defineCommand
21
+ } from "./chunk-PKKZPOOP.js";
22
+ import {
23
+ dispatchFromCli
24
+ } from "./chunk-3IOQVUO7.js";
25
+ import "./chunk-AWCQH2W5.js";
26
+ import "./chunk-OGV57L4J.js";
27
+ import "./chunk-ZBISIPCK.js";
28
+ import {
29
+ humanLine
30
+ } from "./chunk-3ZO3M37V.js";
31
+ import "./chunk-6JSJNYH2.js";
32
+ import "./chunk-QFFQSKRC.js";
33
+
34
+ // packages/cleo/src/cli/commands/dash.ts
35
+ var dashCommand = defineCommand({
36
+ meta: {
37
+ name: "dash",
38
+ description: "Project health dashboard: status summary, phase progress, recent activity, high priority tasks. Use for overall project status."
39
+ },
40
+ args: {
41
+ "blocked-limit": {
42
+ type: "string",
43
+ description: "Max blocked tasks to show"
44
+ },
45
+ "no-hygiene": {
46
+ type: "boolean",
47
+ description: "Suppress the hygiene section note"
48
+ }
49
+ },
50
+ async run({ args }) {
51
+ await dispatchFromCli(
52
+ "query",
53
+ "admin",
54
+ "dash",
55
+ {
56
+ blockedTasksLimit: args["blocked-limit"] !== void 0 ? Number.parseInt(args["blocked-limit"], 10) : void 0
57
+ },
58
+ { command: "dash" }
59
+ );
60
+ if (!negatedFlag(args, "hygiene")) {
61
+ humanLine(
62
+ "\n--- Sentient Hygiene (T1636) ---\nBackground scan runs every 4h (dream cycle). Run `cleo memory digest --hygiene` to see the latest hygiene observations (orphan tasks, top-level tasks without an epic, content defects, premature-close leaks)."
63
+ );
64
+ }
65
+ }
66
+ });
67
+ export {
68
+ dashCommand
69
+ };
70
+ //# sourceMappingURL=dash-TFU4RLQW.js.map