@termix-it/cryptoclaw 1.0.0 → 1.0.2

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 (282) hide show
  1. package/CHANGELOG.md +93 -93
  2. package/README.md +1 -1
  3. package/assets/favicon.svg +22 -0
  4. package/dist/{accounts-CIGHxE7R.js → accounts-BIh6Lgjl.js} +1 -1
  5. package/dist/{accounts-BPjR5SyC.js → accounts-DA-4bmd_.js} +1 -1
  6. package/dist/{acp-cli-DG9nygBk.js → acp-cli-CBFKSvET.js} +8 -8
  7. package/dist/{acp-cli-DBWmJpUJ.js → acp-cli-CEPAR8vh.js} +8 -8
  8. package/dist/{agent-3MZVCC-N.js → agent-8dTCwA-D.js} +10 -10
  9. package/dist/{agent-scope-DBl1We79.js → agent-scope-BJucHu4R.js} +2 -2
  10. package/dist/{agent-scope-e_oNRhGi.js → agent-scope-DzpuqcS9.js} +5 -1
  11. package/dist/{agent-scope-DLfFOxP6.js → agent-scope-GUoze5gc.js} +2 -2
  12. package/dist/{agent-IDE9krld.js → agent-sjalTGVA.js} +10 -10
  13. package/dist/{audit-jaTyyQX1.js → audit-BMzW1G5a.js} +10 -10
  14. package/dist/{audit-Bj_dxNaD.js → audit-DQsCrYXQ.js} +10 -10
  15. package/dist/{auth-health-CCM6Z3vK.js → auth-health-Cr8ib9nm.js} +1 -1
  16. package/dist/{auth-health-BlspzqyF.js → auth-health-Dc-ImENT.js} +1 -1
  17. package/dist/{auth-profiles-DoD7YxsD.js → auth-profiles-CVShF1K6.js} +2 -2
  18. package/dist/build-info.json +3 -3
  19. package/dist/{call-D2DXG0AC.js → call-D-Kvee3W.js} +2 -2
  20. package/dist/{call-DqxlETxE.js → call-QEaFjVBF.js} +2 -2
  21. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  22. package/dist/{channel-options-DUkxROTo.js → channel-options-B951pKy8.js} +5 -5
  23. package/dist/{channel-options-BHpXOBuP.js → channel-options-DJsSCLD8.js} +3 -3
  24. package/dist/{channel-selection-BdigfMZZ.js → channel-selection-BWiz5Osx.js} +1 -1
  25. package/dist/{channel-selection-D7jFTFec.js → channel-selection-ChOffLk2.js} +1 -1
  26. package/dist/{channel-summary-DS0kcHm2.js → channel-summary-BQMoWZQ1.js} +5 -5
  27. package/dist/{channel-summary-CobMoKN6.js → channel-summary-C4kSR_wu.js} +5 -5
  28. package/dist/{channels-cli-DBwffwqw.js → channels-cli-Fv9FTQXn.js} +34 -34
  29. package/dist/{channels-cli-D7ZNRrq7.js → channels-cli-Lq6EWRJ9.js} +33 -33
  30. package/dist/{channels-status-issues-C2UGSPvH.js → channels-status-issues-BwOdQrU9.js} +1 -1
  31. package/dist/{channels-status-issues-Dxmd7zYk.js → channels-status-issues-DouPXVa3.js} +1 -1
  32. package/dist/{chrome-CwbWzmh4.js → chrome-D0L5ufqO.js} +1 -1
  33. package/dist/cli/daemon-cli.js +1 -1
  34. package/dist/{cli-C9xiWnx9.js → cli-Bzyu6rQE.js} +27 -27
  35. package/dist/{cli-D6C9z94O.js → cli-DJnpasWd.js} +27 -27
  36. package/dist/{command-options-DL1PhuUF.js → command-options-DBpEhnW5.js} +3 -3
  37. package/dist/{commands-Dpeoos11.js → commands-B0LiAJsa.js} +3 -3
  38. package/dist/{completion-cli-CZ8zPqPs.js → completion-cli-Bd5FrGHg.js} +27 -27
  39. package/dist/{completion-cli-B5nR7jt8.js → completion-cli-Cs-B1hk7.js} +1 -1
  40. package/dist/{config-dQK4rbfx.js → config-D1wc31Qf.js} +4 -4
  41. package/dist/{config-DSpb2aMV.js → config-DBZqAqbe.js} +4 -4
  42. package/dist/{config-IwiWafT3.js → config-fXndcfb4.js} +2 -2
  43. package/dist/{config-guard-DwIb5Y-v.js → config-guard-Csl9Ubn5.js} +48 -48
  44. package/dist/{configure-CivCcvkA.js → configure-CeTzu0Ed.js} +20 -20
  45. package/dist/{configure-7M9mLC4o.js → configure-CxPJaP8X.js} +20 -20
  46. package/dist/{control-service-BXC31sNw.js → control-service-BBeopea3.js} +4 -4
  47. package/dist/{control-service-lVzEzp9f.js → control-service-CWGGzqpN.js} +4 -4
  48. package/dist/control-ui/apple-touch-icon.png +0 -0
  49. package/dist/control-ui/assets/{index-DQ-7PWhX.js → index-BdjmXlOn.js} +372 -363
  50. package/dist/control-ui/assets/index-BdjmXlOn.js.map +1 -0
  51. package/dist/control-ui/assets/{index-nlpH70Eh.css → index-BxkHytum.css} +1 -1
  52. package/dist/control-ui/favicon-32.png +0 -0
  53. package/dist/control-ui/favicon.ico +0 -0
  54. package/dist/control-ui/favicon.svg +4 -4
  55. package/dist/control-ui/index.html +2 -2
  56. package/dist/{cron-cli-DS8ytfYQ.js → cron-cli-D8gKivN0.js} +11 -11
  57. package/dist/{cron-cli-Djb3HUdz.js → cron-cli-yC5Cy77c.js} +11 -11
  58. package/dist/{daemon-cli-KoaJ2nJX.js → daemon-cli-BM8zb09s.js} +12 -12
  59. package/dist/{daemon-cli-ZQIKLvAO.js → daemon-cli-D8AC0Q_A.js} +12 -12
  60. package/dist/{daemon-runtime-CHWbAfKs.js → daemon-runtime-BMAJ_2LE.js} +1 -1
  61. package/dist/{daemon-runtime-DEjUQVjL.js → daemon-runtime-CD5XPuxz.js} +1 -1
  62. package/dist/{deliver-sPBfRlXT.js → deliver-CNKlQLWI.js} +6 -6
  63. package/dist/{deliver-OfX6bSYR.js → deliver-D8Yt4jkc.js} +6 -6
  64. package/dist/{deliver-DVRzRmNN.js → deliver-Doq_iIoh.js} +3 -3
  65. package/dist/{deps-CZOfeWEp.js → deps-BhcPiVuz.js} +2 -2
  66. package/dist/{deps-BSdWD2wF.js → deps-ZGqhOjkR.js} +2 -2
  67. package/dist/{devices-cli-b9iF_uOi.js → devices-cli-BcIB2VyK.js} +7 -7
  68. package/dist/{devices-cli-DHSpDnCS.js → devices-cli-BcznR9RO.js} +7 -7
  69. package/dist/{directory-cli-qniSxsHo.js → directory-cli--IOOMz66.js} +11 -11
  70. package/dist/{directory-cli-D0dTuAem.js → directory-cli-DGFlpQ4T.js} +11 -11
  71. package/dist/{dispatcher-DA3u3CwV.js → dispatcher-cp7uHiyX.js} +1 -1
  72. package/dist/{dns-cli-DwwMpMuN.js → dns-cli-DkhYuREi.js} +9 -9
  73. package/dist/{dns-cli-C0JUNb9O.js → dns-cli-fQ4wu1HJ.js} +9 -9
  74. package/dist/{docs-cli-BlFHCHDz.js → docs-cli-BgnDzmFT.js} +8 -8
  75. package/dist/{docs-cli-BpSPrY3Y.js → docs-cli-CPaJzUSD.js} +8 -8
  76. package/dist/{doctor-Da1XgFcW.js → doctor-D6M3Hc0a.js} +21 -21
  77. package/dist/{doctor-qrtookj-.js → doctor-DRRL31R4.js} +21 -21
  78. package/dist/entry.js +1 -1
  79. package/dist/{errors--S5IAxQx.js → errors-DpH6VpWK.js} +1 -1
  80. package/dist/{exec-approvals-cli-Csgqkksl.js → exec-approvals-cli-BhEdzGao.js} +12 -12
  81. package/dist/{exec-approvals-cli-Dk4yHE2L.js → exec-approvals-cli-DHMroOAh.js} +12 -12
  82. package/dist/extensionAPI.js +25 -25
  83. package/dist/{gateway-cli-CJ7H2DgV.js → gateway-cli-CbQ4xoXp.js} +183 -108
  84. package/dist/{gateway-cli-CrKl-bIH.js → gateway-cli-DO7lIBZ5.js} +185 -110
  85. package/dist/{gateway-rpc-BPfCU2Vi.js → gateway-rpc-0hjEbkzc.js} +1 -1
  86. package/dist/{gateway-rpc--CH0NWWR.js → gateway-rpc-anmk3tbT.js} +1 -1
  87. package/dist/{github-copilot-auth-CcPEEb3Q.js → github-copilot-auth-D6I2MUxi.js} +6 -6
  88. package/dist/{github-copilot-auth-h3beCc_l.js → github-copilot-auth-DvShXmvU.js} +6 -6
  89. package/dist/{gmail-setup-utils-pZ9NnOvB.js → gmail-setup-utils-CAfk_F1J.js} +2 -2
  90. package/dist/{gmail-setup-utils-CnVYPhaQ.js → gmail-setup-utils-CJ1pbsWv.js} +2 -2
  91. package/dist/{health-format-BcsR5dtU.js → health-format-DlvTEKqI.js} +8 -8
  92. package/dist/{health-format-Pl8qK65t.js → health-format-SZpheYuf.js} +8 -8
  93. package/dist/hooks/bundled/boot-md/HOOK.md +1 -1
  94. package/dist/hooks/bundled/command-logger/HOOK.md +1 -1
  95. package/dist/hooks/bundled/session-memory/HOOK.md +1 -1
  96. package/dist/hooks/bundled/soul-evil/HOOK.md +1 -1
  97. package/dist/{hooks-cli-zkLY25DX.js → hooks-cli-CedlcxxR.js} +31 -31
  98. package/dist/{hooks-cli-BKHTdsn4.js → hooks-cli-DRarvOK2.js} +31 -31
  99. package/dist/{hooks-status-BETsyuUR.js → hooks-status-B4cP-W7z.js} +3 -3
  100. package/dist/{hooks-status-nPgxLL-x.js → hooks-status-n8jKv3Fm.js} +3 -3
  101. package/dist/{image-DAsWVn7Q.js → image-C6tw3aWy.js} +4 -4
  102. package/dist/{image-CC_YKDB-.js → image-CBqp4iA0.js} +3 -3
  103. package/dist/{image-BFNcQzKp.js → image-CQgVMkgf.js} +4 -4
  104. package/dist/index.js +79 -79
  105. package/dist/{installs-Byb3s_8P.js → installs-BhPUpyE9.js} +2 -2
  106. package/dist/{installs-CELeuogN.js → installs-CWAe2dOG.js} +2 -2
  107. package/dist/{links-cf9h8BXu.js → links-Dv1EDiwa.js} +2 -2
  108. package/dist/{links-Brcj2Oc-.js → links-kbubTyay.js} +2 -2
  109. package/dist/{loader-CU4bkeKe.js → loader-DE_vKAH5.js} +44 -44
  110. package/dist/{logging-BJRQDTME.js → logging-B65tlzu3.js} +2 -2
  111. package/dist/{logging-CD55MXc7.js → logging-C3Y3mzWS.js} +2 -2
  112. package/dist/{login-qr-BCr2GKX6.js → login-qr-BTMkosTm.js} +1 -1
  113. package/dist/{login-qr-HIPJAnbT.js → login-qr-BpdHxT8l.js} +3 -3
  114. package/dist/{login-qr-BMbekoZW.js → login-qr-C_Vv7Cqc.js} +3 -3
  115. package/dist/{logs-cli-CM7-XOcZ.js → logs-cli-_DHuOrR4.js} +9 -9
  116. package/dist/{logs-cli-aqjT7oHu.js → logs-cli-emy-Mg4S.js} +9 -9
  117. package/dist/{manager-CtGvmGvM.js → manager-CNk2RhQo.js} +3 -3
  118. package/dist/{manager-DpZlm3gk.js → manager-Cu-KA-wA.js} +3 -3
  119. package/dist/{manager-C5m5qpB0.js → manager-bvW7170C.js} +3 -3
  120. package/dist/{manifest-registry-BdTzIlta.js → manifest-registry-CBbBh2FT.js} +1 -1
  121. package/dist/{manifest-registry-DVQHMj0y.js → manifest-registry-CmLtWVRR.js} +1 -1
  122. package/dist/{model-selection-DuI_Ue9Q.js → model-selection-BVTyreim.js} +1 -1
  123. package/dist/{model-selection-Av0fLq51.js → model-selection-DmO3rB3w.js} +2 -2
  124. package/dist/{models-cli-gmkzOpbq.js → models-cli-CdrDfutq.js} +32 -32
  125. package/dist/{models-cli-C0JOZ5oP.js → models-cli-CgIqfTHx.js} +32 -32
  126. package/dist/{node-cli-BND9LLkM.js → node-cli-Bsn9lQ6O.js} +13 -13
  127. package/dist/{node-cli-DNRB94ib.js → node-cli-Ckvs6bcI.js} +13 -13
  128. package/dist/{nodes-cli-BCWlqHyR.js → nodes-cli-BELOAYB6.js} +10 -10
  129. package/dist/{nodes-cli-DWSo5dX7.js → nodes-cli-CTQPoAcf.js} +10 -10
  130. package/dist/{onboard-channels-DJz2TusQ.js → onboard-channels-B5qHfMk8.js} +6 -6
  131. package/dist/{onboard-channels-B75LjjVZ.js → onboard-channels-BgchLTab.js} +6 -6
  132. package/dist/{onboard-skills-ByHkU9nx.js → onboard-skills-CyG0xbsu.js} +17 -17
  133. package/dist/{onboard-skills-Wknr7pxR.js → onboard-skills-DEnuz7z3.js} +17 -17
  134. package/dist/{onboarding-BejDjkx5.js → onboarding-B6aTF0nd.js} +37 -37
  135. package/dist/{openclaw-root-_zPXSqgo.js → openclaw-root-Cx_l_MXP.js} +6 -2
  136. package/dist/{openclaw-root-YSGWCNem.js → openclaw-root-DJB4AQtF.js} +6 -2
  137. package/dist/{pairing-cli-Cn5vt4oI.js → pairing-cli-C_PnyRzK.js} +11 -11
  138. package/dist/{pairing-cli-CFqD3IdI.js → pairing-cli-CocCRLzF.js} +11 -11
  139. package/dist/{pairing-store-BHzy16_t.js → pairing-store-Dbotpoz6.js} +1 -1
  140. package/dist/{pairing-store-BOhO49Bi.js → pairing-store-cC0TwSYc.js} +1 -1
  141. package/dist/{paths-Dlp4VNXa.js → paths-B7p98Wg9.js} +1 -1
  142. package/dist/{pi-embedded-helpers-CQ9sq3Uu.js → pi-embedded-helpers-Bmu_uE8Y.js} +4 -4
  143. package/dist/{pi-embedded-helpers-B7ARjDEK.js → pi-embedded-helpers-CT7w1pYd.js} +2 -2
  144. package/dist/{pi-embedded-helpers-FPVRDeKf.js → pi-embedded-helpers-DRK9Qub7.js} +2 -2
  145. package/dist/{pi-tools.policy-Du4RZy9R.js → pi-tools.policy-BjgXXFkH.js} +3 -3
  146. package/dist/{plugin-auto-enable-RwRwIUKC.js → plugin-auto-enable-BmBAQgRq.js} +4 -4
  147. package/dist/{plugin-auto-enable-EBxTHjFJ.js → plugin-auto-enable-CBfM3u2p.js} +4 -4
  148. package/dist/plugin-sdk/index.js +1 -1
  149. package/dist/{plugins-BI-p2ba9.js → plugins-CB4Xjrgb.js} +2 -2
  150. package/dist/{plugins-Dk4UBZwz.js → plugins-CQ1FUoTO.js} +2 -2
  151. package/dist/{plugins-cli-CMg0G56J.js → plugins-cli-DB1NYN9W.js} +33 -33
  152. package/dist/{plugins-cli-CX7QeUjq.js → plugins-cli-Dn9I2nvT.js} +33 -33
  153. package/dist/{ports-nXmd4Efh.js → ports-CcCvup-Y.js} +2 -2
  154. package/dist/{program-EAMJAB_2.js → program-CL1V1uQh.js} +58 -58
  155. package/dist/{pw-ai-D6JUaD41.js → pw-ai-CQDH40p5.js} +2 -2
  156. package/dist/{pw-ai-D2jD_dho.js → pw-ai-DUv3Smif.js} +2 -2
  157. package/dist/{qmd-manager-B-ijyM7o.js → qmd-manager-DJdGKjf-.js} +2 -2
  158. package/dist/{qmd-manager-xo4abL0u.js → qmd-manager-DqhsQHr6.js} +2 -2
  159. package/dist/{qmd-manager-C_Jah5eo.js → qmd-manager-ym3oBzzR.js} +2 -2
  160. package/dist/{register.subclis-CJGimm3-.js → register.subclis-Bf9yES9h.js} +28 -28
  161. package/dist/{reply-DfepuqG0.js → reply-qWVVjmhR.js} +44 -44
  162. package/dist/{routes-DkckwrRx.js → routes-C49H9SW5.js} +4 -4
  163. package/dist/{routes-Q42qtNl1.js → routes-DzL6l-Oq.js} +4 -4
  164. package/dist/{rpc-B4lvrGrD.js → rpc-BEKdRxnk.js} +1 -1
  165. package/dist/{rpc-CbWcXAQK.js → rpc-jU_lA6zf.js} +1 -1
  166. package/dist/{run-main-JFY3X4Xh.js → run-main-C12Z921D.js} +59 -59
  167. package/dist/{sandbox-BGqDfFaH.js → sandbox-Cfvpk8Q8.js} +9 -9
  168. package/dist/{sandbox-D_Tt3WRq.js → sandbox-DcPAdlhA.js} +9 -9
  169. package/dist/{sandbox-cli-CaxqKiTq.js → sandbox-cli-DVfJ38Q2.js} +16 -16
  170. package/dist/{sandbox-cli-DA0Cbrzl.js → sandbox-cli-DqrtTHAP.js} +16 -16
  171. package/dist/{security-cli-Ct-pfF2h.js → security-cli-2AAajc4y.js} +18 -18
  172. package/dist/{security-cli-BZjA_GAD.js → security-cli-YL2ZTkkR.js} +18 -18
  173. package/dist/{server-context-C53lhEx_.js → server-context-9SLnBBRW.js} +4 -4
  174. package/dist/{server-context-B9ez46MY.js → server-context-BG54Dk0A.js} +4 -4
  175. package/dist/{server-node-events-Cb6QOeDH.js → server-node-events-uUSBf7hZ.js} +29 -29
  176. package/dist/{server-node-events-DONmQvJg.js → server-node-events-x6ZMjAs1.js} +29 -29
  177. package/dist/{service-audit-AsnhO40e.js → service-audit-BsDPEKdd.js} +1 -1
  178. package/dist/{service-audit-BM-iyLL7.js → service-audit-CCg0o0UZ.js} +1 -1
  179. package/dist/{skills-7V483a6m.js → skills-DaDm2aTV.js} +3 -3
  180. package/dist/{skills-CsZRBUj0.js → skills-DryIpWLj.js} +3 -3
  181. package/dist/{skills-cli-DQaq5LBX.js → skills-cli-CYZbvr7O.js} +10 -10
  182. package/dist/{skills-cli-dVugbaAb.js → skills-cli-eDUNGpwb.js} +10 -10
  183. package/dist/{skills-status-4_4zVBvV.js → skills-status-D9G4-4sK.js} +2 -2
  184. package/dist/{skills-status-cD4rfMR9.js → skills-status-dTiH79uI.js} +2 -2
  185. package/dist/{status-DSoYX3Ep.js → status-BnbwLzB2.js} +3 -3
  186. package/dist/{status-DHPz4Mg_.js → status-CN2V3fan.js} +37 -37
  187. package/dist/{status-BakhDLuG.js → status-DCrBN9vJ.js} +3 -3
  188. package/dist/{system-cli-CUQswQPX.js → system-cli-BEmIixtY.js} +9 -9
  189. package/dist/{system-cli-Cz7in_Xr.js → system-cli-ZxnlO0-v.js} +9 -9
  190. package/dist/{table-DDQGlZSe.js → table--L48nql9.js} +2 -2
  191. package/dist/{table-DAOPkdc_.js → table-C1Xupkjv.js} +2 -2
  192. package/dist/{tool-display-Zbh1CRw5.js → tool-display-7o4pgXYF.js} +1 -1
  193. package/dist/{tool-display-B2rS2o6B.js → tool-display-B9G_vqLX.js} +1 -1
  194. package/dist/{tui-qPHLsB-x.js → tui-3eD-E_iD.js} +6 -6
  195. package/dist/{tui-DFVs6pRO.js → tui-BGSteZzU.js} +6 -6
  196. package/dist/{tui-cli-CBKZVd1C.js → tui-cli-B9iCyCn2.js} +19 -19
  197. package/dist/{tui-cli-DexeJOgZ.js → tui-cli-iakTIAvk.js} +19 -19
  198. package/dist/{update-cli-BPUtZjbl.js → update-cli-DUO4CVNB.js} +48 -48
  199. package/dist/{update-cli-ehTYbpaU.js → update-cli-DlXzjuIc.js} +47 -47
  200. package/dist/{update-B2q3duJD.js → update-lGuOUiyd.js} +3 -3
  201. package/dist/{update-runner-DAeygRSU.js → update-runner-L1EJYQRF.js} +5 -5
  202. package/dist/{update-runner-BfncKnU6.js → update-runner-eJ773fp-.js} +5 -5
  203. package/dist/{update-DNnej3C6.js → update-zm4_acQX.js} +3 -3
  204. package/dist/{utils-D7jskKIf.js → utils-CGterW74.js} +1 -7
  205. package/dist/{utils-7IMqr8vR.js → utils-DV2rghi_.js} +1 -7
  206. package/dist/{webhooks-cli-C0CV-1jG.js → webhooks-cli-BLHZn_at.js} +10 -10
  207. package/dist/{webhooks-cli-DT16BygW.js → webhooks-cli-UhujyhVU.js} +10 -10
  208. package/dist/{widearea-dns-Dk82I4Xa.js → widearea-dns-BKbb6W_z.js} +1 -1
  209. package/dist/{widearea-dns-BJZTAyT3.js → widearea-dns-CVZf20c2.js} +1 -1
  210. package/dist/{wsl-C24YfxH9.js → wsl-DntkIGSe.js} +1 -1
  211. package/docs/assets/pixel-lobster.svg +3 -3
  212. package/docs/blockchain/aave.md +72 -0
  213. package/docs/blockchain/agent-identity.md +73 -0
  214. package/docs/blockchain/contracts.md +96 -0
  215. package/docs/blockchain/defi.md +61 -0
  216. package/docs/blockchain/index.md +92 -0
  217. package/docs/blockchain/market-data.md +98 -0
  218. package/docs/blockchain/nft.md +44 -0
  219. package/docs/blockchain/portfolio.md +57 -0
  220. package/docs/blockchain/security.md +83 -0
  221. package/docs/blockchain/swap.md +89 -0
  222. package/docs/blockchain/wallet.md +77 -0
  223. package/docs/concepts/features.md +29 -10
  224. package/docs/docs.json +76 -6
  225. package/docs/index.md +44 -44
  226. package/docs/start/getting-started.md +10 -9
  227. package/docs/zh-CN/blockchain/aave.md +63 -0
  228. package/docs/zh-CN/blockchain/agent-identity.md +62 -0
  229. package/docs/zh-CN/blockchain/contracts.md +64 -0
  230. package/docs/zh-CN/blockchain/defi.md +49 -0
  231. package/docs/zh-CN/blockchain/index.md +92 -0
  232. package/docs/zh-CN/blockchain/market-data.md +68 -0
  233. package/docs/zh-CN/blockchain/nft.md +43 -0
  234. package/docs/zh-CN/blockchain/portfolio.md +49 -0
  235. package/docs/zh-CN/blockchain/security.md +75 -0
  236. package/docs/zh-CN/blockchain/swap.md +68 -0
  237. package/docs/zh-CN/blockchain/wallet.md +71 -0
  238. package/extensions/copilot-proxy/README.md +3 -3
  239. package/extensions/copilot-proxy/package.json +1 -1
  240. package/extensions/diagnostics-otel/package.json +1 -1
  241. package/extensions/diagnostics-otel/src/service.test.ts +12 -12
  242. package/extensions/diagnostics-otel/src/service.ts +79 -79
  243. package/extensions/discord/package.json +1 -1
  244. package/extensions/imessage/package.json +1 -1
  245. package/extensions/memory-core/package.json +1 -1
  246. package/extensions/memory-lancedb/config.ts +3 -3
  247. package/extensions/memory-lancedb/{openclaw.plugin.json → cryptoclaw.plugin.json} +1 -1
  248. package/extensions/memory-lancedb/index.test.ts +2 -2
  249. package/extensions/memory-lancedb/index.ts +1 -1
  250. package/extensions/memory-lancedb/package.json +1 -1
  251. package/extensions/nostr/README.md +5 -5
  252. package/extensions/nostr/package.json +1 -1
  253. package/extensions/nostr/src/channel.ts +1 -1
  254. package/extensions/nostr/src/nostr-state-store.test.ts +1 -1
  255. package/extensions/signal/package.json +1 -1
  256. package/extensions/slack/package.json +1 -1
  257. package/extensions/telegram/package.json +1 -1
  258. package/extensions/voice-call/README.md +14 -14
  259. package/extensions/voice-call/package.json +1 -1
  260. package/extensions/voice-call/src/cli.ts +1 -1
  261. package/extensions/voice-call/src/core-bridge.ts +1 -1
  262. package/extensions/voice-call/src/manager.test.ts +6 -6
  263. package/extensions/voice-call/src/manager.ts +1 -1
  264. package/extensions/voice-call/src/response-generator.ts +1 -1
  265. package/extensions/whatsapp/package.json +1 -1
  266. package/package.json +1 -1
  267. package/skills/aave-bsc/SKILL.md +6 -0
  268. package/skills/coding-agent/SKILL.md +5 -5
  269. package/skills/discord/SKILL.md +6 -6
  270. package/skills/tmux/SKILL.md +6 -6
  271. package/dist/control-ui/assets/index-DQ-7PWhX.js.map +0 -1
  272. /package/extensions/copilot-proxy/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  273. /package/extensions/diagnostics-otel/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  274. /package/extensions/discord/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  275. /package/extensions/imessage/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  276. /package/extensions/memory-core/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  277. /package/extensions/nostr/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  278. /package/extensions/signal/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  279. /package/extensions/slack/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  280. /package/extensions/telegram/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  281. /package/extensions/voice-call/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
  282. /package/extensions/whatsapp/{openclaw.plugin.json → cryptoclaw.plugin.json} +0 -0
@@ -1,74 +1,74 @@
1
- import "./pi-embedded-helpers-B7ARjDEK.js";
2
- import { q as trimLogTail } from "./reply-DfepuqG0.js";
1
+ import "./pi-embedded-helpers-CT7w1pYd.js";
2
+ import { q as trimLogTail } from "./reply-qWVVjmhR.js";
3
3
  import "./paths-CGrNQEMk.js";
4
4
  import { R as theme, c as defaultRuntime } from "./subsystem-Btuh5yZj.js";
5
- import "./utils-D7jskKIf.js";
5
+ import "./utils-CGterW74.js";
6
6
  import { t as runCommandWithTimeout } from "./exec-CW_QjkBi.js";
7
- import { t as resolveOpenClawPackageRoot } from "./openclaw-root-YSGWCNem.js";
8
- import "./agent-scope-DLfFOxP6.js";
9
- import "./model-selection-Av0fLq51.js";
7
+ import { t as resolveOpenClawPackageRoot } from "./openclaw-root-Cx_l_MXP.js";
8
+ import "./agent-scope-GUoze5gc.js";
9
+ import "./model-selection-DmO3rB3w.js";
10
10
  import "./github-copilot-token-hMl1wyZp.js";
11
11
  import { n as replaceCliName, r as resolveCliName, t as formatCliCommand } from "./command-format-9IsYy-9N.js";
12
12
  import "./boolean-BsqeuxE6.js";
13
13
  import "./env-B2Cd_6IS.js";
14
- import { c as writeConfigFile, o as readConfigFileSnapshot } from "./config-dQK4rbfx.js";
15
- import "./manifest-registry-DVQHMj0y.js";
16
- import "./plugins-Dk4UBZwz.js";
17
- import "./sandbox-D_Tt3WRq.js";
18
- import "./image-DAsWVn7Q.js";
14
+ import { c as writeConfigFile, o as readConfigFileSnapshot } from "./config-D1wc31Qf.js";
15
+ import "./manifest-registry-CmLtWVRR.js";
16
+ import "./plugins-CQ1FUoTO.js";
17
+ import "./sandbox-DcPAdlhA.js";
18
+ import "./image-C6tw3aWy.js";
19
19
  import "./pi-model-discovery-EwKVHlZB.js";
20
- import "./chrome-CwbWzmh4.js";
21
- import "./skills-CsZRBUj0.js";
22
- import "./routes-DkckwrRx.js";
23
- import "./server-context-C53lhEx_.js";
20
+ import "./chrome-D0L5ufqO.js";
21
+ import "./skills-DryIpWLj.js";
22
+ import "./routes-C49H9SW5.js";
23
+ import "./server-context-9SLnBBRW.js";
24
24
  import "./message-channel-CvHWS3C2.js";
25
25
  import "./logging-kuFzZMsG.js";
26
- import "./accounts-BPjR5SyC.js";
26
+ import "./accounts-DA-4bmd_.js";
27
27
  import "./paths-C3yk0MGu.js";
28
28
  import "./redact-CVRUv382.js";
29
- import "./tool-display-Zbh1CRw5.js";
30
- import "./deliver-sPBfRlXT.js";
31
- import "./dispatcher-DA3u3CwV.js";
32
- import "./manager-CtGvmGvM.js";
29
+ import "./tool-display-7o4pgXYF.js";
30
+ import "./deliver-CNKlQLWI.js";
31
+ import "./dispatcher-cp7uHiyX.js";
32
+ import "./manager-CNk2RhQo.js";
33
33
  import "./sqlite-C4DljFNL.js";
34
- import "./channel-summary-CobMoKN6.js";
34
+ import "./channel-summary-C4kSR_wu.js";
35
35
  import "./client-BaTYzXOU.js";
36
- import "./call-DqxlETxE.js";
37
- import "./login-qr-HIPJAnbT.js";
38
- import "./pairing-store-BHzy16_t.js";
39
- import { t as formatDocsLink } from "./links-Brcj2Oc-.js";
36
+ import "./call-QEaFjVBF.js";
37
+ import "./login-qr-BpdHxT8l.js";
38
+ import "./pairing-store-Dbotpoz6.js";
39
+ import { t as formatDocsLink } from "./links-Dv1EDiwa.js";
40
40
  import "./progress-DTEUicRP.js";
41
- import "./pi-tools.policy-Du4RZy9R.js";
41
+ import "./pi-tools.policy-BjgXXFkH.js";
42
42
  import { n as stylePromptMessage, t as stylePromptHint } from "./prompt-style-BBlJlXtd.js";
43
43
  import "./session-cost-usage-B3HzifR9.js";
44
- import "./control-service-BXC31sNw.js";
45
- import "./channel-selection-D7jFTFec.js";
46
- import "./deps-CZOfeWEp.js";
44
+ import "./control-service-BBeopea3.js";
45
+ import "./channel-selection-ChOffLk2.js";
46
+ import "./deps-BhcPiVuz.js";
47
47
  import "./tailscale-BY0igR48.js";
48
- import { _ as parseSemver } from "./daemon-runtime-DEjUQVjL.js";
49
- import "./logging-CD55MXc7.js";
48
+ import { _ as parseSemver } from "./daemon-runtime-CD5XPuxz.js";
49
+ import "./logging-C3Y3mzWS.js";
50
50
  import "./note-DEz9ZK7G.js";
51
- import "./plugin-auto-enable-RwRwIUKC.js";
51
+ import "./plugin-auto-enable-BmBAQgRq.js";
52
52
  import "./archive-Dy3Ezb-5.js";
53
53
  import "./skill-scanner-BoGjHXUZ.js";
54
- import "./installs-CELeuogN.js";
55
- import "./health-format-Pl8qK65t.js";
56
- import { C as resolveEffectiveUpdateChannel, S as normalizeUpdateChannel, _ as resolveNpmChannelTag, a as globalInstallArgs, b as channelToNpmTag, d as formatUpdateOneLiner, g as fetchNpmTagVersion, h as compareSemverStrings, i as detectGlobalInstallManagerForRoot, l as ensureCompletionCacheExists, m as checkUpdateStatus, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, p as resolveUpdateAvailability, r as detectGlobalInstallManagerByPresence, s as checkShellCompletionStatus, t as runGatewayUpdate, u as formatUpdateAvailableHint, v as DEFAULT_GIT_CHANNEL, x as formatUpdateChannelLabel, y as DEFAULT_PACKAGE_CHANNEL } from "./update-runner-DAeygRSU.js";
54
+ import "./installs-CWAe2dOG.js";
55
+ import "./health-format-SZpheYuf.js";
56
+ import { C as resolveEffectiveUpdateChannel, S as normalizeUpdateChannel, _ as resolveNpmChannelTag, a as globalInstallArgs, b as channelToNpmTag, d as formatUpdateOneLiner, g as fetchNpmTagVersion, h as compareSemverStrings, i as detectGlobalInstallManagerForRoot, l as ensureCompletionCacheExists, m as checkUpdateStatus, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, p as resolveUpdateAvailability, r as detectGlobalInstallManagerByPresence, s as checkShellCompletionStatus, t as runGatewayUpdate, u as formatUpdateAvailableHint, v as DEFAULT_GIT_CHANNEL, x as formatUpdateChannelLabel, y as DEFAULT_PACKAGE_CHANNEL } from "./update-runner-L1EJYQRF.js";
57
57
  import "./auth-RTEHx2eI.js";
58
- import { t as renderTable } from "./table-DAOPkdc_.js";
59
- import "./skills-status-4_4zVBvV.js";
58
+ import { t as renderTable } from "./table-C1Xupkjv.js";
59
+ import "./skills-status-D9G4-4sK.js";
60
60
  import "./service-mrQPgOXl.js";
61
61
  import "./systemd-CFHiVC1D.js";
62
- import "./service-audit-AsnhO40e.js";
63
- import "./channels-status-issues-C2UGSPvH.js";
64
- import { r as installCompletion } from "./completion-cli-CZ8zPqPs.js";
62
+ import "./service-audit-BsDPEKdd.js";
63
+ import "./channels-status-issues-BwOdQrU9.js";
64
+ import { r as installCompletion } from "./completion-cli-Bd5FrGHg.js";
65
65
  import { t as formatHelpExamples } from "./help-format-BzWwbeSF.js";
66
66
  import "./systemd-linger-CxBBzOjC.js";
67
- import "./auth-health-CCM6Z3vK.js";
68
- import { t as doctorCommand } from "./doctor-qrtookj-.js";
67
+ import "./auth-health-Cr8ib9nm.js";
68
+ import { t as doctorCommand } from "./doctor-DRRL31R4.js";
69
69
  import "./shared-CtNMbLRE.js";
70
- import { r as runDaemonRestart } from "./daemon-cli-ZQIKLvAO.js";
71
- import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-B2q3duJD.js";
70
+ import { r as runDaemonRestart } from "./daemon-cli-D8AC0Q_A.js";
71
+ import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-zm4_acQX.js";
72
72
  import os from "node:os";
73
73
  import path from "node:path";
74
74
  import fs from "node:fs/promises";
@@ -987,7 +987,7 @@ ${theme.heading("Notes:")}
987
987
  - Downgrades require confirmation (can break configuration)
988
988
  - Skips update if the working directory has uncommitted changes
989
989
 
990
- ${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.cryptoclaw.ai/cli/update")}`;
990
+ ${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.openclaw.ai/cli/update")}`;
991
991
  }).action(async (opts) => {
992
992
  try {
993
993
  await updateCommand({
@@ -1003,7 +1003,7 @@ ${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.cryptoclaw.ai/cli/
1003
1003
  defaultRuntime.exit(1);
1004
1004
  }
1005
1005
  });
1006
- update.command("wizard").description("Interactive update wizard").option("--timeout <seconds>", "Timeout for each update step in seconds (default: 1200)").addHelpText("after", `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.cryptoclaw.ai/cli/update")}\n`).action(async (opts) => {
1006
+ update.command("wizard").description("Interactive update wizard").option("--timeout <seconds>", "Timeout for each update step in seconds (default: 1200)").addHelpText("after", `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.openclaw.ai/cli/update")}\n`).action(async (opts) => {
1007
1007
  try {
1008
1008
  await updateWizardCommand({ timeout: opts.timeout });
1009
1009
  } catch (err) {
@@ -1015,7 +1015,7 @@ ${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.cryptoclaw.ai/cli/
1015
1015
  ["cryptoclaw update status", "Show channel + version status."],
1016
1016
  ["cryptoclaw update status --json", "JSON output."],
1017
1017
  ["cryptoclaw update status --timeout 10", "Custom timeout."]
1018
- ])}\n\n${theme.heading("Notes:")}\n${theme.muted("- Shows current update channel (stable/beta/dev) and source")}\n${theme.muted("- Includes git tag/branch/SHA for source checkouts")}\n\n${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.cryptoclaw.ai/cli/update")}`).action(async (opts) => {
1018
+ ])}\n\n${theme.heading("Notes:")}\n${theme.muted("- Shows current update channel (stable/beta/dev) and source")}\n${theme.muted("- Includes git tag/branch/SHA for source checkouts")}\n\n${theme.muted("Docs:")} ${formatDocsLink("/cli/update", "docs.openclaw.ai/cli/update")}`).action(async (opts) => {
1019
1019
  try {
1020
1020
  await updateStatusCommand({
1021
1021
  json: Boolean(opts.json),
@@ -1,6 +1,6 @@
1
- import { h as resolveUserPath } from "./utils-D7jskKIf.js";
2
- import { n as discoverOpenClawPlugins, r as loadPluginManifest } from "./manifest-registry-DVQHMj0y.js";
3
- import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-CELeuogN.js";
1
+ import { f as resolveUserPath } from "./utils-DV2rghi_.js";
2
+ import { n as discoverOpenClawPlugins, r as loadPluginManifest } from "./manifest-registry-CBbBh2FT.js";
3
+ import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-BhPUpyE9.js";
4
4
  import fs from "node:fs/promises";
5
5
 
6
6
  //#region src/plugins/update.ts
@@ -1,11 +1,11 @@
1
- import { q as trimLogTail } from "./reply-DfepuqG0.js";
1
+ import { q as trimLogTail } from "./reply-qWVVjmhR.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-CW_QjkBi.js";
3
- import { t as resolveOpenClawPackageRoot } from "./openclaw-root-YSGWCNem.js";
3
+ import { t as resolveOpenClawPackageRoot } from "./openclaw-root-Cx_l_MXP.js";
4
4
  import { r as resolveCliName, t as formatCliCommand } from "./command-format-9IsYy-9N.js";
5
- import { j as VERSION } from "./config-dQK4rbfx.js";
6
- import { _ as parseSemver } from "./daemon-runtime-DEjUQVjL.js";
5
+ import { j as VERSION } from "./config-D1wc31Qf.js";
6
+ import { _ as parseSemver } from "./daemon-runtime-CD5XPuxz.js";
7
7
  import { t as note } from "./note-DEz9ZK7G.js";
8
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-CZ8zPqPs.js";
8
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-Bd5FrGHg.js";
9
9
  import os from "node:os";
10
10
  import path from "node:path";
11
11
  import fs from "node:fs/promises";
@@ -1,11 +1,11 @@
1
1
  import { r as resolveCliName, t as formatCliCommand } from "./command-format-B0bnyrEA.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-CLQSz0CI.js";
3
- import { t as resolveOpenClawPackageRoot } from "./openclaw-root-_zPXSqgo.js";
4
- import { j as VERSION } from "./config-DSpb2aMV.js";
5
- import { Ln as trimLogTail } from "./loader-CU4bkeKe.js";
3
+ import { t as resolveOpenClawPackageRoot } from "./openclaw-root-DJB4AQtF.js";
4
+ import { j as VERSION } from "./config-DBZqAqbe.js";
5
+ import { Ln as trimLogTail } from "./loader-DE_vKAH5.js";
6
6
  import { t as note } from "./note-C5M2AQOP.js";
7
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-B5nR7jt8.js";
8
- import { g as parseSemver } from "./daemon-runtime-CHWbAfKs.js";
7
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-Cs-B1hk7.js";
8
+ import { g as parseSemver } from "./daemon-runtime-BMAJ_2LE.js";
9
9
  import { spawnSync } from "node:child_process";
10
10
  import path from "node:path";
11
11
  import os from "node:os";
@@ -1,6 +1,6 @@
1
- import { m as resolveUserPath } from "./utils-7IMqr8vR.js";
2
- import { n as discoverOpenClawPlugins, r as loadPluginManifest } from "./manifest-registry-BdTzIlta.js";
3
- import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-Byb3s_8P.js";
1
+ import { p as resolveUserPath } from "./utils-CGterW74.js";
2
+ import { n as discoverOpenClawPlugins, r as loadPluginManifest } from "./manifest-registry-CmLtWVRR.js";
3
+ import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, t as recordPluginInstall } from "./installs-CWAe2dOG.js";
4
4
  import fs from "node:fs/promises";
5
5
 
6
6
  //#region src/plugins/update.ts
@@ -173,12 +173,6 @@ function shortenHomeInString(input) {
173
173
  if (!home) return input;
174
174
  return input.split(home).join("~");
175
175
  }
176
- function displayPath(input) {
177
- return shortenHomePath(input);
178
- }
179
- function displayString(input) {
180
- return shortenHomeInString(input);
181
- }
182
176
  function formatTerminalLink(label, url, opts) {
183
177
  const esc = "\x1B";
184
178
  const safeLabel = label.replaceAll(esc, "");
@@ -189,4 +183,4 @@ function formatTerminalLink(label, url, opts) {
189
183
  const CONFIG_DIR = resolveConfigDir();
190
184
 
191
185
  //#endregion
192
- export { shortenHomePath as _, displayPath as a, toWhatsappJid as b, formatTerminalLink as c, normalizeE164 as d, resolveConfigDir as f, shortenHomeInString as g, resolveUserPath as h, clampNumber as i, isSelfChatMode as l, resolveJidToE164 as m, assertWebChannel as n, displayString as o, resolveHomeDir as p, clampInt as r, ensureDir as s, CONFIG_DIR as t, jidToE164 as u, sleep as v, truncateUtf16Safe as x, sliceUtf16Safe as y };
186
+ export { sliceUtf16Safe as _, ensureDir as a, jidToE164 as c, resolveHomeDir as d, resolveJidToE164 as f, sleep as g, shortenHomePath as h, clampNumber as i, normalizeE164 as l, shortenHomeInString as m, assertWebChannel as n, formatTerminalLink as o, resolveUserPath as p, clampInt as r, isSelfChatMode as s, CONFIG_DIR as t, resolveConfigDir as u, toWhatsappJid as v, truncateUtf16Safe as y };
@@ -170,12 +170,6 @@ function shortenHomeInString(input) {
170
170
  if (!home) return input;
171
171
  return input.split(home).join("~");
172
172
  }
173
- function displayPath(input) {
174
- return shortenHomePath(input);
175
- }
176
- function displayString(input) {
177
- return shortenHomeInString(input);
178
- }
179
173
  function formatTerminalLink(label, url, opts) {
180
174
  const esc = "\x1B";
181
175
  const safeLabel = label.replaceAll(esc, "");
@@ -186,4 +180,4 @@ function formatTerminalLink(label, url, opts) {
186
180
  const CONFIG_DIR = resolveConfigDir();
187
181
 
188
182
  //#endregion
189
- export { sleep as _, displayString as a, truncateUtf16Safe as b, isSelfChatMode as c, resolveConfigDir as d, resolveHomeDir as f, shortenHomePath as g, shortenHomeInString as h, displayPath as i, jidToE164 as l, resolveUserPath as m, clampInt as n, ensureDir as o, resolveJidToE164 as p, clampNumber as r, formatTerminalLink as s, CONFIG_DIR as t, normalizeE164 as u, sliceUtf16Safe as v, toWhatsappJid as y };
183
+ export { toWhatsappJid as _, formatTerminalLink as a, normalizeE164 as c, resolveJidToE164 as d, resolveUserPath as f, sliceUtf16Safe as g, sleep as h, ensureDir as i, resolveConfigDir as l, shortenHomePath as m, clampInt as n, isSelfChatMode as o, shortenHomeInString as p, clampNumber as r, jidToE164 as s, CONFIG_DIR as t, resolveHomeDir as u, truncateUtf16Safe as v };
@@ -1,16 +1,16 @@
1
1
  import { d as resolveGatewayPort, t as CONFIG_PATH } from "./paths-D2ytuv-2.js";
2
2
  import { k as theme, p as defaultRuntime, v as danger } from "./entry.js";
3
- import "./auth-profiles-DoD7YxsD.js";
3
+ import "./auth-profiles-CVShF1K6.js";
4
4
  import { t as formatCliCommand } from "./command-format-B0bnyrEA.js";
5
- import { i as displayPath } from "./utils-7IMqr8vR.js";
5
+ import { m as shortenHomePath } from "./utils-DV2rghi_.js";
6
6
  import { t as runCommandWithTimeout } from "./exec-CLQSz0CI.js";
7
- import "./agent-scope-DBl1We79.js";
7
+ import "./agent-scope-BJucHu4R.js";
8
8
  import "./github-copilot-token-C1sArkX4.js";
9
- import { c as writeConfigFile, i as loadConfig, l as validateConfigObjectWithPlugins, o as readConfigFileSnapshot } from "./config-DSpb2aMV.js";
10
- import "./manifest-registry-BdTzIlta.js";
11
- import { t as formatDocsLink } from "./links-cf9h8BXu.js";
12
- import "./skills-7V483a6m.js";
13
- import { C as normalizeServePath, S as normalizeHooksPath, T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, a as ensureTopic, b as generateHookToken, c as DEFAULT_GMAIL_LABEL, d as DEFAULT_GMAIL_SERVE_BIND, f as DEFAULT_GMAIL_SERVE_PATH, g as buildDefaultHookUrl, h as DEFAULT_GMAIL_TOPIC, i as ensureTailscaleEndpoint, l as DEFAULT_GMAIL_MAX_BYTES, m as DEFAULT_GMAIL_SUBSCRIPTION, n as ensureGcloudAuth, o as resolveProjectIdFromGogCredentials, p as DEFAULT_GMAIL_SERVE_PORT, r as ensureSubscription, s as runGcloud, t as ensureDependency, u as DEFAULT_GMAIL_RENEW_MINUTES, v as buildGogWatchStartArgs, w as parseTopicPath, x as mergeHookPresets, y as buildTopicPath } from "./gmail-setup-utils-CnVYPhaQ.js";
9
+ import { c as writeConfigFile, i as loadConfig, l as validateConfigObjectWithPlugins, o as readConfigFileSnapshot } from "./config-DBZqAqbe.js";
10
+ import "./manifest-registry-CBbBh2FT.js";
11
+ import { t as formatDocsLink } from "./links-kbubTyay.js";
12
+ import "./skills-DaDm2aTV.js";
13
+ import { C as normalizeServePath, S as normalizeHooksPath, T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, a as ensureTopic, b as generateHookToken, c as DEFAULT_GMAIL_LABEL, d as DEFAULT_GMAIL_SERVE_BIND, f as DEFAULT_GMAIL_SERVE_PATH, g as buildDefaultHookUrl, h as DEFAULT_GMAIL_TOPIC, i as ensureTailscaleEndpoint, l as DEFAULT_GMAIL_MAX_BYTES, m as DEFAULT_GMAIL_SUBSCRIPTION, n as ensureGcloudAuth, o as resolveProjectIdFromGogCredentials, p as DEFAULT_GMAIL_SERVE_PORT, r as ensureSubscription, s as runGcloud, t as ensureDependency, u as DEFAULT_GMAIL_RENEW_MINUTES, v as buildGogWatchStartArgs, w as parseTopicPath, x as mergeHookPresets, y as buildTopicPath } from "./gmail-setup-utils-CJ1pbsWv.js";
14
14
  import { spawn } from "node:child_process";
15
15
 
16
16
  //#region src/hooks/gmail-ops.ts
@@ -151,7 +151,7 @@ async function runGmailSetup(opts) {
151
151
  defaultRuntime.log(`- subscription: ${subscription}`);
152
152
  defaultRuntime.log(`- push endpoint: ${pushEndpoint}`);
153
153
  defaultRuntime.log(`- hook url: ${hookUrl}`);
154
- defaultRuntime.log(`- config: ${displayPath(CONFIG_PATH)}`);
154
+ defaultRuntime.log(`- config: ${shortenHomePath(CONFIG_PATH)}`);
155
155
  defaultRuntime.log(`Next: ${formatCliCommand("cryptoclaw webhooks gmail run")}`);
156
156
  }
157
157
  async function runGmailService(opts) {
@@ -226,7 +226,7 @@ async function startGmailWatch(cfg, fatal = false) {
226
226
  //#endregion
227
227
  //#region src/cli/webhooks-cli.ts
228
228
  function registerWebhooksCli(program) {
229
- const gmail = program.command("webhooks").description("Webhook helpers and integrations").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/webhooks", "docs.cryptoclaw.ai/cli/webhooks")}\n`).command("gmail").description("Gmail Pub/Sub hooks (via gogcli)");
229
+ const gmail = program.command("webhooks").description("Webhook helpers and integrations").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/webhooks", "docs.openclaw.ai/cli/webhooks")}\n`).command("gmail").description("Gmail Pub/Sub hooks (via gogcli)");
230
230
  gmail.command("setup").description("Configure Gmail watch + Pub/Sub + CryptoClaw hooks").requiredOption("--account <email>", "Gmail account to watch").option("--project <id>", "GCP project id (OAuth client owner)").option("--topic <name>", "Pub/Sub topic name", DEFAULT_GMAIL_TOPIC).option("--subscription <name>", "Pub/Sub subscription name", DEFAULT_GMAIL_SUBSCRIPTION).option("--label <label>", "Gmail label to watch", DEFAULT_GMAIL_LABEL).option("--hook-url <url>", "CryptoClaw hook URL").option("--hook-token <token>", "CryptoClaw hook token").option("--push-token <token>", "Push token for gog watch serve").option("--bind <host>", "gog watch serve bind host", DEFAULT_GMAIL_SERVE_BIND).option("--port <port>", "gog watch serve port", String(DEFAULT_GMAIL_SERVE_PORT)).option("--path <path>", "gog watch serve path", DEFAULT_GMAIL_SERVE_PATH).option("--include-body", "Include email body snippets", true).option("--max-bytes <n>", "Max bytes for body snippets", String(DEFAULT_GMAIL_MAX_BYTES)).option("--renew-minutes <n>", "Renew watch every N minutes", String(DEFAULT_GMAIL_RENEW_MINUTES)).option("--tailscale <mode>", "Expose push endpoint via tailscale (funnel|serve|off)", "funnel").option("--tailscale-path <path>", "Path for tailscale serve/funnel").option("--tailscale-target <target>", "Tailscale serve/funnel target (port, host:port, or URL)").option("--push-endpoint <url>", "Explicit Pub/Sub push endpoint").option("--json", "Output JSON summary", false).action(async (opts) => {
231
231
  try {
232
232
  await runGmailSetup(parseGmailSetupOptions(opts));
@@ -1,18 +1,18 @@
1
1
  import { d as resolveGatewayPort, t as CONFIG_PATH } from "./paths-CGrNQEMk.js";
2
2
  import { E as danger, R as theme, c as defaultRuntime } from "./subsystem-Btuh5yZj.js";
3
- import { a as displayPath } from "./utils-D7jskKIf.js";
3
+ import { h as shortenHomePath } from "./utils-CGterW74.js";
4
4
  import { t as runCommandWithTimeout } from "./exec-CW_QjkBi.js";
5
- import "./agent-scope-DLfFOxP6.js";
6
- import "./model-selection-Av0fLq51.js";
5
+ import "./agent-scope-GUoze5gc.js";
6
+ import "./model-selection-DmO3rB3w.js";
7
7
  import "./github-copilot-token-hMl1wyZp.js";
8
8
  import { t as formatCliCommand } from "./command-format-9IsYy-9N.js";
9
9
  import "./boolean-BsqeuxE6.js";
10
10
  import "./env-B2Cd_6IS.js";
11
- import { c as writeConfigFile, i as loadConfig, l as validateConfigObjectWithPlugins, o as readConfigFileSnapshot } from "./config-dQK4rbfx.js";
12
- import "./manifest-registry-DVQHMj0y.js";
13
- import "./skills-CsZRBUj0.js";
14
- import { t as formatDocsLink } from "./links-Brcj2Oc-.js";
15
- import { C as normalizeServePath, S as normalizeHooksPath, T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, a as ensureTopic, b as generateHookToken, c as DEFAULT_GMAIL_LABEL, d as DEFAULT_GMAIL_SERVE_BIND, f as DEFAULT_GMAIL_SERVE_PATH, g as buildDefaultHookUrl, h as DEFAULT_GMAIL_TOPIC, i as ensureTailscaleEndpoint, l as DEFAULT_GMAIL_MAX_BYTES, m as DEFAULT_GMAIL_SUBSCRIPTION, n as ensureGcloudAuth, o as resolveProjectIdFromGogCredentials, p as DEFAULT_GMAIL_SERVE_PORT, r as ensureSubscription, s as runGcloud, t as ensureDependency, u as DEFAULT_GMAIL_RENEW_MINUTES, v as buildGogWatchStartArgs, w as parseTopicPath, x as mergeHookPresets, y as buildTopicPath } from "./gmail-setup-utils-pZ9NnOvB.js";
11
+ import { c as writeConfigFile, i as loadConfig, l as validateConfigObjectWithPlugins, o as readConfigFileSnapshot } from "./config-D1wc31Qf.js";
12
+ import "./manifest-registry-CmLtWVRR.js";
13
+ import "./skills-DryIpWLj.js";
14
+ import { t as formatDocsLink } from "./links-Dv1EDiwa.js";
15
+ import { C as normalizeServePath, S as normalizeHooksPath, T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, a as ensureTopic, b as generateHookToken, c as DEFAULT_GMAIL_LABEL, d as DEFAULT_GMAIL_SERVE_BIND, f as DEFAULT_GMAIL_SERVE_PATH, g as buildDefaultHookUrl, h as DEFAULT_GMAIL_TOPIC, i as ensureTailscaleEndpoint, l as DEFAULT_GMAIL_MAX_BYTES, m as DEFAULT_GMAIL_SUBSCRIPTION, n as ensureGcloudAuth, o as resolveProjectIdFromGogCredentials, p as DEFAULT_GMAIL_SERVE_PORT, r as ensureSubscription, s as runGcloud, t as ensureDependency, u as DEFAULT_GMAIL_RENEW_MINUTES, v as buildGogWatchStartArgs, w as parseTopicPath, x as mergeHookPresets, y as buildTopicPath } from "./gmail-setup-utils-CAfk_F1J.js";
16
16
  import { spawn } from "node:child_process";
17
17
 
18
18
  //#region src/hooks/gmail-ops.ts
@@ -153,7 +153,7 @@ async function runGmailSetup(opts) {
153
153
  defaultRuntime.log(`- subscription: ${subscription}`);
154
154
  defaultRuntime.log(`- push endpoint: ${pushEndpoint}`);
155
155
  defaultRuntime.log(`- hook url: ${hookUrl}`);
156
- defaultRuntime.log(`- config: ${displayPath(CONFIG_PATH)}`);
156
+ defaultRuntime.log(`- config: ${shortenHomePath(CONFIG_PATH)}`);
157
157
  defaultRuntime.log(`Next: ${formatCliCommand("cryptoclaw webhooks gmail run")}`);
158
158
  }
159
159
  async function runGmailService(opts) {
@@ -228,7 +228,7 @@ async function startGmailWatch(cfg, fatal = false) {
228
228
  //#endregion
229
229
  //#region src/cli/webhooks-cli.ts
230
230
  function registerWebhooksCli(program) {
231
- const gmail = program.command("webhooks").description("Webhook helpers and integrations").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/webhooks", "docs.cryptoclaw.ai/cli/webhooks")}\n`).command("gmail").description("Gmail Pub/Sub hooks (via gogcli)");
231
+ const gmail = program.command("webhooks").description("Webhook helpers and integrations").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/webhooks", "docs.openclaw.ai/cli/webhooks")}\n`).command("gmail").description("Gmail Pub/Sub hooks (via gogcli)");
232
232
  gmail.command("setup").description("Configure Gmail watch + Pub/Sub + CryptoClaw hooks").requiredOption("--account <email>", "Gmail account to watch").option("--project <id>", "GCP project id (OAuth client owner)").option("--topic <name>", "Pub/Sub topic name", DEFAULT_GMAIL_TOPIC).option("--subscription <name>", "Pub/Sub subscription name", DEFAULT_GMAIL_SUBSCRIPTION).option("--label <label>", "Gmail label to watch", DEFAULT_GMAIL_LABEL).option("--hook-url <url>", "CryptoClaw hook URL").option("--hook-token <token>", "CryptoClaw hook token").option("--push-token <token>", "Push token for gog watch serve").option("--bind <host>", "gog watch serve bind host", DEFAULT_GMAIL_SERVE_BIND).option("--port <port>", "gog watch serve port", String(DEFAULT_GMAIL_SERVE_PORT)).option("--path <path>", "gog watch serve path", DEFAULT_GMAIL_SERVE_PATH).option("--include-body", "Include email body snippets", true).option("--max-bytes <n>", "Max bytes for body snippets", String(DEFAULT_GMAIL_MAX_BYTES)).option("--renew-minutes <n>", "Renew watch every N minutes", String(DEFAULT_GMAIL_RENEW_MINUTES)).option("--tailscale <mode>", "Expose push endpoint via tailscale (funnel|serve|off)", "funnel").option("--tailscale-path <path>", "Path for tailscale serve/funnel").option("--tailscale-target <target>", "Tailscale serve/funnel target (port, host:port, or URL)").option("--push-endpoint <url>", "Explicit Pub/Sub push endpoint").option("--json", "Output JSON summary", false).action(async (opts) => {
233
233
  try {
234
234
  await runGmailSetup(parseGmailSetupOptions(opts));
@@ -1,4 +1,4 @@
1
- import { s as ensureDir, t as CONFIG_DIR } from "./utils-D7jskKIf.js";
1
+ import { a as ensureDir, t as CONFIG_DIR } from "./utils-CGterW74.js";
2
2
  import os from "node:os";
3
3
  import path from "node:path";
4
4
  import fs from "node:fs";
@@ -1,4 +1,4 @@
1
- import { o as ensureDir, t as CONFIG_DIR } from "./utils-7IMqr8vR.js";
1
+ import { i as ensureDir, t as CONFIG_DIR } from "./utils-DV2rghi_.js";
2
2
  import path from "node:path";
3
3
  import os from "node:os";
4
4
  import fs from "node:fs";
@@ -1,4 +1,4 @@
1
- import { t as registerBrowserRoutes } from "./routes-Q42qtNl1.js";
1
+ import { t as registerBrowserRoutes } from "./routes-DzL6l-Oq.js";
2
2
  import { execFile } from "node:child_process";
3
3
  import os from "node:os";
4
4
  import { promisify } from "node:util";
@@ -1,7 +1,7 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 16 16" role="img" aria-label="Pixel lobster">
2
2
  <rect width="16" height="16" fill="none"/>
3
3
  <!-- outline -->
4
- <g fill="#3a0a0d">
4
+ <g fill="#064E3B">
5
5
  <rect x="1" y="5" width="1" height="3"/>
6
6
  <rect x="2" y="4" width="1" height="1"/>
7
7
  <rect x="2" y="8" width="1" height="1"/>
@@ -25,7 +25,7 @@
25
25
  </g>
26
26
 
27
27
  <!-- body -->
28
- <g fill="#ff4f40">
28
+ <g fill="#10B981">
29
29
  <rect x="5" y="3" width="6" height="1"/>
30
30
  <rect x="4" y="4" width="8" height="1"/>
31
31
  <rect x="3" y="5" width="10" height="1"/>
@@ -38,7 +38,7 @@
38
38
  </g>
39
39
 
40
40
  <!-- claws -->
41
- <g fill="#ff775f">
41
+ <g fill="#34D399">
42
42
  <rect x="1" y="6" width="2" height="1"/>
43
43
  <rect x="2" y="5" width="1" height="1"/>
44
44
  <rect x="2" y="7" width="1" height="1"/>
@@ -0,0 +1,72 @@
1
+ ---
2
+ summary: "Supply, borrow, and repay on Aave V3 on BSC."
3
+ title: "AAVE Lending"
4
+ ---
5
+
6
+ # AAVE Lending
7
+
8
+ CryptoClaw integrates with Aave V3 on BNB Smart Chain for lending and borrowing operations.
9
+
10
+ ## Protocol addresses (BSC)
11
+
12
+ | Contract | Address |
13
+ | ----------------------- | -------------------------------------------- |
14
+ | Pool Proxy | `0x6807dc923806fE8Fd134338EABCA509979a7e0cB` |
15
+ | Pool Addresses Provider | `0xff75B6da14FfbbfD355Daf7a2731456b3562Ba6D` |
16
+ | Protocol Data Provider | `0x41585C50524fb8c3899B43D7D797d9486AAc94DB` |
17
+
18
+ ## Supported assets
19
+
20
+ | Asset | Address | Use as collateral |
21
+ | ----- | -------------------------------------------- | :---------------: |
22
+ | WBNB | `0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c` | Yes |
23
+ | USDT | `0x55d398326f99059fF775485246999027B3197955` | Yes |
24
+ | USDC | `0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d` | Yes |
25
+ | BTCB | `0x7130d2A12B9BCbFAe4f2634d864A1Ee1Ce3Ead9c` | Yes |
26
+ | ETH | `0x2170Ed0880ac9A755fd29B2688956BD959F933F8` | Yes |
27
+
28
+ ## Operations
29
+
30
+ | Action | Description | Confirmation |
31
+ | -------------------- | ------------------------------- | :----------: |
32
+ | `supply` | Deposit assets to earn interest | Yes |
33
+ | `withdraw` | Withdraw supplied assets | Yes |
34
+ | `borrow` | Borrow against collateral | Yes |
35
+ | `repay` | Repay borrowed assets | Yes |
36
+ | `getUserAccountData` | View position summary | |
37
+
38
+ ## Position monitoring
39
+
40
+ Ask the agent to check your Aave position:
41
+
42
+ - "What's my Aave position?" — Shows total collateral, total debt, available borrows, health factor
43
+ - "What's my health factor on Aave?" — Liquidation risk indicator (safe above 1.5)
44
+ - "How much can I borrow on Aave?" — Available borrow capacity
45
+
46
+ The `getUserAccountData` function returns:
47
+
48
+ - Total collateral (USD)
49
+ - Total debt (USD)
50
+ - Available borrows (USD)
51
+ - Liquidation threshold
52
+ - LTV ratio
53
+ - Health factor
54
+
55
+ ## Examples
56
+
57
+ ```
58
+ "Supply 10 USDT to Aave"
59
+ "Borrow 0.1 BNB from Aave using my USDT as collateral"
60
+ "Repay 5 USDT on Aave"
61
+ "Withdraw all my WBNB from Aave"
62
+ "What's my current Aave health factor?"
63
+ ```
64
+
65
+ <Warning>
66
+ Monitor your health factor regularly. If it drops below 1.0, your position may be liquidated. The agent will warn you when health factor is below 1.5.
67
+ </Warning>
68
+
69
+ ## Related
70
+
71
+ - [DeFi Dashboard](/blockchain/defi) — Monitor all DeFi positions
72
+ - [Token Swap](/blockchain/swap) — Swap tokens to repay or adjust positions
@@ -0,0 +1,73 @@
1
+ ---
2
+ summary: "Register and manage on-chain AI agent identity using ERC-8004 Trustless Agents standard."
3
+ title: "Agent Identity (ERC-8004)"
4
+ ---
5
+
6
+ # Agent Identity (ERC-8004)
7
+
8
+ CryptoClaw supports on-chain AI agent identity registration via the **ERC-8004 Trustless Agents** standard. This gives your agent a verifiable on-chain identity and reputation.
9
+
10
+ ## What is ERC-8004?
11
+
12
+ ERC-8004 defines a standard for registering AI agents on-chain with:
13
+
14
+ - **Identity registry** — Map agent addresses to metadata (name, capabilities, version)
15
+ - **Reputation registry** — Track agent reputation scores and endorsements
16
+ - **Trustless verification** — Anyone can verify an agent's identity on-chain
17
+
18
+ ## Tools
19
+
20
+ | Tool | Description | Confirmation |
21
+ | ----------------------- | ------------------------------------ | :----------: |
22
+ | `agent_register` | Register agent identity on-chain | Yes |
23
+ | `agent_identity` | Query agent identity information | |
24
+ | `agent_set_wallet` | Update the agent's associated wallet | Yes |
25
+ | `agent_reputation` | Check agent reputation score | |
26
+ | `agent_list_registered` | List registered agents | |
27
+
28
+ ## Supported networks
29
+
30
+ Agent identity can be registered on 10+ networks:
31
+
32
+ | Network | Registry type |
33
+ | ----------- | ------------- |
34
+ | BSC | Mainnet |
35
+ | Ethereum | Mainnet |
36
+ | Polygon | Mainnet |
37
+ | Arbitrum | Mainnet |
38
+ | Base | Mainnet |
39
+ | BSC Testnet | Testnet |
40
+ | Sepolia | Testnet |
41
+
42
+ ## Registration flow
43
+
44
+ <Steps>
45
+ <Step title="Prepare identity">
46
+ The agent collects identity metadata: name, description, capabilities, and version.
47
+ </Step>
48
+ <Step title="Choose network">
49
+ Select which chain to register on. BSC is recommended for low gas costs.
50
+ </Step>
51
+ <Step title="Confirm and register">
52
+ Review the registration transaction and confirm. The identity is stored on-chain.
53
+ </Step>
54
+ </Steps>
55
+
56
+ ## Identity persistence
57
+
58
+ Agent identity data is persisted locally at `~/.cryptoclaw/agent-identity.json` for quick access without on-chain queries.
59
+
60
+ ## Examples
61
+
62
+ ```
63
+ "Register my agent identity on BSC"
64
+ "What's my agent's on-chain reputation?"
65
+ "List all registered agents on BSC Testnet"
66
+ "Update my agent's wallet address"
67
+ "Show my agent identity details"
68
+ ```
69
+
70
+ ## Related
71
+
72
+ - [Wallet Management](/blockchain/wallet) — Wallet used for registration
73
+ - [Transaction Security](/blockchain/security) — Registration requires confirmation