@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,401 @@
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 "./chunk-C3B7C43W.js";
17
+ import {
18
+ isSubCommandDispatch
19
+ } from "./chunk-YY66LFZF.js";
20
+ import {
21
+ defineCommand
22
+ } from "./chunk-PKKZPOOP.js";
23
+ import {
24
+ cliError,
25
+ cliOutput,
26
+ humanInfo
27
+ } from "./chunk-3ZO3M37V.js";
28
+ import "./chunk-6JSJNYH2.js";
29
+
30
+ // packages/cleo/src/cli/commands/exodus.ts
31
+ import { existsSync } from "node:fs";
32
+ import { ExitCode } from "@cleocode/contracts";
33
+ import { resolveDualScopeDbPath } from "@cleocode/core/store/dual-scope-db.js";
34
+ import {
35
+ archiveMigratedSources,
36
+ buildExodusPlan,
37
+ hasExodusCompleteMarker,
38
+ runExodusMigrate,
39
+ runExodusStatus,
40
+ runExodusVerify,
41
+ sealExodus,
42
+ sourcesPresent,
43
+ verifyMigration
44
+ } from "@cleocode/core/store/exodus/index.js";
45
+ import { isDataContinuityOk } from "@cleocode/core/store/exodus/on-open.js";
46
+ function fmtBytes(n) {
47
+ if (n < 1024) return `${n} B`;
48
+ if (n < 1024 * 1024) return `${(n / 1024).toFixed(1)} KB`;
49
+ return `${(n / 1024 / 1024).toFixed(1)} MB`;
50
+ }
51
+ var migrateSubCommand = defineCommand({
52
+ meta: {
53
+ name: "migrate",
54
+ description: "Migrate legacy multi-DB fleet into consolidated dual-scope cleo.db"
55
+ },
56
+ args: {
57
+ "dry-run": {
58
+ type: "boolean",
59
+ description: "Preview migration plan without writing anything",
60
+ default: false
61
+ },
62
+ "force-cross-version": {
63
+ type: "boolean",
64
+ description: "Skip schema-version guard (AC9 \u2014 use with care)",
65
+ default: false
66
+ },
67
+ scope: {
68
+ type: "string",
69
+ description: "Which scope to migrate: 'global', 'project', or 'both' (default = full fleet)",
70
+ default: "both"
71
+ }
72
+ },
73
+ async run({ args }) {
74
+ const dryRun = args["dry-run"] === true;
75
+ const forceCrossVersion = args["force-cross-version"] === true;
76
+ const scope = args.scope ?? "both";
77
+ if (scope !== "both" && scope !== "project" && scope !== "global") {
78
+ cliError(
79
+ `Invalid --scope '${scope}'. Use 'global', 'project', or 'both'.`,
80
+ ExitCode.VALIDATION_ERROR,
81
+ { name: "E_INVALID_SCOPE" },
82
+ { operation: "exodus.migrate" }
83
+ );
84
+ process.exitCode = ExitCode.VALIDATION_ERROR;
85
+ return;
86
+ }
87
+ const fullPlan = buildExodusPlan(process.cwd());
88
+ const plan = scope === "both" ? fullPlan : { ...fullPlan, sources: fullPlan.sources.filter((s) => s.targetScope === scope) };
89
+ if (scope !== "both" && hasExodusCompleteMarker(scope) && !dryRun) {
90
+ cliOutput(
91
+ { kind: "generic", ok: true, alreadySealed: true, scope },
92
+ {
93
+ command: "exodus migrate",
94
+ message: `Scope '${scope}' already migrated + sealed (completion marker present) \u2014 nothing to do.`
95
+ }
96
+ );
97
+ return;
98
+ }
99
+ humanInfo(`Exodus migration plan:`);
100
+ humanInfo(
101
+ ` Source DBs (${plan.sources.length} total, ${fmtBytes(plan.totalSourceBytes)} combined):`
102
+ );
103
+ for (const s of plan.sources) {
104
+ humanInfo(` [${s.targetScope.padEnd(7)}] ${s.name.padEnd(20)} ${s.path}`);
105
+ }
106
+ humanInfo(` Target project cleo.db: ${plan.projectDbPath}`);
107
+ humanInfo(` Target global cleo.db: ${plan.globalDbPath}`);
108
+ humanInfo(` Available disk: ${fmtBytes(plan.availableBytes)}`);
109
+ humanInfo(
110
+ ` Required (1.2\xD7 largest ${fmtBytes(plan.largestSourceBytes)} + consolidated): ${fmtBytes(plan.requiredBytes)}`
111
+ );
112
+ humanInfo(` Disk pre-flight: ${plan.diskPreflight ? "PASS" : "FAIL"}`);
113
+ if (plan.resumeFromStaging) {
114
+ humanInfo(` Resuming from existing staging: ${plan.stagingDir}`);
115
+ }
116
+ if (dryRun) {
117
+ cliOutput(
118
+ {
119
+ kind: "generic",
120
+ dryRun: true,
121
+ plan: {
122
+ sources: plan.sources.map((s) => ({
123
+ name: s.name,
124
+ path: s.path,
125
+ targetScope: s.targetScope
126
+ })),
127
+ totalSourceBytes: plan.totalSourceBytes,
128
+ largestSourceBytes: plan.largestSourceBytes,
129
+ requiredBytes: plan.requiredBytes,
130
+ availableBytes: plan.availableBytes,
131
+ diskPreflight: plan.diskPreflight,
132
+ stagingDir: plan.stagingDir,
133
+ resumeFromStaging: plan.resumeFromStaging,
134
+ projectDbPath: plan.projectDbPath,
135
+ globalDbPath: plan.globalDbPath
136
+ }
137
+ },
138
+ { command: "exodus migrate" }
139
+ );
140
+ return;
141
+ }
142
+ if (!sourcesPresent(plan.sources)) {
143
+ cliError(
144
+ "No legacy source DBs found. Nothing to migrate.",
145
+ ExitCode.NOT_FOUND,
146
+ { name: "E_NO_SOURCES" },
147
+ { operation: "exodus.migrate" }
148
+ );
149
+ process.exitCode = ExitCode.NOT_FOUND;
150
+ return;
151
+ }
152
+ if (!plan.diskPreflight) {
153
+ const shortfall = Math.max(0, plan.requiredBytes - plan.availableBytes);
154
+ cliError(
155
+ `Insufficient disk space for exodus. Need \u2265${fmtBytes(plan.requiredBytes)} (\u22481.2\xD7 largest source ${fmtBytes(plan.largestSourceBytes)} + consolidated estimate ${fmtBytes(plan.totalSourceBytes)}), have ${fmtBytes(plan.availableBytes)} \u2014 ${fmtBytes(shortfall)} short. Free up space (e.g. \`cleo backup prune\`) or move .cleo/ to a larger volume.`,
156
+ ExitCode.VALIDATION_ERROR,
157
+ { name: "E_DISK_PREFLIGHT_FAIL" },
158
+ { operation: "exodus.migrate" }
159
+ );
160
+ process.exitCode = ExitCode.VALIDATION_ERROR;
161
+ return;
162
+ }
163
+ humanInfo("Starting migration\u2026");
164
+ const result = await runExodusMigrate(plan, forceCrossVersion, (msg) => humanInfo(` ${msg}`));
165
+ if (!result.ok) {
166
+ cliError(
167
+ result.error ?? "Migration failed",
168
+ ExitCode.GENERAL_ERROR,
169
+ { name: "E_EXODUS_MIGRATE_FAILED" },
170
+ { operation: "exodus.migrate" }
171
+ );
172
+ process.exitCode = ExitCode.GENERAL_ERROR;
173
+ return;
174
+ }
175
+ const copied = result.tables.filter((t) => !t.skipped).reduce((n, t) => n + t.rowsCopied, 0);
176
+ const skipped = result.tables.filter((t) => t.skipped).length;
177
+ const verifyResult = verifyMigration(
178
+ plan.sources,
179
+ plan.projectDbPath,
180
+ plan.globalDbPath,
181
+ (msg) => humanInfo(` verify: ${msg}`)
182
+ );
183
+ let archived = [];
184
+ if (isDataContinuityOk(verifyResult)) {
185
+ const consumed = plan.sources.filter((s) => existsSync(s.path));
186
+ const archiveResult = archiveMigratedSources(consumed, process.cwd());
187
+ archived = archiveResult.sources.filter((s) => s.action === "archived").map((s) => s.name);
188
+ humanInfo(
189
+ ` Archived ${archived.length} legacy source DB(s) \u2192 _archive/ and sealed completion marker(s): ${archiveResult.markersWritten.join(", ")}`
190
+ );
191
+ } else {
192
+ humanInfo(
193
+ " Parity validation did NOT pass \u2014 legacy sources LEFT IN PLACE (not archived). Run `cleo exodus verify` to inspect."
194
+ );
195
+ }
196
+ cliOutput(
197
+ {
198
+ kind: "generic",
199
+ ok: true,
200
+ summary: {
201
+ tablesProcessed: result.tables.length,
202
+ rowsCopied: copied,
203
+ tablesSkipped: skipped,
204
+ stagingDir: result.stagingDir,
205
+ backupCount: result.backupPaths.length,
206
+ archivedSources: archived,
207
+ archived: archived.length > 0
208
+ },
209
+ tables: result.tables
210
+ },
211
+ {
212
+ command: "exodus migrate",
213
+ message: `Migration complete. ${result.tables.length} tables processed, ${copied} rows copied.`
214
+ }
215
+ );
216
+ }
217
+ });
218
+ var verifySubCommand = defineCommand({
219
+ meta: {
220
+ name: "verify",
221
+ description: "Verify row-level equivalence between legacy DBs and consolidated cleo.db"
222
+ },
223
+ args: {
224
+ "show-passing": {
225
+ type: "boolean",
226
+ description: "Include passing tables in human output (default: failures only)",
227
+ default: false
228
+ }
229
+ },
230
+ run({ args }) {
231
+ const showPassing = args["show-passing"] === true;
232
+ const plan = buildExodusPlan(process.cwd());
233
+ const projectDbPath = resolveDualScopeDbPath("project", process.cwd());
234
+ const globalDbPath = resolveDualScopeDbPath("global");
235
+ humanInfo("Running equivalence verification\u2026");
236
+ const result = runExodusVerify(
237
+ plan.sources,
238
+ projectDbPath,
239
+ globalDbPath,
240
+ (msg) => humanInfo(` ${msg}`)
241
+ );
242
+ if (!result.ok && result.error) {
243
+ cliError(
244
+ result.error,
245
+ ExitCode.GENERAL_ERROR,
246
+ { name: "E_EXODUS_VERIFY_FAILED" },
247
+ { operation: "exodus.verify" }
248
+ );
249
+ process.exitCode = ExitCode.GENERAL_ERROR;
250
+ return;
251
+ }
252
+ const failures = result.tables.filter((t) => !t.countMatch || !t.hashMatch);
253
+ const passing = result.tables.filter((t) => t.countMatch && t.hashMatch);
254
+ if (failures.length > 0) {
255
+ humanInfo(`
256
+ Failed tables (${failures.length}):`);
257
+ for (const t of failures) {
258
+ humanInfo(
259
+ ` FAIL [${t.scope}] ${t.tableName}: source=${t.sourceCount}, target=${t.targetCount}, hashMatch=${t.hashMatch}`
260
+ );
261
+ }
262
+ }
263
+ if (showPassing && passing.length > 0) {
264
+ humanInfo(`
265
+ Passing tables (${passing.length}):`);
266
+ for (const t of passing) {
267
+ humanInfo(` OK [${t.scope}] ${t.tableName}: ${t.sourceCount} rows`);
268
+ }
269
+ }
270
+ cliOutput(
271
+ {
272
+ kind: "generic",
273
+ ok: result.ok,
274
+ summary: {
275
+ totalTables: result.tables.length,
276
+ passing: passing.length,
277
+ failing: failures.length
278
+ },
279
+ failures,
280
+ ...showPassing ? { passing } : {}
281
+ },
282
+ {
283
+ command: "exodus verify",
284
+ message: result.ok ? `All ${passing.length} tables verified \u2014 equivalence confirmed.` : `${failures.length} table(s) failed equivalence check.`
285
+ }
286
+ );
287
+ if (!result.ok) {
288
+ process.exitCode = ExitCode.GENERAL_ERROR;
289
+ }
290
+ }
291
+ });
292
+ var sealSubCommand = defineCommand({
293
+ meta: {
294
+ name: "seal",
295
+ description: "Certify an already-migrated install: count-parity gate (no digest) \u2192 archive legacy source DBs (reversible) + write the completion marker so exodus-on-open stops re-firing."
296
+ },
297
+ args: {
298
+ scope: {
299
+ type: "string",
300
+ description: "Which scope to seal: 'global', 'project', or 'both' (default)",
301
+ default: "both"
302
+ }
303
+ },
304
+ run({ args }) {
305
+ const scope = args.scope ?? "both";
306
+ if (scope !== "both" && scope !== "project" && scope !== "global") {
307
+ cliError(
308
+ `Invalid --scope '${scope}'. Use 'global', 'project', or 'both'.`,
309
+ ExitCode.VALIDATION_ERROR,
310
+ { name: "E_INVALID_SCOPE" },
311
+ { operation: "exodus.seal" }
312
+ );
313
+ process.exitCode = ExitCode.VALIDATION_ERROR;
314
+ return;
315
+ }
316
+ const plan = buildExodusPlan(process.cwd());
317
+ const result = sealExodus(plan, scope, process.cwd());
318
+ if (!result.ok) {
319
+ cliError(
320
+ result.refusedReason ?? "Seal refused \u2014 parity deficit.",
321
+ ExitCode.GENERAL_ERROR,
322
+ { name: "E_EXODUS_SEAL_DEFICIT" },
323
+ { operation: "exodus.seal" }
324
+ );
325
+ process.exitCode = ExitCode.GENERAL_ERROR;
326
+ return;
327
+ }
328
+ for (const sc of result.scopes) {
329
+ const moved = sc.archived.filter((a) => a.action === "archived").length;
330
+ humanInfo(
331
+ ` [${sc.scope}] ${sc.alreadySealed ? "re-sealed" : "sealed"} \u2014 archived ${moved} legacy DB(s), marker: ${sc.markerPath}`
332
+ );
333
+ }
334
+ cliOutput(
335
+ {
336
+ kind: "generic",
337
+ ok: true,
338
+ scopesSealed: result.scopes.map((s) => s.scope),
339
+ tablesVerified: result.parity.checked,
340
+ archived: result.scopes.flatMap(
341
+ (s) => s.archived.filter((a) => a.action === "archived").map((a) => ({ scope: s.scope, name: a.name, archivedTo: a.archivedTo }))
342
+ )
343
+ },
344
+ {
345
+ command: "exodus seal",
346
+ message: `Sealed ${result.scopes.map((s) => s.scope).join(
347
+ " + "
348
+ )} \u2014 ${result.parity.checked} tables count-verified, legacy DBs archived (reversible).`
349
+ }
350
+ );
351
+ }
352
+ });
353
+ function showStatus() {
354
+ const result = runExodusStatus(process.cwd());
355
+ humanInfo("Exodus status:");
356
+ humanInfo(` Staging dir present: ${result.hasStaging ? result.stagingDir ?? "yes" : "none"}`);
357
+ humanInfo(` Project cleo.db: ${result.projectDbExists ? "present" : "not yet created"}`);
358
+ humanInfo(` Global cleo.db: ${result.globalDbExists ? "present" : "not yet created"}`);
359
+ humanInfo("");
360
+ humanInfo(" Source DBs:");
361
+ for (const s of result.sources) {
362
+ const size = s.exists ? `${(s.bytes / 1024).toFixed(1)} KB` : "-";
363
+ humanInfo(` ${s.exists ? "\u2713" : "\u2717"} ${s.name.padEnd(22)} ${size.padStart(10)} ${s.path}`);
364
+ }
365
+ if (result.journal) {
366
+ const done = result.journal.tables.filter((t) => t.status === "done").length;
367
+ const total = result.journal.tables.length;
368
+ humanInfo("");
369
+ humanInfo(` Journal: ${done}/${total} tables done, started ${result.journal.startedAt}`);
370
+ }
371
+ cliOutput(result, { command: "exodus status" });
372
+ }
373
+ var statusSubCommand = defineCommand({
374
+ meta: {
375
+ name: "status",
376
+ description: "Show exodus migration status (staging, source DBs, target DBs)"
377
+ },
378
+ run() {
379
+ showStatus();
380
+ }
381
+ });
382
+ var exodusCommand = defineCommand({
383
+ meta: {
384
+ name: "exodus",
385
+ description: "[TRANSITIONAL] Migrate legacy multi-DB fleet to consolidated dual-scope cleo.db (SG-DB-SUBSTRATE-V2)"
386
+ },
387
+ subCommands: {
388
+ migrate: migrateSubCommand,
389
+ verify: verifySubCommand,
390
+ seal: sealSubCommand,
391
+ status: statusSubCommand
392
+ },
393
+ async run({ cmd, rawArgs }) {
394
+ if (isSubCommandDispatch(rawArgs, cmd.subCommands)) return;
395
+ showStatus();
396
+ }
397
+ });
398
+ export {
399
+ exodusCommand
400
+ };
401
+ //# sourceMappingURL=exodus-KALO3B3X.js.map
@@ -0,0 +1,92 @@
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
+ defineCommand
18
+ } from "./chunk-PKKZPOOP.js";
19
+ import {
20
+ dispatchFromCli,
21
+ dispatchRaw,
22
+ handleRawError
23
+ } from "./chunk-3IOQVUO7.js";
24
+ import "./chunk-AWCQH2W5.js";
25
+ import "./chunk-OGV57L4J.js";
26
+ import "./chunk-ZBISIPCK.js";
27
+ import "./chunk-3ZO3M37V.js";
28
+ import "./chunk-6JSJNYH2.js";
29
+ import "./chunk-QFFQSKRC.js";
30
+
31
+ // packages/cleo/src/cli/commands/export.ts
32
+ var exportCommand = defineCommand({
33
+ meta: { name: "export", description: "Export tasks to CSV, TSV, JSON, or markdown format" },
34
+ args: {
35
+ "export-format": {
36
+ type: "string",
37
+ description: "Export format: json, csv, tsv, markdown",
38
+ default: "json"
39
+ },
40
+ output: {
41
+ type: "string",
42
+ description: "Output file path (stdout if omitted)"
43
+ },
44
+ status: {
45
+ type: "string",
46
+ description: "Filter by status (comma-separated)"
47
+ },
48
+ parent: {
49
+ type: "string",
50
+ description: "Filter by parent task"
51
+ },
52
+ phase: {
53
+ type: "string",
54
+ description: "Filter by phase"
55
+ }
56
+ },
57
+ async run({ args }) {
58
+ const hasOutput = !!args.output;
59
+ if (hasOutput) {
60
+ await dispatchFromCli(
61
+ "query",
62
+ "admin",
63
+ "export",
64
+ {
65
+ format: args["export-format"],
66
+ output: args.output,
67
+ status: args.status,
68
+ parent: args.parent,
69
+ phase: args.phase
70
+ },
71
+ { command: "export" }
72
+ );
73
+ } else {
74
+ const response = await dispatchRaw("query", "admin", "export", {
75
+ format: args["export-format"],
76
+ status: args.status,
77
+ parent: args.parent,
78
+ phase: args.phase
79
+ });
80
+ handleRawError(response, { command: "export", operation: "admin.export" });
81
+ const data = response.data;
82
+ if (data?.content) {
83
+ process.stdout.write(data.content);
84
+ if (!data.content.endsWith("\n")) process.stdout.write("\n");
85
+ }
86
+ }
87
+ }
88
+ });
89
+ export {
90
+ exportCommand
91
+ };
92
+ //# sourceMappingURL=export-ROFOCG4M.js.map
@@ -0,0 +1,96 @@
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
+ defineCommand
18
+ } from "./chunk-PKKZPOOP.js";
19
+ import {
20
+ dispatchFromCli,
21
+ dispatchRaw,
22
+ handleRawError
23
+ } from "./chunk-3IOQVUO7.js";
24
+ import "./chunk-AWCQH2W5.js";
25
+ import "./chunk-OGV57L4J.js";
26
+ import "./chunk-ZBISIPCK.js";
27
+ import "./chunk-3ZO3M37V.js";
28
+ import "./chunk-6JSJNYH2.js";
29
+ import "./chunk-QFFQSKRC.js";
30
+
31
+ // packages/cleo/src/cli/commands/export-tasks.ts
32
+ var exportTasksCommand = defineCommand({
33
+ meta: {
34
+ name: "export-tasks",
35
+ description: "Export tasks to portable .cleo-export.json package for cross-project transfer"
36
+ },
37
+ args: {
38
+ taskIds: {
39
+ type: "positional",
40
+ description: "Task IDs to export (space-separated; omit to export all)",
41
+ required: false
42
+ },
43
+ output: {
44
+ type: "string",
45
+ description: "Output file path (stdout if omitted)",
46
+ alias: "o"
47
+ },
48
+ subtree: {
49
+ type: "boolean",
50
+ description: "Include all descendants of specified task(s)",
51
+ default: false
52
+ },
53
+ filter: {
54
+ type: "string",
55
+ description: "Filter tasks by criteria (key=value)"
56
+ },
57
+ "include-deps": {
58
+ type: "boolean",
59
+ description: "Auto-include task dependencies",
60
+ default: false
61
+ },
62
+ "dry-run": {
63
+ type: "boolean",
64
+ description: "Preview selection without creating export file",
65
+ default: false
66
+ }
67
+ },
68
+ async run({ args }) {
69
+ const hasOutput = !!args.output;
70
+ const dryRun = args["dry-run"];
71
+ const params = {
72
+ taskIds: args.taskIds ? [args.taskIds] : void 0,
73
+ output: args.output,
74
+ subtree: args.subtree,
75
+ filter: args.filter,
76
+ includeDeps: args["include-deps"],
77
+ dryRun,
78
+ scope: "tasks"
79
+ };
80
+ if (hasOutput || dryRun) {
81
+ await dispatchFromCli("query", "admin", "export", params, { command: "export-tasks" });
82
+ } else {
83
+ const response = await dispatchRaw("query", "admin", "export", params);
84
+ handleRawError(response, { command: "export-tasks", operation: "admin.export" });
85
+ const data = response.data;
86
+ if (data?.content) {
87
+ process.stdout.write(data.content);
88
+ if (!data.content.endsWith("\n")) process.stdout.write("\n");
89
+ }
90
+ }
91
+ }
92
+ });
93
+ export {
94
+ exportTasksCommand
95
+ };
96
+ //# sourceMappingURL=export-tasks-US3WBIEQ.js.map