shadow-claw 1.28.0 → 1.29.0

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 (194) hide show
  1. package/.well-known/mcp/server-card.json +1 -1
  2. package/.well-known/mcp.json +1 -1
  3. package/README.md +96 -278
  4. package/bin/cli.mjs +4 -0
  5. package/bin/commands/mcp.mjs +409 -125
  6. package/bin/commands/mcp.test.mjs +151 -18
  7. package/bin/utils/control-client.mjs +338 -103
  8. package/bin/utils/control-client.test.mjs +14 -0
  9. package/dist/electron/main.cjs +179 -179
  10. package/dist/lib/components/index.js +21 -21
  11. package/dist/lib/components/settings/shadow-claw-channel-config.js +1 -1
  12. package/dist/lib/components/settings/shadow-claw-control-plane.js +1 -1
  13. package/dist/lib/components/settings/shadow-claw-git.js +1 -1
  14. package/dist/lib/components/settings/shadow-claw-llm.js +1 -1
  15. package/dist/lib/components/settings/shadow-claw-networking.js +1 -1
  16. package/dist/lib/components/settings/shadow-claw-notifications.js +1 -1
  17. package/dist/lib/components/settings/shadow-claw-peerjs.js +1 -1
  18. package/dist/lib/components/settings/shadow-claw-storage.js +1 -1
  19. package/dist/lib/components/settings/shadow-claw-task-server.js +1 -1
  20. package/dist/lib/components/settings/shadow-claw-webvm.js +1 -1
  21. package/dist/lib/components/shadow-claw-channel-config.js +1 -1
  22. package/dist/lib/components/shadow-claw-channels.js +1 -1
  23. package/dist/lib/components/shadow-claw-chat.js +1 -1
  24. package/dist/lib/components/shadow-claw-control-plane.js +1 -1
  25. package/dist/lib/components/shadow-claw-conversations.js +1 -1
  26. package/dist/lib/components/shadow-claw-file-viewer.js +1 -1
  27. package/dist/lib/components/shadow-claw-files.js +1 -1
  28. package/dist/lib/components/shadow-claw-git.js +1 -1
  29. package/dist/lib/components/shadow-claw-llm.js +1 -1
  30. package/dist/lib/components/shadow-claw-networking.js +1 -1
  31. package/dist/lib/components/shadow-claw-notifications.js +1 -1
  32. package/dist/lib/components/shadow-claw-pages.js +1 -1
  33. package/dist/lib/components/shadow-claw-peerjs.js +1 -1
  34. package/dist/lib/components/shadow-claw-settings.js +1 -1
  35. package/dist/lib/components/shadow-claw-storage.js +1 -1
  36. package/dist/lib/components/shadow-claw-task-server.js +1 -1
  37. package/dist/lib/components/shadow-claw-tasks.js +1 -1
  38. package/dist/lib/components/shadow-claw-terminal.js +1 -1
  39. package/dist/lib/components/shadow-claw-tools.js +1 -1
  40. package/dist/lib/components/shadow-claw-webvm.js +1 -1
  41. package/dist/lib/components/shadow-claw.js +1 -1
  42. package/dist/lib/{configurePeerJs-D8Ph0-A9.js → configurePeerJs-DG4hliKp.js} +2 -2
  43. package/dist/lib/{configurePeerJs-D8Ph0-A9.js.map → configurePeerJs-DG4hliKp.js.map} +1 -1
  44. package/dist/lib/index.js +21 -21
  45. package/dist/lib/{initControlPlane-BIrWmpzc.js → initControlPlane-DnpAzphg.js} +8 -8
  46. package/dist/lib/{initControlPlane-BIrWmpzc.js.map → initControlPlane-DnpAzphg.js.map} +1 -1
  47. package/dist/lib/{markdown-DEUoM1c6.js → markdown-DgdSt2GD.js} +2 -2
  48. package/dist/lib/{markdown-DEUoM1c6.js.map → markdown-DgdSt2GD.js.map} +1 -1
  49. package/dist/lib/{orchestrator-CFCW-l1O.js → orchestrator-CjEau_RG.js} +5 -5
  50. package/dist/lib/{orchestrator-CFCW-l1O.js.map → orchestrator-CjEau_RG.js.map} +1 -1
  51. package/dist/lib/{orchestrator-BtVj9bBB.js → orchestrator-ClXbJ4Mb.js} +2 -2
  52. package/dist/lib/{orchestrator-BtVj9bBB.js.map → orchestrator-ClXbJ4Mb.js.map} +1 -1
  53. package/dist/lib/{peerjs-BoBkx9DJ.js → peerjs-BdfpltIe.js} +3 -3
  54. package/dist/lib/{peerjs-BoBkx9DJ.js.map → peerjs-BdfpltIe.js.map} +1 -1
  55. package/dist/lib/{push-client-D6hbzDNV.js → push-client-DjwKknNg.js} +9 -3
  56. package/dist/lib/push-client-DjwKknNg.js.map +1 -0
  57. package/dist/lib/{shadow-claw-Cuf2O5bZ.js → shadow-claw-DcPGKenn.js} +4 -4
  58. package/dist/lib/{shadow-claw-Cuf2O5bZ.js.map → shadow-claw-DcPGKenn.js.map} +1 -1
  59. package/dist/lib/{shadow-claw-channel-config-BDPKt6Bd.js → shadow-claw-channel-config-DEL-aZ7N.js} +3 -3
  60. package/dist/lib/{shadow-claw-channel-config-BDPKt6Bd.js.map → shadow-claw-channel-config-DEL-aZ7N.js.map} +1 -1
  61. package/dist/lib/{shadow-claw-channels-BsP5JABM.js → shadow-claw-channels-BgaJiPdE.js} +2 -2
  62. package/dist/lib/{shadow-claw-channels-BsP5JABM.js.map → shadow-claw-channels-BgaJiPdE.js.map} +1 -1
  63. package/dist/lib/{shadow-claw-chat-Cam2lX4k.js → shadow-claw-chat-mXPQZbwT.js} +4 -4
  64. package/dist/lib/{shadow-claw-chat-Cam2lX4k.js.map → shadow-claw-chat-mXPQZbwT.js.map} +1 -1
  65. package/dist/lib/{shadow-claw-control-plane-DB2qcCFs.js → shadow-claw-control-plane-DO6foOLV.js} +6 -6
  66. package/dist/lib/{shadow-claw-control-plane-DB2qcCFs.js.map → shadow-claw-control-plane-DO6foOLV.js.map} +1 -1
  67. package/dist/lib/{shadow-claw-conversations-C9Vf4XGx.js → shadow-claw-conversations-BLwHTwdW.js} +2 -2
  68. package/dist/lib/{shadow-claw-conversations-C9Vf4XGx.js.map → shadow-claw-conversations-BLwHTwdW.js.map} +1 -1
  69. package/dist/lib/{shadow-claw-file-viewer-B4HYiI0v.js → shadow-claw-file-viewer-BSbZvSl-.js} +3 -3
  70. package/dist/lib/{shadow-claw-file-viewer-B4HYiI0v.js.map → shadow-claw-file-viewer-BSbZvSl-.js.map} +1 -1
  71. package/dist/lib/{shadow-claw-files-DVROUESO.js → shadow-claw-files-BLVr9Pua.js} +2 -2
  72. package/dist/lib/{shadow-claw-files-DVROUESO.js.map → shadow-claw-files-BLVr9Pua.js.map} +1 -1
  73. package/dist/lib/{shadow-claw-git-BqrO7cHJ.js → shadow-claw-git-CHC1H86J.js} +3 -3
  74. package/dist/lib/{shadow-claw-git-BqrO7cHJ.js.map → shadow-claw-git-CHC1H86J.js.map} +1 -1
  75. package/dist/lib/{shadow-claw-llm-BexUQdYo.js → shadow-claw-llm-CKXfxd3D.js} +2 -2
  76. package/dist/lib/{shadow-claw-llm-BexUQdYo.js.map → shadow-claw-llm-CKXfxd3D.js.map} +1 -1
  77. package/dist/lib/{shadow-claw-networking-CfXRGpUD.js → shadow-claw-networking-dpYvfchh.js} +2 -2
  78. package/dist/lib/{shadow-claw-networking-CfXRGpUD.js.map → shadow-claw-networking-dpYvfchh.js.map} +1 -1
  79. package/dist/lib/{shadow-claw-notifications-C9KPMgx_.js → shadow-claw-notifications-_YeAVPga.js} +2 -2
  80. package/dist/lib/{shadow-claw-notifications-C9KPMgx_.js.map → shadow-claw-notifications-_YeAVPga.js.map} +1 -1
  81. package/dist/lib/{shadow-claw-pages-CGzGXmrI.js → shadow-claw-pages-DVzZriZ7.js} +3 -3
  82. package/dist/lib/{shadow-claw-pages-CGzGXmrI.js.map → shadow-claw-pages-DVzZriZ7.js.map} +1 -1
  83. package/dist/lib/{shadow-claw-peerjs-B0ZB7yhB.js → shadow-claw-peerjs-BvixjeBz.js} +3 -3
  84. package/dist/lib/{shadow-claw-peerjs-B0ZB7yhB.js.map → shadow-claw-peerjs-BvixjeBz.js.map} +1 -1
  85. package/dist/lib/{shadow-claw-settings-DBfMZdDS.js → shadow-claw-settings-DV9-gD4Q.js} +2 -2
  86. package/dist/lib/{shadow-claw-settings-DBfMZdDS.js.map → shadow-claw-settings-DV9-gD4Q.js.map} +1 -1
  87. package/dist/lib/{shadow-claw-storage-CM-w6mgG.js → shadow-claw-storage-Bv__kXG6.js} +2 -2
  88. package/dist/lib/{shadow-claw-storage-CM-w6mgG.js.map → shadow-claw-storage-Bv__kXG6.js.map} +1 -1
  89. package/dist/lib/{shadow-claw-task-server-DV4b1g2-.js → shadow-claw-task-server-DNOe8PWK.js} +2 -2
  90. package/dist/lib/{shadow-claw-task-server-DV4b1g2-.js.map → shadow-claw-task-server-DNOe8PWK.js.map} +1 -1
  91. package/dist/lib/{shadow-claw-tasks-K-foOHSE.js → shadow-claw-tasks-qmcDT4PU.js} +3 -3
  92. package/dist/lib/{shadow-claw-tasks-K-foOHSE.js.map → shadow-claw-tasks-qmcDT4PU.js.map} +1 -1
  93. package/dist/lib/{shadow-claw-terminal-CpAknKyA.js → shadow-claw-terminal-0QUWP8of.js} +2 -2
  94. package/dist/lib/{shadow-claw-terminal-CpAknKyA.js.map → shadow-claw-terminal-0QUWP8of.js.map} +1 -1
  95. package/dist/lib/{shadow-claw-tools-D98XZ0Ep.js → shadow-claw-tools-Bs_bmI6-.js} +3 -3
  96. package/dist/lib/{shadow-claw-tools-D98XZ0Ep.js.map → shadow-claw-tools-Bs_bmI6-.js.map} +1 -1
  97. package/dist/lib/{shadow-claw-webvm-DLOb8dMI.js → shadow-claw-webvm-DYaoL7QY.js} +2 -2
  98. package/dist/lib/{shadow-claw-webvm-DLOb8dMI.js.map → shadow-claw-webvm-DYaoL7QY.js.map} +1 -1
  99. package/dist/lib/{syncWebMcpRegistration-NspKefOI.js → syncWebMcpRegistration-BhbqI6R2.js} +2 -2
  100. package/dist/lib/{syncWebMcpRegistration-NspKefOI.js.map → syncWebMcpRegistration-BhbqI6R2.js.map} +1 -1
  101. package/dist/public/.well-known/mcp/server-card.json +1 -1
  102. package/dist/public/.well-known/mcp.json +1 -1
  103. package/dist/public/AGENTS.md +22 -3
  104. package/dist/public/README.md +96 -278
  105. package/dist/public/agent.worker.js +50 -50
  106. package/dist/public/{base-task-model-CYkpwnvU-DDfHUUIS.js → base-task-model-CYkpwnvU-DrXr4G1R.js} +1 -1
  107. package/dist/public/{configurePeerJs-BhBokQlC.js → configurePeerJs-B470pdeU.js} +1 -1
  108. package/dist/public/docs/README.md +31 -31
  109. package/dist/public/docs/architecture/context-management.md +7 -0
  110. package/dist/public/docs/architecture/storage.md +10 -1
  111. package/dist/public/docs/decisions/bundled-typescript-architecture.md +0 -1
  112. package/dist/public/docs/decisions/native-web-components-and-signals.md +0 -1
  113. package/dist/public/docs/example/article/index.html +1 -1
  114. package/dist/public/docs/guides/publishing-to-github-pages.md +334 -0
  115. package/dist/public/docs/guides/server-development-configuration.md +15 -0
  116. package/dist/public/docs/publishing/index.html +1 -1
  117. package/dist/public/docs/skill-creator/index.html +1 -1
  118. package/dist/public/docs/subsystems/cli.md +10 -2
  119. package/dist/public/docs/subsystems/control-plane.md +9 -8
  120. package/dist/public/docs/subsystems/crypto.md +9 -0
  121. package/dist/public/docs/subsystems/custom-element-security.md +2 -0
  122. package/dist/public/docs/subsystems/mcp-server.md +31 -16
  123. package/dist/public/docs/subsystems/notifications.md +8 -5
  124. package/dist/public/docs/subsystems/providers.md +9 -0
  125. package/dist/public/docs/subsystems/share-target.md +107 -0
  126. package/dist/public/docs/subsystems/webmcp.md +43 -0
  127. package/dist/public/e2e/README.md +4 -2
  128. package/dist/public/{e2e-bridge-DcBoeFvd.js → e2e-bridge-CSW0S5Yz.js} +1 -1
  129. package/dist/public/{file-viewer-CKtVC9Ix.js → file-viewer-Cs-riNvy.js} +1 -1
  130. package/dist/public/{firebase-OSDX3viP.js → firebase-cwAl_ABm.js} +1 -1
  131. package/dist/public/{git-CkhCJonj.js → git-GD09WATp.js} +25 -25
  132. package/dist/public/index.html +1 -1
  133. package/dist/public/index.js +1 -1
  134. package/dist/public/{initControlPlane-Bi8ouFEb.js → initControlPlane-BqCY0NQy.js} +1 -1
  135. package/dist/public/initControlPlane-C-IXaKYX.js +1 -0
  136. package/dist/public/{language-detector-BRKrlra0.js → language-detector-CIeEuQFk.js} +1 -1
  137. package/dist/public/llms.txt +4 -2
  138. package/dist/public/main/index.html +1 -1
  139. package/dist/public/main/memory/index.html +1 -1
  140. package/dist/public/{markdown-C-hCVJtc.js → markdown-Cw7vCtTg.js} +1 -1
  141. package/dist/public/{openai-Bpd71Oja.js → openai-BJIb2c5j.js} +3 -3
  142. package/dist/public/{orchestrator-8qNGfw8r.js → orchestrator-BWkHHO9Y.js} +1 -1
  143. package/dist/public/{orchestrator-BT3Ks5ip.js → orchestrator-DpkkeD6T.js} +1 -1
  144. package/dist/public/{peerjs-DfhwEiiq.js → peerjs-tf2EmWjB.js} +1 -1
  145. package/dist/public/{prompt-api-polyfill-Dl1kbJhR.js → prompt-api-polyfill-CXd75leW.js} +1 -1
  146. package/dist/public/{push-client-BVLrE9pK.js → push-client-CHjSbrWs.js} +1 -1
  147. package/dist/public/{rewriter-j6D9LDER.js → rewriter-BEHn9gll.js} +1 -1
  148. package/dist/public/service-worker.js +1 -1
  149. package/dist/public/{shadow-claw-DCjxNDCX.js → shadow-claw-BBPV_9X8.js} +2 -2
  150. package/dist/public/{shadow-claw-channels-CITDrqMl.js → shadow-claw-channels-BJvrKQjg.js} +1 -1
  151. package/dist/public/{shadow-claw-chat-BQrSgSKF.js → shadow-claw-chat-BG2EaRaw.js} +1 -1
  152. package/dist/public/{shadow-claw-control-plane-Cp001OY0.js → shadow-claw-control-plane-BBa7WbTg.js} +2 -2
  153. package/dist/public/{shadow-claw-conversations-EhX4RvIj.js → shadow-claw-conversations-CFaWFmkm.js} +1 -1
  154. package/dist/public/{shadow-claw-file-viewer-DiQXIjZD.js → shadow-claw-file-viewer-Z-GIKaE9.js} +1 -1
  155. package/dist/public/{shadow-claw-files-lkTnSJsn.js → shadow-claw-files-BBx4iMsk.js} +1 -1
  156. package/dist/public/{shadow-claw-git-BlcA_z8x.js → shadow-claw-git-vTOKatwd.js} +2 -2
  157. package/dist/public/{shadow-claw-llm-CW16X9Rg.js → shadow-claw-llm-Ce1Ax6-x.js} +1 -1
  158. package/dist/public/{shadow-claw-networking-ySsMBY_i.js → shadow-claw-networking-q4XIzdB5.js} +1 -1
  159. package/dist/public/{shadow-claw-notifications-CyV2zCQ8.js → shadow-claw-notifications-D2cz0gmm.js} +1 -1
  160. package/dist/public/{shadow-claw-pages-Cx7cF9ah.js → shadow-claw-pages-3335lmSC.js} +1 -1
  161. package/dist/public/{shadow-claw-settings-zm4PHHGi.js → shadow-claw-settings-4ptYuJwO.js} +2 -2
  162. package/dist/public/{shadow-claw-storage-dy9JAEGd.js → shadow-claw-storage-bIrPKFhF.js} +1 -1
  163. package/dist/public/{shadow-claw-task-server-Bleww48s.js → shadow-claw-task-server-5yqVBxy1.js} +1 -1
  164. package/dist/public/{shadow-claw-tasks-CTI5oaLN.js → shadow-claw-tasks-DcqYHPLZ.js} +1 -1
  165. package/dist/public/{shadow-claw-terminal-mZ3i4HaQ.js → shadow-claw-terminal-fARaDONr.js} +1 -1
  166. package/dist/public/{shadow-claw-tools-B_nuk8Zl.js → shadow-claw-tools-paEAhcJr.js} +1 -1
  167. package/dist/public/{shadow-claw-webvm-Vl_jH5YL.js → shadow-claw-webvm-CbzH_vyX.js} +1 -1
  168. package/dist/public/{summarizer-VJNr-7xG.js → summarizer-BT3AuFed.js} +1 -1
  169. package/dist/public/{syncWebMcpRegistration-n2vAMJ4w.js → syncWebMcpRegistration-CWSYaHex.js} +1 -1
  170. package/dist/public/{transformers-BhQMWQG5.js → transformers-1VTxqKjT.js} +1 -1
  171. package/dist/public/{translator-DEQXb7ZL.js → translator-B50RYlFt.js} +1 -1
  172. package/dist/public/{webllm-CHN5H-Sy.js → webllm-FmyJWWpt.js} +1 -1
  173. package/dist/public/{writer-CD9oN2pq.js → writer-Bhb4YYRE.js} +1 -1
  174. package/dist/server.js +205 -203
  175. package/package.json +1 -1
  176. package/src/components/settings/shadow-claw-llm/shadow-claw-llm.test.ts +2 -0
  177. package/src/core/orchestrator/utils/configurePeerJs.test.ts +2 -0
  178. package/src/server/client-registry.test.ts +9 -0
  179. package/src/server/client-registry.ts +14 -0
  180. package/src/server/mcp/mcp-integration.test.ts +68 -16
  181. package/src/server/mcp/tools/built-in-tools.ts +125 -34
  182. package/src/server/mcp/tools/client-tool-relay.ts +81 -44
  183. package/src/server/mcp/tools/mcp-tools.test.ts +103 -13
  184. package/src/server/mcp/types.ts +3 -0
  185. package/src/server/openapi/paths/push.ts +48 -0
  186. package/src/server/server.ts +30 -0
  187. package/src/subsystems/notifications/push-client.test.ts +17 -0
  188. package/src/subsystems/notifications/push-client.ts +22 -2
  189. package/src/subsystems/notifications/push-routes.test.ts +31 -0
  190. package/src/subsystems/notifications/push-routes.ts +10 -0
  191. package/src/subsystems/notifications/push-store.test.ts +49 -0
  192. package/src/subsystems/notifications/push-store.ts +45 -0
  193. package/src/worker/worker.test.ts +2 -0
  194. package/dist/lib/push-client-D6hbzDNV.js.map +0 -1
@@ -1,40 +1,40 @@
1
1
  import ShadowClawElement from "./shadow-claw-element.js";
2
2
  import { a as showSuccess, i as showInfo, l as toastStore, o as showToast, r as showError, s as showWarning } from "../toast-DZ6r7_YI.js";
3
- import { t as ShadowClaw } from "../shadow-claw-Cuf2O5bZ.js";
4
- import { t as ShadowClawChat } from "../shadow-claw-chat-Cam2lX4k.js";
3
+ import { t as ShadowClaw } from "../shadow-claw-DcPGKenn.js";
4
+ import { t as ShadowClawChat } from "../shadow-claw-chat-mXPQZbwT.js";
5
5
  import { t as ShadowClawA2UI } from "../shadow-claw-a2ui-CpZUTzlh.js";
6
6
  import { t as ShadowClawPageHeaderActionButton } from "../shadow-claw-page-header-action-button-BXXm5b5N.js";
7
7
  import { ShadowClawA2UIInterceptor } from "./shadow-claw-a2ui-interceptor.js";
8
8
  import { ShadowClawDialog } from "./shadow-claw-dialog.js";
9
9
  import { t as ShadowClawPageHeader } from "../shadow-claw-page-header-Cti2fzf-.js";
10
- import { t as ShadowClawFiles } from "../shadow-claw-files-DVROUESO.js";
10
+ import { t as ShadowClawFiles } from "../shadow-claw-files-BLVr9Pua.js";
11
11
  import { t as ShadowClawEmptyState } from "../shadow-claw-empty-state-DPfDqaMA.js";
12
- import { t as ShadowClawFileViewer } from "../shadow-claw-file-viewer-B4HYiI0v.js";
12
+ import { t as ShadowClawFileViewer } from "../shadow-claw-file-viewer-BSbZvSl-.js";
13
13
  import { t as ShadowClawPdfViewer } from "../shadow-claw-pdf-viewer-D3leDhRq.js";
14
- import { t as ShadowClawTasks } from "../shadow-claw-tasks-K-foOHSE.js";
15
- import { n as ShadowClawTerminal } from "../shadow-claw-terminal-CpAknKyA.js";
16
- import { t as ShadowClawPages } from "../shadow-claw-pages-CGzGXmrI.js";
17
- import { t as ShadowClawSettings } from "../shadow-claw-settings-DBfMZdDS.js";
18
- import { t as ShadowClawPeerJs } from "../shadow-claw-peerjs-B0ZB7yhB.js";
19
- import { t as ShadowClawChannelConfig } from "../shadow-claw-channel-config-BDPKt6Bd.js";
20
- import { t as ShadowClawChannels } from "../shadow-claw-channels-BsP5JABM.js";
14
+ import { t as ShadowClawTasks } from "../shadow-claw-tasks-qmcDT4PU.js";
15
+ import { n as ShadowClawTerminal } from "../shadow-claw-terminal-0QUWP8of.js";
16
+ import { t as ShadowClawPages } from "../shadow-claw-pages-DVzZriZ7.js";
17
+ import { t as ShadowClawSettings } from "../shadow-claw-settings-DV9-gD4Q.js";
18
+ import { t as ShadowClawPeerJs } from "../shadow-claw-peerjs-BvixjeBz.js";
19
+ import { t as ShadowClawChannelConfig } from "../shadow-claw-channel-config-DEL-aZ7N.js";
20
+ import { t as ShadowClawChannels } from "../shadow-claw-channels-BgaJiPdE.js";
21
21
  import { t as ShadowClawProviderModelPicker } from "../shadow-claw-provider-model-picker-CsA-507a.js";
22
22
  import { t as ShadowClawProviderModuleSettings } from "../shadow-claw-provider-module-settings-3sCTnCSp.js";
23
- import { t as ShadowClawConversations } from "../shadow-claw-conversations-C9Vf4XGx.js";
23
+ import { t as ShadowClawConversations } from "../shadow-claw-conversations-BLwHTwdW.js";
24
24
  import { t as ShadowClawToast } from "../shadow-claw-toast-C8oAkrMC.js";
25
- import { t as ShadowClawTools } from "../shadow-claw-tools-D98XZ0Ep.js";
25
+ import { t as ShadowClawTools } from "../shadow-claw-tools-Bs_bmI6-.js";
26
26
  import { t as ShadowClawActions } from "../shadow-claw-actions-G99P9oxr.js";
27
27
  import { t as ShadowClawCard } from "../shadow-claw-card-D9azfSMu.js";
28
28
  import { t as ShadowClawAccounts } from "../shadow-claw-accounts-03oJ__XC.js";
29
- import { t as ShadowClawControlPlane } from "../shadow-claw-control-plane-DB2qcCFs.js";
30
- import { t as ShadowClawGit } from "../shadow-claw-git-BqrO7cHJ.js";
29
+ import { t as ShadowClawControlPlane } from "../shadow-claw-control-plane-DO6foOLV.js";
30
+ import { t as ShadowClawGit } from "../shadow-claw-git-CHC1H86J.js";
31
31
  import { t as ShadowClawIntegrations } from "../shadow-claw-integrations-Ds-CLPhj.js";
32
- import { t as ShadowClawLlm } from "../shadow-claw-llm-BexUQdYo.js";
32
+ import { t as ShadowClawLlm } from "../shadow-claw-llm-CKXfxd3D.js";
33
33
  import { t as ShadowClawMcpRemote } from "../shadow-claw-mcp-remote-CT5Q-54E.js";
34
- import { t as ShadowClawNetworking } from "../shadow-claw-networking-CfXRGpUD.js";
35
- import { t as ShadowClawNotifications } from "../shadow-claw-notifications-C9KPMgx_.js";
36
- import { t as ShadowClawStorage } from "../shadow-claw-storage-CM-w6mgG.js";
37
- import { t as ShadowClawTaskServer } from "../shadow-claw-task-server-DV4b1g2-.js";
38
- import { t as ShadowClawWebvm } from "../shadow-claw-webvm-DLOb8dMI.js";
34
+ import { t as ShadowClawNetworking } from "../shadow-claw-networking-dpYvfchh.js";
35
+ import { t as ShadowClawNotifications } from "../shadow-claw-notifications-_YeAVPga.js";
36
+ import { t as ShadowClawStorage } from "../shadow-claw-storage-Bv__kXG6.js";
37
+ import { t as ShadowClawTaskServer } from "../shadow-claw-task-server-DNOe8PWK.js";
38
+ import { t as ShadowClawWebvm } from "../shadow-claw-webvm-DYaoL7QY.js";
39
39
 
40
40
  export { ShadowClaw, ShadowClawA2UI, ShadowClawA2UIInterceptor, ShadowClawAccounts, ShadowClawActions, ShadowClawCard, ShadowClawChannelConfig, ShadowClawChannels, ShadowClawChat, ShadowClawControlPlane, ShadowClawConversations, ShadowClawDialog, ShadowClawElement, ShadowClawEmptyState, ShadowClawFileViewer, ShadowClawFiles, ShadowClawGit, ShadowClawIntegrations, ShadowClawLlm, ShadowClawMcpRemote, ShadowClawNetworking, ShadowClawNotifications, ShadowClawPageHeader, ShadowClawPageHeaderActionButton, ShadowClawPages, ShadowClawPdfViewer, ShadowClawPeerJs, ShadowClawProviderModelPicker, ShadowClawProviderModuleSettings, ShadowClawSettings, ShadowClawStorage, ShadowClawTaskServer, ShadowClawTasks, ShadowClawTerminal, ShadowClawToast, ShadowClawTools, ShadowClawWebvm, showError, showInfo, showSuccess, showToast, showWarning, toastStore };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawChannelConfig } from "../../shadow-claw-channel-config-BDPKt6Bd.js";
1
+ import { t as ShadowClawChannelConfig } from "../../shadow-claw-channel-config-DEL-aZ7N.js";
2
2
 
3
3
  export { ShadowClawChannelConfig };
@@ -1,3 +1,3 @@
1
- import { n as getControlPlaneTargetAddressSpace, t as ShadowClawControlPlane } from "../../shadow-claw-control-plane-DB2qcCFs.js";
1
+ import { n as getControlPlaneTargetAddressSpace, t as ShadowClawControlPlane } from "../../shadow-claw-control-plane-DO6foOLV.js";
2
2
 
3
3
  export { ShadowClawControlPlane, getControlPlaneTargetAddressSpace };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawGit } from "../../shadow-claw-git-BqrO7cHJ.js";
1
+ import { t as ShadowClawGit } from "../../shadow-claw-git-CHC1H86J.js";
2
2
 
3
3
  export { ShadowClawGit };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawLlm } from "../../shadow-claw-llm-BexUQdYo.js";
1
+ import { t as ShadowClawLlm } from "../../shadow-claw-llm-CKXfxd3D.js";
2
2
 
3
3
  export { ShadowClawLlm };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawNetworking } from "../../shadow-claw-networking-CfXRGpUD.js";
1
+ import { t as ShadowClawNetworking } from "../../shadow-claw-networking-dpYvfchh.js";
2
2
 
3
3
  export { ShadowClawNetworking };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawNotifications } from "../../shadow-claw-notifications-C9KPMgx_.js";
1
+ import { t as ShadowClawNotifications } from "../../shadow-claw-notifications-_YeAVPga.js";
2
2
 
3
3
  export { ShadowClawNotifications };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawPeerJs } from "../../shadow-claw-peerjs-B0ZB7yhB.js";
1
+ import { t as ShadowClawPeerJs } from "../../shadow-claw-peerjs-BvixjeBz.js";
2
2
 
3
3
  export { ShadowClawPeerJs };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawStorage } from "../../shadow-claw-storage-CM-w6mgG.js";
1
+ import { t as ShadowClawStorage } from "../../shadow-claw-storage-Bv__kXG6.js";
2
2
 
3
3
  export { ShadowClawStorage };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawTaskServer } from "../../shadow-claw-task-server-DV4b1g2-.js";
1
+ import { t as ShadowClawTaskServer } from "../../shadow-claw-task-server-DNOe8PWK.js";
2
2
 
3
3
  export { ShadowClawTaskServer };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawWebvm } from "../../shadow-claw-webvm-DLOb8dMI.js";
1
+ import { t as ShadowClawWebvm } from "../../shadow-claw-webvm-DYaoL7QY.js";
2
2
 
3
3
  export { ShadowClawWebvm };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawChannelConfig } from "../shadow-claw-channel-config-BDPKt6Bd.js";
1
+ import { t as ShadowClawChannelConfig } from "../shadow-claw-channel-config-DEL-aZ7N.js";
2
2
 
3
3
  export { ShadowClawChannelConfig };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawChannels } from "../shadow-claw-channels-BsP5JABM.js";
1
+ import { t as ShadowClawChannels } from "../shadow-claw-channels-BgaJiPdE.js";
2
2
 
3
3
  export { ShadowClawChannels };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawChat } from "../shadow-claw-chat-Cam2lX4k.js";
1
+ import { t as ShadowClawChat } from "../shadow-claw-chat-mXPQZbwT.js";
2
2
 
3
3
  export { ShadowClawChat };
@@ -1,3 +1,3 @@
1
- import { n as getControlPlaneTargetAddressSpace, t as ShadowClawControlPlane } from "../shadow-claw-control-plane-DB2qcCFs.js";
1
+ import { n as getControlPlaneTargetAddressSpace, t as ShadowClawControlPlane } from "../shadow-claw-control-plane-DO6foOLV.js";
2
2
 
3
3
  export { ShadowClawControlPlane, getControlPlaneTargetAddressSpace };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawConversations } from "../shadow-claw-conversations-C9Vf4XGx.js";
1
+ import { t as ShadowClawConversations } from "../shadow-claw-conversations-BLwHTwdW.js";
2
2
 
3
3
  export { ShadowClawConversations };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawFileViewer } from "../shadow-claw-file-viewer-B4HYiI0v.js";
1
+ import { t as ShadowClawFileViewer } from "../shadow-claw-file-viewer-BSbZvSl-.js";
2
2
 
3
3
  export { ShadowClawFileViewer };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawFiles } from "../shadow-claw-files-DVROUESO.js";
1
+ import { t as ShadowClawFiles } from "../shadow-claw-files-BLVr9Pua.js";
2
2
 
3
3
  export { ShadowClawFiles };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawGit } from "../shadow-claw-git-BqrO7cHJ.js";
1
+ import { t as ShadowClawGit } from "../shadow-claw-git-CHC1H86J.js";
2
2
 
3
3
  export { ShadowClawGit };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawLlm } from "../shadow-claw-llm-BexUQdYo.js";
1
+ import { t as ShadowClawLlm } from "../shadow-claw-llm-CKXfxd3D.js";
2
2
 
3
3
  export { ShadowClawLlm };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawNetworking } from "../shadow-claw-networking-CfXRGpUD.js";
1
+ import { t as ShadowClawNetworking } from "../shadow-claw-networking-dpYvfchh.js";
2
2
 
3
3
  export { ShadowClawNetworking };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawNotifications } from "../shadow-claw-notifications-C9KPMgx_.js";
1
+ import { t as ShadowClawNotifications } from "../shadow-claw-notifications-_YeAVPga.js";
2
2
 
3
3
  export { ShadowClawNotifications };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawPages } from "../shadow-claw-pages-CGzGXmrI.js";
1
+ import { t as ShadowClawPages } from "../shadow-claw-pages-DVzZriZ7.js";
2
2
 
3
3
  export { ShadowClawPages };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawPeerJs } from "../shadow-claw-peerjs-B0ZB7yhB.js";
1
+ import { t as ShadowClawPeerJs } from "../shadow-claw-peerjs-BvixjeBz.js";
2
2
 
3
3
  export { ShadowClawPeerJs };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawSettings } from "../shadow-claw-settings-DBfMZdDS.js";
1
+ import { t as ShadowClawSettings } from "../shadow-claw-settings-DV9-gD4Q.js";
2
2
 
3
3
  export { ShadowClawSettings };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawStorage } from "../shadow-claw-storage-CM-w6mgG.js";
1
+ import { t as ShadowClawStorage } from "../shadow-claw-storage-Bv__kXG6.js";
2
2
 
3
3
  export { ShadowClawStorage };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawTaskServer } from "../shadow-claw-task-server-DV4b1g2-.js";
1
+ import { t as ShadowClawTaskServer } from "../shadow-claw-task-server-DNOe8PWK.js";
2
2
 
3
3
  export { ShadowClawTaskServer };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawTasks } from "../shadow-claw-tasks-K-foOHSE.js";
1
+ import { t as ShadowClawTasks } from "../shadow-claw-tasks-qmcDT4PU.js";
2
2
 
3
3
  export { ShadowClawTasks };
@@ -1,3 +1,3 @@
1
- import { n as ShadowClawTerminal, t as AUTO_SCROLL_BOTTOM_THRESHOLD_PX } from "../shadow-claw-terminal-CpAknKyA.js";
1
+ import { n as ShadowClawTerminal, t as AUTO_SCROLL_BOTTOM_THRESHOLD_PX } from "../shadow-claw-terminal-0QUWP8of.js";
2
2
 
3
3
  export { AUTO_SCROLL_BOTTOM_THRESHOLD_PX, ShadowClawTerminal };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawTools } from "../shadow-claw-tools-D98XZ0Ep.js";
1
+ import { t as ShadowClawTools } from "../shadow-claw-tools-Bs_bmI6-.js";
2
2
 
3
3
  export { ShadowClawTools };
@@ -1,3 +1,3 @@
1
- import { t as ShadowClawWebvm } from "../shadow-claw-webvm-DLOb8dMI.js";
1
+ import { t as ShadowClawWebvm } from "../shadow-claw-webvm-DYaoL7QY.js";
2
2
 
3
3
  export { ShadowClawWebvm };
@@ -1,4 +1,4 @@
1
- import { t as ShadowClaw } from "../shadow-claw-Cuf2O5bZ.js";
1
+ import { t as ShadowClaw } from "../shadow-claw-DcPGKenn.js";
2
2
  import { n as MAX_SIDEBAR_WIDTH_PX, r as MIN_SIDEBAR_WIDTH_PX, t as DEFAULT_SIDEBAR_WIDTH_PX } from "../constants-BxxDX8j_.js";
3
3
 
4
4
  export { DEFAULT_SIDEBAR_WIDTH_PX, MAX_SIDEBAR_WIDTH_PX, MIN_SIDEBAR_WIDTH_PX, ShadowClaw };
@@ -1,5 +1,5 @@
1
1
  import { r as CONFIG_KEYS } from "./config--CFrw3J3.js";
2
- import { dt as getChannelEnabled, yt as normalizeStringList } from "./orchestrator-BtVj9bBB.js";
2
+ import { dt as getChannelEnabled, yt as normalizeStringList } from "./orchestrator-ClXbJ4Mb.js";
3
3
  import { t as setConfig } from "./setConfig-BFED5CXn.js";
4
4
 
5
5
  //#region src/core/orchestrator/utils/configurePeerJs.ts
@@ -35,4 +35,4 @@ async function configurePeerJs(orchestrator, db, myPeerId, trustedPeerIds, serve
35
35
 
36
36
  //#endregion
37
37
  export { configurePeerJs as t };
38
- //# sourceMappingURL=configurePeerJs-D8Ph0-A9.js.map
38
+ //# sourceMappingURL=configurePeerJs-DG4hliKp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configurePeerJs-D8Ph0-A9.js","names":[],"sources":["../../src/core/orchestrator/utils/configurePeerJs.ts"],"sourcesContent":["import { CONFIG_KEYS } from \"../../../config/config.js\";\nimport { setConfig } from \"../../../db/setConfig.js\";\nimport { normalizeStringList } from \"./normalizeStringList.js\";\nimport { getChannelEnabled } from \"./operations/channel.js\";\n\nimport type { ShadowClawDatabase } from \"../../../db/db.js\";\nimport type { Orchestrator } from \"../orchestrator.js\";\n\nexport async function configurePeerJs(\n orchestrator: Orchestrator,\n db: ShadowClawDatabase,\n myPeerId: string,\n trustedPeerIds: string[],\n serverHost = \"\",\n serverPort = 0,\n serverPath = \"\",\n serverSecure = true,\n): Promise<void> {\n const normalizedMyPeerId = myPeerId.trim();\n const normalizedTrustedPeerIds = normalizeStringList(trustedPeerIds);\n const normalizedServerHost = serverHost.trim();\n const normalizedServerPort = Number.isFinite(serverPort)\n ? Math.max(0, Math.floor(serverPort))\n : 0;\n\n const normalizedServerPath = serverPath.trim();\n const normalizedServerSecure = !!serverSecure;\n\n orchestrator.peerjsMyPeerId = normalizedMyPeerId;\n orchestrator.peerjsTrustedPeerIds = normalizedTrustedPeerIds;\n orchestrator.peerjsServerHost = normalizedServerHost;\n orchestrator.peerjsServerPort = normalizedServerPort;\n orchestrator.peerjsServerPath = normalizedServerPath;\n orchestrator.peerjsServerSecure = normalizedServerSecure;\n\n await setConfig(db, CONFIG_KEYS.PEERJS_MY_PEER_ID, normalizedMyPeerId);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_TRUSTED_PEER_IDS,\n JSON.stringify(normalizedTrustedPeerIds),\n );\n\n await setConfig(db, CONFIG_KEYS.PEERJS_SERVER_HOST, normalizedServerHost);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_SERVER_PORT,\n normalizedServerPort ? String(normalizedServerPort) : \"\",\n );\n\n await setConfig(db, CONFIG_KEYS.PEERJS_SERVER_PATH, normalizedServerPath);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_SERVER_SECURE,\n normalizedServerSecure ? \"true\" : \"false\",\n );\n\n const serverConfig = normalizedServerHost\n ? {\n host: normalizedServerHost,\n path: normalizedServerPath || undefined,\n port: normalizedServerPort || undefined,\n secure: normalizedServerSecure,\n }\n : {};\n\n orchestrator.peerjs.stop();\n orchestrator.peerjs.configure(\n normalizedMyPeerId,\n normalizedTrustedPeerIds,\n serverConfig,\n );\n\n if (normalizedMyPeerId && getChannelEnabled(orchestrator, \"peerjs\")) {\n orchestrator.peerjs.start();\n }\n}\n"],"mappings":";;;;;AAQA,eAAsB,gBACpB,cACA,IACA,UACA,gBACA,aAAa,IACb,aAAa,GACb,aAAa,IACb,eAAe,MACA;CACf,MAAM,qBAAqB,SAAS,KAAK;CACzC,MAAM,2BAA2B,oBAAoB,cAAc;CACnE,MAAM,uBAAuB,WAAW,KAAK;CAC7C,MAAM,uBAAuB,OAAO,SAAS,UAAU,IACnD,KAAK,IAAI,GAAG,KAAK,MAAM,UAAU,CAAC,IAClC;CAEJ,MAAM,uBAAuB,WAAW,KAAK;CAC7C,MAAM,yBAAyB,CAAC,CAAC;CAEjC,aAAa,iBAAiB;CAC9B,aAAa,uBAAuB;CACpC,aAAa,mBAAmB;CAChC,aAAa,mBAAmB;CAChC,aAAa,mBAAmB;CAChC,aAAa,qBAAqB;CAElC,MAAM,UAAU,IAAI,YAAY,mBAAmB,kBAAkB;CACrE,MAAM,UACJ,IACA,YAAY,yBACZ,KAAK,UAAU,wBAAwB,CACzC;CAEA,MAAM,UAAU,IAAI,YAAY,oBAAoB,oBAAoB;CACxE,MAAM,UACJ,IACA,YAAY,oBACZ,uBAAuB,OAAO,oBAAoB,IAAI,EACxD;CAEA,MAAM,UAAU,IAAI,YAAY,oBAAoB,oBAAoB;CACxE,MAAM,UACJ,IACA,YAAY,sBACZ,yBAAyB,SAAS,OACpC;CAEA,MAAM,eAAe,uBACjB;EACE,MAAM;EACN,MAAM,wBAAwB;EAC9B,MAAM,wBAAwB;EAC9B,QAAQ;CACV,IACA,CAAC;CAEL,aAAa,OAAO,KAAK;CACzB,aAAa,OAAO,UAClB,oBACA,0BACA,YACF;CAEA,IAAI,sBAAsB,kBAAkB,cAAc,QAAQ,GAChE,aAAa,OAAO,MAAM;AAE9B"}
1
+ {"version":3,"file":"configurePeerJs-DG4hliKp.js","names":[],"sources":["../../src/core/orchestrator/utils/configurePeerJs.ts"],"sourcesContent":["import { CONFIG_KEYS } from \"../../../config/config.js\";\nimport { setConfig } from \"../../../db/setConfig.js\";\nimport { normalizeStringList } from \"./normalizeStringList.js\";\nimport { getChannelEnabled } from \"./operations/channel.js\";\n\nimport type { ShadowClawDatabase } from \"../../../db/db.js\";\nimport type { Orchestrator } from \"../orchestrator.js\";\n\nexport async function configurePeerJs(\n orchestrator: Orchestrator,\n db: ShadowClawDatabase,\n myPeerId: string,\n trustedPeerIds: string[],\n serverHost = \"\",\n serverPort = 0,\n serverPath = \"\",\n serverSecure = true,\n): Promise<void> {\n const normalizedMyPeerId = myPeerId.trim();\n const normalizedTrustedPeerIds = normalizeStringList(trustedPeerIds);\n const normalizedServerHost = serverHost.trim();\n const normalizedServerPort = Number.isFinite(serverPort)\n ? Math.max(0, Math.floor(serverPort))\n : 0;\n\n const normalizedServerPath = serverPath.trim();\n const normalizedServerSecure = !!serverSecure;\n\n orchestrator.peerjsMyPeerId = normalizedMyPeerId;\n orchestrator.peerjsTrustedPeerIds = normalizedTrustedPeerIds;\n orchestrator.peerjsServerHost = normalizedServerHost;\n orchestrator.peerjsServerPort = normalizedServerPort;\n orchestrator.peerjsServerPath = normalizedServerPath;\n orchestrator.peerjsServerSecure = normalizedServerSecure;\n\n await setConfig(db, CONFIG_KEYS.PEERJS_MY_PEER_ID, normalizedMyPeerId);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_TRUSTED_PEER_IDS,\n JSON.stringify(normalizedTrustedPeerIds),\n );\n\n await setConfig(db, CONFIG_KEYS.PEERJS_SERVER_HOST, normalizedServerHost);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_SERVER_PORT,\n normalizedServerPort ? String(normalizedServerPort) : \"\",\n );\n\n await setConfig(db, CONFIG_KEYS.PEERJS_SERVER_PATH, normalizedServerPath);\n await setConfig(\n db,\n CONFIG_KEYS.PEERJS_SERVER_SECURE,\n normalizedServerSecure ? \"true\" : \"false\",\n );\n\n const serverConfig = normalizedServerHost\n ? {\n host: normalizedServerHost,\n path: normalizedServerPath || undefined,\n port: normalizedServerPort || undefined,\n secure: normalizedServerSecure,\n }\n : {};\n\n orchestrator.peerjs.stop();\n orchestrator.peerjs.configure(\n normalizedMyPeerId,\n normalizedTrustedPeerIds,\n serverConfig,\n );\n\n if (normalizedMyPeerId && getChannelEnabled(orchestrator, \"peerjs\")) {\n orchestrator.peerjs.start();\n }\n}\n"],"mappings":";;;;;AAQA,eAAsB,gBACpB,cACA,IACA,UACA,gBACA,aAAa,IACb,aAAa,GACb,aAAa,IACb,eAAe,MACA;CACf,MAAM,qBAAqB,SAAS,KAAK;CACzC,MAAM,2BAA2B,oBAAoB,cAAc;CACnE,MAAM,uBAAuB,WAAW,KAAK;CAC7C,MAAM,uBAAuB,OAAO,SAAS,UAAU,IACnD,KAAK,IAAI,GAAG,KAAK,MAAM,UAAU,CAAC,IAClC;CAEJ,MAAM,uBAAuB,WAAW,KAAK;CAC7C,MAAM,yBAAyB,CAAC,CAAC;CAEjC,aAAa,iBAAiB;CAC9B,aAAa,uBAAuB;CACpC,aAAa,mBAAmB;CAChC,aAAa,mBAAmB;CAChC,aAAa,mBAAmB;CAChC,aAAa,qBAAqB;CAElC,MAAM,UAAU,IAAI,YAAY,mBAAmB,kBAAkB;CACrE,MAAM,UACJ,IACA,YAAY,yBACZ,KAAK,UAAU,wBAAwB,CACzC;CAEA,MAAM,UAAU,IAAI,YAAY,oBAAoB,oBAAoB;CACxE,MAAM,UACJ,IACA,YAAY,oBACZ,uBAAuB,OAAO,oBAAoB,IAAI,EACxD;CAEA,MAAM,UAAU,IAAI,YAAY,oBAAoB,oBAAoB;CACxE,MAAM,UACJ,IACA,YAAY,sBACZ,yBAAyB,SAAS,OACpC;CAEA,MAAM,eAAe,uBACjB;EACE,MAAM;EACN,MAAM,wBAAwB;EAC9B,MAAM,wBAAwB;EAC9B,QAAQ;CACV,IACA,CAAC;CAEL,aAAa,OAAO,KAAK;CACzB,aAAa,OAAO,UAClB,oBACA,0BACA,YACF;CAEA,IAAI,sBAAsB,kBAAkB,cAAc,QAAQ,GAChE,aAAa,OAAO,MAAM;AAE9B"}
package/dist/lib/index.js CHANGED
@@ -4,42 +4,42 @@ import { c as escapeHtml, d as handleSpecialLinkNavigation, f as sanitizeHtml, l
4
4
  import { a as showSuccess, i as showInfo, l as toastStore, o as showToast, r as showError, s as showWarning } from "./toast-DZ6r7_YI.js";
5
5
  import { getNamespacedItem, getNamespacedStorageKey, removeNamespacedItem, setNamespacedItem } from "./utils/namespacedStorage.js";
6
6
  import { applyJsonPatch } from "./utils/jsonPatch.js";
7
- import { t as ShadowClaw } from "./shadow-claw-Cuf2O5bZ.js";
8
- import { t as ShadowClawChat } from "./shadow-claw-chat-Cam2lX4k.js";
7
+ import { t as ShadowClaw } from "./shadow-claw-DcPGKenn.js";
8
+ import { t as ShadowClawChat } from "./shadow-claw-chat-mXPQZbwT.js";
9
9
  import { t as ShadowClawA2UI } from "./shadow-claw-a2ui-CpZUTzlh.js";
10
10
  import { t as ShadowClawPageHeaderActionButton } from "./shadow-claw-page-header-action-button-BXXm5b5N.js";
11
11
  import { ShadowClawA2UIInterceptor } from "./components/shadow-claw-a2ui-interceptor.js";
12
12
  import { ShadowClawDialog } from "./components/shadow-claw-dialog.js";
13
13
  import { t as ShadowClawPageHeader } from "./shadow-claw-page-header-Cti2fzf-.js";
14
- import { t as ShadowClawFiles } from "./shadow-claw-files-DVROUESO.js";
14
+ import { t as ShadowClawFiles } from "./shadow-claw-files-BLVr9Pua.js";
15
15
  import { t as ShadowClawEmptyState } from "./shadow-claw-empty-state-DPfDqaMA.js";
16
- import { t as ShadowClawFileViewer } from "./shadow-claw-file-viewer-B4HYiI0v.js";
16
+ import { t as ShadowClawFileViewer } from "./shadow-claw-file-viewer-BSbZvSl-.js";
17
17
  import { t as ShadowClawPdfViewer } from "./shadow-claw-pdf-viewer-D3leDhRq.js";
18
- import { t as ShadowClawTasks } from "./shadow-claw-tasks-K-foOHSE.js";
19
- import { n as ShadowClawTerminal } from "./shadow-claw-terminal-CpAknKyA.js";
20
- import { t as ShadowClawPages } from "./shadow-claw-pages-CGzGXmrI.js";
21
- import { t as ShadowClawSettings } from "./shadow-claw-settings-DBfMZdDS.js";
22
- import { t as ShadowClawPeerJs } from "./shadow-claw-peerjs-B0ZB7yhB.js";
23
- import { t as ShadowClawChannelConfig } from "./shadow-claw-channel-config-BDPKt6Bd.js";
24
- import { t as ShadowClawChannels } from "./shadow-claw-channels-BsP5JABM.js";
18
+ import { t as ShadowClawTasks } from "./shadow-claw-tasks-qmcDT4PU.js";
19
+ import { n as ShadowClawTerminal } from "./shadow-claw-terminal-0QUWP8of.js";
20
+ import { t as ShadowClawPages } from "./shadow-claw-pages-DVzZriZ7.js";
21
+ import { t as ShadowClawSettings } from "./shadow-claw-settings-DV9-gD4Q.js";
22
+ import { t as ShadowClawPeerJs } from "./shadow-claw-peerjs-BvixjeBz.js";
23
+ import { t as ShadowClawChannelConfig } from "./shadow-claw-channel-config-DEL-aZ7N.js";
24
+ import { t as ShadowClawChannels } from "./shadow-claw-channels-BgaJiPdE.js";
25
25
  import { t as ShadowClawProviderModelPicker } from "./shadow-claw-provider-model-picker-CsA-507a.js";
26
26
  import { t as ShadowClawProviderModuleSettings } from "./shadow-claw-provider-module-settings-3sCTnCSp.js";
27
- import { t as ShadowClawConversations } from "./shadow-claw-conversations-C9Vf4XGx.js";
27
+ import { t as ShadowClawConversations } from "./shadow-claw-conversations-BLwHTwdW.js";
28
28
  import { t as ShadowClawToast } from "./shadow-claw-toast-C8oAkrMC.js";
29
- import { t as ShadowClawTools } from "./shadow-claw-tools-D98XZ0Ep.js";
29
+ import { t as ShadowClawTools } from "./shadow-claw-tools-Bs_bmI6-.js";
30
30
  import { t as ShadowClawActions } from "./shadow-claw-actions-G99P9oxr.js";
31
31
  import { t as ShadowClawCard } from "./shadow-claw-card-D9azfSMu.js";
32
32
  import { t as ShadowClawAccounts } from "./shadow-claw-accounts-03oJ__XC.js";
33
- import { t as ShadowClawControlPlane } from "./shadow-claw-control-plane-DB2qcCFs.js";
34
- import { t as ShadowClawGit } from "./shadow-claw-git-BqrO7cHJ.js";
33
+ import { t as ShadowClawControlPlane } from "./shadow-claw-control-plane-DO6foOLV.js";
34
+ import { t as ShadowClawGit } from "./shadow-claw-git-CHC1H86J.js";
35
35
  import { t as ShadowClawIntegrations } from "./shadow-claw-integrations-Ds-CLPhj.js";
36
- import { t as ShadowClawLlm } from "./shadow-claw-llm-BexUQdYo.js";
36
+ import { t as ShadowClawLlm } from "./shadow-claw-llm-CKXfxd3D.js";
37
37
  import { t as ShadowClawMcpRemote } from "./shadow-claw-mcp-remote-CT5Q-54E.js";
38
- import { t as ShadowClawNetworking } from "./shadow-claw-networking-CfXRGpUD.js";
39
- import { t as ShadowClawNotifications } from "./shadow-claw-notifications-C9KPMgx_.js";
40
- import { t as ShadowClawStorage } from "./shadow-claw-storage-CM-w6mgG.js";
41
- import { t as ShadowClawTaskServer } from "./shadow-claw-task-server-DV4b1g2-.js";
42
- import { t as ShadowClawWebvm } from "./shadow-claw-webvm-DLOb8dMI.js";
38
+ import { t as ShadowClawNetworking } from "./shadow-claw-networking-dpYvfchh.js";
39
+ import { t as ShadowClawNotifications } from "./shadow-claw-notifications-_YeAVPga.js";
40
+ import { t as ShadowClawStorage } from "./shadow-claw-storage-Bv__kXG6.js";
41
+ import { t as ShadowClawTaskServer } from "./shadow-claw-task-server-DNOe8PWK.js";
42
+ import { t as ShadowClawWebvm } from "./shadow-claw-webvm-DYaoL7QY.js";
43
43
  import "./components/index.js";
44
44
  import { base64ToBytes, bytesToBase64 } from "./utils/base64.js";
45
45
  import { t as utils_exports } from "./utils/index.js";
@@ -430,7 +430,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
430
430
  switch (action) {
431
431
  case "send-message": {
432
432
  if (!args.text) throw new Error("Missing text parameter");
433
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
433
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
434
434
  const orch = options.orchestrator || orchestratorStore.orchestrator;
435
435
  const targetGroupId = args.groupId || orchestratorStore.activeGroupId || "br:main";
436
436
  if (orch?.browserChat?.submit) {
@@ -465,7 +465,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
465
465
  return { tasks };
466
466
  }
467
467
  case "read-state": {
468
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
468
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
469
469
  const orch = options.orchestrator || orchestratorStore.orchestrator;
470
470
  return {
471
471
  clientId,
@@ -488,7 +488,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
488
488
  })) };
489
489
  } catch (_) {}
490
490
  try {
491
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
491
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
492
492
  const orch = options.orchestrator || orchestratorStore.orchestrator || (typeof document !== "undefined" ? document.querySelector("shadow-claw")?.orchestrator : null);
493
493
  const activeGroupId = args.groupId || orch?.activeGroupId || orchestratorStore.activeGroupId || "br:main";
494
494
  const group = orchestratorStore.groups.find((g) => g.groupId === activeGroupId);
@@ -513,7 +513,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
513
513
  case "invoke-tool": {
514
514
  if (!args.toolName) throw new Error("Missing toolName parameter");
515
515
  try {
516
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
516
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
517
517
  const { toolsStore } = await import("./tools-DwwB9RBa.js").then((n) => n.n);
518
518
  const orch = options.orchestrator || orchestratorStore.orchestrator || (typeof document !== "undefined" ? document.querySelector("shadow-claw")?.orchestrator : null);
519
519
  const activeGroupId = args.groupId || orch?.activeGroupId || orchestratorStore.activeGroupId || "br:main";
@@ -566,7 +566,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
566
566
  return { result: await ctx.invoke(args.toolName, typeof args.input === "string" ? JSON.parse(args.input) : args.input || {}) };
567
567
  } catch (_) {}
568
568
  }
569
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
569
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
570
570
  const orch = options.orchestrator || orchestratorStore.orchestrator || (typeof document !== "undefined" ? document.querySelector("shadow-claw")?.orchestrator : null);
571
571
  const worker = orch?.agentWorker;
572
572
  if (worker && typeof worker.postMessage === "function") {
@@ -602,7 +602,7 @@ async function executeClientControlCommand(action, args = {}, options = {}) {
602
602
  throw new Error(`Tool ${args.toolName} could not be executed (no context or worker available)`);
603
603
  }
604
604
  case "trigger-backup": {
605
- const { orchestratorStore } = await import("./orchestrator-BtVj9bBB.js").then((n) => n.n);
605
+ const { orchestratorStore } = await import("./orchestrator-ClXbJ4Mb.js").then((n) => n.n);
606
606
  const targetGroupId = args.groupId || options.orchestrator?.activeGroupId || orchestratorStore.activeGroupId || "br:main";
607
607
  const db = await getDb();
608
608
  const { getGroupDir } = await import("./getGroupDir-m0f-ekgX.js").then((n) => n.n);
@@ -722,5 +722,5 @@ async function ensureControlPlaneConnected(options = {}) {
722
722
  }
723
723
 
724
724
  //#endregion
725
- export { ensureControlPlaneConnected, executeClientControlCommand, isControlPlaneEnabled, shouldConnectControlPlane, stopControlPlaneClient };
726
- //# sourceMappingURL=initControlPlane-BIrWmpzc.js.map
725
+ export { detectDeviceLabel, ensureControlPlaneConnected, executeClientControlCommand, getOrCreateControlPlaneClientId, isControlPlaneEnabled, shouldConnectControlPlane, stopControlPlaneClient };
726
+ //# sourceMappingURL=initControlPlane-DnpAzphg.js.map