chainlesschain 0.166.88 → 0.166.90

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 (178) hide show
  1. package/README.md +101 -14
  2. package/package.json +3 -3
  3. package/src/assets/linux-subreaper/linux-arm64/manifest.json +1 -1
  4. package/src/assets/linux-subreaper/linux-x64/manifest.json +1 -1
  5. package/src/assets/web-panel/assets/{AIOps-QzeGep9J.js → AIOps-CZzXRe1-.js} +1 -1
  6. package/src/assets/web-panel/assets/{ActionButton-Dfc5bx7S.js → ActionButton-_AZfbW1Q.js} +1 -1
  7. package/src/assets/web-panel/assets/{Analytics-tn-_ZG2E.js → Analytics-CzaUx_wv.js} +3 -3
  8. package/src/assets/web-panel/assets/{AppLayout-Deg3WAK8.js → AppLayout-xHEeeD-m.js} +4 -4
  9. package/src/assets/web-panel/assets/{Artifacts-KU05t0a6.js → Artifacts-DmTbtudE.js} +1 -1
  10. package/src/assets/web-panel/assets/{Audit-CkSZf54T.js → Audit-Cn4ng4fo.js} +1 -1
  11. package/src/assets/web-panel/assets/{BackgroundAgents-i7ivfXF0.js → BackgroundAgents-DLUY1VD2.js} +1 -1
  12. package/src/assets/web-panel/assets/{Backup-QcVUKtf0.js → Backup-B2v--wB6.js} +1 -1
  13. package/src/assets/web-panel/assets/{BaseInput-B3h5ZJ0g.js → BaseInput-Bgih7yAv.js} +1 -1
  14. package/src/assets/web-panel/assets/{Chat-D7AVz0xi.js → Chat-1MiiA3yA.js} +5 -5
  15. package/src/assets/web-panel/assets/{ChatBubbleRenderer-B0-euPW7.js → ChatBubbleRenderer-CPLynmbb.js} +1 -1
  16. package/src/assets/web-panel/assets/{Checkbox-H0p0TMlD.js → Checkbox-DsyBa_NO.js} +1 -1
  17. package/src/assets/web-panel/assets/{Codegen-B6HOmAY3.js → Codegen-B7WCFx9H.js} +1 -1
  18. package/src/assets/web-panel/assets/{Col-n_64Fog2.js → Col-D2x4GBGm.js} +1 -1
  19. package/src/assets/web-panel/assets/{Community-CX0JGgj0.js → Community-Rnwg9nea.js} +1 -1
  20. package/src/assets/web-panel/assets/{Compact-C4JWUZlx.js → Compact-BPczlrRh.js} +1 -1
  21. package/src/assets/web-panel/assets/{Compliance-DKyTZakB.js → Compliance-Br1L_wGU.js} +1 -1
  22. package/src/assets/web-panel/assets/{Cowork-C0joBMci.js → Cowork-DlsWB_oS.js} +3 -3
  23. package/src/assets/web-panel/assets/{Cron-D6VkYpxK.js → Cron-BWo_KGpG.js} +2 -2
  24. package/src/assets/web-panel/assets/{Crosschain-7b6Uu8jc.js → Crosschain-Cug7N8ge.js} +1 -1
  25. package/src/assets/web-panel/assets/{DID-C8YPKqzY.js → DID-CMbyOZJN.js} +2 -2
  26. package/src/assets/web-panel/assets/{Dashboard-DJsOiEry.js → Dashboard-C4dl_UaE.js} +2 -2
  27. package/src/assets/web-panel/assets/{Dropdown-CyStFY-4.js → Dropdown-CBrC7M-9.js} +1 -1
  28. package/src/assets/web-panel/assets/EmailListRenderer-DTq7tU4b.js +1 -0
  29. package/src/assets/web-panel/assets/{EvolutionSettings-DpxORusH.js → EvolutionSettings-DWP3csxS.js} +1 -1
  30. package/src/assets/web-panel/assets/{FamilyGuardDashboard-5BYZdMG0.js → FamilyGuardDashboard-DZl7zuv_.js} +1 -1
  31. package/src/assets/web-panel/assets/{Federation-s1kS0ekU.js → Federation-W-GSlVK5.js} +1 -1
  32. package/src/assets/web-panel/assets/{FormItemContext-CmgoH9HV.js → FormItemContext-DMB7xYFV.js} +1 -1
  33. package/src/assets/web-panel/assets/{GenericCardRenderer-DSRWrvcL.js → GenericCardRenderer-DNv8GEoq.js} +1 -1
  34. package/src/assets/web-panel/assets/{Git-Cz3EgnS1.js → Git-BZ0Bbzw6.js} +2 -2
  35. package/src/assets/web-panel/assets/{Governance-De4atTe7.js → Governance-BNEdcOM5.js} +1 -1
  36. package/src/assets/web-panel/assets/{Inference-DoitBBxJ.js → Inference-C8249gIz.js} +1 -1
  37. package/src/assets/web-panel/assets/{KnowledgeGraph-CIdmJ1pH.js → KnowledgeGraph-ngzebU3e.js} +1 -1
  38. package/src/assets/web-panel/assets/{Logs-Coa_qNhU.js → Logs-CP15th-f.js} +2 -2
  39. package/src/assets/web-panel/assets/MarkdownRenderer-CW3B3JDq.js +1 -0
  40. package/src/assets/web-panel/assets/{Marketplace-C6kbAQoM.js → Marketplace-CaH59OsY.js} +1 -1
  41. package/src/assets/web-panel/assets/{McpTools-C2TZn8D-.js → McpTools-C07vnJev.js} +3 -3
  42. package/src/assets/web-panel/assets/{Memory-DYdEKDuB.js → Memory-CqAOkVAS.js} +2 -2
  43. package/src/assets/web-panel/assets/{MobileBridge-pKLeVviZ.js → MobileBridge-qp7mZimq.js} +1 -1
  44. package/src/assets/web-panel/assets/MobileProjects-DKhbqvTw.js +1 -0
  45. package/src/assets/web-panel/assets/{Mtc-IEoVRV29.js → Mtc-CRYCnWXv.js} +4 -4
  46. package/src/assets/web-panel/assets/{MtcAudit-Cov-yYTY.js → MtcAudit-Z08IrKws.js} +4 -4
  47. package/src/assets/web-panel/assets/{Multisig--Jr7OCmp.js → Multisig-BWdatUnH.js} +3 -3
  48. package/src/assets/web-panel/assets/{NLProgramming-D2gXnYAA.js → NLProgramming-BKWiCZ_m.js} +1 -1
  49. package/src/assets/web-panel/assets/{Notes-hk8pMyve.js → Notes-Bgpzk3sm.js} +3 -3
  50. package/src/assets/web-panel/assets/{NotificationSettings-D26Nc7MU.js → NotificationSettings-DvtZEktR.js} +1 -1
  51. package/src/assets/web-panel/assets/{OrderTableRenderer-DmzHMEOa.js → OrderTableRenderer-CBcy0szc.js} +1 -1
  52. package/src/assets/web-panel/assets/{Organization-Cn-o6mHT.js → Organization-DRRL6vW1.js} +4 -4
  53. package/src/assets/web-panel/assets/{Overflow-DP6xpDak.js → Overflow-COmfB8Ns.js} +1 -1
  54. package/src/assets/web-panel/assets/{P2P-C9WAjG-I.js → P2P-BqMq_DSa.js} +2 -2
  55. package/src/assets/web-panel/assets/PdhVaultBrowser-BX7iNvle.js +7 -0
  56. package/src/assets/web-panel/assets/{Permissions-BFBN4-IL.js → Permissions-DzYkjmV_.js} +4 -4
  57. package/src/assets/web-panel/assets/{PersonalDataHub-BEDvoAiz.js → PersonalDataHub-BBTcxBbN.js} +3 -3
  58. package/src/assets/web-panel/assets/{Pipeline-Co2Ze_rR.js → Pipeline-eRkYFSbO.js} +1 -1
  59. package/src/assets/web-panel/assets/{Privacy-BOTn1EId.js → Privacy-Ch7IFKBh.js} +1 -1
  60. package/src/assets/web-panel/assets/{ProjectInit-CObyrZYm.js → ProjectInit-Ci8EcBYg.js} +2 -2
  61. package/src/assets/web-panel/assets/{ProjectSettings-DVTN31rd.js → ProjectSettings-B4lYHFbI.js} +2 -2
  62. package/src/assets/web-panel/assets/{Projects-DQSEaVjE.js → Projects-zkE5cCo_.js} +1 -1
  63. package/src/assets/web-panel/assets/{Providers-BRIKWIdQ.js → Providers-BKDVD3_e.js} +1 -1
  64. package/src/assets/web-panel/assets/{QrScannerModal-3nxaEXxN.js → QrScannerModal-BromrHlf.js} +1 -1
  65. package/src/assets/web-panel/assets/{QuickAsk-iwZJEE9z.js → QuickAsk-CCgoY1gR.js} +1 -1
  66. package/src/assets/web-panel/assets/{Recommend-D2_EEbvc.js → Recommend-DCPZvpq7.js} +1 -1
  67. package/src/assets/web-panel/assets/{RemoteSession-S4w2mUfq.js → RemoteSession-DPnFP8HU.js} +3 -3
  68. package/src/assets/web-panel/assets/{Reputation-CstUvfTC.js → Reputation-l6r8ytAs.js} +1 -1
  69. package/src/assets/web-panel/assets/{Row-DEGHFpxz.js → Row-ke9Mk1cx.js} +1 -1
  70. package/src/assets/web-panel/assets/{RssFeed-DGdZtJQl.js → RssFeed-DQOEzUEn.js} +2 -2
  71. package/src/assets/web-panel/assets/{Search-DhfXi99U.js → Search-BqgA0aUz.js} +1 -1
  72. package/src/assets/web-panel/assets/{Security-BbzISrgX.js → Security-FeGD_jqV.js} +4 -4
  73. package/src/assets/web-panel/assets/{Services-CFjP2sQ3.js → Services-4kiYYAjZ.js} +2 -2
  74. package/src/assets/web-panel/assets/{Skeleton-CFn5wbvm.js → Skeleton-BbU8Xegs.js} +1 -1
  75. package/src/assets/web-panel/assets/{Skills-fVbT8RcW.js → Skills-Dl2bUMUL.js} +1 -1
  76. package/src/assets/web-panel/assets/{Sla-D6OtC0MT.js → Sla-xRGALeaZ.js} +1 -1
  77. package/src/assets/web-panel/assets/{SpeechSettings-D0kteBjU.js → SpeechSettings-DZfd4RDm.js} +1 -1
  78. package/src/assets/web-panel/assets/{SyncSettings-BGEWCtPh.js → SyncSettings-BRtCV9Ga.js} +2 -2
  79. package/src/assets/web-panel/assets/{Tasks-B1xZUG4D.js → Tasks-DVRQklfG.js} +1 -1
  80. package/src/assets/web-panel/assets/{Templates-COlorjqb.js → Templates-BbhE5jt5.js} +1 -1
  81. package/src/assets/web-panel/assets/{Tenant-yLkwfuo3.js → Tenant-qXPDNKbK.js} +1 -1
  82. package/src/assets/web-panel/assets/{Terminal-CAmkq1wf.js → Terminal-CV48Ks7E.js} +2 -2
  83. package/src/assets/web-panel/assets/{TimelineRenderer-CcKYq1Ue.js → TimelineRenderer-BLGfJIDr.js} +1 -1
  84. package/src/assets/web-panel/assets/{Tokens-9hIqn_LE.js → Tokens-7G9H6Hrt.js} +1 -1
  85. package/src/assets/web-panel/assets/{Trigger-Dsdkb74C.js → Trigger--F64N11F.js} +1 -1
  86. package/src/assets/web-panel/assets/{Trust-DC4GuE3C.js → Trust-Cq1r-D_y.js} +1 -1
  87. package/src/assets/web-panel/assets/{UkeySign-CSlh00wf.js → UkeySign-Dqyu4RVh.js} +1 -1
  88. package/src/assets/web-panel/assets/{VideoEditing-QEWLo3QY.js → VideoEditing-DuFmWH_B.js} +1 -1
  89. package/src/assets/web-panel/assets/{Wallet-BkPNQgmg.js → Wallet-C3mg7EWP.js} +4 -4
  90. package/src/assets/web-panel/assets/{WebAuthn-7---jCBl.js → WebAuthn-CDK-Aj_X.js} +5 -5
  91. package/src/assets/web-panel/assets/{WorkflowEditor-Dq6Yiu8E.js → WorkflowEditor--K7K-T1F.js} +1 -1
  92. package/src/assets/web-panel/assets/{chat-CTYIMpWD.js → chat-BQDcS6VP.js} +1 -1
  93. package/src/assets/web-panel/assets/{colors-C8JtYlDN.js → colors-BKxJL2-T.js} +1 -1
  94. package/src/assets/web-panel/assets/{compact-item-spXpnsNC.js → compact-item-CFjQAMbY.js} +1 -1
  95. package/src/assets/web-panel/assets/{createContext-D04ewPuL.js → createContext-DbgCsdQd.js} +1 -1
  96. package/src/assets/web-panel/assets/devWarning-DlIv9Mbc.js +1 -0
  97. package/src/assets/web-panel/assets/{hasIn-DZblOKXx.js → hasIn-BhkaOBNv.js} +1 -1
  98. package/src/assets/web-panel/assets/{index-DdC0OsNh.js → index-3YutaXnp.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-rVEqWa0_.js → index-3djsY75k.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-DSoyEHi2.js → index-3uR0ThJO.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-DLUHbPl3.js → index-7BY44UEv.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-B7RA974g.js → index-B4LlAJqc.js} +1 -1
  103. package/src/assets/web-panel/assets/index-BC972Grv.js +1 -0
  104. package/src/assets/web-panel/assets/{index-BKfR2eSQ.js → index-BNjYPJNU.js} +1 -1
  105. package/src/assets/web-panel/assets/{index-KIoJ2eCK.js → index-BRqlCTrz.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-rU6_An6N.js → index-BfGGsAU7.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-B57W1RB6.js → index-BuWPqSGT.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-BLv-KSGc.js → index-C0DzhUOX.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-DHOV24VR.js → index-CB4oHynY.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-IFEbaISP.js → index-CE506mgj.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-Cgztj1JO.js → index-CJoXgJ2N.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-DruABY-g.js → index-COGy6wXn.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-CLkua5sJ.js → index-CRtUDiXx.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-BSO33_O2.js → index-CSUDlsIr.js} +1 -1
  115. package/src/assets/web-panel/assets/{index-CHtwoTKX.js → index-CUs7XpUO.js} +1 -1
  116. package/src/assets/web-panel/assets/index-CVifyQqL.js +1 -0
  117. package/src/assets/web-panel/assets/{index-DtSzmzFF.js → index-CoOu7sdP.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-B-cKXztT.js → index-D-Yh3-1z.js} +1 -1
  119. package/src/assets/web-panel/assets/{index-B_65aY6c.js → index-D2Zb-Kd1.js} +1 -1
  120. package/src/assets/web-panel/assets/{index-749P1pkM.js → index-D9sVcw6v.js} +1 -1
  121. package/src/assets/web-panel/assets/{index-Bw-3CtK2.js → index-DEwHywz9.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-Dssnz_1x.js → index-DFt48Z-x.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-BOuUUW2U.js → index-DJ2OiRvh.js} +3 -3
  124. package/src/assets/web-panel/assets/{index-D_Md0Jhp.js → index-DP1NrM9J.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-BjMY3Y_L.js → index-DdcrixaQ.js} +1 -1
  126. package/src/assets/web-panel/assets/{index-EM4_wLPi.js → index-De7daEnc.js} +1 -1
  127. package/src/assets/web-panel/assets/{index-Cz0gkRz_.js → index-Dhfa_BIl.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-CZmBlh5P.js → index-DjmVlpap.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-DwIEfKo7.js → index-DmYK9Tqt.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-COvZnoIg.js → index-Dn2QSsuI.js} +1 -1
  131. package/src/assets/web-panel/assets/{index-Bm0z1M6s.js → index-Du_SxxBY.js} +1 -1
  132. package/src/assets/web-panel/assets/{index-Cfk4o9eI.js → index-DvWWFJHJ.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-Mxj-qi1G.js → index-T9ka3Xj3.js} +1 -1
  134. package/src/assets/web-panel/assets/{index-CE3TYhl0.js → index-aPdVzagA.js} +1 -1
  135. package/src/assets/web-panel/assets/{index-DcjouIsi.js → index-bMX8BBLE.js} +1 -1
  136. package/src/assets/web-panel/assets/{index-Dcd-qZ68.js → index-sKfUUldY.js} +1 -1
  137. package/src/assets/web-panel/assets/{initDefaultProps-Dl0wiMxn.js → initDefaultProps-wrqabmui.js} +1 -1
  138. package/src/assets/web-panel/assets/{motion-BFmZYrGO.js → motion-BoyB3ilP.js} +1 -1
  139. package/src/assets/web-panel/assets/{move-Cjs64yWq.js → move-Cq31cSFE.js} +1 -1
  140. package/src/assets/web-panel/assets/{mtc-parser-NeQsnBuP.js → mtc-parser-BkxNt-8H.js} +1 -1
  141. package/src/assets/web-panel/assets/{omit-4Rs-rfs9.js → omit-DofGni53.js} +1 -1
  142. package/src/assets/web-panel/assets/{pickAttrs-CUhx2rDY.js → pickAttrs-BnluLL16.js} +1 -1
  143. package/src/assets/web-panel/assets/{placementArrow-DbIM_OB2.js → placementArrow-C-yegJSP.js} +1 -1
  144. package/src/assets/web-panel/assets/{responsiveObserve-B_TGx9AN.js → responsiveObserve-CD3ziNhu.js} +1 -1
  145. package/src/assets/web-panel/assets/{slide-C46cEP5t.js → slide-ToZO4gQ1.js} +1 -1
  146. package/src/assets/web-panel/assets/{statusUtils-DqeksICX.js → statusUtils-DFVmDmVl.js} +1 -1
  147. package/src/assets/web-panel/assets/{styleChecker-2rrypo5u.js → styleChecker-De0Y8g1O.js} +1 -1
  148. package/src/assets/web-panel/assets/{useFlexGapSupport-RRe1Edsg.js → useFlexGapSupport-wBKIYFKX.js} +1 -1
  149. package/src/assets/web-panel/assets/{useFs-CB0oxU1U.js → useFs-CP9nmUMJ.js} +1 -1
  150. package/src/assets/web-panel/assets/{usePersonalDataHub-B98WdlUE.js → usePersonalDataHub-vFGrVDyp.js} +1 -1
  151. package/src/assets/web-panel/assets/{vnode-CY8AoD95.js → vnode-BcBIjvjH.js} +1 -1
  152. package/src/assets/web-panel/assets/{zoom-BnT-0MbP.js → zoom-DnXDAQxA.js} +1 -1
  153. package/src/assets/web-panel/index.html +1 -1
  154. package/src/command-help-index.json +5 -5
  155. package/src/commands/agent-controlled-host.js +220 -0
  156. package/src/commands/agent.js +3 -1
  157. package/src/commands/automation.js +35 -8
  158. package/src/commands/hub.js +147 -0
  159. package/src/commands/project.js +162 -0
  160. package/src/data/changelog.json +26 -0
  161. package/src/gateways/ws/personal-data-hub-protocol.js +54 -8
  162. package/src/lib/audit-logger.js +16 -29
  163. package/src/lib/audit-sanitizer.js +279 -0
  164. package/src/lib/automation-center.js +14 -4
  165. package/src/lib/automation-engine.js +151 -39
  166. package/src/lib/eval/verify01-execution.js +9 -0
  167. package/src/lib/eval/verify01-host-capture.js +430 -0
  168. package/src/lib/knowledge-graph.js +27 -0
  169. package/src/lib/personal-data-hub-wiring.js +44 -1
  170. package/src/lib/scheduler-kernel/automation-adapter.js +15 -3
  171. package/src/lib/scheduler-kernel/automation-event-adapter.js +15 -3
  172. package/src/assets/web-panel/assets/EmailListRenderer-COrIx2Rg.js +0 -1
  173. package/src/assets/web-panel/assets/MarkdownRenderer-CeT_RocE.js +0 -1
  174. package/src/assets/web-panel/assets/MobileProjects-D4bWcHA_.js +0 -1
  175. package/src/assets/web-panel/assets/PdhVaultBrowser-DxZb0Ux8.js +0 -7
  176. package/src/assets/web-panel/assets/devWarning-3-s4adfp.js +0 -1
  177. package/src/assets/web-panel/assets/index-ZMf_BGlO.js +0 -1
  178. package/src/assets/web-panel/assets/index-jvp8bJBF.js +0 -1
@@ -1,4 +1,4 @@
1
- import{K as o}from"./index-BOuUUW2U.js";import{i as f}from"./motion-BFmZYrGO.js";const c=new o("antZoomIn",{"0%":{transform:"scale(0.2)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),y=new o("antZoomOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.2)",opacity:0}}),a=new o("antZoomBigIn",{"0%":{transform:"scale(0.8)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),s=new o("antZoomBigOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.8)",opacity:0}}),g=new o("antZoomUpIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 0%"}}),O=new o("antZoomUpOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 0%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0}}),l=new o("antZoomLeftIn",{"0%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"0% 50%"}}),u=new o("antZoomLeftOut",{"0%":{transform:"scale(1)",transformOrigin:"0% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0}}),p=new o("antZoomRightIn",{"0%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"100% 50%"}}),z=new o("antZoomRightOut",{"0%":{transform:"scale(1)",transformOrigin:"100% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0}}),K=new o("antZoomDownIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 100%"}}),w=new o("antZoomDownOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 100%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0}}),I={zoom:{inKeyframes:c,outKeyframes:y},"zoom-big":{inKeyframes:a,outKeyframes:s},"zoom-big-fast":{inKeyframes:a,outKeyframes:s},"zoom-left":{inKeyframes:l,outKeyframes:u},"zoom-right":{inKeyframes:p,outKeyframes:z},"zoom-up":{inKeyframes:g,outKeyframes:O},"zoom-down":{inKeyframes:K,outKeyframes:w}},h=(n,r)=>{const{antCls:m}=n,t=`${m}-${r}`,{inKeyframes:i,outKeyframes:e}=I[r];return[f(t,i,e,r==="zoom-big-fast"?n.motionDurationFast:n.motionDurationMid),{[`
1
+ import{K as o}from"./index-DJ2OiRvh.js";import{i as f}from"./motion-BoyB3ilP.js";const c=new o("antZoomIn",{"0%":{transform:"scale(0.2)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),y=new o("antZoomOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.2)",opacity:0}}),a=new o("antZoomBigIn",{"0%":{transform:"scale(0.8)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),s=new o("antZoomBigOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.8)",opacity:0}}),g=new o("antZoomUpIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 0%"}}),O=new o("antZoomUpOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 0%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0}}),l=new o("antZoomLeftIn",{"0%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"0% 50%"}}),u=new o("antZoomLeftOut",{"0%":{transform:"scale(1)",transformOrigin:"0% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0}}),p=new o("antZoomRightIn",{"0%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"100% 50%"}}),z=new o("antZoomRightOut",{"0%":{transform:"scale(1)",transformOrigin:"100% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0}}),K=new o("antZoomDownIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 100%"}}),w=new o("antZoomDownOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 100%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0}}),I={zoom:{inKeyframes:c,outKeyframes:y},"zoom-big":{inKeyframes:a,outKeyframes:s},"zoom-big-fast":{inKeyframes:a,outKeyframes:s},"zoom-left":{inKeyframes:l,outKeyframes:u},"zoom-right":{inKeyframes:p,outKeyframes:z},"zoom-up":{inKeyframes:g,outKeyframes:O},"zoom-down":{inKeyframes:K,outKeyframes:w}},h=(n,r)=>{const{antCls:m}=n,t=`${m}-${r}`,{inKeyframes:i,outKeyframes:e}=I[r];return[f(t,i,e,r==="zoom-big-fast"?n.motionDurationFast:n.motionDurationMid),{[`
2
2
  ${t}-enter,
3
3
  ${t}-appear
4
4
  `]:{transform:"scale(0)",opacity:0,animationTimingFunction:n.motionEaseOutCirc,"&-prepare":{transform:"none"}},[`${t}-leave`]:{animationTimingFunction:n.motionEaseInOutCirc}}]};export{h as i,c as z};
@@ -8,7 +8,7 @@
8
8
  // Injected by web-ui-server.js at serve time
9
9
  window.__CC_CONFIG__ = __CC_CONFIG_PLACEHOLDER__;
10
10
  </script>
11
- <script type="module" crossorigin src="./assets/index-BOuUUW2U.js"></script>
11
+ <script type="module" crossorigin src="./assets/index-DJ2OiRvh.js"></script>
12
12
  <link rel="modulepreload" crossorigin href="./assets/vendor-Bn1JzzAn.js">
13
13
  <link rel="modulepreload" crossorigin href="./assets/icons-DG5UD-6K.js">
14
14
  <link rel="stylesheet" crossorigin href="./assets/index-Cq93VfoF.css">
@@ -5,7 +5,7 @@
5
5
  "a2a": "Usage: chainlesschain a2a [options] [command]\n\nA2A Protocol — agent-to-agent communication\n\nOptions:\n -h, --help display help for command\n\nCommands:\n register [options] <name> Register an agent card\n discover [options] Discover agents by capability or skill\n submit [options] <agent-id> <input> Submit a task to an agent\n status [options] <task-id> Get task status\n complete <task-id> <output> Mark a task as completed\n fail <task-id> <error> Mark a task as failed\n peers [options] List all registered agents\n cards [options] List all agent cards with details\n negotiate [options] <agent-id> <capabilities> Check if an agent supports required capabilities\n task-statuses [options] List V2 task statuses (Phase 81)\n card-statuses [options] List V2 card statuses (Phase 81)\n subscription-types [options] List V2 subscription types (Phase 81)\n negotiation-results [options] List V2 negotiation outcomes (Phase 81)\n validate-card [options] <name> Validate an agent card against the A2A schema\n set-card-status [options] <cardId> <status> Transition a card between active/inactive/expired\n card-status [options] <cardId> Show a card's V2 status\n send-task-v2 [options] <agentId> <input> Submit a V2 task (in-memory, with optional timeout)\n start-working [options] <taskId> Transition a V2 task to working\n request-input [options] <taskId> <prompt> Request user input while a V2 task is working\n provide-input [options] <taskId> <input> Provide input for an input-required V2 task\n complete-task-v2 [options] <taskId> [output] Complete a V2 task (from working only)\n fail-task-v2 [options] <taskId> [error] Fail a V2 task with an error message\n cancel-task [options] <taskId> [reason] Cancel a non-terminal V2 task\n check-timeout [options] <taskId> Check V2 task timeout (auto-fails if past deadline)\n task-v2 [options] <taskId> Show a V2 task snapshot\n tasks-v2 [options] List V2 tasks\n negotiate-v2 [options] <cardJson> Phase 81 capability negotiation against an agent card\n stats-v2 [options] Aggregate V2 stats (tasks + cards + subscriptions)\n enums-v2 Show V2 governance enums\n register-agent-v2 [options] Register an a2a agent profile (pending)\n activate-agent-v2 <id> Activate agent\n suspend-agent-v2 <id> Suspend agent\n retire-agent-v2 <id> Retire agent (terminal)\n touch-agent-v2 <id> Refresh lastTouchedAt\n get-agent-v2 <id> Get agent\n list-agents-v2 List agents\n create-message-v2 [options] Create an a2a message (queued)\n start-message-v2 <id> Transition message to sending\n deliver-message-v2 <id> Transition message to delivered\n fail-message-v2 [options] <id> Fail message\n cancel-message-v2 [options] <id> Cancel message\n get-message-v2 <id> Get message\n list-messages-v2 List messages\n set-max-active-agents-v2 <n> Set per-owner active cap\n set-max-pending-messages-v2 <n> Set per-agent pending cap\n set-agent-idle-ms-v2 <n> Set idle threshold\n set-message-stuck-ms-v2 <n> Set stuck threshold\n auto-suspend-idle-agents-v2 Auto-suspend idle agents\n auto-fail-stuck-messages-v2 Auto-fail stuck sending messages\n gov-stats-v2 V2 governance aggregate stats\n help [command] display help for command\n",
6
6
  "activitypub": "Usage: chainlesschain activitypub|ap [options] [command]\n\nActivityPub C2S bridge — actors, outbox/inbox, Follow/Create/Like/Announce\n\nOptions:\n -h, --help display help for command\n\nCommands:\n actor Manage local and remote ActivityPub actors\n publish [options] <content> Publish a Create(Note) activity to the actor's outbox\n follow [options] <target> Publish a Follow activity (target: username or actor URL)\n accept [options] <follow-activity-id> Accept a pending Follow request\n unfollow [options] <target> Publish an Undo(Follow) activity\n like [options] <object-id> Publish a Like activity for an object URL\n announce [options] <object-id> Publish an Announce (boost) activity for an object URL\n outbox [options] <username> List an actor's outbox activities\n inbox [options] <username> List an actor's inbox activities\n deliver [options] <username> <activity-json> Simulate inbox delivery — push a JSON activity into a local actor's inbox\n followers [options] <username> List followers of an actor\n search [options] <query> Search actors and/or notes in the local Fediverse index\n following [options] <username> List who this actor is following\n enums-v2 Show V2 enums\n register-actor-v2 [options] Register an AP actor profile (pending)\n activate-actor-v2 <id> Activate actor\n suspend-actor-v2 <id> Suspend actor\n deactivate-actor-v2 <id> Deactivate actor (terminal)\n touch-actor-v2 <id> Refresh lastTouchedAt\n get-actor-v2 <id> Get actor\n list-actors-v2 List actors\n create-activity-v2 [options] Create an AP activity (queued)\n start-activity-v2 <id> Transition activity to delivering\n deliver-activity-v2 <id> Transition activity to delivered\n fail-activity-v2 [options] <id> Fail activity\n cancel-activity-v2 [options] <id> Cancel activity\n get-activity-v2 <id> Get activity\n list-activities-v2 List activities\n set-max-active-actors-v2 <n> Set per-owner active cap\n set-max-pending-activities-v2 <n> Set per-actor pending cap\n set-actor-idle-ms-v2 <n> Set idle threshold\n set-activity-stuck-ms-v2 <n> Set stuck threshold\n auto-suspend-idle-actors-v2 Auto-suspend idle actors\n auto-fail-stuck-activities-v2 Auto-fail stuck delivering activities\n gov-stats-v2 V2 governance aggregate stats\n help [command] display help for command\n",
7
7
  "agenda": "Usage: chainlesschain agenda [options] [command]\n\nFire agent-scheduled wakeups / crons / monitors (persisted by the `schedule`\ntool)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n list [options] List all scheduled entries\n run [options] Fire every entry that is due now\n cancel [options] <id> Remove a scheduled entry by id\n prune [options] Remove finished entries (fired / matched / exhausted /\n expired)\n help [command] display help for command\n",
8
- "agent": "Usage: chainlesschain agent|a [options] [task...]\n\nStart an agentic AI session (reads/writes files, runs commands)\n\nArguments:\n task Headless task 鈥?when given (or with -p /\n piped stdin), runs non-interactively\n\nOptions:\n --model <model> Model name\n --provider <provider> LLM provider (ollama, openai,\n volcengine, deepseek, ...)\n --base-url <url> API base URL\n --api-key <key> API key\n --think [level] Enable Anthropic extended thinking\n (level: think | hard | ultra; Anthropic\n models only)\n --ultrathink Maximum Anthropic extended thinking (=\n --think ultra)\n --thinking-budget <n> Thinking token budget for legacy Claude\n models (Sonnet 4.5 / Opus 4.0-4.5 /\n older); clamped below max_tokens.\n Adaptive-thinking models ignore it (they\n use --think's effort). Requires\n --think/--ultrathink.\n --image <path> Attach an image (png/jpg/jpeg/gif/webp)\n to the prompt for a vision-capable model\n (headless; repeatable)\n --vision-model <id> Model to use when an image is attached\n (default: config llm.visionModel or\n doubao-seed-2-0-lite-260215)\n --session <id> Resume a previous agent session\n -c, --continue Resume the most recent session (no id\n needed 鈥?claude --continue parity)\n --resume [id] Resume a session by id (no id 鈫?most\n recent 鈥?claude --resume parity)\n --fork-session When resuming, branch into a NEW session\n id and leave the original untouched\n (claude --fork-session parity)\n --fork-request-id <key> Stable idempotency key for\n --fork-session retries (omit for a new\n fork each invocation)\n --add-dir <dir> Extra working directory the agent may\n read/search/edit (repeatable)\n --checkpoint Auto-snapshot the work tree before each\n mutating tool (DEFAULT inside a git\n repo; cc checkpoint restore to roll\n back)\n --no-checkpoint Disable auto-checkpointing (it is on by\n default inside git repos)\n --managed-checkpoint Checkpoint bounded mutating tools with\n Process Broker; unavailable writer\n lifetimes are reported as coverage none\n --managed-checkpoint-state <dir> Durable managed-checkpoint state\n directory (must be outside the\n workspace)\n --managed-checkpoint-exclude <path> Explicit workspace path excluded from\n managed checkpoints; repeatable and\n reported as partial coverage\n --safe-mode Run bare: disable project memory,\n settings hooks, memory recall, IDE\n context, status line and update notice\n (permission rules STAY active)\n --bare Everything --safe-mode disables PLUS\n skills, plugins and MCP/IDE auto-connect\n — minimal fast surface for scripted\n calls (explicit --mcp-config still\n loads; permission rules STAY active)\n --ephemeral No session persistence: nothing is\n written to the session store (headless;\n a --resume id still replays history\n read-only)\n --decision-mode <mode> Typed Skill-routing experiment for\n durable headless sessions: off | shadow\n | suggest (default: \"off\")\n --decision-provider <provider> Decision provider: typesafe | laya\n (local) | system-one (compatible API)\n (default: \"typesafe\")\n --decision-model <model> Decision model (defaults:\n typesafe=jev-latest, laya=laya; required\n for system-one)\n --decision-base-url <url> System One API base URL (laya: loopback\n only; other providers: HTTPS or\n loopback)\n --decision-timeout-ms <ms> Decision timeout in milliseconds\n (50-30000; default: 800)\n --capabilities Print a machine-readable capability\n manifest (JSON: protocol version, tools,\n permission modes, exit codes) and exit\n --disable-slash-commands Interactive REPL: don't dispatch '/'\n input as slash commands — it reaches the\n model verbatim (/exit and /quit stay\n live)\n --ax-screen-reader Screen-reader friendly output: no ANSI\n colors, no in-place status line repaints\n (also CC_SCREEN_READER=1)\n --worktree Run this session in a fresh git worktree\n (isolated branch; auto-removed when the\n session changes nothing)\n --no-worktree Background Git task: explicitly share\n the current work tree (intended for\n read-only tasks; writable runs are not\n isolated)\n --unattended Enable fail-closed shell action policy\n for scheduled/event-driven runs\n --unattended-allow <classes> Comma-separated action classes\n explicitly allowed for unattended shell\n runs\n --sandbox [image] Run shell commands in an ephemeral\n Docker sandbox (network disabled by\n default)\n --sandbox-mode <mode> Sandbox posture: off | workspace-write |\n strict (explicit isolation modes fail\n closed)\n --sandbox-network Allow network access inside --sandbox\n --otlp <file> Write the agent run's OpenTelemetry\n spans (model/tool/retry) as OTLP/JSON to\n <file>\n --otlp-content Include prompt/response CONTENT in\n --otlp spans (off by default; content is\n redacted unless this is set)\n --auto-rewake When an async `asyncRewake` hook (e.g. a\n background test) fails at turn end,\n re-engage the agent to fix it (bounded\n by --max-rewakes)\n --auto-pin Force-pin the original task (first user\n turn) through compaction (ON by default;\n disable with CC_AUTO_PIN=0 or config\n context.autoPin=false)\n --max-rewakes <n> Max auto-rewake re-drives per run\n (default 1); implies --auto-rewake\n --bg, --background Start as a detached background agent and\n return its id immediately\n --agent-id <id> Agent id for scoped memory recall\n --recall-limit <n> Top-K memories to inject into system\n prompt\n --recall-query <q> Query string for startup memory recall\n --no-recall-memory Disable startup memory recall\n --vim Start the interactive REPL in vim-mode\n line editing (toggle later with /vim; or\n CC_VIM=1)\n --no-stream Disable streamed response rendering\n --no-park-on-exit Close the session-core handle on exit\n instead of parking it\n --bundle <path> Agent bundle directory (may execute\n local MCP commands from mcp.json)\n -p, --print [prompt] Headless: run one non-interactive turn\n and exit\n --output-format <fmt> Headless output: text | json |\n stream-json (default: \"text\")\n --max-turns <n> Cap agent loop iterations (0 =\n unlimited; interactive streams default\n to unlimited, unattended runs to 50)\n --json-schema <file> Headless structured output: final reply\n must be JSON validating against this\n schema (invalid replies retried)\n --allowed-tools <list> Comma/space-separated tool allow-list\n (headless)\n --disallowed-tools <list> Comma/space-separated tool deny-list\n (headless)\n --permission-mode <mode> manual | auto | dontAsk | default | plan\n | acceptEdits | bypassPermissions (plan\n headless-only)\n --no-file-refs Disable @path file-reference expansion\n in the prompt (headless)\n --no-slash-macros Disable /name custom-command\n (.claude/commands) expansion in the\n prompt (headless)\n --system-prompt <text> Replace the built-in system prompt\n (literal text or @file)\n --append-system-prompt <text> Append extra guidance to the system\n prompt (literal text or @file)\n --no-project-memory Skip auto-loaded project memory (cc.md /\n CLAUDE.md / AGENTS.md hierarchy,\n .chainlesschain/rules.md,\n .claude/rules/*.md) — a lean system\n prompt for token-tight surfaces (e.g.\n IDE chat). The agent can still read\n those files with tools when it needs\n them.\n --output-style <name> Apply a named output-style persona\n (.claude/output-styles/<name>.md or a\n built-in: concise | explanatory |\n learning)\n --input-format <fmt> Headless input: text | stream-json\n (NDJSON user events on stdin,\n multi-turn) (default: \"text\")\n --trace-id <id> Correlation id stamped as `trace_id` on\n every stream-json output line (also read\n from CC_TRACE_ID). Lets an IDE/bridge\n trace one run across its own logs, the\n CLI, transcripts and diagnostics.\n Auto-generated per run when omitted.\n --fallback-model <model> Backup model(s) to try in order when the\n primary fails (transient error or\n model-not-found). Repeatable or\n comma-separated; up to 3. A\n `provider:model` entry (e.g.\n openai:gpt-4o) falls back\n cross-provider, using that provider's\n API key from its env var (skipped if\n unset — never reuses the primary key).\n Defaults to config llm.fallbackModels.\n --include-partial-messages Emit live assistant-text deltas as\n stream_event lines (requires\n --output-format stream-json)\n --include-hook-events Emit redacted hook and subagent\n lifecycle events (requires\n --output-format stream-json)\n --goal [id] Bind a cc goal into the run (id, or omit\n the value to auto-resolve the active\n goal)\n --goal-assess After the run, ask the model to assess\n goal progress and persist it (opt-in;\n costs one extra completion; requires\n --goal)\n --goal-condition <spec> Session completion condition; re-drives\n outer turns until met. Prefix\n exit-zero:/file-exists:/contains:/regex:\n (deterministic) or model:<desc>\n (model-judged)\n --max-outer-turns <n> Max outer re-drive turns for\n --goal-condition (default 10, hard cap\n 100)\n --goal-max-tokens <n> Token budget across --goal-condition\n outer turns\n --goal-max-cost <usd> Cost budget (USD) across\n --goal-condition outer turns\n --goal-max-time <ms> Wall-clock budget (ms) across\n --goal-condition outer turns\n --mcp-config <file> Load ad-hoc MCP servers from a JSON file\n for this run (headless); their tools\n become callable (mcp__<server>__<tool>)\n --no-mcp Don't auto-connect MCP servers\n registered with `cc mcp add\n --auto-connect` (--mcp-config still\n loads)\n --ide Force-enable IDE bridge auto-connect:\n discover a running editor's MCP server\n via ~/.chainlesschain/ide/*.json\n (default: auto inside an IDE integrated\n terminal)\n --no-ide Disable IDE bridge auto-connect\n --pdh Force-enable PDH bridge auto-connect:\n discover the Android app's\n device-capability MCP server via\n ~/.chainlesschain/pdh-bridge/*.json\n (default: auto when\n CHAINLESSCHAIN_PDH_PORT is set)\n --no-pdh Disable PDH bridge auto-connect\n --jetbrains Force-enable IntelliJ IDEA built-in MCP\n (IDEA >= 2025.2) as server `idea`\n (default: auto when the ChainlessChain\n JetBrains plugin injects\n CHAINLESSCHAIN_JETBRAINS_MCP_URL)\n --no-jetbrains Disable IDEA built-in MCP auto-connect\n --interactive-approvals Stream mode: confirm-tier approvals\n become approval_request/approval\n stdin-stdout events instead of failing\n closed (chat-panel UX)\n --permission-prompt-tool <tool> Defer tool approvals to an MCP tool\n (mcp__<server>__<tool>; requires\n --mcp-config) instead of headless\n fail-closed\n --remote-control Route confirm-tier approvals to paired\n mobile/web devices — requires a relay or\n explicit LAN opt-in; headless waits\n fail-closed, interactive races the\n terminal prompt (also /remote-control)\n --remote-control-allow-lan Permit --remote-control to expose its\n authenticated WS endpoint on a trusted\n LAN\n --channels <list> Inbound channels for the interactive\n session (webhook[:port],telegram) —\n external events enter as user turns;\n webhook needs its bearer token, telegram\n needs channels.telegram.allowFrom\n --settings <file> Merge an extra\n .claude/settings.json-shaped file for\n this run: permission rules\n (allow/ask/deny) + native config\n overrides (model, env)\n --max-budget-usd <amount> Hard USD spend cap: stop the run before\n the next paid LLM call once the\n estimated cost reaches this (headless;\n uses the cc cost price table)\n --session-budget Enable the durable session-wide budget\n authority (headless; requires\n --session/--resume/--continue)\n --session-max-concurrent <n> Durable session cap for concurrent child\n work\n --session-max-spawns <n> Durable session cap for total child-work\n admissions\n --session-max-depth <n> Durable session cap for child-agent\n nesting depth\n --session-max-turns <n> Durable session cap for model turns\n across resumes\n --session-max-tokens <n> Durable session cap for\n provider-reported tokens across resumes\n --session-max-cost-usd <amount> Durable session cost cap across resumes\n (requires priced provider usage)\n --session-max-wall-ms <n> Durable session cap for cumulative\n active wall time\n --session-max-tool-ms <n> Durable session cap for aggregate tool\n execution time\n --observability-workspace <id> Persist a workspace scope on new session\n authority for causal reports\n --observability-team <id> Persist a team scope on new session\n authority for causal reports\n --observability-policy <id> Persist a policy scope on new session\n authority for causal reports\n --strict-mcp-config Use ONLY --mcp-config servers; ignore\n registered (cc mcp add) and IDE-bridge\n MCP for a reproducible tool surface\n --project-mcp Opt in to loading a project-scoped\n .mcp.json (default off; a checked-in\n .mcp.json can spawn commands)\n --replay-user-messages Stream-input mode: echo each accepted\n stdin user message back as a `user`\n event (transcript/correlation)\n --allow-dangerous-bypass Bypass all permission prompts in\n headless mode (DANGEROUS: auto-approves\n all tool calls) (default: false)\n -y, --yolo Alias for --allow-dangerous-bypass\n (default: false)\n --dangerously-skip-permissions Alias for --allow-dangerous-bypass\n (default: false)\n -h, --help display help for command\n",
8
+ "agent": "Usage: chainlesschain agent|a [options] [command] [task...]\n\nStart an agentic AI session (reads/writes files, runs commands)\n\nArguments:\n task Headless task 鈥?when given (or with -p /\n piped stdin), runs non-interactively\n\nOptions:\n --model <model> Model name\n --provider <provider> LLM provider (ollama, openai,\n volcengine, deepseek, ...)\n --base-url <url> API base URL\n --api-key <key> API key\n --think [level] Enable Anthropic extended thinking\n (level: think | hard | ultra; Anthropic\n models only)\n --ultrathink Maximum Anthropic extended thinking (=\n --think ultra)\n --thinking-budget <n> Thinking token budget for legacy Claude\n models (Sonnet 4.5 / Opus 4.0-4.5 /\n older); clamped below max_tokens.\n Adaptive-thinking models ignore it (they\n use --think's effort). Requires\n --think/--ultrathink.\n --image <path> Attach an image (png/jpg/jpeg/gif/webp)\n to the prompt for a vision-capable model\n (headless; repeatable)\n --vision-model <id> Model to use when an image is attached\n (default: config llm.visionModel or\n doubao-seed-2-0-lite-260215)\n --session <id> Resume a previous agent session\n -c, --continue Resume the most recent session (no id\n needed 鈥?claude --continue parity)\n --resume [id] Resume a session by id (no id 鈫?most\n recent 鈥?claude --resume parity)\n --fork-session When resuming, branch into a NEW session\n id and leave the original untouched\n (claude --fork-session parity)\n --fork-request-id <key> Stable idempotency key for\n --fork-session retries (omit for a new\n fork each invocation)\n --add-dir <dir> Extra working directory the agent may\n read/search/edit (repeatable)\n --checkpoint Auto-snapshot the work tree before each\n mutating tool (DEFAULT inside a git\n repo; cc checkpoint restore to roll\n back)\n --no-checkpoint Disable auto-checkpointing (it is on by\n default inside git repos)\n --managed-checkpoint Checkpoint bounded mutating tools with\n Process Broker; unavailable writer\n lifetimes are reported as coverage none\n --managed-checkpoint-state <dir> Durable managed-checkpoint state\n directory (must be outside the\n workspace)\n --managed-checkpoint-exclude <path> Explicit workspace path excluded from\n managed checkpoints; repeatable and\n reported as partial coverage\n --safe-mode Run bare: disable project memory,\n settings hooks, memory recall, IDE\n context, status line and update notice\n (permission rules STAY active)\n --bare Everything --safe-mode disables PLUS\n skills, plugins and MCP/IDE auto-connect\n — minimal fast surface for scripted\n calls (explicit --mcp-config still\n loads; permission rules STAY active)\n --ephemeral No session persistence: nothing is\n written to the session store (headless;\n a --resume id still replays history\n read-only)\n --decision-mode <mode> Typed Skill-routing experiment for\n durable headless sessions: off | shadow\n | suggest (default: \"off\")\n --decision-provider <provider> Decision provider: typesafe | laya\n (local) | system-one (compatible API)\n (default: \"typesafe\")\n --decision-model <model> Decision model (defaults:\n typesafe=jev-latest, laya=laya; required\n for system-one)\n --decision-base-url <url> System One API base URL (laya: loopback\n only; other providers: HTTPS or\n loopback)\n --decision-timeout-ms <ms> Decision timeout in milliseconds\n (50-30000; default: 800)\n --capabilities Print a machine-readable capability\n manifest (JSON: protocol version, tools,\n permission modes, exit codes) and exit\n --disable-slash-commands Interactive REPL: don't dispatch '/'\n input as slash commands — it reaches the\n model verbatim (/exit and /quit stay\n live)\n --ax-screen-reader Screen-reader friendly output: no ANSI\n colors, no in-place status line repaints\n (also CC_SCREEN_READER=1)\n --worktree Run this session in a fresh git worktree\n (isolated branch; auto-removed when the\n session changes nothing)\n --no-worktree Background Git task: explicitly share\n the current work tree (intended for\n read-only tasks; writable runs are not\n isolated)\n --unattended Enable fail-closed shell action policy\n for scheduled/event-driven runs\n --unattended-allow <classes> Comma-separated action classes\n explicitly allowed for unattended shell\n runs\n --sandbox [image] Run shell commands in an ephemeral\n Docker sandbox (network disabled by\n default)\n --sandbox-mode <mode> Sandbox posture: off | workspace-write |\n strict (explicit isolation modes fail\n closed)\n --sandbox-network Allow network access inside --sandbox\n --otlp <file> Write the agent run's OpenTelemetry\n spans (model/tool/retry) as OTLP/JSON to\n <file>\n --otlp-content Include prompt/response CONTENT in\n --otlp spans (off by default; content is\n redacted unless this is set)\n --auto-rewake When an async `asyncRewake` hook (e.g. a\n background test) fails at turn end,\n re-engage the agent to fix it (bounded\n by --max-rewakes)\n --auto-pin Force-pin the original task (first user\n turn) through compaction (ON by default;\n disable with CC_AUTO_PIN=0 or config\n context.autoPin=false)\n --max-rewakes <n> Max auto-rewake re-drives per run\n (default 1); implies --auto-rewake\n --bg, --background Start as a detached background agent and\n return its id immediately\n --agent-id <id> Agent id for scoped memory recall\n --recall-limit <n> Top-K memories to inject into system\n prompt\n --recall-query <q> Query string for startup memory recall\n --no-recall-memory Disable startup memory recall\n --vim Start the interactive REPL in vim-mode\n line editing (toggle later with /vim; or\n CC_VIM=1)\n --no-stream Disable streamed response rendering\n --no-park-on-exit Close the session-core handle on exit\n instead of parking it\n --bundle <path> Agent bundle directory (may execute\n local MCP commands from mcp.json)\n -p, --print [prompt] Headless: run one non-interactive turn\n and exit\n --output-format <fmt> Headless output: text | json |\n stream-json (default: \"text\")\n --max-turns <n> Cap agent loop iterations (0 =\n unlimited; interactive streams default\n to unlimited, unattended runs to 50)\n --json-schema <file> Headless structured output: final reply\n must be JSON validating against this\n schema (invalid replies retried)\n --allowed-tools <list> Comma/space-separated tool allow-list\n (headless)\n --disallowed-tools <list> Comma/space-separated tool deny-list\n (headless)\n --permission-mode <mode> manual | auto | dontAsk | default | plan\n | acceptEdits | bypassPermissions (plan\n headless-only)\n --no-file-refs Disable @path file-reference expansion\n in the prompt (headless)\n --no-slash-macros Disable /name custom-command\n (.claude/commands) expansion in the\n prompt (headless)\n --system-prompt <text> Replace the built-in system prompt\n (literal text or @file)\n --append-system-prompt <text> Append extra guidance to the system\n prompt (literal text or @file)\n --no-project-memory Skip auto-loaded project memory (cc.md /\n CLAUDE.md / AGENTS.md hierarchy,\n .chainlesschain/rules.md,\n .claude/rules/*.md) — a lean system\n prompt for token-tight surfaces (e.g.\n IDE chat). The agent can still read\n those files with tools when it needs\n them.\n --output-style <name> Apply a named output-style persona\n (.claude/output-styles/<name>.md or a\n built-in: concise | explanatory |\n learning)\n --input-format <fmt> Headless input: text | stream-json\n (NDJSON user events on stdin,\n multi-turn) (default: \"text\")\n --trace-id <id> Correlation id stamped as `trace_id` on\n every stream-json output line (also read\n from CC_TRACE_ID). Lets an IDE/bridge\n trace one run across its own logs, the\n CLI, transcripts and diagnostics.\n Auto-generated per run when omitted.\n --fallback-model <model> Backup model(s) to try in order when the\n primary fails (transient error or\n model-not-found). Repeatable or\n comma-separated; up to 3. A\n `provider:model` entry (e.g.\n openai:gpt-4o) falls back\n cross-provider, using that provider's\n API key from its env var (skipped if\n unset — never reuses the primary key).\n Defaults to config llm.fallbackModels.\n --include-partial-messages Emit live assistant-text deltas as\n stream_event lines (requires\n --output-format stream-json)\n --include-hook-events Emit redacted hook and subagent\n lifecycle events (requires\n --output-format stream-json)\n --goal [id] Bind a cc goal into the run (id, or omit\n the value to auto-resolve the active\n goal)\n --goal-assess After the run, ask the model to assess\n goal progress and persist it (opt-in;\n costs one extra completion; requires\n --goal)\n --goal-condition <spec> Session completion condition; re-drives\n outer turns until met. Prefix\n exit-zero:/file-exists:/contains:/regex:\n (deterministic) or model:<desc>\n (model-judged)\n --max-outer-turns <n> Max outer re-drive turns for\n --goal-condition (default 10, hard cap\n 100)\n --goal-max-tokens <n> Token budget across --goal-condition\n outer turns\n --goal-max-cost <usd> Cost budget (USD) across\n --goal-condition outer turns\n --goal-max-time <ms> Wall-clock budget (ms) across\n --goal-condition outer turns\n --mcp-config <file> Load ad-hoc MCP servers from a JSON file\n for this run (headless); their tools\n become callable (mcp__<server>__<tool>)\n --no-mcp Don't auto-connect MCP servers\n registered with `cc mcp add\n --auto-connect` (--mcp-config still\n loads)\n --ide Force-enable IDE bridge auto-connect:\n discover a running editor's MCP server\n via ~/.chainlesschain/ide/*.json\n (default: auto inside an IDE integrated\n terminal)\n --no-ide Disable IDE bridge auto-connect\n --pdh Force-enable PDH bridge auto-connect:\n discover the Android app's\n device-capability MCP server via\n ~/.chainlesschain/pdh-bridge/*.json\n (default: auto when\n CHAINLESSCHAIN_PDH_PORT is set)\n --no-pdh Disable PDH bridge auto-connect\n --jetbrains Force-enable IntelliJ IDEA built-in MCP\n (IDEA >= 2025.2) as server `idea`\n (default: auto when the ChainlessChain\n JetBrains plugin injects\n CHAINLESSCHAIN_JETBRAINS_MCP_URL)\n --no-jetbrains Disable IDEA built-in MCP auto-connect\n --interactive-approvals Stream mode: confirm-tier approvals\n become approval_request/approval\n stdin-stdout events instead of failing\n closed (chat-panel UX)\n --permission-prompt-tool <tool> Defer tool approvals to an MCP tool\n (mcp__<server>__<tool>; requires\n --mcp-config) instead of headless\n fail-closed\n --remote-control Route confirm-tier approvals to paired\n mobile/web devices — requires a relay or\n explicit LAN opt-in; headless waits\n fail-closed, interactive races the\n terminal prompt (also /remote-control)\n --remote-control-allow-lan Permit --remote-control to expose its\n authenticated WS endpoint on a trusted\n LAN\n --channels <list> Inbound channels for the interactive\n session (webhook[:port],telegram) —\n external events enter as user turns;\n webhook needs its bearer token, telegram\n needs channels.telegram.allowFrom\n --settings <file> Merge an extra\n .claude/settings.json-shaped file for\n this run: permission rules\n (allow/ask/deny) + native config\n overrides (model, env)\n --max-budget-usd <amount> Hard USD spend cap: stop the run before\n the next paid LLM call once the\n estimated cost reaches this (headless;\n uses the cc cost price table)\n --session-budget Enable the durable session-wide budget\n authority (headless; requires\n --session/--resume/--continue)\n --session-max-concurrent <n> Durable session cap for concurrent child\n work\n --session-max-spawns <n> Durable session cap for total child-work\n admissions\n --session-max-depth <n> Durable session cap for child-agent\n nesting depth\n --session-max-turns <n> Durable session cap for model turns\n across resumes\n --session-max-tokens <n> Durable session cap for\n provider-reported tokens across resumes\n --session-max-cost-usd <amount> Durable session cost cap across resumes\n (requires priced provider usage)\n --session-max-wall-ms <n> Durable session cap for cumulative\n active wall time\n --session-max-tool-ms <n> Durable session cap for aggregate tool\n execution time\n --observability-workspace <id> Persist a workspace scope on new session\n authority for causal reports\n --observability-team <id> Persist a team scope on new session\n authority for causal reports\n --observability-policy <id> Persist a policy scope on new session\n authority for causal reports\n --strict-mcp-config Use ONLY --mcp-config servers; ignore\n registered (cc mcp add) and IDE-bridge\n MCP for a reproducible tool surface\n --project-mcp Opt in to loading a project-scoped\n .mcp.json (default off; a checked-in\n .mcp.json can spawn commands)\n --replay-user-messages Stream-input mode: echo each accepted\n stdin user message back as a `user`\n event (transcript/correlation)\n --allow-dangerous-bypass Bypass all permission prompts in\n headless mode (DANGEROUS: auto-approves\n all tool calls) (default: false)\n -y, --yolo Alias for --allow-dangerous-bypass\n (default: false)\n --dangerously-skip-permissions Alias for --allow-dangerous-bypass\n (default: false)\n -h, --help display help for command\n\nCommands:\n controlled-host [options] Run against a pre-provisioned Linux\n permission authority (one-shot, dontAsk)\n",
9
9
  "agent-network": "Usage: chainlesschain agent-network|anet [options] [command]\n\nDecentralized Agent Network (Phase 24) — DID / registry / credentials / task\nrouting\n\nOptions:\n -h, --help display help for command\n\nCommands:\n config [options] Show network constants & reputation weights\n dimensions [options] List reputation dimensions\n task-statuses [options] List task lifecycle statuses\n did-create [options] Create an Agent DID (Ed25519 + DID document)\n did-resolve [options] <did> Resolve DID → DID document\n dids [options] List Agent DIDs\n did-deactivate [options] <did> Deactivate a DID (also forces registry offline)\n sign [options] <did> <data> Sign data with agent's Ed25519 key\n verify [options] <did> <data> <signature> Verify a signature from an agent\n register [options] <did> <orgId> Register an Agent in the federated registry\n unregister [options] <did> Remove an Agent from the registry\n heartbeat [options] <did> Bump last_heartbeat (forces online)\n discover [options] Discover agents (capability / org / status)\n sweep [options] Mark stale online agents offline\n peer-add [options] <peerId> Add/update a Kademlia peer (k-bucket auto-computed)\n peer-remove [options] <peerId> Remove a peer\n peers [options] List peers (optionally by k-bucket)\n auth-start [options] <did> Issue an auth challenge for a DID\n auth-complete [options] <sessionId> <signature> Complete auth with signature over challenge\n auth-validate [options] <token> Validate a session token (returns agentDid or exits 1)\n auth-sessions [options] List auth sessions\n credential-issue [options] <issuerDid> <subjectDid> Issue a VC with HMAC/Ed25519 proof\n credential-verify [options] <id> Verify a VC (signature + expiry + revocation)\n credential-revoke [options] <id> Revoke a credential\n credential-show [options] <id> Show a credential\n credentials [options] List credentials (filter by subject/issuer/status/type)\n task-route [options] <sourceOrg> <taskType> Route task → pick best-rep agent matching capability\n task-show [options] <taskId> Show a task\n task-status [options] <taskId> <status> Update task status (terminal states set completedAt)\n task-cancel [options] <taskId> Cancel a task (sets CANCELLED + reason)\n tasks [options] List tasks\n rep-update [options] <did> <dimension> <score> Record a reputation observation\n rep-show [options] <did> Show reputation summary (weighted total + per-dim avg)\n rep-history [options] <did> Show reputation history (newest first)\n rep-top [options] Top agents by dimension (or total)\n stats [options] Network-level statistics\n agent-maturities-v2 List V2 agent maturity states\n task-lifecycles-v2 List V2 task lifecycle states\n stats-v2 V2 agent-network stats\n get-max-active-agents-v2 Get max active agents per network (V2)\n set-max-active-agents-v2 <n> Set max active agents per network (V2)\n get-max-pending-tasks-v2 Get max pending tasks per agent (V2)\n set-max-pending-tasks-v2 <n> Set max pending tasks per agent (V2)\n get-agent-idle-ms-v2 Get agent idle threshold (V2)\n set-agent-idle-ms-v2 <ms> Set agent idle threshold (V2)\n get-task-stuck-ms-v2 Get task stuck threshold (V2)\n set-task-stuck-ms-v2 <ms> Set task stuck threshold (V2)\n active-agent-count-v2 <networkId> Active agent count for network (V2)\n pending-task-count-v2 <agentId> Pending task count for agent (V2)\n register-agent-v2 [options] <id> Register a V2 agent\n get-agent-v2 <id> Get a V2 agent\n list-agents-v2 [options] List V2 agents\n set-agent-status-v2 <id> <next> Set V2 agent status\n activate-agent-v2 <id> Activate a V2 agent\n suspend-agent-v2 <id> Suspend a V2 agent\n revoke-agent-v2 <id> Revoke a V2 agent\n touch-agent-v2 <id> Touch a V2 agent\n create-task-v2 [options] <id> Create a V2 task\n get-task-v2 <id> Get a V2 task\n list-tasks-v2 [options] List V2 tasks\n set-task-status-v2 <id> <next> Set V2 task status\n start-task-v2 <id> Start a V2 task\n complete-task-v2 <id> Complete a V2 task\n fail-task-v2 <id> Fail a V2 task\n cancel-task-v2 <id> Cancel a V2 task\n auto-suspend-idle-agents-v2 Auto-suspend idle V2 agents\n auto-fail-stuck-tasks-v2 Auto-fail stuck V2 tasks\n help [command] display help for command\n",
10
10
  "agents": "Usage: chainlesschain agents [options] [command]\n\nUser-defined subagents (.claude/agents/*.md)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n background|bg [options] List background agent sessions\n logs [options] <id> Print recent output from a background agent\n view [options] <id> Show a detailed background agent view\n stop [options] <id> Stop a running background agent\n rename [options] <id> <title...> Rename a background agent session\n list|ls [options] List discovered subagents (project +\n personal)\n show [options] <name> Show an agent's metadata + system prompt\n run [options] <name> [task...] Run a task headlessly as the named subagent\n new [options] <name> Scaffold a new agent file (project-native\n .chainlesschain/agents/)\n help [command] display help for command\n",
11
11
  "android": "Usage: chainlesschain android [options] [command]\n\nAndroid-native bridge: ContentResolver / SAF / Accessibility / Shizuku / root\n(Plan A A7)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n caps [options] Probe what bridge capabilities are available on this\n device\n contacts ContentResolver: contacts\n sms ContentResolver: SMS\n calls ContentResolver: call log\n app PackageManager: app inventory + Intent\n fs SAF / sandbox filesystem\n a11y Accessibility Service\n shizuku Shizuku ADB-like privileges\n root Magisk root su\n perms [options] <name> Check (and request) a runtime permission\n help [command] display help for command\n",
@@ -14,10 +14,10 @@
14
14
  "attach": "Usage: chainlesschain attach [options] <id>\n\nAttach to a background agent — interactive when its session transport is\navailable, log stream otherwise\n\nOptions:\n -n, --lines <n> Initial lines to print (default: \"100\")\n --no-follow Print the initial log tail and exit\n --no-input Log stream only; never send prompts\n -h, --help display help for command\n",
15
15
  "audit": "Usage: chainlesschain audit [options] [command]\n\nAudit log — security event tracking and compliance\n\nOptions:\n -h, --help display help for command\n\nCommands:\n log [options] Show recent audit events\n search [options] <query> Search audit logs\n stats [options] Show audit statistics\n export [options] Export audit logs to file\n purge [options] Delete old audit logs\n types List available event types and risk levels\n log-statuses-v2 List V2 log lifecycle states\n integrity-statuses-v2 List V2 integrity states\n alert-statuses-v2 List V2 alert lifecycle states\n event-types-v2 List V2 event types\n risk-levels-v2 List V2 risk levels\n default-max-alerts-per-actor Show default max alerts per actor\n max-alerts-per-actor Show current max alerts per actor\n set-max-alerts-per-actor <n> Update max alerts per actor\n default-archive-retention-ms Show default archive retention\n archive-retention-ms Show current archive retention\n set-archive-retention-ms <ms> Update archive retention (ms)\n default-purge-retention-ms Show default purge retention\n purge-retention-ms Show current purge retention\n set-purge-retention-ms <ms> Update purge retention (ms)\n open-alert-count [options] Count OPEN alerts (optionally scoped to actor)\n log-event-v2 [options] <log-id> V2: register a hash-chained log entry\n log-status-v2 <log-id> V2: show log status + integrity\n set-log-status-v2 [options] <log-id> <status> V2: transition log status (active|archived|purged)\n verify-chain-v2 V2: re-hash the chain and mark each entry verified/corrupted\n auto-archive-logs V2: bulk-flip stale ACTIVE logs → ARCHIVED\n auto-purge-logs V2: bulk-flip stale ARCHIVED logs → PURGED\n alert-status-v2 <alert-id> V2: show alert status\n set-alert-status-v2 [options] <alert-id> <status> V2: transition alert status (open|acknowledged|resolved|dismissed)\n acknowledge-alert [options] <alert-id> V2: shortcut → acknowledged\n resolve-alert [options] <alert-id> V2: shortcut → resolved\n dismiss-alert [options] <alert-id> V2: shortcut → dismissed\n stats-v2 V2: all-enum-key stats snapshot\n mtc Audit MTC double-track (Phase 2 scaffolding, default disabled)\n help [command] display help for command\n",
16
16
  "auth": "Usage: chainlesschain auth [options] [command]\n\nRBAC permission management\n\nOptions:\n -h, --help display help for command\n\nCommands:\n roles [options] List all roles\n create-role [options] <name> Create a custom role\n delete-role [options] <name> Delete a custom role\n grant [options] <user-did> <role> Grant a role to a user\n revoke <user-did> <role> Revoke a role from a user\n grant-permission <user-did> <permission> Grant a direct permission to a user\n revoke-permission <user-did> <permission> Revoke a direct permission from a user\n check [options] <user-did> <permission> Check if a user has a specific permission\n permissions [options] <user-did> Show all permissions for a user\n users [options] List all users with role assignments\n scopes List all available permission scopes\n help [command] display help for command\n",
17
- "auto": "Usage: chainlesschain auto [options] [command]\n\nWorkflow automation engine — 12 SaaS connectors + triggers (Phase 96)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n connectors [options] List 12 built-in SaaS connectors\n trigger-types [options] List trigger types\n statuses List flow and execution statuses\n config [options] Show automation engine config\n create [options] Create a flow\n flows [options] List flows\n center-projection [options] Emit the versioned Automation Center projection for IDEs\n center-runtime-action [options] <occurrenceId> <pause|resume> Pause or resume one exact fenced scheduler occurrence\n center-incident-action [options] <incidentId> <retry|cancel> Retry or cancel a revision-gated Automation Center incident\n center-routine-create [options] Create a revision-gated Routine from JSON stdin\n center-routine-edit [options] <routineId> Edit a revision-gated Routine from JSON stdin\n center-routine-action [options] <routineId> <action> Run a revision-gated Routine action\n center-action [options] <flowId> <action> Run a revision-gated Automation Center action\n show [options] <flowId> Show flow detail\n activate <flowId> Set flow status = active\n pause <flowId> Set flow status = paused\n archive <flowId> Set flow status = archived\n delete <flowId> Delete a flow (cascades triggers + executions)\n schedule [options] <flowId> Set flow cron schedule\n run-scheduled [options] Run due cron flows through the durable scheduler kernel\n set-execution-budget [options] <flowId> Set the durable unattended-execution budget for a flow\n execution-preflight [options] <flowId> Check live RBAC connector permissions and durable budget availability\n share [options] <flowId> Record flow share to another org\n templates [options] List built-in flow templates\n import-template [options] <templateId> Import a built-in template as a flow\n add-trigger [options] <flowId> Add a trigger to a flow\n triggers [options] [flowId] List triggers (optionally scoped to a flow)\n enable-trigger <triggerId> Enable a trigger\n disable-trigger <triggerId> Disable a trigger\n fire-trigger [options] <triggerId> Simulate trigger firing (executes flow)\n dispatch-channel-event [options] Dispatch one durable, scope-checked webhook or Telegram event\n execute [options] <flowId> Manually execute a flow (simulated)\n exec-show [options] <execId> Show execution detail\n logs [options] List executions\n stats [options] Show automation engine stats\n automation-maturities-v2 List V2 automation maturity states\n execution-lifecycles-v2 List V2 execution lifecycle states\n stats-v2 V2 automation engine stats\n get-max-active-automations-v2 Get max active automations per owner (V2)\n set-max-active-automations-v2 <n> Set max active automations per owner (V2)\n get-max-running-executions-v2 Get max running executions per automation (V2)\n set-max-running-executions-v2 <n> Set max running executions per automation (V2)\n get-automation-idle-ms-v2 Get automation idle threshold (V2)\n set-automation-idle-ms-v2 <ms> Set automation idle threshold (V2)\n get-execution-stuck-ms-v2 Get execution stuck threshold (V2)\n set-execution-stuck-ms-v2 <ms> Set execution stuck threshold (V2)\n active-automation-count-v2 <ownerId> Active automation count for owner (V2)\n running-execution-count-v2 <automationId> Running execution count for automation (V2)\n register-automation-v2 [options] <id> Register a V2 automation\n get-automation-v2 <id> Get a V2 automation\n list-automations-v2 [options] List V2 automations\n set-automation-status-v2 <id> <next> Set V2 automation status\n activate-automation-v2 <id> Activate a V2 automation\n pause-automation-v2 <id> Pause a V2 automation\n retire-automation-v2 <id> Retire a V2 automation\n touch-automation-v2 <id> Touch a V2 automation\n create-execution-v2 [options] <id> Create a V2 execution\n get-execution-v2 <id> Get a V2 execution\n list-executions-v2 [options] List V2 executions\n set-execution-status-v2 <id> <next> Set V2 execution status\n start-execution-v2 <id> Start a V2 execution\n succeed-execution-v2 <id> Succeed a V2 execution\n fail-execution-v2 <id> Fail a V2 execution\n cancel-execution-v2 <id> Cancel a V2 execution\n auto-pause-idle-automations-v2 Auto-pause idle V2 automations\n auto-fail-stuck-executions-v2 Auto-fail stuck V2 executions\n help [command] display help for command\n",
17
+ "auto": "Usage: chainlesschain auto [options] [command]\n\nWorkflow automation engine — 12 SaaS connectors + triggers (Phase 96)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n connectors [options] List 12 built-in SaaS connectors\n trigger-types [options] List trigger types\n statuses List flow and execution statuses\n config [options] Show automation engine config\n create [options] Create a flow\n flows [options] List flows\n center-projection [options] Emit the versioned Automation Center projection for IDEs\n center-runtime-action [options] <occurrenceId> <pause|resume> Pause or resume one exact fenced scheduler occurrence\n center-incident-action [options] <incidentId> <retry|cancel> Retry or cancel a revision-gated Automation Center incident\n center-routine-create [options] Create a revision-gated Routine from JSON stdin\n center-routine-edit [options] <routineId> Edit a revision-gated Routine from JSON stdin\n center-routine-action [options] <routineId> <action> Run a revision-gated Routine action\n center-action [options] <flowId> <action> Run a revision-gated Automation Center action\n show [options] <flowId> Show flow detail\n activate <flowId> Set flow status = active\n pause <flowId> Set flow status = paused\n archive <flowId> Set flow status = archived\n delete <flowId> Delete a flow (cascades triggers + executions)\n schedule [options] <flowId> Set flow cron schedule\n run-scheduled [options] Run due cron flows through the durable scheduler kernel\n set-execution-budget [options] <flowId> Set the durable unattended-execution budget for a flow\n execution-preflight [options] <flowId> Check live RBAC connector permissions and durable budget availability\n share [options] <flowId> Record flow share to another org\n templates [options] List built-in flow templates\n import-template [options] <templateId> Import a built-in template as a flow\n add-trigger [options] <flowId> Add a trigger to a flow\n triggers [options] [flowId] List triggers (optionally scoped to a flow)\n enable-trigger <triggerId> Enable a trigger\n disable-trigger <triggerId> Disable a trigger\n fire-trigger [options] <triggerId> Fire a trigger; use --test for simulation\n dispatch-channel-event [options] Dispatch one durable, scope-checked webhook or Telegram event\n execute [options] <flowId> Execute a flow; use --test for simulation\n exec-show [options] <execId> Show execution detail\n logs [options] List executions\n stats [options] Show automation engine stats\n automation-maturities-v2 List V2 automation maturity states\n execution-lifecycles-v2 List V2 execution lifecycle states\n stats-v2 V2 automation engine stats\n get-max-active-automations-v2 Get max active automations per owner (V2)\n set-max-active-automations-v2 <n> Set max active automations per owner (V2)\n get-max-running-executions-v2 Get max running executions per automation (V2)\n set-max-running-executions-v2 <n> Set max running executions per automation (V2)\n get-automation-idle-ms-v2 Get automation idle threshold (V2)\n set-automation-idle-ms-v2 <ms> Set automation idle threshold (V2)\n get-execution-stuck-ms-v2 Get execution stuck threshold (V2)\n set-execution-stuck-ms-v2 <ms> Set execution stuck threshold (V2)\n active-automation-count-v2 <ownerId> Active automation count for owner (V2)\n running-execution-count-v2 <automationId> Running execution count for automation (V2)\n register-automation-v2 [options] <id> Register a V2 automation\n get-automation-v2 <id> Get a V2 automation\n list-automations-v2 [options] List V2 automations\n set-automation-status-v2 <id> <next> Set V2 automation status\n activate-automation-v2 <id> Activate a V2 automation\n pause-automation-v2 <id> Pause a V2 automation\n retire-automation-v2 <id> Retire a V2 automation\n touch-automation-v2 <id> Touch a V2 automation\n create-execution-v2 [options] <id> Create a V2 execution\n get-execution-v2 <id> Get a V2 execution\n list-executions-v2 [options] List V2 executions\n set-execution-status-v2 <id> <next> Set V2 execution status\n start-execution-v2 <id> Start a V2 execution\n succeed-execution-v2 <id> Succeed a V2 execution\n fail-execution-v2 <id> Fail a V2 execution\n cancel-execution-v2 <id> Cancel a V2 execution\n auto-pause-idle-automations-v2 Auto-pause idle V2 automations\n auto-fail-stuck-executions-v2 Auto-fail stuck V2 executions\n help [command] display help for command\n",
18
18
  "auto-mode": "Usage: chainlesschain auto-mode|automode [options] [command]\n\nInspect auto permission-mode defaults and effective config\n\nOptions:\n -h, --help display help for command\n\nCommands:\n defaults Print built-in auto-mode classification defaults as JSON\n config [options] Print the effective auto-mode config\n eval [options] Run the offline dangerous-operation classifier corpus and\n CI gate\n help [command] display help for command\n",
19
19
  "autoagent": "Usage: chainlesschain autoagent [options] [command]\n\nAutonomous agent V2 governance\n\nOptions:\n -h, --help display help for command\n\nCommands:\n enums-v2\n config-v2\n set-max-active-v2 <n>\n set-max-pending-v2 <n>\n set-idle-ms-v2 <n>\n set-stuck-ms-v2 <n>\n register-agent-v2 [options] <id> <owner>\n activate-agent-v2 <id>\n pause-agent-v2 <id>\n archive-agent-v2 <id>\n touch-agent-v2 <id>\n get-agent-v2 <id>\n list-agents-v2\n create-run-v2 [options] <id> <agentId>\n start-run-v2 <id>\n complete-run-v2 <id>\n fail-run-v2 <id> [reason]\n cancel-run-v2 <id> [reason]\n get-run-v2 <id>\n list-runs-v2\n auto-pause-idle-v2\n auto-fail-stuck-v2\n gov-stats-v2\n reset-state-v2\n help [command] display help for command\n",
20
- "automation": "Usage: chainlesschain automation [options] [command]\n\nWorkflow automation engine — 12 SaaS connectors + triggers (Phase 96)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n connectors [options] List 12 built-in SaaS connectors\n trigger-types [options] List trigger types\n statuses List flow and execution statuses\n config [options] Show automation engine config\n create [options] Create a flow\n flows [options] List flows\n center-projection [options] Emit the versioned Automation Center projection for IDEs\n center-runtime-action [options] <occurrenceId> <pause|resume> Pause or resume one exact fenced scheduler occurrence\n center-incident-action [options] <incidentId> <retry|cancel> Retry or cancel a revision-gated Automation Center incident\n center-routine-create [options] Create a revision-gated Routine from JSON stdin\n center-routine-edit [options] <routineId> Edit a revision-gated Routine from JSON stdin\n center-routine-action [options] <routineId> <action> Run a revision-gated Routine action\n center-action [options] <flowId> <action> Run a revision-gated Automation Center action\n show [options] <flowId> Show flow detail\n activate <flowId> Set flow status = active\n pause <flowId> Set flow status = paused\n archive <flowId> Set flow status = archived\n delete <flowId> Delete a flow (cascades triggers + executions)\n schedule [options] <flowId> Set flow cron schedule\n run-scheduled [options] Run due cron flows through the durable scheduler kernel\n set-execution-budget [options] <flowId> Set the durable unattended-execution budget for a flow\n execution-preflight [options] <flowId> Check live RBAC connector permissions and durable budget availability\n share [options] <flowId> Record flow share to another org\n templates [options] List built-in flow templates\n import-template [options] <templateId> Import a built-in template as a flow\n add-trigger [options] <flowId> Add a trigger to a flow\n triggers [options] [flowId] List triggers (optionally scoped to a flow)\n enable-trigger <triggerId> Enable a trigger\n disable-trigger <triggerId> Disable a trigger\n fire-trigger [options] <triggerId> Simulate trigger firing (executes flow)\n dispatch-channel-event [options] Dispatch one durable, scope-checked webhook or Telegram event\n execute [options] <flowId> Manually execute a flow (simulated)\n exec-show [options] <execId> Show execution detail\n logs [options] List executions\n stats [options] Show automation engine stats\n automation-maturities-v2 List V2 automation maturity states\n execution-lifecycles-v2 List V2 execution lifecycle states\n stats-v2 V2 automation engine stats\n get-max-active-automations-v2 Get max active automations per owner (V2)\n set-max-active-automations-v2 <n> Set max active automations per owner (V2)\n get-max-running-executions-v2 Get max running executions per automation (V2)\n set-max-running-executions-v2 <n> Set max running executions per automation (V2)\n get-automation-idle-ms-v2 Get automation idle threshold (V2)\n set-automation-idle-ms-v2 <ms> Set automation idle threshold (V2)\n get-execution-stuck-ms-v2 Get execution stuck threshold (V2)\n set-execution-stuck-ms-v2 <ms> Set execution stuck threshold (V2)\n active-automation-count-v2 <ownerId> Active automation count for owner (V2)\n running-execution-count-v2 <automationId> Running execution count for automation (V2)\n register-automation-v2 [options] <id> Register a V2 automation\n get-automation-v2 <id> Get a V2 automation\n list-automations-v2 [options] List V2 automations\n set-automation-status-v2 <id> <next> Set V2 automation status\n activate-automation-v2 <id> Activate a V2 automation\n pause-automation-v2 <id> Pause a V2 automation\n retire-automation-v2 <id> Retire a V2 automation\n touch-automation-v2 <id> Touch a V2 automation\n create-execution-v2 [options] <id> Create a V2 execution\n get-execution-v2 <id> Get a V2 execution\n list-executions-v2 [options] List V2 executions\n set-execution-status-v2 <id> <next> Set V2 execution status\n start-execution-v2 <id> Start a V2 execution\n succeed-execution-v2 <id> Succeed a V2 execution\n fail-execution-v2 <id> Fail a V2 execution\n cancel-execution-v2 <id> Cancel a V2 execution\n auto-pause-idle-automations-v2 Auto-pause idle V2 automations\n auto-fail-stuck-executions-v2 Auto-fail stuck V2 executions\n help [command] display help for command\n",
20
+ "automation": "Usage: chainlesschain automation [options] [command]\n\nWorkflow automation engine — 12 SaaS connectors + triggers (Phase 96)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n connectors [options] List 12 built-in SaaS connectors\n trigger-types [options] List trigger types\n statuses List flow and execution statuses\n config [options] Show automation engine config\n create [options] Create a flow\n flows [options] List flows\n center-projection [options] Emit the versioned Automation Center projection for IDEs\n center-runtime-action [options] <occurrenceId> <pause|resume> Pause or resume one exact fenced scheduler occurrence\n center-incident-action [options] <incidentId> <retry|cancel> Retry or cancel a revision-gated Automation Center incident\n center-routine-create [options] Create a revision-gated Routine from JSON stdin\n center-routine-edit [options] <routineId> Edit a revision-gated Routine from JSON stdin\n center-routine-action [options] <routineId> <action> Run a revision-gated Routine action\n center-action [options] <flowId> <action> Run a revision-gated Automation Center action\n show [options] <flowId> Show flow detail\n activate <flowId> Set flow status = active\n pause <flowId> Set flow status = paused\n archive <flowId> Set flow status = archived\n delete <flowId> Delete a flow (cascades triggers + executions)\n schedule [options] <flowId> Set flow cron schedule\n run-scheduled [options] Run due cron flows through the durable scheduler kernel\n set-execution-budget [options] <flowId> Set the durable unattended-execution budget for a flow\n execution-preflight [options] <flowId> Check live RBAC connector permissions and durable budget availability\n share [options] <flowId> Record flow share to another org\n templates [options] List built-in flow templates\n import-template [options] <templateId> Import a built-in template as a flow\n add-trigger [options] <flowId> Add a trigger to a flow\n triggers [options] [flowId] List triggers (optionally scoped to a flow)\n enable-trigger <triggerId> Enable a trigger\n disable-trigger <triggerId> Disable a trigger\n fire-trigger [options] <triggerId> Fire a trigger; use --test for simulation\n dispatch-channel-event [options] Dispatch one durable, scope-checked webhook or Telegram event\n execute [options] <flowId> Execute a flow; use --test for simulation\n exec-show [options] <execId> Show execution detail\n logs [options] List executions\n stats [options] Show automation engine stats\n automation-maturities-v2 List V2 automation maturity states\n execution-lifecycles-v2 List V2 execution lifecycle states\n stats-v2 V2 automation engine stats\n get-max-active-automations-v2 Get max active automations per owner (V2)\n set-max-active-automations-v2 <n> Set max active automations per owner (V2)\n get-max-running-executions-v2 Get max running executions per automation (V2)\n set-max-running-executions-v2 <n> Set max running executions per automation (V2)\n get-automation-idle-ms-v2 Get automation idle threshold (V2)\n set-automation-idle-ms-v2 <ms> Set automation idle threshold (V2)\n get-execution-stuck-ms-v2 Get execution stuck threshold (V2)\n set-execution-stuck-ms-v2 <ms> Set execution stuck threshold (V2)\n active-automation-count-v2 <ownerId> Active automation count for owner (V2)\n running-execution-count-v2 <automationId> Running execution count for automation (V2)\n register-automation-v2 [options] <id> Register a V2 automation\n get-automation-v2 <id> Get a V2 automation\n list-automations-v2 [options] List V2 automations\n set-automation-status-v2 <id> <next> Set V2 automation status\n activate-automation-v2 <id> Activate a V2 automation\n pause-automation-v2 <id> Pause a V2 automation\n retire-automation-v2 <id> Retire a V2 automation\n touch-automation-v2 <id> Touch a V2 automation\n create-execution-v2 [options] <id> Create a V2 execution\n get-execution-v2 <id> Get a V2 execution\n list-executions-v2 [options] List V2 executions\n set-execution-status-v2 <id> <next> Set V2 execution status\n start-execution-v2 <id> Start a V2 execution\n succeed-execution-v2 <id> Succeed a V2 execution\n fail-execution-v2 <id> Fail a V2 execution\n cancel-execution-v2 <id> Cancel a V2 execution\n auto-pause-idle-automations-v2 Auto-pause idle V2 automations\n auto-fail-stuck-executions-v2 Auto-fail stuck V2 executions\n help [command] display help for command\n",
21
21
  "batch": "Usage: chainlesschain batch [options]\n\nSplit a large change into independent units, run each in its own git worktree\nin parallel, and aggregate results\n\nOptions:\n --units <file> Units JSON file ({ units: [{key, prompt, test?}]\n })\n --decompose <goal> Ask an agent to split this goal into units first\n (structured output)\n --parts <n> Target number of units for --decompose (default:\n \"6\")\n --plan-only With --decompose: print the units and exit (no\n run)\n --concurrency <n> Max worktrees running at once (default: \"4\")\n --test <cmd> Default test command run in each worktree\n --merge Merge clean, passing branches back to base\n --model <model> Model for agent runs\n --permission-mode <mode> Permission mode for each agent unit (default:\n \"acceptEdits\")\n --max-turns <n> Per-unit agent turn cap\n --max-budget-usd <amount> Per-unit agent cost cap\n --json Machine-readable JSON output\n -h, --help display help for command\n",
22
22
  "bi": "Usage: chainlesschain bi [options] [command]\n\nBusiness intelligence — queries, dashboards, reports, analytics\n\nOptions:\n -h, --help display help for command\n\nCommands:\n query [options] <question> Natural-language query (NL→SQL)\n dashboard [options] <name> Create a dashboard\n report [options] <name> Generate a report\n schedule [options] <report-id> <cron> Schedule a report for recurring generation\n anomaly [options] Detect anomalies in data using Z-score\n predict [options] Predict trend using linear regression\n chart-types [options] List supported chart types (V2)\n anomaly-methods [options] List supported anomaly detection methods (V2)\n report-formats [options] List supported report formats (V2)\n report-statuses [options] List canonical report statuses (V2)\n dashboard-layouts [options] List supported dashboard layouts (V2)\n query-v2 [options] <question> Heuristic NL→SQL with intent detection (V2)\n anomaly-v2 [options] Anomaly detection with method choice (V2)\n predict-v2 [options] Trend prediction with r² confidence (V2)\n recommend-chart [options] Recommend chart type from intent or data shape (V2)\n dashboard-v2 [options] <name> Create dashboard with validated layout (V2)\n set-report-status [options] <report-id> <status> Update report status with validated transition (V2)\n report-status [options] <report-id> Show current report status (V2)\n report-history [options] <report-id> Show report status transition history (V2)\n stats-v2 [options] BI platform statistics (V2)\n templates [options] List available BI templates\n enums-v2 Show V2 enums\n register-dataset-v2 [options] Register a BI dataset profile (pending)\n activate-dataset-v2 <id> Activate dataset\n stale-dataset-v2 <id> Mark dataset stale\n archive-dataset-v2 <id> Archive dataset (terminal)\n touch-dataset-v2 <id> Refresh lastTouchedAt\n get-dataset-v2 <id> Get dataset\n list-datasets-v2 List datasets\n create-query-v2 [options] Create a BI query (queued)\n start-query-v2 <id> Transition query to running\n complete-query-v2 <id> Transition query to completed\n fail-query-v2 [options] <id> Fail query\n cancel-query-v2 [options] <id> Cancel query\n get-query-v2 <id> Get query\n list-queries-v2 List queries\n set-max-active-datasets-v2 <n> Set per-owner active cap\n set-max-pending-queries-v2 <n> Set per-dataset pending cap\n set-dataset-idle-ms-v2 <n> Set idle threshold\n set-query-stuck-ms-v2 <n> Set stuck threshold\n auto-stale-idle-datasets-v2 Auto-stale idle datasets\n auto-fail-stuck-queries-v2 Auto-fail stuck running queries\n gov-stats-v2 V2 governance aggregate stats\n help [command] display help for command\n",
23
23
  "bm25": "Usage: chainlesschain bm25 [options] [command]\n\nBM25 Search V2 governance (in-memory, CLI v0.143.0)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n enums-v2\n register-profile-v2 [options]\n activate-profile-v2 <id>\n stale-profile-v2 <id>\n archive-profile-v2 <id>\n touch-profile-v2 <id>\n get-profile-v2 <id>\n list-profiles-v2\n create-query-v2 [options]\n searching-query-v2 <id>\n complete-query-v2 <id>\n fail-query-v2 [options] <id>\n cancel-query-v2 [options] <id>\n get-query-v2 <id>\n list-queries-v2\n config-v2\n set-max-active-profiles-v2 <n>\n set-max-pending-queries-v2 <n>\n set-profile-idle-ms-v2 <ms>\n set-query-stuck-ms-v2 <ms>\n auto-stale-idle-v2\n auto-fail-stuck-v2\n gov-stats-v2\n help [command] display help for command\n",
@@ -69,7 +69,7 @@
69
69
  "hardening": "Usage: chainlesschain hardening [options] [command]\n\nSecurity hardening — baselines, audits, regression detection\n\nOptions:\n -h, --help display help for command\n\nCommands:\n baseline Performance baseline management\n audit Security audit management\n config-check [options] <config-path> Audit a config file (presence, required keys, placeholders)\n deploy-check [options] Evaluate the 6-item production-deployment checklist\n audit-statuses-v2 [options] List V2 audit lifecycle statuses\n baseline-statuses-v2 [options] List V2 baseline lifecycle statuses\n severities-v2 [options] List V2 severity buckets\n default-max-concurrent-audits [options] Default concurrent audit cap\n max-concurrent-audits [options] Current concurrent audit cap\n set-max-concurrent-audits [options] <n> Set concurrent audit cap\n default-baseline-retention-ms [options] Default baseline retention in ms\n baseline-retention-ms [options] Current baseline retention in ms\n set-baseline-retention-ms [options] <ms> Set baseline retention in ms\n default-audit-timeout-ms [options] Default audit timeout in ms\n audit-timeout-ms [options] Current audit timeout in ms\n set-audit-timeout-ms [options] <ms> Set audit timeout in ms\n running-audit-count [options] Number of currently RUNNING audits\n register-audit-v2 [options] <name> Register a V2 audit entry (PENDING)\n start-audit [options] <audit-id> Start a PENDING audit (enforces concurrency cap)\n complete-audit [options] <audit-id> Complete a RUNNING audit\n set-audit-status-v2 [options] <audit-id> <status> Transition audit to a new status\n audit-status-v2 [options] <audit-id> Get V2 audit status\n auto-timeout-audits [options] Bulk-fail RUNNING audits past auditTimeoutMs\n create-baseline-v2 [options] <name> Create a V2 baseline (DRAFT)\n activate-baseline [options] <baseline-id> Activate a DRAFT baseline (supersedes previous ACTIVE)\n set-baseline-status-v2 [options] <baseline-id> <status> Transition baseline to a new status\n baseline-status-v2 [options] <baseline-id> Get V2 baseline status\n auto-archive-stale-baselines [options] Bulk-archive SUPERSEDED baselines past retention\n stats-v2 [options] V2 hardening statistics\n help [command] display help for command\n",
70
70
  "hmemory": "Usage: chainlesschain hmemory [options] [command]\n\nHierarchical Memory 2.0 — four-layer memory system\n\nOptions:\n -h, --help display help for command\n\nCommands:\n store [options] <content> Store a memory at the appropriate layer\n recall [options] <query> Recall memories with forgetting curve\n consolidate Promote and forget memories across layers\n search [options] <query> Search memories by type\n stats [options] Show memory statistics\n share [options] <id> <agent-id> Share a memory with another agent\n prune [options] Remove weak old memories\n layers [options] List MEMORY_LAYER enum values\n types [options] List MEMORY_TYPE enum values\n statuses [options] List CONSOLIDATION_STATUS enum values\n permissions [options] List SHARE_PERMISSION enum values\n attach-metadata [options] <id> Attach V2 metadata (scene/context/concepts) to a memory\n promote-v2 [options] <id> Promote memory one layer up (working→short-term→long-term)\n demote-v2 [options] <id> Demote memory one layer down (short-term → working)\n share-v2 [options] <id> <target> Share a memory with permissions (read,copy,modify)\n revoke-share [options] <shareId> Revoke a sharing record\n shares [options] List V2 sharing records\n search-episodic-v2 [options] [query] Search episodic memories with time/scene/context filters\n search-semantic-v2 [options] [query] Search semantic memories with concept similarity\n consolidate-v2 [options] Run V2 consolidation with status tracking\n consolidations [options] List V2 consolidation run history\n prune-v2 [options] Layer-scoped prune with custom threshold\n stats-v2 [options] Extended V2 stats with per-layer + consolidation + shares\n enums-v2 Show V2 enums (tier maturity + promotion lifecycle)\n config-v2 Show V2 config thresholds\n set-max-active-tiers-v2 <n> Set max active tiers per owner\n set-max-pending-promotions-v2 <n> Set max pending promotions per tier\n set-tier-idle-ms-v2 <n> Set tier idle threshold (ms)\n set-promotion-stuck-ms-v2 <n> Set promotion stuck threshold (ms)\n register-tier-v2 [options] <id> <owner> Register V2 memory tier\n activate-tier-v2 <id> Activate tier\n dormant-tier-v2 <id> Mark tier dormant\n retire-tier-v2 <id> Retire tier (terminal)\n touch-tier-v2 <id> Touch tier lastTouchedAt\n get-tier-v2 <id> Get V2 tier\n list-tiers-v2 List all V2 tiers\n create-promotion-v2 [options] <id> <tierId> Create V2 promotion (queued)\n start-promotion-v2 <id> Start promotion (queued→promoting)\n complete-promotion-v2 <id> Complete promotion (promoting→promoted)\n fail-promotion-v2 <id> [reason] Fail promotion\n cancel-promotion-v2 <id> [reason] Cancel promotion\n get-promotion-v2 <id> Get V2 promotion\n list-promotions-v2 List all V2 promotions\n auto-dormant-idle-v2 Auto-dormant idle active tiers\n auto-fail-stuck-v2 Auto-fail stuck promoting promotions\n gov-stats-v2 V2 governance aggregate stats\n help [command] display help for command\n",
71
71
  "hook": "Usage: chainlesschain hook [options] [command]\n\nLifecycle hook management\n\nOptions:\n -h, --help display help for command\n\nCommands:\n list [options] List registered hooks (DB) + .claude/settings.json hooks\n trust [options] [file] Explicitly trust project Hook definitions; changed content requires reapproval\n trust-status [options] [file] Show content-bound project Hook trust status\n untrust [options] [file] Revoke project Hook trust\n audit [options] List or verify the canonical tamper-evident Hook audit\n test [options] <event> <tool> [args...] Show which settings.json hooks fire for an event+tool (e.g. hook test PreToolUse run_shell \"git push\"); --run executes them\n replay [options] <event-id> Replay a recorded hook delivery (needs CC_HOOK_EVENT_LOG); dry-run by default, --run executes observe-only hooks\n events-log [options] List or verify the recorded hook delivery log (CC_HOOK_EVENT_LOG)\n add [options] <event> <name> Register a new hook\n remove <id> Remove a hook by ID\n run [options] <event> Manually trigger hooks for an event\n fire [options] <event> Fire a session-level hook (SessionStart/UserPromptSubmit/AssistantResponse/SessionEnd) and honor stdout JSON directives\n stats [options] Show hook execution statistics\n events List all valid hook event types\n maturities-v2 List hook profile maturity states (V2)\n exec-lifecycle-v2 List hook exec lifecycle states (V2)\n stats-v2 Show hook-manager V2 stats\n config-v2 Show hook-manager V2 config\n register-profile-v2 <id> <owner> [event]\n activate-profile-v2 <id>\n disable-profile-v2 <id>\n retire-profile-v2 <id>\n touch-profile-v2 <id>\n get-profile-v2 <id>\n list-profiles-v2\n create-exec-v2 <id> <hookId>\n start-exec-v2 <id>\n complete-exec-v2 <id>\n fail-exec-v2 <id> [reason]\n cancel-exec-v2 <id> [reason]\n get-exec-v2 <id>\n list-execs-v2\n auto-disable-idle-v2\n auto-fail-stuck-v2\n set-max-active-hooks-v2 <n>\n set-max-pending-execs-v2 <n>\n set-hook-idle-ms-v2 <n>\n set-hook-exec-stuck-ms-v2 <n>\n reset-state-v2\n help [command] display help for command\n",
72
- "hub": "Usage: chainlesschain hub [options] [command]\n\nPersonal Data Hub — local vault + adapters + AnalysisEngine on this machine\n\nOptions:\n -h, --help display help for command\n\nCommands:\n ask [options] <question> Natural-language question over your local vault\n repl [options] Persistent ask loop — opens the vault once, then answers follow-up questions fast (amortizes the ~8s per-call CLI cold-start)\n retrieve-context [options] <question> RAG preflight — gather facts + build LLM prompt WITHOUT calling LLM (for cloud-LLM callers that need RAG context)\n stats [options] Vault row counts + hub paths (use --full to also list adapters + LLM)\n health [options] Component health: vault / llm / kgSink / ragSink\n list-adapters [options] List registered adapters\n readiness [options] Per-adapter 就绪检查:能否采集 + 不能的原因(未配置/需采集/不支持)\n sync-adapter [options] <name> Run one adapter's ingest pipeline\n sync-all [options] Run all registered adapters in series\n bilibili-adb-sync [options] Bilibili C 路径: pull cookies via ADB from the user's Android Bilibili App, fetch 4 endpoints, ingest as snapshot. Needs rooted Android + Bilibili App logged in + `adb` on PATH.\n bilibili-adb-doctor [options] Bilibili C 路径 dry-run: probe adb + root + Bilibili App + cookies completeness without triggering a sync. Use this BEFORE `cc hub bilibili-adb-sync` to debug env issues.\n weibo-adb-sync [options] Weibo C 路径: pull m.weibo.cn cookies via ADB from the user's Android Weibo App, fetch UID + 3 endpoints (posts/favourites/follows), ingest as snapshot. Needs rooted Android + Weibo App logged in + `adb` on PATH. No X-Bogus / WBI signing required.\n kuaishou-adb-sync [options] Kuaishou C 路径: pull www.kuaishou.com cookies via ADB from the user's Android Kuaishou App (com.smile.gifmaker, NOT 极速版 com.kuaishou.nebula), parse profile from kuaishou.web.cp.api_ph cookie payload (no HTTP) + 3 GraphQL endpoints (watch/collect/search, __NS_sig3 + kpf/kpn — CLI short-circuits, desktop uses KuaishouSignBridge). Needs rooted Android + Kuaishou App logged in once + opened a video once + `adb` on PATH.\n toutiao-adb-sync [options] Toutiao C 路径: pull www.toutiao.com cookies via ADB from the user's Android Toutiao App (com.ss.android.article.news, NOT 极速版), fetch profile (no _sig) + 3 endpoints (feed/collection/search, _signature required — CLI short-circuits, desktop uses ToutiaoSignBridge). Needs rooted Android + Toutiao App logged in once + `adb` on PATH.\n xhs-adb-sync [options] Xhs C 路径: pull xiaohongshu.com cookies via ADB from the user's Android Xhs App, fetch userId + 3 endpoints (notes/liked/follows). Best-effort X-S signing (~60% GET hit rate). Needs rooted Android + Xhs App logged in + `adb` on PATH.\n douyin-adb-sync [options] Douyin C 路径: pull <uid>_im.db cohort via ADB from the user's Android Douyin App, parse msg + SIMPLE_USER (abrignoni DFIR), ingest as snapshot. Needs rooted Android + Douyin App logged in + `adb` on PATH.\n douyin-watch-sync [options] Douyin 观看历史 C 路径: pull video_record.db via ADB from the user's Android Douyin App (com.ss.android.ugc.aweme), read record_<uid> (aid + view_time_timestamp + enter_from), ingest as `history` (BROWSE) events. Plaintext — no X-Bogus signing, no SQLCipher. Needs rooted Android + Douyin App with watch history. Add --resolve-titles to enrich each event with the video's desc/author/duration via the web detail endpoint (also no signing).\n rederive [options] Re-derive canonical events from raw_events without re-fetching from source (recovers orphan raws from a past sync where putBatch silently failed, e.g. trap #25 partial-index drift).\n query-events [options] Query vault events with filters\n search [options] Vault Browser search — events_fts (FTS5) + faceted filters\n facet-counts [options] Sidebar / chip counts — events grouped by category / adapter / subtype\n export-events [options] Export all vault events as JSON (module 101 §8.3 cross-device backup)\n import-events [options] Import vault events from a JSON array file (idempotent upsert by id; §8.3)\n recent-audit [options] Recent audit log entries\n register-mock [options] Register MockAdapter (dev/smoke only)\n run-skill [options] <name> Run a built-in analysis skill: overview (跨 app 汇聚, 决策依据) / spending / relations / footprint / interests / timeline. 'analysis.overview' aggregates all apps' data into one cross-app snapshot.\n salvage [options] <dumpfile> Method B (免密钥): salvage SQLite leaf-page records from a /proc/mem dump → ingest into the vault with the correct per-app source (--app). Used by the Android root 一键采集 button after a memory scan.\n collect-qq [options] QQNT (modern QQ): decrypt a root-staged encrypted nt_msg.db via the DERIVED key (no frida), protobuf-parse messages, and ingest into the vault. Used by the Android CollectQqNativeTool (su-reads DB + uids); also runnable on PC.\n collect-db [options] Ingest an app's PLAINTEXT SQLite dbs (browse/read/history/content/config) into the vault — generic readable-record extraction with noise filtering. Pair with the Magisk daemon which stages the dbs (root, MIUI cross-app). Encrypted IM has its own collectors (collect-qq/collect-wechat).\n collect-wechat [options] WeChat: decrypt a root-staged EnMicroMsg.db via the DERIVED key MD5(IMEI+uin)[:7] (no frida; saved/raw keys as fallback), parse message/rcontact/chatroom, and ingest. Pairs with the Magisk daemon (stages DB + uin/IMEI candidates).\n collect-qzone [options] QQ空间 (Qzone): collect 说说/留言板/相册 via the Qzone CGI API. No local DB — needs the qzone-domain p_skey cookie (from the in-app WebView or a browser login to user.qzone.qq.com; base .qq.com skey is rejected). Derives g_tk from p_skey and ingests as post/message/media events.\n event-detail [options] <eventId> 推文 §AI 给出处: fetch full event row from local vault by id (used by citation chip deeplink).\n export [options] 推文 §一键带走: copy SQLCipher vault.db (+ WAL/SHM) to <path>. Encrypted at rest; reimport via cc hub import-vault on desktop.\n destroy [options] DESTRUCTIVE: wipe vault.db + WAL. Requires --confirm. Adapters / accounts files preserved.\n aichat AIChat WebView 鉴权向导 — list / login / probe / register / health / unregister 9 家国产 AI\n wechat WeChat adapter — env-probe / register / list / unregister (rooted Android required for 8.0+)\n help [command] display help for command\n",
72
+ "hub": "Usage: chainlesschain hub [options] [command]\n\nPersonal Data Hub — local vault + adapters + AnalysisEngine on this machine\n\nOptions:\n -h, --help display help for command\n\nCommands:\n ask [options] <question> Natural-language question over your local vault\n repl [options] Persistent ask loop — opens the vault once, then answers follow-up questions fast (amortizes the ~8s per-call CLI cold-start)\n retrieve-context [options] <question> RAG preflight — gather facts + build LLM prompt WITHOUT calling LLM (for cloud-LLM callers that need RAG context)\n stats [options] Vault row counts + hub paths (use --full to also list adapters + LLM)\n health [options] Component health: vault / llm / kgSink / ragSink\n list-adapters [options] List registered adapters\n derivation-status [options] Inspect KG/RAG delivery status for this vault\n retry-derivations [options] Retry a bounded page of KG/RAG work from current vault state\n derivation-consumers [options] List registered derivation consumers without retirement tokens\n prune-derivations [options] Prune non-running receipts of explicitly selected retired ephemeral consumers\n derivation-state [options] <entityType> <entityId> Inspect an entity's source revision and KG/RAG receipts without its payload\n delete-entity [options] <entityType> <entityId> Delete a normalized entity and queue index removal; raw archive remains and reimport may restore it\n readiness [options] Per-adapter 就绪检查:能否采集 + 不能的原因(未配置/需采集/不支持)\n sync-adapter [options] <name> Run one adapter's ingest pipeline\n sync-all [options] Run all registered adapters in series\n bilibili-adb-sync [options] Bilibili C 路径: pull cookies via ADB from the user's Android Bilibili App, fetch 4 endpoints, ingest as snapshot. Needs rooted Android + Bilibili App logged in + `adb` on PATH.\n bilibili-adb-doctor [options] Bilibili C 路径 dry-run: probe adb + root + Bilibili App + cookies completeness without triggering a sync. Use this BEFORE `cc hub bilibili-adb-sync` to debug env issues.\n weibo-adb-sync [options] Weibo C 路径: pull m.weibo.cn cookies via ADB from the user's Android Weibo App, fetch UID + 3 endpoints (posts/favourites/follows), ingest as snapshot. Needs rooted Android + Weibo App logged in + `adb` on PATH. No X-Bogus / WBI signing required.\n kuaishou-adb-sync [options] Kuaishou C 路径: pull www.kuaishou.com cookies via ADB from the user's Android Kuaishou App (com.smile.gifmaker, NOT 极速版 com.kuaishou.nebula), parse profile from kuaishou.web.cp.api_ph cookie payload (no HTTP) + 3 GraphQL endpoints (watch/collect/search, __NS_sig3 + kpf/kpn — CLI short-circuits, desktop uses KuaishouSignBridge). Needs rooted Android + Kuaishou App logged in once + opened a video once + `adb` on PATH.\n toutiao-adb-sync [options] Toutiao C 路径: pull www.toutiao.com cookies via ADB from the user's Android Toutiao App (com.ss.android.article.news, NOT 极速版), fetch profile (no _sig) + 3 endpoints (feed/collection/search, _signature required — CLI short-circuits, desktop uses ToutiaoSignBridge). Needs rooted Android + Toutiao App logged in once + `adb` on PATH.\n xhs-adb-sync [options] Xhs C 路径: pull xiaohongshu.com cookies via ADB from the user's Android Xhs App, fetch userId + 3 endpoints (notes/liked/follows). Best-effort X-S signing (~60% GET hit rate). Needs rooted Android + Xhs App logged in + `adb` on PATH.\n douyin-adb-sync [options] Douyin C 路径: pull <uid>_im.db cohort via ADB from the user's Android Douyin App, parse msg + SIMPLE_USER (abrignoni DFIR), ingest as snapshot. Needs rooted Android + Douyin App logged in + `adb` on PATH.\n douyin-watch-sync [options] Douyin 观看历史 C 路径: pull video_record.db via ADB from the user's Android Douyin App (com.ss.android.ugc.aweme), read record_<uid> (aid + view_time_timestamp + enter_from), ingest as `history` (BROWSE) events. Plaintext — no X-Bogus signing, no SQLCipher. Needs rooted Android + Douyin App with watch history. Add --resolve-titles to enrich each event with the video's desc/author/duration via the web detail endpoint (also no signing).\n rederive [options] Re-derive canonical events from raw_events without re-fetching from source (recovers orphan raws from a past sync where putBatch silently failed, e.g. trap #25 partial-index drift).\n query-events [options] Query vault events with filters\n search [options] Vault Browser search — events_fts (FTS5) + faceted filters\n facet-counts [options] Sidebar / chip counts — events grouped by category / adapter / subtype\n export-events [options] Export all vault events as JSON (module 101 §8.3 cross-device backup)\n import-events [options] Import vault events from a JSON array file (idempotent upsert by id; §8.3)\n recent-audit [options] Recent audit log entries\n register-mock [options] Register MockAdapter (dev/smoke only)\n run-skill [options] <name> Run a built-in analysis skill: overview (跨 app 汇聚, 决策依据) / spending / relations / footprint / interests / timeline. 'analysis.overview' aggregates all apps' data into one cross-app snapshot.\n salvage [options] <dumpfile> Method B (免密钥): salvage SQLite leaf-page records from a /proc/mem dump → ingest into the vault with the correct per-app source (--app). Used by the Android root 一键采集 button after a memory scan.\n collect-qq [options] QQNT (modern QQ): decrypt a root-staged encrypted nt_msg.db via the DERIVED key (no frida), protobuf-parse messages, and ingest into the vault. Used by the Android CollectQqNativeTool (su-reads DB + uids); also runnable on PC.\n collect-db [options] Ingest an app's PLAINTEXT SQLite dbs (browse/read/history/content/config) into the vault — generic readable-record extraction with noise filtering. Pair with the Magisk daemon which stages the dbs (root, MIUI cross-app). Encrypted IM has its own collectors (collect-qq/collect-wechat).\n collect-wechat [options] WeChat: decrypt a root-staged EnMicroMsg.db via the DERIVED key MD5(IMEI+uin)[:7] (no frida; saved/raw keys as fallback), parse message/rcontact/chatroom, and ingest. Pairs with the Magisk daemon (stages DB + uin/IMEI candidates).\n collect-qzone [options] QQ空间 (Qzone): collect 说说/留言板/相册 via the Qzone CGI API. No local DB — needs the qzone-domain p_skey cookie (from the in-app WebView or a browser login to user.qzone.qq.com; base .qq.com skey is rejected). Derives g_tk from p_skey and ingests as post/message/media events.\n event-detail [options] <eventId> 推文 §AI 给出处: fetch full event row from local vault by id (used by citation chip deeplink).\n export [options] 推文 §一键带走: copy SQLCipher vault.db (+ WAL/SHM) to <path>. Encrypted at rest; reimport via cc hub import-vault on desktop.\n destroy [options] DESTRUCTIVE: wipe vault.db + WAL. Requires --confirm. Adapters / accounts files preserved.\n aichat AIChat WebView 鉴权向导 — list / login / probe / register / health / unregister 9 家国产 AI\n wechat WeChat adapter — env-probe / register / list / unregister (rooted Android required for 8.0+)\n help [command] display help for command\n",
73
73
  "ide": "Usage: chainlesschain ide [options] [command]\n\nInspect IDE bridge discovery (editor MCP server auto-connect)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n list [options] List live IDE lockfiles (editor MCP servers advertised)\n status [options] Show the IDE server `cc agent` would connect to right\n now\n doctor [options] Explain why IDE discovery did / didn't pick a server\n jetbrains [options] Show whether IntelliJ IDEA's built-in MCP (server\n `idea`) would auto-connect\n help [command] display help for command\n",
74
74
  "import": "Usage: chainlesschain import [options] [command]\n\nImport knowledge from external sources\n\nOptions:\n -h, --help display help for command\n\nCommands:\n markdown [options] <dir> Import markdown files from a directory\n evernote [options] <file> Import from Evernote ENEX export file\n notion [options] <dir> Import from Notion export directory\n pdf [options] <file> Import text from a PDF file\n source-maturities-v2 List V2 source maturity states\n import-job-lifecycles-v2 List V2 import-job lifecycle states\n stats-v2 V2 knowledge-importer stats\n get-max-active-sources-v2 Get max active sources per owner (V2)\n set-max-active-sources-v2 <n> Set max active sources per owner (V2)\n get-max-pending-jobs-v2 Get max pending jobs per source (V2)\n set-max-pending-jobs-v2 <n> Set max pending jobs per source (V2)\n get-source-idle-ms-v2 Get source idle threshold (V2)\n set-source-idle-ms-v2 <ms> Set source idle threshold (V2)\n get-job-stuck-ms-v2 Get import-job stuck threshold (V2)\n set-job-stuck-ms-v2 <ms> Set import-job stuck threshold (V2)\n active-source-count-v2 <ownerId> Active source count for owner (V2)\n pending-job-count-v2 <sourceId> Pending import-job count for source\n (V2)\n register-source-v2 [options] <id> Register a V2 source manifest\n get-source-v2 <id> Get a V2 source\n list-sources-v2 [options] List V2 sources\n set-source-status-v2 <id> <next> Set V2 source status\n activate-source-v2 <id> Activate a V2 source\n pause-source-v2 <id> Pause a V2 source\n archive-source-v2 <id> Archive a V2 source\n touch-source-v2 <id> Touch a V2 source\n create-import-job-v2 [options] <id> Create a V2 import job\n get-import-job-v2 <id> Get a V2 import job\n list-import-jobs-v2 [options] List V2 import jobs\n set-import-job-status-v2 <id> <next> Set V2 import-job status\n start-import-job-v2 <id> Start a V2 import job\n complete-import-job-v2 <id> Complete a V2 import job\n fail-import-job-v2 <id> Fail a V2 import job\n cancel-import-job-v2 <id> Cancel a V2 import job\n auto-pause-idle-sources-v2 Auto-pause idle V2 sources\n auto-fail-stuck-import-jobs-v2 Auto-fail stuck V2 import jobs\n help [command] display help for command\n",
75
75
  "incentive": "Usage: chainlesschain incentive [options] [command]\n\nToken incentive — ledger accounts, transfers, contributions, leaderboard\n\nOptions:\n -h, --help display help for command\n\nCommands:\n contribution-types [options] List known contribution types and their base rewards\n tx-types [options] List known transaction types\n balance [options] <account-id> Query token balance for an account\n accounts [options] List accounts (sorted by balance DESC)\n mint [options] <to> <amount> Mint tokens into an account (admin op)\n transfer [options] <from> <to> <amount> Transfer tokens between accounts\n history [options] Show transaction history\n contribute [options] <user-id> <type> [value] Record a contribution (type: skill_publication|invocation_provided|skill_review|bug_report|code_contribution|documentation|community_support)\n reward [options] <contribution-id> Reward a previously-recorded contribution\n contributions [options] List contributions\n leaderboard [options] Top contributors by total reward earned\n account-statuses-v2 List V2 account states\n claim-statuses-v2 List V2 claim states\n default-max-pending-claims-per-user Show default per-user pending claim cap\n max-pending-claims-per-user Show current per-user pending claim cap\n set-max-pending-claims-per-user <n> Update per-user pending claim cap\n default-claim-expiry-ms Show default claim expiry (ms)\n claim-expiry-ms Show current claim expiry (ms)\n set-claim-expiry-ms <ms> Update claim expiry (ms)\n default-max-claim-amount Show default max claim amount\n max-claim-amount Show current max claim amount\n set-max-claim-amount <n> Update max claim amount\n pending-claim-count [options] Count PENDING claims (optionally scoped to user)\n register-account-v2 [options] <account-id> V2: register a tracked account (tags ACTIVE)\n account-status-v2 <account-id> V2: show account status\n set-account-status-v2 [options] <account-id> <status> V2: transition account status (active|frozen|closed)\n freeze-account [options] <account-id> V2: shortcut → frozen\n unfreeze-account [options] <account-id> V2: shortcut → active (from frozen)\n close-account [options] <account-id> V2: shortcut → closed\n submit-claim-v2 [options] <claim-id> V2: submit a claim (tags PENDING)\n claim-status-v2 <claim-id> V2: show claim status\n set-claim-status-v2 [options] <claim-id> <status> V2: transition claim (pending|approved|paid|rejected)\n approve-claim [options] <claim-id> V2: shortcut → approved\n reject-claim [options] <claim-id> V2: shortcut → rejected\n pay-claim [options] <claim-id> V2: shortcut → paid (stamps paidAt)\n auto-expire-unclaimed-claims V2: bulk-reject stale PENDING claims\n stats-v2 V2: all-enum-key stats snapshot\n help [command] display help for command\n",
@@ -120,7 +120,7 @@
120
120
  "plugin": "Usage: chainlesschain plugin [options] [command]\n\nPlugin and marketplace management\n\nOptions:\n -h, --help display help for command\n\nCommands:\n list [options] List installed plugins\n install [options] <name> Install a plugin\n remove [options] <name> Remove a plugin\n enable [options] <name> Enable a plugin\n disable [options] <name> Disable a plugin\n update <name> <version> Update a plugin version\n info [options] <name> Show plugin details\n search [options] <query> Search plugin registry\n registry [options] List all plugins in registry\n summary [options] Show plugin summary statistics\n eval [options] <dir> Run a local control/candidate\n effectiveness eval for a plugin\n validate [options] <dir> Validate a plugin manifest and list its\n components\n add [options] <source> Install a plugin from a local dir, git\n URL, owner/repo[#ref], or registry URL\n (scope: user|project|local)\n browse [options] [query] List plugins in a remote registry\n (--registry <url>); filter by [query]\n catalog [options] [query] Review digest, signature, SBOM, license,\n capability, dependency, and health\n metadata across registries\n select [options] <name> Select the highest-ranked install\n candidate across an exact registry set\n impact [options] <name> Preview version, source, integrity,\n license, capability, and dependency\n impact before a registry upgrade\n installed [options] List plugins installed in the unified\n runtime (scope dirs)\n transaction [options] <name> Inspect a durable cross-process plugin\n lifecycle transaction\n recover [options] <name> Recover a durable plugin transaction\n after its owner died\n provenance-plan [options] <name> Build exact payload-bound authority\n bytes for a signed legacy provenance\n migration\n provenance-migrate [options] <name> Apply a signed, payload-bound provenance\n record to one legacy install\n evidence [options] <name> Read back installed manifest, license,\n signature, and payload-SBOM evidence\n trust [options] <name> Trust a plugin so its hooks / LSP\n servers may run\n untrust [options] <name> Revoke trust for a plugin (its hooks /\n LSP servers stop running)\n consent [options] [name] View or grant a plugin's capability\n consent (--grant / --revoke / --list)\n options [options] <name> View or set a plugin's typed options\n (--set key=value, --scope user|project)\n monitors [options] List installed plugins' background\n monitors (trusted only)\n uninstall [options] <name> Uninstall a runtime plugin from a scope\n (user|project|local)\n upgrade [options] <source> Update a runtime plugin from its pinned\n local, git, or registry source; repoints\n .active\n use [options] <name> <version> Pin a plugin's active version (rollback\n or switch)\n help [command] display help for command\n",
121
121
  "pqc": "Usage: chainlesschain pqc [options] [command]\n\nPost-quantum cryptography — key management and migration\n\nOptions:\n -h, --help display help for command\n\nCommands:\n keys [options] List PQC keys\n generate [options] <algorithm> Generate a PQC key pair\n migration-status [options] Show PQC migration status\n algorithms [options] List supported PQC algorithms (FIPS 203/204/205 + hybrid)\n migrate [options] <plan-name> <target-algorithm> Execute PQC key migration\n key-maturities-v2 [options] [V2] List key maturity states\n migration-lifecycles-v2 [options] [V2] List migration lifecycle states\n config-v2 [options] [V2] Show governance config\n set-max-active-keys-per-owner-v2 <n> [V2] Set per-owner active key cap\n set-max-pending-migrations-per-key-v2 <n> [V2] Set per-key pending migration cap\n set-key-idle-ms-v2 <ms> [V2] Set key idle threshold (ms)\n set-migration-stuck-ms-v2 <ms> [V2] Set migration stuck threshold (ms)\n register-key-v2 [options] <id> [V2] Register a key profile (PENDING)\n activate-key-v2 <id> [V2] Activate a key (pending|deprecated -> active)\n deprecate-key-v2 <id> [V2] Deprecate a key (active -> deprecated)\n archive-key-v2 <id> [V2] Archive a key (terminal)\n touch-key-v2 <id> [V2] Bump key lastSeenAt\n get-key-v2 [options] <id> [V2] Show a key profile\n list-keys-v2 [options] [V2] List key profiles\n create-migration-v2 [options] <id> [V2] Create a queued V2 migration\n start-migration-v2 <id> [V2] Start a migration (queued -> running)\n complete-migration-v2 <id> [V2] Complete a migration (running -> completed)\n fail-migration-v2 <id> [V2] Fail a migration (running -> failed)\n cancel-migration-v2 <id> [V2] Cancel a migration (queued|running -> cancelled)\n get-migration-v2 [options] <id> [V2] Show migration job\n list-migrations-v2 [options] [V2] List V2 migrations\n active-key-count-v2 [options] [V2] Count active keys (optional --owner filter)\n pending-migration-count-v2 [options] [V2] Count pending migrations (queued+running) (optional --key filter)\n auto-deprecate-idle-keys-v2 [options] [V2] Deprecate idle active keys\n auto-fail-stuck-migrations-v2 [options] [V2] Fail stuck running migrations\n stats-v2 [options] [V2] Show governance stats\n help [command] display help for command\n",
122
122
  "privacy": "Usage: chainlesschain privacy [options] [command]\n\nPrivacy computing (Phase 91)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n protocols [options] List MPC protocols\n dp-mechanisms [options] List differential privacy mechanisms\n he-schemes [options] List homomorphic encryption schemes\n fl-statuses [options] List federated learning statuses\n create-model [options] <name> Create federated learning model\n train [options] <model-id> Run one training round\n fail-model [options] <model-id> Mark model as failed\n show-model [options] <model-id> Show model details\n models [options] List federated learning models\n create-computation [options] <type> Create MPC computation\n submit-share [options] <computation-id> Submit a share to MPC computation\n show-computation [options] <computation-id> Show computation details\n computations [options] List MPC computations\n dp-publish [options] Publish data with differential privacy noise\n he-query [options] Query encrypted data (simulated HE)\n report [options] Privacy computing report\n fl-statuses-v2 [options] List V2 FL statuses\n mpc-statuses-v2 [options] List V2 MPC statuses\n dp-mechanisms-v2 [options] List V2 DP mechanisms\n he-schemes-v2 [options] List V2 HE schemes\n mpc-protocols-v2 [options] List V2 MPC protocols\n default-max-active-mpc Show V2 default max active MPC computations\n max-active-mpc Show current max active MPC computations\n active-mpc-count Show currently-active MPC computation count\n set-max-active-mpc <n> Set max concurrent active MPC computations\n budget-limit Show privacy budget limit\n budget-spent Show privacy budget spent\n set-budget-limit <n> Set privacy budget limit\n reset-budget Reset privacy budget spent counter to 0\n create-model-v2 [options] <name> V2 create FL model (throws on invalid input)\n train-round-v2 [options] <model-id> V2 train one FL round (auto initializing → training)\n aggregate-round [options] <model-id> Aggregate FL round (training → training next / completed)\n fail-model-v2 [options] <model-id> V2 fail FL model (any non-terminal → failed)\n set-fl-status [options] <model-id> <status> V2 state-machine guarded FL status setter\n create-computation-v2 [options] <type> V2 create MPC computation (throws on invalid input)\n submit-share-v2 [options] <comp-id> V2 submit MPC share (state-guarded)\n fail-computation [options] <comp-id> Fail MPC computation (any non-terminal → failed)\n set-mpc-status [options] <comp-id> <status> V2 state-machine guarded MPC status setter\n dp-publish-v2 [options] V2 DP publish (throws on invalid input / exceeded budget)\n he-query-v2 [options] V2 HE query (throws on invalid input)\n stats-v2 [options] V2 all-enum-key zero-init stats\n help [command] display help for command\n",
123
- "project": "Usage: chainlesschain project [options] [command]\n\nManage desktop projects (shared SQLite, syncs to mobile via Phase 3d)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n init [options] <name> Create a new project in desktop DB\n list [options] List projects\n show [options] <id> Show project details\n delete [options] <id> Delete a project (soft by default; --hard to truly\n remove)\n help [command] display help for command\n",
123
+ "project": "Usage: chainlesschain project [options] [command]\n\nManage desktop projects (shared SQLite, syncs to mobile via Phase 3d)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n risk-evaluate [options] Evaluate overdue tasks and direct\n blockers in an offline snapshot\n task-description-preview [options] Preview a task description request from\n an unverified offline snapshot\n init [options] <name> Create a new project in desktop DB\n list [options] List projects\n show [options] <id> Show project details\n delete [options] <id> Delete a project (soft by default; --hard\n to truly remove)\n help [command] display help for command\n",
124
124
  "promcomp": "Usage: chainlesschain promcomp [options] [command]\n\nPrompt Compressor V2 governance (in-memory, CLI v0.143.0)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n enums-v2 Show V2 enums\n register-profile-v2 [options]\n activate-profile-v2 <id>\n stale-profile-v2 <id>\n archive-profile-v2 <id>\n touch-profile-v2 <id>\n get-profile-v2 <id>\n list-profiles-v2\n create-run-v2 [options]\n compressing-run-v2 <id>\n compress-run-v2 <id>\n fail-run-v2 [options] <id>\n cancel-run-v2 [options] <id>\n get-run-v2 <id>\n list-runs-v2\n config-v2\n set-max-active-profiles-v2 <n>\n set-max-pending-runs-v2 <n>\n set-profile-idle-ms-v2 <ms>\n set-run-stuck-ms-v2 <ms>\n auto-stale-idle-v2\n auto-fail-stuck-v2\n gov-stats-v2\n help [command] display help for command\n",
125
125
  "quantize": "Usage: chainlesschain quantize [options] [command]\n\nModel quantization system (Phase 20)\n\nOptions:\n -h, --help display help for command\n\nCommands:\n statuses [options] List job statuses\n types [options] List quantization types (gguf/gptq)\n levels [options] List GGUF quantization levels (14 levels)\n gptq-bits [options] List GPTQ bit widths\n create [options] Create a quantization job\n start [options] <id> Start a pending job (simulated)\n progress [options] <id> <percent> Update job progress (0-100)\n complete [options] <id> Mark a running job as completed\n fail [options] <id> Mark a job as failed\n cancel [options] <id> Cancel a pending or running job\n delete [options] <id> Delete a non-running job\n show [options] <id> Show job details\n list [options] List quantization jobs\n stats [options] Quantization statistics\n model-maturities-v2 [options] List Phase 20 V2 model maturity states\n job-ticket-lifecycles-v2 [options] List Phase 20 V2 job-ticket lifecycle states\n default-max-active-models-per-owner Show default V2 per-owner active-model cap\n max-active-models-per-owner Show current V2 per-owner active-model cap\n set-max-active-models-per-owner <n> Set V2 per-owner active-model cap\n default-max-running-jobs-per-owner Show default V2 per-owner running-job cap\n max-running-jobs-per-owner Show current V2 per-owner running-job cap\n set-max-running-jobs-per-owner <n> Set V2 per-owner running-job cap\n default-model-idle-ms Show default V2 model-idle threshold\n model-idle-ms Show current V2 model-idle threshold\n set-model-idle-ms <ms> Set V2 model-idle threshold (ms)\n default-job-stuck-ms Show default V2 job-stuck threshold\n job-stuck-ms Show current V2 job-stuck threshold\n set-job-stuck-ms <ms> Set V2 job-stuck threshold (ms)\n active-model-count [options] Count active V2 models (optionally scoped by owner)\n running-job-count [options] Count running V2 job tickets (optionally scoped by owner)\n register-model-v2 [options] <model-id> Register a V2 model\n model-v2 [options] <model-id> Show a V2 model\n set-model-maturity-v2 [options] <model-id> <status> Transition V2 model maturity\n activate-model [options] <model-id> Transition a V2 model to ACTIVE\n deprecate-model [options] <model-id> Transition a V2 model to DEPRECATED\n retire-model [options] <model-id> Transition a V2 model to RETIRED\n touch-model-usage <model-id> Bump lastUsedAt for a V2 model\n enqueue-job-ticket-v2 [options] <ticket-id> Enqueue a V2 quantization job ticket\n job-ticket-v2 [options] <ticket-id> Show a V2 job ticket\n set-job-ticket-status-v2 [options] <ticket-id> <status> Transition V2 job ticket status\n start-job-ticket [options] <ticket-id> Transition a V2 job ticket to RUNNING\n complete-job-ticket [options] <ticket-id> Transition a V2 job ticket to COMPLETED\n fail-job-ticket [options] <ticket-id> Transition a V2 job ticket to FAILED\n cancel-job-ticket [options] <ticket-id> Transition a V2 job ticket to CANCELED\n auto-retire-idle-models [options] Flip idle V2 models (active+deprecated) → RETIRED\n auto-fail-stuck-job-tickets [options] Flip stuck RUNNING V2 tickets → FAILED\n stats-v2 [options] Phase 20 V2 statistics\n help [command] display help for command\n",
126
126
  "rcache": "Usage: chainlesschain rcache [options] [command]\n\nResponse cache V2 — profile maturity + refresh jobs\n\nOptions:\n -h, --help display help for command\n\nCommands:\n profile-maturities-v2 List V2 profile maturity states\n refresh-job-lifecycles-v2 List V2 refresh-job lifecycle states\n stats-v2 V2 response cache stats\n get-max-active-profiles-v2 Get max active profiles per owner (V2)\n set-max-active-profiles-v2 <n> Set max active profiles per owner (V2)\n get-max-pending-refresh-jobs-v2 Get max pending refresh jobs per profile (V2)\n set-max-pending-refresh-jobs-v2 <n> Set max pending refresh jobs per profile (V2)\n get-profile-idle-ms-v2 Get profile idle threshold (V2)\n set-profile-idle-ms-v2 <ms> Set profile idle threshold (V2)\n get-refresh-stuck-ms-v2 Get refresh-job stuck threshold (V2)\n set-refresh-stuck-ms-v2 <ms> Set refresh-job stuck threshold (V2)\n active-profile-count-v2 <ownerId> Active profile count for owner (V2)\n pending-refresh-job-count-v2 <profileId> Pending refresh-job count for profile (V2)\n register-profile-v2 [options] <id> Register a V2 profile\n get-profile-v2 <id> Get a V2 profile\n list-profiles-v2 [options] List V2 profiles\n set-profile-status-v2 <id> <next> Set V2 profile status\n activate-profile-v2 <id> Activate a V2 profile\n suspend-profile-v2 <id> Suspend a V2 profile\n archive-profile-v2 <id> Archive a V2 profile\n touch-profile-v2 <id> Touch a V2 profile\n create-refresh-job-v2 [options] <id> Create a V2 refresh job\n get-refresh-job-v2 <id> Get a V2 refresh job\n list-refresh-jobs-v2 [options] List V2 refresh jobs\n set-refresh-job-status-v2 <id> <next> Set V2 refresh-job status\n start-refresh-job-v2 <id> Start a V2 refresh job\n complete-refresh-job-v2 <id> Complete a V2 refresh job\n fail-refresh-job-v2 <id> Fail a V2 refresh job\n cancel-refresh-job-v2 <id> Cancel a V2 refresh job\n auto-suspend-idle-profiles-v2 Auto-suspend idle V2 profiles\n auto-fail-stuck-refresh-jobs-v2 Auto-fail stuck V2 refresh jobs\n help [command] display help for command\n",