chainlesschain 0.162.189 → 0.162.197

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 (317) hide show
  1. package/README.md +84 -11
  2. package/bin/chainlesschain.js +7 -52
  3. package/completions/_cc +209 -0
  4. package/completions/cc.bash +18 -0
  5. package/completions/cc.fish +13 -0
  6. package/completions/cc.ps1 +226 -0
  7. package/package.json +10 -2
  8. package/src/assets/web-panel/assets/{AIOps-DbZft8w0.js → AIOps-D3Gu1a5d.js} +1 -1
  9. package/src/assets/web-panel/assets/{ActionButton-DoOZpwfN.js → ActionButton-DrwAoKaz.js} +1 -1
  10. package/src/assets/web-panel/assets/{Analytics-B0J0KLTW.js → Analytics-C7Q-gd_3.js} +3 -3
  11. package/src/assets/web-panel/assets/{AppLayout-D9eIR0qq.js → AppLayout-DgBtae-n.js} +4 -4
  12. package/src/assets/web-panel/assets/{Artifacts-BnZXEVeo.js → Artifacts-pQ6LcA-W.js} +1 -1
  13. package/src/assets/web-panel/assets/{Audit-X1ce4Bjn.js → Audit-DK61tocB.js} +1 -1
  14. package/src/assets/web-panel/assets/{BackgroundAgents-BvWR-y5v.js → BackgroundAgents-BOKgDFRh.js} +1 -1
  15. package/src/assets/web-panel/assets/{Backup-BublSGEd.js → Backup-Bo9G4vTP.js} +1 -1
  16. package/src/assets/web-panel/assets/{BaseInput-CR_77Hso.js → BaseInput-Do_dE9_v.js} +1 -1
  17. package/src/assets/web-panel/assets/{Chat-DixW52tq.js → Chat-COVvZzOL.js} +6 -6
  18. package/src/assets/web-panel/assets/ChatBubbleRenderer-BUUyJ5QO.js +1 -0
  19. package/src/assets/web-panel/assets/{Checkbox-CCv1C87K.js → Checkbox-Z9MJMolt.js} +1 -1
  20. package/src/assets/web-panel/assets/{Codegen-B03Cc3dd.js → Codegen-BVzWKVbf.js} +1 -1
  21. package/src/assets/web-panel/assets/{Col-CA06-6pU.js → Col-C8MnYcbT.js} +1 -1
  22. package/src/assets/web-panel/assets/{Community-Bj881J52.js → Community-DQxqw15l.js} +1 -1
  23. package/src/assets/web-panel/assets/{Compact-UZLTPoaL.js → Compact-BAUmrh3y.js} +1 -1
  24. package/src/assets/web-panel/assets/{Compliance-kGwzRb_0.js → Compliance-jPAkQ3zK.js} +1 -1
  25. package/src/assets/web-panel/assets/{Cowork-KundoYM8.js → Cowork-BBQyxbh8.js} +2 -2
  26. package/src/assets/web-panel/assets/{Cron-BYZyoqDe.js → Cron-W5koq8Z5.js} +2 -2
  27. package/src/assets/web-panel/assets/{Crosschain-BhrrppBX.js → Crosschain-BQhnu5hS.js} +1 -1
  28. package/src/assets/web-panel/assets/{DID-CdC6EguZ.js → DID-DD7PlI18.js} +2 -2
  29. package/src/assets/web-panel/assets/{Dashboard-CcQx3J4y.js → Dashboard-w_ILuwKI.js} +2 -2
  30. package/src/assets/web-panel/assets/{Dropdown-BpijtEzQ.js → Dropdown-qiDUAyAo.js} +1 -1
  31. package/src/assets/web-panel/assets/{EmailListRenderer-DfZjeZTe.js → EmailListRenderer-PDeBcI5H.js} +1 -1
  32. package/src/assets/web-panel/assets/{FamilyGuardDashboard-BFYSf69C.js → FamilyGuardDashboard-SuArscRM.js} +1 -1
  33. package/src/assets/web-panel/assets/{Federation-Okdi3pJm.js → Federation-BCovZaUn.js} +1 -1
  34. package/src/assets/web-panel/assets/{FormItemContext-mH-HebKW.js → FormItemContext-DjlFdVFk.js} +1 -1
  35. package/src/assets/web-panel/assets/{GenericCardRenderer-xivV69x7.js → GenericCardRenderer-DoEZ7fcS.js} +1 -1
  36. package/src/assets/web-panel/assets/{Git-1rh_YBwg.js → Git-CV0-6GPI.js} +2 -2
  37. package/src/assets/web-panel/assets/{Governance-eAXkNxdY.js → Governance-B_SFN50w.js} +1 -1
  38. package/src/assets/web-panel/assets/{Inference-CS6dMVTN.js → Inference-heI0Eo6k.js} +1 -1
  39. package/src/assets/web-panel/assets/{KnowledgeGraph-Bq_TnkvD.js → KnowledgeGraph-Cz5INS5p.js} +1 -1
  40. package/src/assets/web-panel/assets/{Logs-KchHtiHt.js → Logs-BSFxiHkg.js} +2 -2
  41. package/src/assets/web-panel/assets/MarkdownRenderer-1mNozZ8v.js +1 -0
  42. package/src/assets/web-panel/assets/{Marketplace-CsmGcX5X.js → Marketplace-0TWTpE7k.js} +1 -1
  43. package/src/assets/web-panel/assets/{McpTools-BaPFnnyz.js → McpTools-CV4-wBLm.js} +4 -4
  44. package/src/assets/web-panel/assets/{Memory-2m-sUUf7.js → Memory-x5bH5rw5.js} +2 -2
  45. package/src/assets/web-panel/assets/{MobileBridge-D5nVZBRu.js → MobileBridge-DaBmUu9G.js} +1 -1
  46. package/src/assets/web-panel/assets/{MobileProjects-Bo8MLZvT.js → MobileProjects-DqnoFPgR.js} +1 -1
  47. package/src/assets/web-panel/assets/{Mtc-3GDvamGa.js → Mtc-B_zKEBif.js} +4 -4
  48. package/src/assets/web-panel/assets/{MtcAudit-D2zGuZCH.js → MtcAudit-BCfKD2yg.js} +4 -4
  49. package/src/assets/web-panel/assets/{Multisig-BBVQ4t6t.js → Multisig-DgYfj6c_.js} +3 -3
  50. package/src/assets/web-panel/assets/{NLProgramming-BIOCyOGp.js → NLProgramming-Dz09lFUm.js} +1 -1
  51. package/src/assets/web-panel/assets/{Notes-DVwBGpzc.js → Notes-Cuj6ugBE.js} +3 -3
  52. package/src/assets/web-panel/assets/{NotificationSettings-BDnHfIfX.js → NotificationSettings-DK2WXjhg.js} +1 -1
  53. package/src/assets/web-panel/assets/{OrderTableRenderer-C7Ek20ag.js → OrderTableRenderer-D1IAOQoo.js} +1 -1
  54. package/src/assets/web-panel/assets/{Organization-D3SRKaa7.js → Organization-9fqnPvTw.js} +4 -4
  55. package/src/assets/web-panel/assets/{Overflow-C2B8ahyn.js → Overflow-n5xHkhow.js} +1 -1
  56. package/src/assets/web-panel/assets/{P2P-2iwQzG65.js → P2P-B5AUWwH-.js} +2 -2
  57. package/src/assets/web-panel/assets/{PdhVaultBrowser-CoPiWqMN.js → PdhVaultBrowser-CoUDV6dy.js} +4 -4
  58. package/src/assets/web-panel/assets/{Permissions-yV5XNXo5.js → Permissions-DPRmQf_H.js} +4 -4
  59. package/src/assets/web-panel/assets/{PersonalDataHub-uCDJhMUF.js → PersonalDataHub-B37bsbEN.js} +4 -4
  60. package/src/assets/web-panel/assets/{Pipeline-hN7ucMOA.js → Pipeline-CCAuPqu9.js} +1 -1
  61. package/src/assets/web-panel/assets/{Privacy-CgU0ptN4.js → Privacy-B81msZdv.js} +1 -1
  62. package/src/assets/web-panel/assets/{ProjectInit-CfYPiT6j.js → ProjectInit-B-Py2NbF.js} +2 -2
  63. package/src/assets/web-panel/assets/{ProjectSettings-B0A2C4nw.js → ProjectSettings-CYsneiRB.js} +2 -2
  64. package/src/assets/web-panel/assets/{Projects-BE5C0ajn.js → Projects-Y975Mh6R.js} +1 -1
  65. package/src/assets/web-panel/assets/{Providers-CstQPf8W.js → Providers-uO-10aP1.js} +1 -1
  66. package/src/assets/web-panel/assets/{QrScannerModal-Co3z_ynk.js → QrScannerModal-Bj_6gJ0l.js} +1 -1
  67. package/src/assets/web-panel/assets/{QuickAsk-DMTS6pQ6.js → QuickAsk-BgpBCMPE.js} +1 -1
  68. package/src/assets/web-panel/assets/{Recommend-ETw4odUa.js → Recommend-DhUW3YUA.js} +1 -1
  69. package/src/assets/web-panel/assets/RemoteSession-DdeyfbkA.js +5 -0
  70. package/src/assets/web-panel/assets/{Reputation-BTVqQgKq.js → Reputation-fxW421xd.js} +1 -1
  71. package/src/assets/web-panel/assets/{Row-CBKKwwtO.js → Row-De73w1og.js} +1 -1
  72. package/src/assets/web-panel/assets/{RssFeed-BHUQ438I.js → RssFeed-3US_Q_lj.js} +2 -2
  73. package/src/assets/web-panel/assets/{Search-B4NqeUsF.js → Search-DbZ_DU74.js} +1 -1
  74. package/src/assets/web-panel/assets/{Security-BRjoYG5_.js → Security-DoIU1vMF.js} +4 -4
  75. package/src/assets/web-panel/assets/{Services-CxQzu3p3.js → Services-DB_RGqpc.js} +2 -2
  76. package/src/assets/web-panel/assets/{Skeleton-BKzwwmWO.js → Skeleton-DnzLaayC.js} +1 -1
  77. package/src/assets/web-panel/assets/{Skills-DrsFcgth.js → Skills-VzVXHENF.js} +1 -1
  78. package/src/assets/web-panel/assets/{Sla-D21tmXCH.js → Sla-DMfvjCAI.js} +1 -1
  79. package/src/assets/web-panel/assets/{SpeechSettings-CjyjLfp8.js → SpeechSettings-DQQOYWbF.js} +1 -1
  80. package/src/assets/web-panel/assets/{SyncSettings-Cu45-tnx.js → SyncSettings-Bmx3FG1P.js} +2 -2
  81. package/src/assets/web-panel/assets/{Tasks-oMcILYOj.js → Tasks-DOQyfb-2.js} +1 -1
  82. package/src/assets/web-panel/assets/{Templates-Bh-Zcr5R.js → Templates-D6hTRT7c.js} +1 -1
  83. package/src/assets/web-panel/assets/{Tenant-68ns63aI.js → Tenant-CTPQZAzs.js} +1 -1
  84. package/src/assets/web-panel/assets/{Terminal-BLJkFykE.js → Terminal-B7vII3oH.js} +2 -2
  85. package/src/assets/web-panel/assets/{TimelineRenderer-xcrJLq-O.js → TimelineRenderer-BkiFJeXV.js} +1 -1
  86. package/src/assets/web-panel/assets/{Tokens-C6PpFJtf.js → Tokens-BPPdQMNo.js} +1 -1
  87. package/src/assets/web-panel/assets/{Trigger-BaKA7tdM.js → Trigger-BxG8JAEI.js} +1 -1
  88. package/src/assets/web-panel/assets/{Trust-BzhA57Jc.js → Trust-DHD7nMpM.js} +1 -1
  89. package/src/assets/web-panel/assets/{UkeySign-4_U3JkIR.js → UkeySign-B4BJpU47.js} +1 -1
  90. package/src/assets/web-panel/assets/{VideoEditing-162AANxX.js → VideoEditing-CRiGpFx2.js} +1 -1
  91. package/src/assets/web-panel/assets/{Wallet-B1viuql_.js → Wallet-BSDSNiem.js} +4 -4
  92. package/src/assets/web-panel/assets/{WebAuthn-ZVWazhCy.js → WebAuthn-DLTUh5Zv.js} +5 -5
  93. package/src/assets/web-panel/assets/WorkflowEditor-tW2MwjhD.js +1 -0
  94. package/src/assets/web-panel/assets/{chat-DmrHNuwq.js → chat-SgsLQ3FC.js} +1 -1
  95. package/src/assets/web-panel/assets/{colors-DAJ_M-PK.js → colors-BHjjLIKO.js} +1 -1
  96. package/src/assets/web-panel/assets/{compact-item-uIzmYwLs.js → compact-item-VceErdKq.js} +1 -1
  97. package/src/assets/web-panel/assets/{createContext-D_ZmuLwb.js → createContext-BZ332MYl.js} +1 -1
  98. package/src/assets/web-panel/assets/devWarning-DosMaL-k.js +1 -0
  99. package/src/assets/web-panel/assets/{hasIn-CDt_shTL.js → hasIn-CBTjJOjn.js} +1 -1
  100. package/src/assets/web-panel/assets/index-0O5ePnUq.js +1 -0
  101. package/src/assets/web-panel/assets/{index-rXdwUeE3.js → index-1n7xjKDU.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-BAvSmJXW.js → index-29wVzi-k.js} +1 -1
  103. package/src/assets/web-panel/assets/{index-C16fYKFD.js → index-B2u26AS3.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-C5WcdJH2.js → index-B40dQn0G.js} +3 -3
  105. package/src/assets/web-panel/assets/{index-CaelyMgF.js → index-B5KAGxNo.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-OzTxFIJP.js → index-BC1xuQgX.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-CzXqvMuP.js → index-BETEjuNr.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-clSX4PEc.js → index-BOtvPdHt.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-saf3VNeP.js → index-BPXFLYdW.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-DdUMcwRB.js → index-BQSmZGgs.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-DfSSy9uy.js → index-BRWhLbWF.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-GcKOHD_c.js → index-BTlc-Bve.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-BHvlm0In.js → index-BY1wexYG.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-Cvak6Oe2.js → index-BcUenmCX.js} +1 -1
  115. package/src/assets/web-panel/assets/{index-CKyd472S.js → index-BeiqkxJG.js} +1 -1
  116. package/src/assets/web-panel/assets/{index-DvFhhe6r.js → index-BhXZEUAc.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-DBFmcaCQ.js → index-By5jBtkV.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-DqDSF2RW.js → index-CLc19alH.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-DeGBoLQA.js → index-CMVvxIS8.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-FyplHuNt.js → index-C_B9rFQE.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-CeUpKjvi.js → index-CaIS_TNX.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-BRa4kJ_S.js → index-CawpdGTW.js} +1 -1
  123. package/src/assets/web-panel/assets/index-ChAzPigF.js +1 -0
  124. package/src/assets/web-panel/assets/{index-QsgfSZrV.js → index-CpumS98o.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-BDF6EQBs.js → index-Cr4rjlW5.js} +1 -1
  126. package/src/assets/web-panel/assets/{index-rS3gl_68.js → index-CrUgDQkf.js} +1 -1
  127. package/src/assets/web-panel/assets/{index-D4n1lGTB.js → index-CtjLcCNU.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-ifxmu8SY.js → index-DUkVN794.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-BTCXf1t-.js → index-D_SePDWj.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-Bbxjfstq.js → index-DaCCy6lq.js} +1 -1
  131. package/src/assets/web-panel/assets/{index-D9OE8B3d.js → index-DdefYBSw.js} +1 -1
  132. package/src/assets/web-panel/assets/{index-CG0lY4h3.js → index-DePOeMDM.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-Bx4d6c1k.js → index-DgPvuIn2.js} +1 -1
  134. package/src/assets/web-panel/assets/{index-Z8P4BexE.js → index-FJ3zC9LK.js} +1 -1
  135. package/src/assets/web-panel/assets/{index-ByzGvpR9.js → index-_PHrIO4O.js} +1 -1
  136. package/src/assets/web-panel/assets/{index-DwfvPe-j.js → index-fU7wNHDB.js} +1 -1
  137. package/src/assets/web-panel/assets/{index-CcZ9xJI9.js → index-iYQNU9za.js} +1 -1
  138. package/src/assets/web-panel/assets/{index-CbD_WW_6.js → index-vIXOpcjD.js} +1 -1
  139. package/src/assets/web-panel/assets/{initDefaultProps-pmfaD-aK.js → initDefaultProps-D1oZNz0D.js} +1 -1
  140. package/src/assets/web-panel/assets/{motion-CaQ2CpYF.js → motion-C8k6doMO.js} +1 -1
  141. package/src/assets/web-panel/assets/{move-CkKTqNbI.js → move-DJ4qSbYt.js} +1 -1
  142. package/src/assets/web-panel/assets/{mtc-parser-Dd4xsgRI.js → mtc-parser-CdpJD85j.js} +1 -1
  143. package/src/assets/web-panel/assets/{omit-BFuA5YEs.js → omit-B0V4slKA.js} +1 -1
  144. package/src/assets/web-panel/assets/{pickAttrs-DDfxOAJc.js → pickAttrs-Di5NiW1F.js} +1 -1
  145. package/src/assets/web-panel/assets/{placementArrow-Be595JCp.js → placementArrow-B5OMHgEM.js} +1 -1
  146. package/src/assets/web-panel/assets/{responsiveObserve-7byljUM3.js → responsiveObserve-C6U9IWql.js} +1 -1
  147. package/src/assets/web-panel/assets/{slide-CTWfOTaY.js → slide-BMyTH3rN.js} +1 -1
  148. package/src/assets/web-panel/assets/{statusUtils-CNZOuIxM.js → statusUtils-C7d6BG7Z.js} +1 -1
  149. package/src/assets/web-panel/assets/{styleChecker-DwOcBV78.js → styleChecker-CR50QnQy.js} +1 -1
  150. package/src/assets/web-panel/assets/{useFlexGapSupport-B6MNwAO9.js → useFlexGapSupport-DBEeoMb8.js} +1 -1
  151. package/src/assets/web-panel/assets/{useFs-CzyQjH9r.js → useFs-3r099cjv.js} +1 -1
  152. package/src/assets/web-panel/assets/{usePersonalDataHub-Dxh3KiVA.js → usePersonalDataHub-C5IYNdTK.js} +1 -1
  153. package/src/assets/web-panel/assets/{vnode-DVfZiS5N.js → vnode-DmEOLRHf.js} +1 -1
  154. package/src/assets/web-panel/assets/{zoom-BYme7fbY.js → zoom-DnpUiVCB.js} +1 -1
  155. package/src/assets/web-panel/index.html +1 -1
  156. package/src/cli-help.js +181 -0
  157. package/src/command-help-index.json +181 -0
  158. package/src/command-manifest.json +1271 -175
  159. package/src/command-surface-policy.js +312 -0
  160. package/src/commands/agent.js +76 -33
  161. package/src/commands/artifacts.js +400 -2
  162. package/src/commands/background-session.js +41 -3
  163. package/src/commands/checkpoint-restore-recovery.js +1476 -0
  164. package/src/commands/checkpoint.js +947 -22
  165. package/src/commands/compact.js +101 -25
  166. package/src/commands/config.js +506 -20
  167. package/src/commands/doctor.js +4 -1
  168. package/src/commands/hub.js +1 -1
  169. package/src/commands/mcp.js +688 -24
  170. package/src/commands/pack.js +16 -2
  171. package/src/commands/plugin.js +20 -12
  172. package/src/commands/session-mcp-recovery.js +218 -0
  173. package/src/commands/session.js +470 -110
  174. package/src/commands/setup.js +36 -10
  175. package/src/commands/skill.js +181 -110
  176. package/src/commands/status.js +21 -5
  177. package/src/commands/update.js +68 -6
  178. package/src/constants.js +11 -0
  179. package/src/data/changelog.json +14 -1
  180. package/src/gateways/ws/action-protocol.js +10 -0
  181. package/src/gateways/ws/session-protocol.js +555 -27
  182. package/src/gateways/ws/ws-agent-handler.js +541 -14
  183. package/src/gateways/ws/ws-session-gateway.js +129 -22
  184. package/src/gateways/ws/ws-session-state.js +431 -0
  185. package/src/harness/background-task-manager.js +233 -36
  186. package/src/harness/jsonl-session-store.js +2551 -167
  187. package/src/harness/mcp-client.js +802 -61
  188. package/src/harness/prompt-compressor.js +227 -27
  189. package/src/harness/session-index.js +89 -38
  190. package/src/harness/session-list-index.js +254 -0
  191. package/src/harness/structured-handoff.js +410 -0
  192. package/src/lazy-dispatch.js +747 -84
  193. package/src/lib/__tests__/logger.test.js +50 -2
  194. package/src/lib/advisor-runtime.js +1047 -0
  195. package/src/lib/agent-core.js +1 -0
  196. package/src/lib/agent-sandbox.js +120 -26
  197. package/src/lib/agent-session-export.js +20 -0
  198. package/src/lib/agent-team/team-runner.js +230 -8
  199. package/src/lib/artifact-store.js +131 -8
  200. package/src/lib/background-agent-supervisor.js +185 -13
  201. package/src/lib/background-interaction-journal.js +37 -9
  202. package/src/lib/background-launch-profile.js +1058 -0
  203. package/src/lib/checkpoint-restore-already-completed-controller.js +902 -0
  204. package/src/lib/checkpoint-restore-orchestrator.js +987 -0
  205. package/src/lib/checkpoint-restore-partial-rollback-controller.js +1953 -0
  206. package/src/lib/checkpoint-restore-recovery-controller.js +689 -0
  207. package/src/lib/checkpoint-restore-recovery.js +884 -0
  208. package/src/lib/checkpoint-restore-retention.js +126 -0
  209. package/src/lib/checkpoint-restore-saga.js +5079 -0
  210. package/src/lib/checkpoint-restore-session-recovery.js +1178 -0
  211. package/src/lib/checkpoint-restore-workspace-target-verifier.js +270 -0
  212. package/src/lib/checkpoint-store.js +1688 -97
  213. package/src/lib/checkpoint-timeline-authority.js +522 -0
  214. package/src/lib/checkpoint-timeline.js +642 -0
  215. package/src/lib/config-keys.js +18 -119
  216. package/src/lib/config-manager.js +446 -27
  217. package/src/lib/config-redaction.js +57 -0
  218. package/src/lib/config-schema.js +853 -0
  219. package/src/lib/cowork-mcp-tools.js +5 -0
  220. package/src/lib/cowork-task-runner.js +458 -63
  221. package/src/lib/delivery-coordinator.js +1234 -0
  222. package/src/lib/delivery-evidence.js +450 -0
  223. package/src/lib/doctor-checkup.js +199 -14
  224. package/src/lib/executable-path.js +34 -0
  225. package/src/lib/fatal-handler.js +16 -0
  226. package/src/lib/file-checkpoint.js +4909 -186
  227. package/src/lib/file-lines.js +125 -0
  228. package/src/lib/headless-config-command.js +16 -5
  229. package/src/lib/hook-runner.cjs +139 -38
  230. package/src/lib/hooks-v2-workspace-context.js +10 -0
  231. package/src/lib/impacted-gate-selector.js +424 -0
  232. package/src/lib/interaction-adapter.js +62 -0
  233. package/src/lib/jsonl-session-store.js +1 -35
  234. package/src/lib/logger.js +66 -14
  235. package/src/lib/mcp-call-ledger-store.js +1069 -0
  236. package/src/lib/mcp-call-ledger.js +747 -0
  237. package/src/lib/mcp-client.js +5 -0
  238. package/src/lib/mcp-conflict-scheduler.js +468 -0
  239. package/src/lib/mcp-effect-contract.js +102 -0
  240. package/src/lib/mcp-headers-helper-trust.js +145 -0
  241. package/src/lib/mcp-headers-helper.js +616 -0
  242. package/src/lib/mcp-host-recovery-runtime.js +131 -0
  243. package/src/lib/mcp-ledger-recovery-admission.js +1065 -0
  244. package/src/lib/mcp-recovery-adjudication.js +443 -0
  245. package/src/lib/output-context.js +86 -0
  246. package/src/lib/packer/file-identity.js +170 -0
  247. package/src/lib/packer/index.js +3 -0
  248. package/src/lib/packer/native-update-state.js +277 -0
  249. package/src/lib/packer/pack-update-applier.js +1983 -136
  250. package/src/lib/packer/pack-update-checker.js +34 -0
  251. package/src/lib/packer/pack-update-downloader.js +875 -86
  252. package/src/lib/packer/pack-update-signature.js +86 -0
  253. package/src/lib/packer/pkg-config-generator.js +6 -0
  254. package/src/lib/paths.js +65 -10
  255. package/src/lib/plan-mode.js +831 -14
  256. package/src/lib/plan-persistence.js +540 -0
  257. package/src/lib/plugin-runtime/hooks.js +227 -69
  258. package/src/lib/plugin-runtime/plugin-options.js +189 -44
  259. package/src/lib/pr-automation-policy.js +146 -8
  260. package/src/lib/process-execution-broker/credential-agent.js +7 -0
  261. package/src/lib/process-execution-broker/index.js +53 -8
  262. package/src/lib/process-execution-broker/workspace-transaction.js +976 -73
  263. package/src/lib/project-instructions.js +165 -29
  264. package/src/lib/project-mcp-trust.js +67 -0
  265. package/src/lib/public-ide-capability-manifest.js +278 -0
  266. package/src/lib/public-ide-capability-validation.js +351 -0
  267. package/src/lib/secret-store.js +267 -43
  268. package/src/lib/secure-fs.js +1089 -0
  269. package/src/lib/security-audit.js +58 -0
  270. package/src/lib/service-manager.js +34 -13
  271. package/src/lib/session-budget-runtime.js +1452 -0
  272. package/src/lib/session-host-snapshot.js +388 -0
  273. package/src/lib/session-message-provenance.js +429 -0
  274. package/src/lib/session-projection.js +804 -0
  275. package/src/lib/session-resource-budget.js +1495 -0
  276. package/src/lib/settings-hooks.cjs +138 -22
  277. package/src/lib/settings-loader.cjs +25 -2
  278. package/src/lib/side-effect-ledger-store.js +45 -23
  279. package/src/lib/skill-execution-identity.js +217 -0
  280. package/src/lib/skill-loader.js +299 -18
  281. package/src/lib/sub-agent-context.js +236 -28
  282. package/src/lib/sub-agent-registry.js +5 -0
  283. package/src/lib/subagent-contract.js +94 -0
  284. package/src/lib/todo-manager.js +185 -18
  285. package/src/lib/todo-persistence.js +417 -0
  286. package/src/lib/turn-binding-store.js +41 -23
  287. package/src/lib/with-file-lock.js +25 -1
  288. package/src/lib/ws-chat-handler.js +21 -0
  289. package/src/program-base.js +18 -0
  290. package/src/repl/advisor-command.js +103 -0
  291. package/src/repl/agent-repl.js +2332 -154
  292. package/src/repl/btw-command.js +93 -10
  293. package/src/repl/clipboard-image.js +119 -0
  294. package/src/repl/config-summary.js +64 -108
  295. package/src/repl/prompt-editor.js +233 -0
  296. package/src/repl/prompt-interactions.js +404 -0
  297. package/src/repl/prompt-stash.js +354 -0
  298. package/src/repl/prompt-suggestions.js +312 -0
  299. package/src/repl/repl-keybindings.js +227 -0
  300. package/src/repl/session-recap.js +217 -0
  301. package/src/repl/slash-command-registry.js +25 -4
  302. package/src/repl/terminal-layout.js +88 -0
  303. package/src/runtime/agent-core.js +1264 -325
  304. package/src/runtime/coding-agent-contract-shared.cjs +13 -1
  305. package/src/runtime/coding-agent-managed-tool-policy.cjs +7 -2
  306. package/src/runtime/diagnostics.js +32 -13
  307. package/src/runtime/headless-runner.js +298 -118
  308. package/src/runtime/headless-stream.js +353 -95
  309. package/src/runtime/mcp-config.js +148 -14
  310. package/src/runtime/status-diagnostics-lite.js +137 -0
  311. package/src/assets/web-panel/assets/ChatBubbleRenderer-DDHDpBBA.js +0 -1
  312. package/src/assets/web-panel/assets/MarkdownRenderer-TabqHW9B.js +0 -1
  313. package/src/assets/web-panel/assets/RemoteSession-B0rkE09d.js +0 -5
  314. package/src/assets/web-panel/assets/WorkflowEditor-tzdyUk-1.js +0 -1
  315. package/src/assets/web-panel/assets/devWarning-DIrncrV1.js +0 -1
  316. package/src/assets/web-panel/assets/index-D-Swwqld.js +0 -1
  317. package/src/assets/web-panel/assets/index-FMZAMKy8.js +0 -1
package/README.md CHANGED
@@ -9,7 +9,7 @@ npm install -g chainlesschain
9
9
  chainlesschain setup
10
10
  ```
11
11
 
12
- After installation, three equivalent commands are available:
12
+ After installation, four equivalent commands are available:
13
13
 
14
14
  | Command | Description |
15
15
  | ---------------- | ----------------------------------------------------------------- |
@@ -21,6 +21,12 @@ After installation, three equivalent commands are available:
21
21
  ```bash
22
22
  cc setup # equivalent to: chainlesschain setup
23
23
  clchain start # equivalent to: chainlesschain start
24
+
25
+ # In a terminal, no subcommand starts the coding agent
26
+ cc
27
+
28
+ # Piped input runs one non-interactive agent turn
29
+ git diff | cc
24
30
  ```
25
31
 
26
32
  ## Requirements
@@ -28,9 +34,70 @@ clchain start # equivalent to: chainlesschain start
28
34
  - **Node.js** >= 22.12.0
29
35
  - **Docker** (optional, for backend services)
30
36
 
37
+ ## Shell completion
38
+
39
+ Completion files are generated from the same command manifest as `cc --help`
40
+ and ship in the npm package under `completions/`:
41
+
42
+ ```bash
43
+ # Bash
44
+ source "$(npm root -g)/chainlesschain/completions/cc.bash"
45
+
46
+ # Zsh
47
+ fpath=("$(npm root -g)/chainlesschain/completions" $fpath)
48
+ autoload -Uz compinit && compinit
49
+
50
+ # Fish
51
+ source (npm root -g)/chainlesschain/completions/cc.fish
52
+ ```
53
+
54
+ ```powershell
55
+ # PowerShell
56
+ . (Join-Path (npm root -g) "chainlesschain/completions/cc.ps1")
57
+ ```
58
+
31
59
  ## Commands
32
60
 
33
- > **175 top-level commands** are registered (as of CLI v0.162.160). The sections below document the most-used ones with full options. For the complete, always-current list, run `chainlesschain --help` (or `cc --help`) that output is the canonical source of truth.
61
+ > **175 top-level compatibility commands** are registered. `cc --help` shows the curated coding-agent surface; run `cc help --all` for the complete manifest-generated list and `cc help <command>` for generated command-specific help.
62
+
63
+ <!-- BEGIN GENERATED COMMAND LIFECYCLE -->
64
+ <!-- Generated by scripts/gen-command-manifest.mjs; do not edit. -->
65
+
66
+ ### Compatibility namespace and command lifecycle
67
+
68
+ The registered Commander graph contains **175** top-level commands (net growth **0** against the 175-command baseline). After excluding 25 deprecated compatibility entries and adding `lab` as their recommended namespace, the recommended top-level surface contains **151** commands. `lab` is phase-0 only, not another eagerly registered command.
69
+
70
+ | Legacy entry | Replacement | Deprecated since | Removal not before | Minimum window |
71
+ | ------------ | ---------------- | ---------------- | ------------------ | -------------- |
72
+ | `bm25` | `lab bm25` | `0.162.194` | `0.164.0` | 2 minor cycles |
73
+ | `ccron` | `lab ccron` | `0.162.194` | `0.164.0` | 2 minor cycles |
74
+ | `compt` | `lab compt` | `0.162.194` | `0.164.0` | 2 minor cycles |
75
+ | `consol` | `lab consol` | `0.162.194` | `0.164.0` | 2 minor cycles |
76
+ | `dao` | `lab dao` | `0.162.189` | `0.164.0` | 2 minor cycles |
77
+ | `evomap` | `lab evomap` | `0.162.189` | `0.164.0` | 2 minor cycles |
78
+ | `execbe` | `lab execbe` | `0.162.194` | `0.164.0` | 2 minor cycles |
79
+ | `fflag` | `lab fflag` | `0.162.194` | `0.164.0` | 2 minor cycles |
80
+ | `itbudget` | `lab itbudget` | `0.162.194` | `0.164.0` | 2 minor cycles |
81
+ | `mcpscaf` | `lab mcpscaf` | `0.162.194` | `0.164.0` | 2 minor cycles |
82
+ | `meminj` | `lab meminj` | `0.162.194` | `0.164.0` | 2 minor cycles |
83
+ | `orchgov` | `lab orchgov` | `0.162.194` | `0.164.0` | 2 minor cycles |
84
+ | `pdfp` | `lab pdfp` | `0.162.194` | `0.164.0` | 2 minor cycles |
85
+ | `promcomp` | `lab promcomp` | `0.162.194` | `0.164.0` | 2 minor cycles |
86
+ | `seshhook` | `lab seshhook` | `0.162.194` | `0.164.0` | 2 minor cycles |
87
+ | `seshsearch` | `lab seshsearch` | `0.162.194` | `0.164.0` | 2 minor cycles |
88
+ | `seshtail` | `lab seshtail` | `0.162.194` | `0.164.0` | 2 minor cycles |
89
+ | `seshu` | `lab seshu` | `0.162.194` | `0.164.0` | 2 minor cycles |
90
+ | `sganal` | `lab sganal` | `0.162.194` | `0.164.0` | 2 minor cycles |
91
+ | `slotfill` | `lab slotfill` | `0.162.194` | `0.164.0` | 2 minor cycles |
92
+ | `svccont` | `lab svccont` | `0.162.194` | `0.164.0` | 2 minor cycles |
93
+ | `tms` | `lab tms` | `0.162.194` | `0.164.0` | 2 minor cycles |
94
+ | `topiccls` | `lab topiccls` | `0.162.194` | `0.164.0` | 2 minor cycles |
95
+ | `uprof` | `lab uprof` | `0.162.194` | `0.164.0` | 2 minor cycles |
96
+ | `vcheck` | `lab vcheck` | `0.162.194` | `0.164.0` | 2 minor cycles |
97
+
98
+ Both forms route to the same lazy command registrar during the compatibility window. Legacy invocations emit their migration notice on stderr only.
99
+
100
+ <!-- END GENERATED COMMAND LIFECYCLE -->
34
101
 
35
102
  ### `chainlesschain setup`
36
103
 
@@ -68,6 +135,8 @@ Show status of the desktop app, Docker services, and port availability.
68
135
 
69
136
  ```bash
70
137
  chainlesschain status
138
+ chainlesschain status --json # Fast machine-readable snapshot
139
+ chainlesschain status --deep # Also inspect Docker Compose services
71
140
  ```
72
141
 
73
142
  ### `chainlesschain services <action>`
@@ -91,7 +160,9 @@ Manage configuration.
91
160
  chainlesschain config list # Show all config values
92
161
  chainlesschain config get llm.provider # Get a specific value
93
162
  chainlesschain config set llm.provider openai
94
- chainlesschain config set llm.apiKey sk-...
163
+ chainlesschain config set-secret llm.apiKey # Hidden prompt; secret never enters argv
164
+ chainlesschain config validate # Validate schema + private permissions
165
+ chainlesschain config explain llm.model # Show effective source / policy lock
95
166
  chainlesschain config edit # Open in $EDITOR
96
167
  chainlesschain config reset # Reset to defaults
97
168
  ```
@@ -160,7 +231,7 @@ Start an interactive AI chat session with streaming output.
160
231
  ```bash
161
232
  chainlesschain chat # Default: Ollama qwen2.5:7b
162
233
  chainlesschain chat --model llama3 # Use different model
163
- chainlesschain chat --provider openai --api-key sk-...
234
+ chainlesschain chat --provider openai # Reads the stored credential
164
235
  chainlesschain chat --agent # Agentic mode (can read/write files)
165
236
  ```
166
237
 
@@ -184,7 +255,7 @@ LLM provider management.
184
255
  chainlesschain llm models # List installed Ollama models
185
256
  chainlesschain llm models --json # JSON output
186
257
  chainlesschain llm test # Test Ollama connectivity
187
- chainlesschain llm test --provider openai --api-key sk-...
258
+ chainlesschain llm test --provider openai # Reads the stored credential
188
259
  chainlesschain llm providers # List 10 built-in LLM providers
189
260
  chainlesschain llm add-provider <name> # Add custom provider
190
261
  chainlesschain llm switch <name> # Switch active provider
@@ -195,9 +266,10 @@ chainlesschain llm switch <name> # Switch active provider
195
266
  Start an agentic AI session — the AI can read/write files, run shell commands, search the codebase, execute code (Python/Node.js/Bash with auto pip-install), and invoke 141 built-in skills.
196
267
 
197
268
  ```bash
198
- chainlesschain agent # Default: Ollama qwen2.5:7b
269
+ chainlesschain agent # Explicit form; plain `cc` is equivalent in a TTY
199
270
  chainlesschain a --model llama3 # Short alias
200
- chainlesschain agent --provider openai --api-key sk-...
271
+ chainlesschain config set-secret llm.apiKey
272
+ chainlesschain agent --provider openai # Reads the stored credential
201
273
  ```
202
274
 
203
275
  Built-in tools (19): `read_file`, `write_file`, `edit_file`, `edit_file_hashed`, `notebook_edit`, `run_shell`, `check_shell`, `git`, `search_files`, `list_dir`, `run_skill`, `list_skills`, `run_code`, `spawn_sub_agent`, `web_fetch`, `web_search`, `todo_write`, `ask_user_question`, `search_sessions`
@@ -1267,9 +1339,10 @@ Every surface follows this shape — replace `aud-gov-` with the prefix from the
1267
1339
 
1268
1340
  ```bash
1269
1341
  chainlesschain --version # Show version
1270
- chainlesschain --help # Show help
1271
- chainlesschain --verbose # Enable verbose output
1272
- chainlesschain --quiet # Suppress non-essential output
1342
+ chainlesschain --help # Show the curated command surface
1343
+ chainlesschain help --all # Show all compatibility commands
1344
+ chainlesschain --verbose status # Add diagnostics on stderr
1345
+ chainlesschain --quiet status # Suppress non-error human output
1273
1346
  ```
1274
1347
 
1275
1348
  ## Configuration
@@ -1566,7 +1639,7 @@ Stream a single prompt through the session-core StreamRouter, emitting NDJSON ev
1566
1639
  ```bash
1567
1640
  chainlesschain stream "Summarize this repo" # NDJSON events
1568
1641
  chainlesschain stream "Hello" --text # Concatenated final text only
1569
- chainlesschain stream "Hi" --provider openai --model gpt-4o --api-key sk-...
1642
+ chainlesschain stream "Hi" --provider openai --model gpt-4o # Reads the stored credential
1570
1643
  ```
1571
1644
 
1572
1645
  Options: `--model`, `--provider` (default `ollama`), `--base-url`, `--api-key`, `--text`.
@@ -1,58 +1,13 @@
1
1
  #!/usr/bin/env node
2
2
 
3
- // FIRST: Patch child_process globally to route ALL spawn/exec through ProcessExecutionBroker (M1)
4
- // This must come BEFORE any other imports to ensure every subprocess is audited
5
- import "../src/lib/process-execution-broker/patch-child-process.js";
6
-
7
- // Ensure UTF-8 encoding on Windows to prevent Chinese character garbling (乱码)
8
- import { ensureUtf8 } from "../src/lib/ensure-utf8.js";
9
- ensureUtf8();
10
-
11
- // Initialize observability before command modules load so every completed span
12
- // can reach a standard OTel Collector. Export stays off unless the global flag
13
- // or an OTEL_EXPORTER_OTLP_* endpoint is present.
14
- import {
15
- initObservability,
16
- resolveOtlpEndpointFromArgv,
17
- } from "../src/lib/observability/index.js";
18
- const observability = initObservability({
19
- endpoint: resolveOtlpEndpointFromArgv(process.argv),
20
- });
21
-
22
- // Force blocking stdio when piped, so process.exit() flushes the full output
23
- // before the process tears down. Without this, macOS (and occasionally Linux)
24
- // can drop tail bytes from large outputs like `chainlesschain --help` (~13KB
25
- // across 155 commands) when consumed via execSync/spawnSync `stdio: pipe`.
26
- // No-op on TTY — terminals are already line-buffered. Idiomatic for Node
27
- // CLIs (npm, yarn, eslint all do the equivalent).
28
- if (!process.stdout.isTTY && process.stdout._handle?.setBlocking) {
29
- process.stdout._handle.setBlocking(true);
30
- }
31
- if (!process.stderr.isTTY && process.stderr._handle?.setBlocking) {
32
- process.stderr._handle.setBlocking(true);
33
- }
34
-
35
- // Lazy dispatch: import only the ONE command's module instead of eagerly
36
- // loading all ~154 command modules (the ~2.7s cold-start cost). runCli falls
37
- // back to the full eager program for --help / no-args / unknown commands.
3
+ // Keep the executable's static graph phase-0 only. runCli loads the process
4
+ // broker, telemetry, Event Runtime and one selected command after it has ruled
5
+ // out lightweight --version/help requests.
38
6
  import { runCli } from "../src/lazy-dispatch.js";
39
- import {
40
- reportFatal,
41
- installGlobalErrorHandlers,
42
- } from "../src/lib/fatal-handler.js";
7
+ import { reportPendingNativeUpdateResult } from "../src/lib/packer/native-update-state.js";
43
8
 
44
- // Funnel rejections/exceptions that escape a command action (async event
45
- // handlers, detached tasks, third-party libs) through the same friendly
46
- // boundary as the top-level parse, instead of Node's default ugly-stack crash.
47
- installGlobalErrorHandlers(process, async (error) => {
48
- await observability.shutdown().catch(() => {});
9
+ reportPendingNativeUpdateResult();
10
+ runCli(process.argv).catch(async (error) => {
11
+ const { reportFatal } = await import("../src/lib/fatal-handler.js");
49
12
  reportFatal(error);
50
13
  });
51
-
52
- runCli(process.argv).then(
53
- () => observability.shutdown().catch(() => {}),
54
- async (error) => {
55
- await observability.shutdown().catch(() => {});
56
- reportFatal(error);
57
- },
58
- );
@@ -0,0 +1,209 @@
1
+ # Generated from src/command-manifest.json; do not edit.
2
+ # manifest-sha256: a342dc48c6d65ef81a96c7df387418e739a51c2a82b9a626d39882387bd2e999
3
+ #compdef cc chainlesschain clc clchain
4
+
5
+ _chainlesschain() {
6
+ if (( CURRENT == 2 )); then
7
+ compadd -- \
8
+ 'a' \
9
+ 'a2a' \
10
+ 'activitypub' \
11
+ 'agenda' \
12
+ 'agent' \
13
+ 'agent-network' \
14
+ 'agents' \
15
+ 'android' \
16
+ 'anet' \
17
+ 'ap' \
18
+ 'artifact' \
19
+ 'artifacts' \
20
+ 'ask' \
21
+ 'attach' \
22
+ 'audit' \
23
+ 'auth' \
24
+ 'auto' \
25
+ 'auto-mode' \
26
+ 'autoagent' \
27
+ 'automation' \
28
+ 'automode' \
29
+ 'batch' \
30
+ 'bi' \
31
+ 'bm25' \
32
+ 'browse' \
33
+ 'ccron' \
34
+ 'changelog' \
35
+ 'chat' \
36
+ 'checkpoint' \
37
+ 'checkup' \
38
+ 'ci' \
39
+ 'cli-anything' \
40
+ 'cloud' \
41
+ 'cmd' \
42
+ 'code-intel' \
43
+ 'codegen' \
44
+ 'collab' \
45
+ 'command' \
46
+ 'compact' \
47
+ 'complete' \
48
+ 'compliance' \
49
+ 'compt' \
50
+ 'config' \
51
+ 'consol' \
52
+ 'context' \
53
+ 'cost' \
54
+ 'cowork' \
55
+ 'crosschain' \
56
+ 'daemon' \
57
+ 'dao' \
58
+ 'db' \
59
+ 'dbevo' \
60
+ 'decrypt' \
61
+ 'dev' \
62
+ 'did' \
63
+ 'did-v2' \
64
+ 'didv2' \
65
+ 'dlp' \
66
+ 'doctor' \
67
+ 'eco' \
68
+ 'economy' \
69
+ 'ecosystem' \
70
+ 'encrypt' \
71
+ 'eval' \
72
+ 'evolution' \
73
+ 'evomap' \
74
+ 'execbe' \
75
+ 'export' \
76
+ 'federation' \
77
+ 'fflag' \
78
+ 'fusion' \
79
+ 'git' \
80
+ 'goal' \
81
+ 'governance' \
82
+ 'hardening' \
83
+ 'hmemory' \
84
+ 'hook' \
85
+ 'hub' \
86
+ 'ide' \
87
+ 'import' \
88
+ 'incentive' \
89
+ 'inference' \
90
+ 'infra' \
91
+ 'init' \
92
+ 'insights' \
93
+ 'instinct' \
94
+ 'ipfs' \
95
+ 'itbudget' \
96
+ 'kg' \
97
+ 'lab' \
98
+ 'learning' \
99
+ 'llm' \
100
+ 'logs' \
101
+ 'loop' \
102
+ 'lowcode' \
103
+ 'marketplace' \
104
+ 'matrix' \
105
+ 'mcp' \
106
+ 'mcpscaf' \
107
+ 'meminj' \
108
+ 'memory' \
109
+ 'mm' \
110
+ 'mtc' \
111
+ 'multimodal' \
112
+ 'multisig' \
113
+ 'nlprog' \
114
+ 'nostr' \
115
+ 'note' \
116
+ 'notif' \
117
+ 'notification' \
118
+ 'ops' \
119
+ 'orchestrate' \
120
+ 'orchgov' \
121
+ 'org' \
122
+ 'output-style' \
123
+ 'output-styles' \
124
+ 'p2p' \
125
+ 'pack' \
126
+ 'pair' \
127
+ 'pdfp' \
128
+ 'pdh' \
129
+ 'perception' \
130
+ 'perf' \
131
+ 'perm' \
132
+ 'permissions' \
133
+ 'permmem' \
134
+ 'perms' \
135
+ 'persona' \
136
+ 'pipe' \
137
+ 'pipeline' \
138
+ 'planmode' \
139
+ 'plugin' \
140
+ 'pqc' \
141
+ 'privacy' \
142
+ 'project' \
143
+ 'promcomp' \
144
+ 'quantize' \
145
+ 'rc' \
146
+ 'rcache' \
147
+ 'recommend' \
148
+ 'remote-control' \
149
+ 'rep' \
150
+ 'reputation' \
151
+ 'review' \
152
+ 'router' \
153
+ 'routine' \
154
+ 'runtime' \
155
+ 'sandbox' \
156
+ 'scim' \
157
+ 'search' \
158
+ 'serve' \
159
+ 'services' \
160
+ 'seshhook' \
161
+ 'seshsearch' \
162
+ 'seshtail' \
163
+ 'seshu' \
164
+ 'session' \
165
+ 'setup' \
166
+ 'sganal' \
167
+ 'siem' \
168
+ 'skill' \
169
+ 'sla' \
170
+ 'slotfill' \
171
+ 'social' \
172
+ 'sso' \
173
+ 'start' \
174
+ 'status' \
175
+ 'status-line' \
176
+ 'statusline' \
177
+ 'stop' \
178
+ 'stream' \
179
+ 'stress' \
180
+ 'subagent' \
181
+ 'svccont' \
182
+ 'sync' \
183
+ 'team' \
184
+ 'tech' \
185
+ 'tenant' \
186
+ 'terminal-setup' \
187
+ 'terraform' \
188
+ 'tms' \
189
+ 'todo' \
190
+ 'tokens' \
191
+ 'topiccls' \
192
+ 'trust' \
193
+ 'ui' \
194
+ 'update' \
195
+ 'uprof' \
196
+ 'vcheck' \
197
+ 'video' \
198
+ 'wallet' \
199
+ 'webfetch' \
200
+ 'whatsnew' \
201
+ 'workflow' \
202
+ 'zkp'
203
+ elif (( CURRENT == 3 )); then
204
+ case "$words[2]" in
205
+ 'lab') compadd -- 'bm25' 'ccron' 'compt' 'consol' 'dao' 'evomap' 'execbe' 'fflag' 'itbudget' 'mcpscaf' 'meminj' 'orchgov' 'pdfp' 'promcomp' 'seshhook' 'seshsearch' 'seshtail' 'seshu' 'sganal' 'slotfill' 'svccont' 'tms' 'topiccls' 'uprof' 'vcheck' ;;
206
+ esac
207
+ fi
208
+ }
209
+ compdef _chainlesschain cc chainlesschain clc clchain
@@ -0,0 +1,18 @@
1
+ # Generated from src/command-manifest.json; do not edit.
2
+ # manifest-sha256: a342dc48c6d65ef81a96c7df387418e739a51c2a82b9a626d39882387bd2e999
3
+
4
+ _chainlesschain_complete() {
5
+ local current
6
+ current="${COMP_WORDS[COMP_CWORD]}"
7
+ if (( COMP_CWORD == 1 )); then
8
+ COMPREPLY=( $(compgen -W 'a a2a activitypub agenda agent agent-network agents android anet ap artifact artifacts ask attach audit auth auto auto-mode autoagent automation automode batch bi bm25 browse ccron changelog chat checkpoint checkup ci cli-anything cloud cmd code-intel codegen collab command compact complete compliance compt config consol context cost cowork crosschain daemon dao db dbevo decrypt dev did did-v2 didv2 dlp doctor eco economy ecosystem encrypt eval evolution evomap execbe export federation fflag fusion git goal governance hardening hmemory hook hub ide import incentive inference infra init insights instinct ipfs itbudget kg lab learning llm logs loop lowcode marketplace matrix mcp mcpscaf meminj memory mm mtc multimodal multisig nlprog nostr note notif notification ops orchestrate orchgov org output-style output-styles p2p pack pair pdfp pdh perception perf perm permissions permmem perms persona pipe pipeline planmode plugin pqc privacy project promcomp quantize rc rcache recommend remote-control rep reputation review router routine runtime sandbox scim search serve services seshhook seshsearch seshtail seshu session setup sganal siem skill sla slotfill social sso start status status-line statusline stop stream stress subagent svccont sync team tech tenant terminal-setup terraform tms todo tokens topiccls trust ui update uprof vcheck video wallet webfetch whatsnew workflow zkp' -- "$current") )
9
+ elif (( COMP_CWORD == 2 )); then
10
+ case "${COMP_WORDS[1]}" in
11
+ 'lab') COMPREPLY=( $(compgen -W 'bm25 ccron compt consol dao evomap execbe fflag itbudget mcpscaf meminj orchgov pdfp promcomp seshhook seshsearch seshtail seshu sganal slotfill svccont tms topiccls uprof vcheck' -- "$current") ) ;;
12
+ *) COMPREPLY=() ;;
13
+ esac
14
+ else
15
+ COMPREPLY=()
16
+ fi
17
+ }
18
+ complete -F _chainlesschain_complete cc chainlesschain clc clchain
@@ -0,0 +1,13 @@
1
+ # Generated from src/command-manifest.json; do not edit.
2
+ # manifest-sha256: a342dc48c6d65ef81a96c7df387418e739a51c2a82b9a626d39882387bd2e999
3
+ set -l chainlesschain_commands 'a' 'a2a' 'activitypub' 'agenda' 'agent' 'agent-network' 'agents' 'android' 'anet' 'ap' 'artifact' 'artifacts' 'ask' 'attach' 'audit' 'auth' 'auto' 'auto-mode' 'autoagent' 'automation' 'automode' 'batch' 'bi' 'bm25' 'browse' 'ccron' 'changelog' 'chat' 'checkpoint' 'checkup' 'ci' 'cli-anything' 'cloud' 'cmd' 'code-intel' 'codegen' 'collab' 'command' 'compact' 'complete' 'compliance' 'compt' 'config' 'consol' 'context' 'cost' 'cowork' 'crosschain' 'daemon' 'dao' 'db' 'dbevo' 'decrypt' 'dev' 'did' 'did-v2' 'didv2' 'dlp' 'doctor' 'eco' 'economy' 'ecosystem' 'encrypt' 'eval' 'evolution' 'evomap' 'execbe' 'export' 'federation' 'fflag' 'fusion' 'git' 'goal' 'governance' 'hardening' 'hmemory' 'hook' 'hub' 'ide' 'import' 'incentive' 'inference' 'infra' 'init' 'insights' 'instinct' 'ipfs' 'itbudget' 'kg' 'lab' 'learning' 'llm' 'logs' 'loop' 'lowcode' 'marketplace' 'matrix' 'mcp' 'mcpscaf' 'meminj' 'memory' 'mm' 'mtc' 'multimodal' 'multisig' 'nlprog' 'nostr' 'note' 'notif' 'notification' 'ops' 'orchestrate' 'orchgov' 'org' 'output-style' 'output-styles' 'p2p' 'pack' 'pair' 'pdfp' 'pdh' 'perception' 'perf' 'perm' 'permissions' 'permmem' 'perms' 'persona' 'pipe' 'pipeline' 'planmode' 'plugin' 'pqc' 'privacy' 'project' 'promcomp' 'quantize' 'rc' 'rcache' 'recommend' 'remote-control' 'rep' 'reputation' 'review' 'router' 'routine' 'runtime' 'sandbox' 'scim' 'search' 'serve' 'services' 'seshhook' 'seshsearch' 'seshtail' 'seshu' 'session' 'setup' 'sganal' 'siem' 'skill' 'sla' 'slotfill' 'social' 'sso' 'start' 'status' 'status-line' 'statusline' 'stop' 'stream' 'stress' 'subagent' 'svccont' 'sync' 'team' 'tech' 'tenant' 'terminal-setup' 'terraform' 'tms' 'todo' 'tokens' 'topiccls' 'trust' 'ui' 'update' 'uprof' 'vcheck' 'video' 'wallet' 'webfetch' 'whatsnew' 'workflow' 'zkp'
4
+
5
+ function __chainlesschain_needs_lab_command
6
+ set -l tokens (commandline -opc)
7
+ test (count $tokens) -eq 2; and test "$tokens[2]" = 'lab'
8
+ end
9
+
10
+ for executable in cc chainlesschain clc clchain
11
+ complete -c $executable -f -n '__fish_use_subcommand' -a "$chainlesschain_commands"
12
+ complete -c $executable -f -n '__chainlesschain_needs_lab_command' -a 'bm25 ccron compt consol dao evomap execbe fflag itbudget mcpscaf meminj orchgov pdfp promcomp seshhook seshsearch seshtail seshu sganal slotfill svccont tms topiccls uprof vcheck'
13
+ end