@silicaclaw/cli 2026.3.19-9 → 2026.3.20-10

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 (331) hide show
  1. package/CHANGELOG.md +182 -0
  2. package/DEMO_GUIDE.md +1 -1
  3. package/INSTALL.md +53 -13
  4. package/README.md +106 -23
  5. package/VERSION +1 -1
  6. package/apps/local-console/dist/apps/local-console/src/server.d.ts +180 -14
  7. package/apps/local-console/dist/apps/local-console/src/server.js +1499 -267
  8. package/apps/local-console/dist/config/silicaclaw-defaults.json +19 -0
  9. package/apps/local-console/dist/packages/core/src/index.d.ts +2 -0
  10. package/apps/local-console/dist/packages/core/src/index.js +2 -0
  11. package/apps/local-console/dist/packages/core/src/privateCrypto.d.ts +17 -0
  12. package/apps/local-console/dist/packages/core/src/privateCrypto.js +40 -0
  13. package/apps/local-console/dist/packages/core/src/privateMessage.d.ts +23 -0
  14. package/apps/local-console/dist/packages/core/src/privateMessage.js +74 -0
  15. package/apps/local-console/dist/packages/core/src/profile.js +2 -0
  16. package/apps/local-console/dist/packages/core/src/publicProfileSummary.d.ts +4 -0
  17. package/apps/local-console/dist/packages/core/src/publicProfileSummary.js +3 -0
  18. package/apps/local-console/dist/packages/core/src/socialConfig.js +9 -5
  19. package/apps/local-console/dist/packages/core/src/types.d.ts +40 -0
  20. package/apps/local-console/dist/packages/network/src/realPreview.js +6 -2
  21. package/apps/local-console/dist/packages/network/src/relayPreview.d.ts +12 -0
  22. package/apps/local-console/dist/packages/network/src/relayPreview.js +116 -10
  23. package/apps/local-console/dist/packages/network/src/transport/udpLanBroadcastTransport.js +2 -1
  24. package/apps/local-console/dist/packages/network/src/types.d.ts +4 -0
  25. package/apps/local-console/dist/packages/network/src/webrtcPreview.js +5 -1
  26. package/apps/local-console/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
  27. package/apps/local-console/dist/packages/storage/src/repos.d.ts +13 -1
  28. package/apps/local-console/dist/packages/storage/src/repos.js +19 -1
  29. package/apps/local-console/dist/packages/storage/src/socialRuntimeRepo.js +8 -4
  30. package/apps/local-console/public/app/app.js +486 -12
  31. package/apps/local-console/public/app/events.js +61 -2
  32. package/apps/local-console/public/app/network.js +176 -35
  33. package/apps/local-console/public/app/overview.js +75 -53
  34. package/apps/local-console/public/app/shell.js +18 -34
  35. package/apps/local-console/public/app/social.js +495 -93
  36. package/apps/local-console/public/app/styles.css +309 -15
  37. package/apps/local-console/public/app/template.js +182 -51
  38. package/apps/local-console/public/app/translations.js +476 -266
  39. package/apps/local-console/src/server.ts +1669 -271
  40. package/apps/public-explorer/dist/apps/public-explorer/src/server.d.ts +1 -0
  41. package/apps/public-explorer/dist/apps/public-explorer/src/server.js +41 -0
  42. package/apps/public-explorer/dist/config/silicaclaw-defaults.json +19 -0
  43. package/apps/public-explorer/public/app/app.js +22 -2
  44. package/apps/public-explorer/public/app/template.js +4 -4
  45. package/apps/public-explorer/public/app/translations.js +29 -29
  46. package/apps/public-explorer/src/server.ts +11 -1
  47. package/config/silicaclaw-defaults.json +19 -0
  48. package/dist/apps/local-console/src/server.d.ts +1 -0
  49. package/dist/apps/local-console/src/server.js +555 -0
  50. package/docs/NEW_USER_INSTALL.md +14 -10
  51. package/docs/NEW_USER_OPERATIONS.md +9 -9
  52. package/docs/OPENCLAW_BRIDGE.md +22 -7
  53. package/docs/OPENCLAW_BRIDGE_ZH.md +21 -6
  54. package/docs/RELEASE_CHECKLIST.md +95 -0
  55. package/node_modules/@silicaclaw/core/dist/config/silicaclaw-defaults.json +19 -0
  56. package/node_modules/@silicaclaw/core/dist/packages/core/src/crypto.d.ts +6 -0
  57. package/node_modules/@silicaclaw/core/dist/packages/core/src/crypto.js +50 -0
  58. package/node_modules/@silicaclaw/core/dist/packages/core/src/directory.d.ts +17 -0
  59. package/node_modules/@silicaclaw/core/dist/packages/core/src/directory.js +145 -0
  60. package/node_modules/@silicaclaw/core/dist/packages/core/src/identity.d.ts +2 -0
  61. package/node_modules/@silicaclaw/core/dist/packages/core/src/identity.js +18 -0
  62. package/node_modules/@silicaclaw/core/dist/packages/core/src/index.d.ts +14 -0
  63. package/node_modules/@silicaclaw/core/dist/packages/core/src/index.js +30 -0
  64. package/node_modules/@silicaclaw/core/dist/packages/core/src/indexing.d.ts +6 -0
  65. package/node_modules/@silicaclaw/core/dist/packages/core/src/indexing.js +43 -0
  66. package/node_modules/@silicaclaw/core/dist/packages/core/src/presence.d.ts +4 -0
  67. package/node_modules/@silicaclaw/core/dist/packages/core/src/presence.js +23 -0
  68. package/node_modules/@silicaclaw/core/dist/packages/core/src/privateCrypto.d.ts +17 -0
  69. package/node_modules/@silicaclaw/core/dist/packages/core/src/privateCrypto.js +40 -0
  70. package/node_modules/@silicaclaw/core/dist/packages/core/src/privateMessage.d.ts +23 -0
  71. package/node_modules/@silicaclaw/core/dist/packages/core/src/privateMessage.js +74 -0
  72. package/node_modules/@silicaclaw/core/dist/packages/core/src/profile.d.ts +4 -0
  73. package/node_modules/@silicaclaw/core/dist/packages/core/src/profile.js +41 -0
  74. package/node_modules/@silicaclaw/core/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
  75. package/node_modules/@silicaclaw/core/dist/packages/core/src/publicProfileSummary.js +106 -0
  76. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialConfig.d.ts +100 -0
  77. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialConfig.js +300 -0
  78. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialMessage.d.ts +19 -0
  79. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialMessage.js +69 -0
  80. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialResolver.d.ts +46 -0
  81. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialResolver.js +237 -0
  82. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialTemplate.d.ts +2 -0
  83. package/node_modules/@silicaclaw/core/dist/packages/core/src/socialTemplate.js +90 -0
  84. package/node_modules/@silicaclaw/core/dist/packages/core/src/types.d.ts +99 -0
  85. package/node_modules/@silicaclaw/core/dist/packages/core/src/types.js +2 -0
  86. package/node_modules/@silicaclaw/core/src/index.ts +2 -0
  87. package/node_modules/@silicaclaw/core/src/privateCrypto.ts +57 -0
  88. package/node_modules/@silicaclaw/core/src/privateMessage.ts +101 -0
  89. package/node_modules/@silicaclaw/core/src/profile.ts +2 -0
  90. package/node_modules/@silicaclaw/core/src/publicProfileSummary.ts +7 -0
  91. package/node_modules/@silicaclaw/core/src/socialConfig.ts +7 -5
  92. package/node_modules/@silicaclaw/core/src/types.ts +44 -0
  93. package/node_modules/@silicaclaw/network/dist/config/silicaclaw-defaults.json +19 -0
  94. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/messageEnvelope.d.ts +28 -0
  95. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/messageEnvelope.js +36 -0
  96. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/peerDiscovery.d.ts +43 -0
  97. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/peerDiscovery.js +2 -0
  98. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/topicCodec.d.ts +4 -0
  99. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/topicCodec.js +2 -0
  100. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/transport.d.ts +36 -0
  101. package/node_modules/@silicaclaw/network/dist/packages/network/src/abstractions/transport.js +2 -0
  102. package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.d.ts +5 -0
  103. package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.js +24 -0
  104. package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonTopicCodec.d.ts +5 -0
  105. package/node_modules/@silicaclaw/network/dist/packages/network/src/codec/jsonTopicCodec.js +12 -0
  106. package/node_modules/@silicaclaw/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.d.ts +28 -0
  107. package/node_modules/@silicaclaw/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.js +144 -0
  108. package/node_modules/@silicaclaw/network/dist/packages/network/src/index.d.ts +14 -0
  109. package/node_modules/@silicaclaw/network/dist/packages/network/src/index.js +30 -0
  110. package/node_modules/@silicaclaw/network/dist/packages/network/src/localEventBus.d.ts +9 -0
  111. package/node_modules/@silicaclaw/network/dist/packages/network/src/localEventBus.js +47 -0
  112. package/node_modules/@silicaclaw/network/dist/packages/network/src/mock.d.ts +8 -0
  113. package/node_modules/@silicaclaw/network/dist/packages/network/src/mock.js +24 -0
  114. package/node_modules/@silicaclaw/network/dist/packages/network/src/realPreview.d.ts +105 -0
  115. package/node_modules/@silicaclaw/network/dist/packages/network/src/realPreview.js +331 -0
  116. package/node_modules/@silicaclaw/network/dist/packages/network/src/relayPreview.d.ts +178 -0
  117. package/node_modules/@silicaclaw/network/dist/packages/network/src/relayPreview.js +548 -0
  118. package/node_modules/@silicaclaw/network/dist/packages/network/src/transport/udpLanBroadcastTransport.d.ts +23 -0
  119. package/node_modules/@silicaclaw/network/dist/packages/network/src/transport/udpLanBroadcastTransport.js +154 -0
  120. package/node_modules/@silicaclaw/network/dist/packages/network/src/types.d.ts +10 -0
  121. package/node_modules/@silicaclaw/network/dist/packages/network/src/types.js +2 -0
  122. package/node_modules/@silicaclaw/network/dist/packages/network/src/webrtcPreview.d.ts +163 -0
  123. package/node_modules/@silicaclaw/network/dist/packages/network/src/webrtcPreview.js +848 -0
  124. package/node_modules/@silicaclaw/network/src/realPreview.ts +3 -2
  125. package/node_modules/@silicaclaw/network/src/relayPreview.ts +125 -12
  126. package/node_modules/@silicaclaw/network/src/transport/udpLanBroadcastTransport.ts +2 -1
  127. package/node_modules/@silicaclaw/network/src/types.ts +2 -0
  128. package/node_modules/@silicaclaw/network/src/webrtcPreview.ts +2 -1
  129. package/node_modules/@silicaclaw/storage/config/silicaclaw-defaults.json +19 -0
  130. package/node_modules/@silicaclaw/storage/dist/config/silicaclaw-defaults.json +19 -0
  131. package/node_modules/@silicaclaw/storage/dist/packages/core/src/crypto.d.ts +6 -0
  132. package/node_modules/@silicaclaw/storage/dist/packages/core/src/crypto.js +50 -0
  133. package/node_modules/@silicaclaw/storage/dist/packages/core/src/directory.d.ts +17 -0
  134. package/node_modules/@silicaclaw/storage/dist/packages/core/src/directory.js +145 -0
  135. package/node_modules/@silicaclaw/storage/dist/packages/core/src/identity.d.ts +2 -0
  136. package/node_modules/@silicaclaw/storage/dist/packages/core/src/identity.js +18 -0
  137. package/node_modules/@silicaclaw/storage/dist/packages/core/src/index.d.ts +14 -0
  138. package/node_modules/@silicaclaw/storage/dist/packages/core/src/index.js +30 -0
  139. package/node_modules/@silicaclaw/storage/dist/packages/core/src/indexing.d.ts +6 -0
  140. package/node_modules/@silicaclaw/storage/dist/packages/core/src/indexing.js +43 -0
  141. package/node_modules/@silicaclaw/storage/dist/packages/core/src/presence.d.ts +4 -0
  142. package/node_modules/@silicaclaw/storage/dist/packages/core/src/presence.js +23 -0
  143. package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateCrypto.d.ts +17 -0
  144. package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateCrypto.js +40 -0
  145. package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateMessage.d.ts +23 -0
  146. package/node_modules/@silicaclaw/storage/dist/packages/core/src/privateMessage.js +74 -0
  147. package/node_modules/@silicaclaw/storage/dist/packages/core/src/profile.d.ts +4 -0
  148. package/node_modules/@silicaclaw/storage/dist/packages/core/src/profile.js +41 -0
  149. package/node_modules/@silicaclaw/storage/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
  150. package/node_modules/@silicaclaw/storage/dist/packages/core/src/publicProfileSummary.js +106 -0
  151. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialConfig.d.ts +100 -0
  152. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialConfig.js +300 -0
  153. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialMessage.d.ts +19 -0
  154. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialMessage.js +69 -0
  155. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialResolver.d.ts +46 -0
  156. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialResolver.js +237 -0
  157. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialTemplate.d.ts +2 -0
  158. package/node_modules/@silicaclaw/storage/dist/packages/core/src/socialTemplate.js +90 -0
  159. package/node_modules/@silicaclaw/storage/dist/packages/core/src/types.d.ts +99 -0
  160. package/node_modules/@silicaclaw/storage/dist/packages/core/src/types.js +2 -0
  161. package/node_modules/@silicaclaw/storage/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
  162. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/index.d.ts +3 -0
  163. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/index.js +19 -0
  164. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/jsonRepo.d.ts +7 -0
  165. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/jsonRepo.js +29 -0
  166. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/repos.d.ts +73 -0
  167. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/repos.js +85 -0
  168. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/socialRuntimeRepo.d.ts +5 -0
  169. package/node_modules/@silicaclaw/storage/dist/packages/storage/src/socialRuntimeRepo.js +57 -0
  170. package/node_modules/@silicaclaw/storage/dist/socialRuntimeRepo.js +8 -4
  171. package/node_modules/@silicaclaw/storage/src/repos.ts +31 -1
  172. package/node_modules/@silicaclaw/storage/src/socialRuntimeRepo.ts +5 -4
  173. package/node_modules/@silicaclaw/storage/tsconfig.json +1 -6
  174. package/openclaw-skills/silicaclaw-bridge-setup/SKILL.md +165 -0
  175. package/openclaw-skills/silicaclaw-bridge-setup/VERSION +1 -0
  176. package/openclaw-skills/silicaclaw-bridge-setup/agents/openai.yaml +6 -0
  177. package/openclaw-skills/silicaclaw-bridge-setup/manifest.json +27 -0
  178. package/openclaw-skills/silicaclaw-bridge-setup/references/owner-dialogue-cheatsheet-zh.md +58 -0
  179. package/openclaw-skills/silicaclaw-bridge-setup/references/runtime-setup.md +43 -0
  180. package/openclaw-skills/silicaclaw-bridge-setup/references/troubleshooting.md +24 -0
  181. package/openclaw-skills/silicaclaw-broadcast/SKILL.md +150 -0
  182. package/openclaw-skills/silicaclaw-broadcast/VERSION +1 -1
  183. package/openclaw-skills/silicaclaw-broadcast/agents/openai.yaml +2 -2
  184. package/openclaw-skills/silicaclaw-broadcast/manifest.json +4 -3
  185. package/openclaw-skills/silicaclaw-broadcast/references/owner-dialogue-cheatsheet-zh.md +81 -0
  186. package/openclaw-skills/silicaclaw-network-config/SKILL.md +158 -0
  187. package/openclaw-skills/silicaclaw-network-config/VERSION +1 -0
  188. package/openclaw-skills/silicaclaw-network-config/agents/openai.yaml +6 -0
  189. package/openclaw-skills/silicaclaw-network-config/manifest.json +27 -0
  190. package/openclaw-skills/silicaclaw-network-config/references/network-modes.md +22 -0
  191. package/openclaw-skills/silicaclaw-network-config/references/owner-dialogue-cheatsheet-zh.md +47 -0
  192. package/openclaw-skills/silicaclaw-network-config/references/public-discovery.md +22 -0
  193. package/openclaw-skills/silicaclaw-owner-push/SKILL.md +235 -0
  194. package/openclaw-skills/silicaclaw-owner-push/VERSION +1 -0
  195. package/openclaw-skills/silicaclaw-owner-push/agents/openai.yaml +6 -0
  196. package/openclaw-skills/silicaclaw-owner-push/manifest.json +30 -0
  197. package/openclaw-skills/silicaclaw-owner-push/references/owner-dialogue-cheatsheet-zh.md +87 -0
  198. package/openclaw-skills/silicaclaw-owner-push/references/push-routing-policy.md +43 -0
  199. package/openclaw-skills/silicaclaw-owner-push/references/runtime-setup.md +44 -0
  200. package/openclaw-skills/silicaclaw-owner-push/scripts/owner-push-forwarder.mjs +356 -0
  201. package/openclaw-skills/silicaclaw-owner-push/scripts/send-to-owner-via-openclaw.mjs +69 -0
  202. package/package.json +5 -1
  203. package/packages/core/dist/config/silicaclaw-defaults.json +19 -0
  204. package/packages/core/dist/packages/core/src/crypto.d.ts +6 -0
  205. package/packages/core/dist/packages/core/src/crypto.js +50 -0
  206. package/packages/core/dist/packages/core/src/directory.d.ts +17 -0
  207. package/packages/core/dist/packages/core/src/directory.js +145 -0
  208. package/packages/core/dist/packages/core/src/identity.d.ts +2 -0
  209. package/packages/core/dist/packages/core/src/identity.js +18 -0
  210. package/packages/core/dist/packages/core/src/index.d.ts +14 -0
  211. package/packages/core/dist/packages/core/src/index.js +30 -0
  212. package/packages/core/dist/packages/core/src/indexing.d.ts +6 -0
  213. package/packages/core/dist/packages/core/src/indexing.js +43 -0
  214. package/packages/core/dist/packages/core/src/presence.d.ts +4 -0
  215. package/packages/core/dist/packages/core/src/presence.js +23 -0
  216. package/packages/core/dist/packages/core/src/privateCrypto.d.ts +17 -0
  217. package/packages/core/dist/packages/core/src/privateCrypto.js +40 -0
  218. package/packages/core/dist/packages/core/src/privateMessage.d.ts +23 -0
  219. package/packages/core/dist/packages/core/src/privateMessage.js +74 -0
  220. package/packages/core/dist/packages/core/src/profile.d.ts +4 -0
  221. package/packages/core/dist/packages/core/src/profile.js +41 -0
  222. package/packages/core/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
  223. package/packages/core/dist/packages/core/src/publicProfileSummary.js +106 -0
  224. package/packages/core/dist/packages/core/src/socialConfig.d.ts +100 -0
  225. package/packages/core/dist/packages/core/src/socialConfig.js +300 -0
  226. package/packages/core/dist/packages/core/src/socialMessage.d.ts +19 -0
  227. package/packages/core/dist/packages/core/src/socialMessage.js +69 -0
  228. package/packages/core/dist/packages/core/src/socialResolver.d.ts +46 -0
  229. package/packages/core/dist/packages/core/src/socialResolver.js +237 -0
  230. package/packages/core/dist/packages/core/src/socialTemplate.d.ts +2 -0
  231. package/packages/core/dist/packages/core/src/socialTemplate.js +90 -0
  232. package/packages/core/dist/packages/core/src/types.d.ts +99 -0
  233. package/packages/core/dist/packages/core/src/types.js +2 -0
  234. package/packages/core/src/index.ts +2 -0
  235. package/packages/core/src/privateCrypto.ts +57 -0
  236. package/packages/core/src/privateMessage.ts +101 -0
  237. package/packages/core/src/profile.ts +2 -0
  238. package/packages/core/src/publicProfileSummary.ts +7 -0
  239. package/packages/core/src/socialConfig.ts +7 -5
  240. package/packages/core/src/types.ts +44 -0
  241. package/packages/network/dist/config/silicaclaw-defaults.json +19 -0
  242. package/packages/network/dist/packages/network/src/abstractions/messageEnvelope.d.ts +28 -0
  243. package/packages/network/dist/packages/network/src/abstractions/messageEnvelope.js +36 -0
  244. package/packages/network/dist/packages/network/src/abstractions/peerDiscovery.d.ts +43 -0
  245. package/packages/network/dist/packages/network/src/abstractions/peerDiscovery.js +2 -0
  246. package/packages/network/dist/packages/network/src/abstractions/topicCodec.d.ts +4 -0
  247. package/packages/network/dist/packages/network/src/abstractions/topicCodec.js +2 -0
  248. package/packages/network/dist/packages/network/src/abstractions/transport.d.ts +36 -0
  249. package/packages/network/dist/packages/network/src/abstractions/transport.js +2 -0
  250. package/packages/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.d.ts +5 -0
  251. package/packages/network/dist/packages/network/src/codec/jsonMessageEnvelopeCodec.js +24 -0
  252. package/packages/network/dist/packages/network/src/codec/jsonTopicCodec.d.ts +5 -0
  253. package/packages/network/dist/packages/network/src/codec/jsonTopicCodec.js +12 -0
  254. package/packages/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.d.ts +28 -0
  255. package/packages/network/dist/packages/network/src/discovery/heartbeatPeerDiscovery.js +144 -0
  256. package/packages/network/dist/packages/network/src/index.d.ts +14 -0
  257. package/packages/network/dist/packages/network/src/index.js +30 -0
  258. package/packages/network/dist/packages/network/src/localEventBus.d.ts +9 -0
  259. package/packages/network/dist/packages/network/src/localEventBus.js +47 -0
  260. package/packages/network/dist/packages/network/src/mock.d.ts +8 -0
  261. package/packages/network/dist/packages/network/src/mock.js +24 -0
  262. package/packages/network/dist/packages/network/src/realPreview.d.ts +105 -0
  263. package/packages/network/dist/packages/network/src/realPreview.js +331 -0
  264. package/packages/network/dist/packages/network/src/relayPreview.d.ts +178 -0
  265. package/packages/network/dist/packages/network/src/relayPreview.js +548 -0
  266. package/packages/network/dist/packages/network/src/transport/udpLanBroadcastTransport.d.ts +23 -0
  267. package/packages/network/dist/packages/network/src/transport/udpLanBroadcastTransport.js +154 -0
  268. package/packages/network/dist/packages/network/src/types.d.ts +10 -0
  269. package/packages/network/dist/packages/network/src/types.js +2 -0
  270. package/packages/network/dist/packages/network/src/webrtcPreview.d.ts +163 -0
  271. package/packages/network/dist/packages/network/src/webrtcPreview.js +848 -0
  272. package/packages/network/src/realPreview.ts +3 -2
  273. package/packages/network/src/relayPreview.ts +125 -12
  274. package/packages/network/src/transport/udpLanBroadcastTransport.ts +2 -1
  275. package/packages/network/src/types.ts +2 -0
  276. package/packages/network/src/webrtcPreview.ts +2 -1
  277. package/packages/storage/config/silicaclaw-defaults.json +19 -0
  278. package/packages/storage/dist/config/silicaclaw-defaults.json +19 -0
  279. package/packages/storage/dist/packages/core/src/crypto.d.ts +6 -0
  280. package/packages/storage/dist/packages/core/src/crypto.js +50 -0
  281. package/packages/storage/dist/packages/core/src/directory.d.ts +17 -0
  282. package/packages/storage/dist/packages/core/src/directory.js +145 -0
  283. package/packages/storage/dist/packages/core/src/identity.d.ts +2 -0
  284. package/packages/storage/dist/packages/core/src/identity.js +18 -0
  285. package/packages/storage/dist/packages/core/src/index.d.ts +14 -0
  286. package/packages/storage/dist/packages/core/src/index.js +30 -0
  287. package/packages/storage/dist/packages/core/src/indexing.d.ts +6 -0
  288. package/packages/storage/dist/packages/core/src/indexing.js +43 -0
  289. package/packages/storage/dist/packages/core/src/presence.d.ts +4 -0
  290. package/packages/storage/dist/packages/core/src/presence.js +23 -0
  291. package/packages/storage/dist/packages/core/src/privateCrypto.d.ts +17 -0
  292. package/packages/storage/dist/packages/core/src/privateCrypto.js +40 -0
  293. package/packages/storage/dist/packages/core/src/privateMessage.d.ts +23 -0
  294. package/packages/storage/dist/packages/core/src/privateMessage.js +74 -0
  295. package/packages/storage/dist/packages/core/src/profile.d.ts +4 -0
  296. package/packages/storage/dist/packages/core/src/profile.js +41 -0
  297. package/packages/storage/dist/packages/core/src/publicProfileSummary.d.ts +74 -0
  298. package/packages/storage/dist/packages/core/src/publicProfileSummary.js +106 -0
  299. package/packages/storage/dist/packages/core/src/socialConfig.d.ts +100 -0
  300. package/packages/storage/dist/packages/core/src/socialConfig.js +300 -0
  301. package/packages/storage/dist/packages/core/src/socialMessage.d.ts +19 -0
  302. package/packages/storage/dist/packages/core/src/socialMessage.js +69 -0
  303. package/packages/storage/dist/packages/core/src/socialResolver.d.ts +46 -0
  304. package/packages/storage/dist/packages/core/src/socialResolver.js +237 -0
  305. package/packages/storage/dist/packages/core/src/socialTemplate.d.ts +2 -0
  306. package/packages/storage/dist/packages/core/src/socialTemplate.js +90 -0
  307. package/packages/storage/dist/packages/core/src/types.d.ts +99 -0
  308. package/packages/storage/dist/packages/core/src/types.js +2 -0
  309. package/packages/storage/dist/packages/storage/config/silicaclaw-defaults.json +19 -0
  310. package/packages/storage/dist/packages/storage/src/index.d.ts +3 -0
  311. package/packages/storage/dist/packages/storage/src/index.js +19 -0
  312. package/packages/storage/dist/packages/storage/src/jsonRepo.d.ts +7 -0
  313. package/packages/storage/dist/packages/storage/src/jsonRepo.js +29 -0
  314. package/packages/storage/dist/packages/storage/src/repos.d.ts +73 -0
  315. package/packages/storage/dist/packages/storage/src/repos.js +85 -0
  316. package/packages/storage/dist/packages/storage/src/socialRuntimeRepo.d.ts +5 -0
  317. package/packages/storage/dist/packages/storage/src/socialRuntimeRepo.js +57 -0
  318. package/packages/storage/dist/socialRuntimeRepo.js +8 -4
  319. package/packages/storage/src/repos.ts +31 -1
  320. package/packages/storage/src/socialRuntimeRepo.ts +5 -4
  321. package/packages/storage/tsconfig.json +1 -6
  322. package/scripts/functional-check.mjs +35 -6
  323. package/scripts/install-openclaw-skill.mjs +9 -2
  324. package/scripts/openclaw-bridge-adapter.mjs +3 -1
  325. package/scripts/openclaw-bridge-client.mjs +3 -1
  326. package/scripts/openclaw-runtime-demo.mjs +3 -1
  327. package/scripts/quickstart.sh +14 -10
  328. package/scripts/release-pack.mjs +59 -1
  329. package/scripts/silicaclaw-cli.mjs +166 -51
  330. package/scripts/silicaclaw-gateway.mjs +410 -84
  331. package/scripts/validate-openclaw-skill.mjs +98 -21
@@ -9,6 +9,8 @@ import { fileURLToPath } from "node:url";
9
9
  const __filename = fileURLToPath(import.meta.url);
10
10
  const __dirname = dirname(__filename);
11
11
  const ROOT_DIR = resolve(__dirname, "..");
12
+ const INVOCATION_CWD = process.cwd();
13
+ const LOCAL_CONSOLE_BASE_URL = "http://localhost:4310";
12
14
 
13
15
  const COLOR = {
14
16
  reset: "\x1b[0m",
@@ -34,7 +36,7 @@ function displayVersion(raw) {
34
36
  }
35
37
 
36
38
  function headline() {
37
- console.log(`${paint("SilicaClaw", COLOR.bold, COLOR.orange)} ${paint(displayVersion(readVersion()), COLOR.dim)}`);
39
+ console.log(`${paint("🦀 SilicaClaw", COLOR.bold, COLOR.orange)} ${paint(displayVersion(readVersion()), COLOR.dim)}`);
38
40
  console.log(paint("Public identity and discovery for OpenClaw agents.", COLOR.dim));
39
41
  }
40
42
 
@@ -50,7 +52,10 @@ function run(cmd, args, extra = {}) {
50
52
  const result = spawnSync(cmd, args, {
51
53
  cwd: ROOT_DIR,
52
54
  stdio: "inherit",
53
- env: process.env,
55
+ env: {
56
+ ...process.env,
57
+ SILICACLAW_WORKSPACE_DIR: process.env.SILICACLAW_WORKSPACE_DIR || INVOCATION_CWD,
58
+ },
54
59
  ...extra,
55
60
  });
56
61
  if (result.error) {
@@ -68,7 +73,10 @@ function runCapture(cmd, args, extra = {}) {
68
73
  cwd: ROOT_DIR,
69
74
  stdio: ["ignore", "pipe", "pipe"],
70
75
  encoding: "utf8",
71
- env: process.env,
76
+ env: {
77
+ ...process.env,
78
+ SILICACLAW_WORKSPACE_DIR: process.env.SILICACLAW_WORKSPACE_DIR || INVOCATION_CWD,
79
+ },
72
80
  ...extra,
73
81
  });
74
82
  if (result.error) {
@@ -81,7 +89,10 @@ function runInherit(cmd, args, extra = {}) {
81
89
  const result = spawnSync(cmd, args, {
82
90
  cwd: ROOT_DIR,
83
91
  stdio: "inherit",
84
- env: process.env,
92
+ env: {
93
+ ...process.env,
94
+ SILICACLAW_WORKSPACE_DIR: process.env.SILICACLAW_WORKSPACE_DIR || INVOCATION_CWD,
95
+ },
85
96
  ...extra,
86
97
  });
87
98
  if (result.error) {
@@ -99,6 +110,10 @@ function compactOutput(text, limit = 18) {
99
110
  return lines.slice(-limit).join("\n");
100
111
  }
101
112
 
113
+ function sleep(ms) {
114
+ return new Promise((resolve) => setTimeout(resolve, ms));
115
+ }
116
+
102
117
  function readVersion() {
103
118
  return readPackageVersion();
104
119
  }
@@ -138,6 +153,25 @@ function userNpmCacheDir() {
138
153
  return resolve(homedir(), ".silicaclaw", "npm-cache");
139
154
  }
140
155
 
156
+ function shimScriptText(specifier = "latest") {
157
+ return [
158
+ "#!/usr/bin/env bash",
159
+ "set -euo pipefail",
160
+ 'export npm_config_cache="${npm_config_cache:-$HOME/.silicaclaw/npm-cache}"',
161
+ `exec npx -y @silicaclaw/cli@${specifier} "$@"`,
162
+ "",
163
+ ].join("\n");
164
+ }
165
+
166
+ function ensureUserShim(specifier = "latest") {
167
+ const shimPath = userShimPath();
168
+ const binDir = userShimDir();
169
+ const npmCacheDir = userNpmCacheDir();
170
+ mkdirSync(binDir, { recursive: true });
171
+ mkdirSync(npmCacheDir, { recursive: true });
172
+ writeFileSync(shimPath, shimScriptText(specifier), { encoding: "utf8", mode: 0o755 });
173
+ }
174
+
141
175
  function ensureLineInFile(filePath, block) {
142
176
  try {
143
177
  const current = existsSync(filePath) ? readFileSync(filePath, "utf8") : "";
@@ -190,10 +224,12 @@ function shellInitTargets() {
190
224
  shell.endsWith("/bash") ||
191
225
  process.env.BASH_VERSION ||
192
226
  existsSync(resolve(home, ".bashrc")) ||
193
- existsSync(resolve(home, ".bash_profile"))
227
+ existsSync(resolve(home, ".bash_profile")) ||
228
+ existsSync(resolve(home, ".profile"))
194
229
  ) {
195
230
  add(resolve(home, ".bashrc"));
196
231
  add(resolve(home, ".bash_profile"));
232
+ add(resolve(home, ".profile"));
197
233
  }
198
234
 
199
235
  if (targets.length === 0) {
@@ -202,7 +238,7 @@ function shellInitTargets() {
202
238
  return targets;
203
239
  }
204
240
 
205
- function installPersistentCommand() {
241
+ function installPersistentCommand(specifier = readPackageVersion()) {
206
242
  const binDir = userShimDir();
207
243
  const shimPath = userShimPath();
208
244
  const envFile = userEnvFile();
@@ -222,17 +258,7 @@ function installPersistentCommand() {
222
258
  mkdirSync(binDir, { recursive: true });
223
259
  mkdirSync(npmCacheDir, { recursive: true });
224
260
  writeFileSync(envFile, envBlock, { encoding: "utf8", mode: 0o755 });
225
- writeFileSync(
226
- shimPath,
227
- [
228
- "#!/usr/bin/env bash",
229
- "set -euo pipefail",
230
- 'export npm_config_cache="${npm_config_cache:-$HOME/.silicaclaw/npm-cache}"',
231
- 'exec npx -y @silicaclaw/cli@beta "$@"',
232
- "",
233
- ].join("\n"),
234
- { encoding: "utf8", mode: 0o755 }
235
- );
261
+ writeFileSync(shimPath, shimScriptText(specifier || "latest"), { encoding: "utf8", mode: 0o755 });
236
262
  const rcFiles = shellInitTargets();
237
263
  const updatedFiles = [];
238
264
  const configuredFiles = [];
@@ -256,6 +282,7 @@ function installPersistentCommand() {
256
282
  kv("Command", "silicaclaw");
257
283
  console.log("");
258
284
  kv("Activate", `source "${envFile}"`);
285
+ kv("Current shell", "run Activate now if `silicaclaw` is not found yet");
259
286
  if (configuredFiles.length > 0) {
260
287
  kv("Startup", "configured");
261
288
  } else {
@@ -296,20 +323,39 @@ function canWriteGlobalPrefix() {
296
323
  }
297
324
  }
298
325
 
299
- function showUpdateGuide(current, latest, beta) {
326
+ function showUpdateGuide(current, targetVersion) {
300
327
  headline();
301
328
  console.log("");
302
- const upToDate = Boolean(beta) && current === beta;
329
+ const upToDate = Boolean(targetVersion) && current === targetVersion;
303
330
  if (upToDate) {
304
331
  kv("Status", `up to date (${current})`);
305
332
  } else {
306
- kv("Status", `beta update available (${beta || "-"})`);
333
+ kv("Status", `update available (${targetVersion || "-"})`);
307
334
  }
308
335
  console.log("");
309
336
  kv("Start", "silicaclaw start");
310
337
  kv("Status", "silicaclaw status");
311
338
  }
312
339
 
340
+ function preferredTaggedRelease(tags, current) {
341
+ const latest = tags.latest ? String(tags.latest) : "";
342
+ if (latest) return { version: latest, channel: "latest" };
343
+ return { version: current, channel: "unknown" };
344
+ }
345
+
346
+ function preferredRegistryRelease(current) {
347
+ try {
348
+ const result = runCapture("npm", ["view", "@silicaclaw/cli", "dist-tags", "--json"]);
349
+ if ((result.status ?? 1) !== 0) return { version: current, channel: "current", tags: null };
350
+ const text = String(result.stdout || "").trim();
351
+ const tags = text ? JSON.parse(text) : {};
352
+ const preferred = preferredTaggedRelease(tags, current);
353
+ return { ...preferred, tags };
354
+ } catch {
355
+ return { version: current, channel: "current", tags: null };
356
+ }
357
+ }
358
+
313
359
  function getGatewayStatus() {
314
360
  try {
315
361
  const result = runCapture("node", [resolve(ROOT_DIR, "scripts", "silicaclaw-gateway.mjs"), "status", "--json"], {
@@ -369,7 +415,8 @@ function syncCurrentPackageToAppDir(appDir) {
369
415
  return true;
370
416
  }
371
417
 
372
- function restartGatewayIfRunning() {
418
+ function restartGatewayIfRunning(options = {}) {
419
+ const preferredSpecifier = String(options.preferredSpecifier || "").trim();
373
420
  const status = getGatewayStatus();
374
421
  const appDir = status?.app_dir ? String(status.app_dir) : "";
375
422
  syncCurrentPackageToAppDir(appDir);
@@ -377,28 +424,80 @@ function restartGatewayIfRunning() {
377
424
  const localRunning = Boolean(status?.local_console?.running);
378
425
  const signalingRunning = Boolean(status?.signaling?.running);
379
426
  if (!localRunning && !signalingRunning) {
380
- return;
427
+ return { restarted: false };
381
428
  }
382
429
 
383
430
  const mode = String(status?.mode || "local");
384
- const args = [resolve(ROOT_DIR, "scripts", "silicaclaw-gateway.mjs"), "restart", `--mode=${mode}`];
431
+ const gatewayArgs = ["gateway", "restart", `--mode=${mode}`];
385
432
  if (mode === "global-preview" && status?.signaling?.url) {
386
- args.push(`--signaling-url=${status.signaling.url}`);
433
+ gatewayArgs.push(`--signaling-url=${status.signaling.url}`);
387
434
  }
388
435
  if (mode === "global-preview" && status?.signaling?.room) {
389
- args.push(`--room=${status.signaling.room}`);
436
+ gatewayArgs.push(`--room=${status.signaling.room}`);
390
437
  }
391
438
 
392
439
  console.log("");
393
440
  console.log(paint("Refreshing services", COLOR.bold));
394
- runInherit("node", args, { cwd: process.cwd() });
441
+ const shimPath = userShimPath();
442
+ const canUseUpdatedShim =
443
+ preferredSpecifier &&
444
+ existsSync(shimPath) &&
445
+ resolve(shimPath) !== process.argv[1];
446
+
447
+ if (canUseUpdatedShim) {
448
+ runInherit(shimPath, gatewayArgs, { cwd: process.cwd() });
449
+ return { restarted: true, usedUpdatedShim: true };
450
+ }
451
+
452
+ runInherit("node", [resolve(ROOT_DIR, "scripts", "silicaclaw-gateway.mjs"), ...gatewayArgs.slice(1)], {
453
+ cwd: process.cwd(),
454
+ });
455
+ return { restarted: true, usedUpdatedShim: false };
456
+ }
457
+
458
+ function readLocalConsoleAppVersion() {
459
+ try {
460
+ const result = runCapture("curl", ["-sS", `${LOCAL_CONSOLE_BASE_URL}/api/overview`], {
461
+ cwd: process.cwd(),
462
+ });
463
+ if ((result.status ?? 1) !== 0) return "";
464
+ const text = String(result.stdout || "").trim();
465
+ if (!text) return "";
466
+ const payload = JSON.parse(text);
467
+ return String(payload?.data?.app_version || "").trim();
468
+ } catch {
469
+ return "";
470
+ }
471
+ }
472
+
473
+ async function waitForLocalConsoleVersion(targetVersion, timeoutMs = 15000) {
474
+ const startedAt = Date.now();
475
+ while (Date.now() - startedAt < timeoutMs) {
476
+ const version = readLocalConsoleAppVersion();
477
+ if (version === targetVersion) return version;
478
+ await sleep(400);
479
+ }
480
+ return readLocalConsoleAppVersion();
395
481
  }
396
482
 
397
- function tryGlobalUpgrade(beta) {
483
+ async function ensureRefreshedConsoleVersion(targetVersion) {
484
+ if (!targetVersion) return "";
485
+ let observed = await waitForLocalConsoleVersion(targetVersion, 12000);
486
+ if (observed === targetVersion) return observed;
487
+
488
+ const shimPath = userShimPath();
489
+ if (!existsSync(shimPath)) return observed;
490
+
491
+ runInherit(shimPath, ["gateway", "restart"], { cwd: process.cwd() });
492
+ observed = await waitForLocalConsoleVersion(targetVersion, 12000);
493
+ return observed;
494
+ }
495
+
496
+ function tryGlobalUpgrade(version) {
398
497
  const writableGlobal = canWriteGlobalPrefix();
399
498
  if (!writableGlobal) return false;
400
- kv("Upgrade", `installing @silicaclaw/cli@${beta} globally`);
401
- const exactResult = runCapture("npm", ["i", "-g", `@silicaclaw/cli@${beta}`]);
499
+ kv("Upgrade", `installing @silicaclaw/cli@${version} globally`);
500
+ const exactResult = runCapture("npm", ["i", "-g", `@silicaclaw/cli@${version}`]);
402
501
  if ((exactResult.status ?? 1) === 0) {
403
502
  if (exactResult.stdout) process.stdout.write(exactResult.stdout);
404
503
  if (exactResult.stderr) process.stderr.write(exactResult.stderr);
@@ -407,8 +506,8 @@ function tryGlobalUpgrade(beta) {
407
506
 
408
507
  const detail = compactOutput(`${exactResult.stdout || ""}\n${exactResult.stderr || ""}`);
409
508
  if (detail.includes("ETARGET") || detail.includes("No matching version found")) {
410
- kv("Fallback", "registry metadata is still settling, retrying via @beta tag");
411
- const fallbackResult = runInherit("npm", ["i", "-g", "@silicaclaw/cli@beta"]);
509
+ kv("Fallback", `registry metadata is still settling, retrying via exact version ${version}`);
510
+ const fallbackResult = runInherit("npm", ["i", "-g", `@silicaclaw/cli@${version}`]);
412
511
  return (fallbackResult.status ?? 1) === 0;
413
512
  }
414
513
 
@@ -419,38 +518,44 @@ function tryGlobalUpgrade(beta) {
419
518
  return false;
420
519
  }
421
520
 
422
- function update() {
521
+ async function update() {
423
522
  const current = readPackageVersion();
424
523
  try {
425
- const result = runCapture("npm", ["view", "@silicaclaw/cli", "dist-tags", "--json"]);
426
- if ((result.status ?? 1) !== 0) {
524
+ const registry = preferredRegistryRelease(current);
525
+ if (!registry.tags) {
427
526
  headline();
428
527
  console.log("");
429
528
  console.error(paint("Update check failed", COLOR.bold, COLOR.yellow));
430
- if (result.stderr) console.error(result.stderr.trim());
431
529
  console.log("");
432
530
  kv("Try", "npm view @silicaclaw/cli dist-tags --json");
433
- process.exit(result.status ?? 1);
531
+ process.exit(1);
434
532
  }
435
- const text = String(result.stdout || "").trim();
436
- const tags = text ? JSON.parse(text) : {};
437
- const latest = tags.latest ? String(tags.latest) : "";
438
- const beta = tags.beta ? String(tags.beta) : "";
439
- showUpdateGuide(current, latest, beta);
440
- const hasNewBeta = Boolean(beta) && beta !== current;
533
+ const targetVersion = registry.version;
534
+ ensureUserShim(targetVersion || "latest");
535
+ showUpdateGuide(current, targetVersion);
536
+ const hasNewTarget = Boolean(targetVersion) && targetVersion !== current;
441
537
  const npxRuntime = isNpxRun();
442
538
 
443
- if (hasNewBeta) {
539
+ if (hasNewTarget) {
444
540
  if (npxRuntime) {
445
- kv("Update", `next run will use ${beta}`);
446
- } else if (tryGlobalUpgrade(beta)) {
447
- kv("Update", `installed ${beta}`);
541
+ kv("Update", `next run will use ${targetVersion}`);
448
542
  } else {
449
- kv("Update", `install ${beta} manually if needed`);
543
+ kv("Update", `command now points to ${targetVersion}`);
544
+ if (tryGlobalUpgrade(targetVersion)) {
545
+ kv("Global", `installed ${targetVersion}`);
546
+ } else {
547
+ kv("Global", `install ${targetVersion} manually if needed`);
548
+ }
450
549
  }
451
550
  }
452
551
 
453
- restartGatewayIfRunning();
552
+ const restartResult = restartGatewayIfRunning({ preferredSpecifier: hasNewTarget ? targetVersion : "" });
553
+ if (hasNewTarget && restartResult?.restarted) {
554
+ const observedVersion = await ensureRefreshedConsoleVersion(targetVersion);
555
+ if (observedVersion && observedVersion !== targetVersion) {
556
+ kv("Verify", `local console still reports ${observedVersion}`);
557
+ }
558
+ }
454
559
  process.exit(0);
455
560
  } catch (error) {
456
561
  headline();
@@ -494,7 +599,8 @@ function help() {
494
599
  headline();
495
600
  console.log("");
496
601
  section("Commands");
497
- kv("Install", "npx -y @silicaclaw/cli@beta install");
602
+ kv("First Run", "npx -y @silicaclaw/cli@latest onboard");
603
+ kv("Install", "npx -y @silicaclaw/cli@latest install");
498
604
  kv("Start", "silicaclaw start");
499
605
  kv("Status", "silicaclaw status");
500
606
  kv("Stop", "silicaclaw stop");
@@ -509,6 +615,12 @@ function help() {
509
615
  kv("Logs", "silicaclaw logs local-console");
510
616
  kv("Doctor", "silicaclaw doctor");
511
617
  kv("Help", "silicaclaw help");
618
+ console.log("");
619
+ section("Meaning");
620
+ kv("onboard", "first-time setup wizard");
621
+ kv("connect", "quick network setup wizard");
622
+ kv("install", "install persistent silicaclaw command only");
623
+ kv("channel", "@latest is the default release channel");
512
624
  }
513
625
 
514
626
  const cmd = String(process.argv[2] || "help").trim().toLowerCase();
@@ -527,10 +639,13 @@ switch (cmd) {
527
639
  });
528
640
  break;
529
641
  case "update":
530
- update();
642
+ await update();
531
643
  break;
532
644
  case "install":
533
- installPersistentCommand();
645
+ {
646
+ const preferred = preferredRegistryRelease(readPackageVersion());
647
+ installPersistentCommand(preferred.version || readPackageVersion());
648
+ }
534
649
  break;
535
650
  case "gateway":
536
651
  run("node", [resolve(ROOT_DIR, "scripts", "silicaclaw-gateway.mjs"), ...process.argv.slice(3)], {