winclaw 2026.3.21 → 2026.3.23

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 (201) hide show
  1. package/dist/{agents-_gcdm-kb.js → agents-Dc_S8rZ8.js} +4 -4
  2. package/dist/{agents.config-BkgsJJng.js → agents.config-BC6TW53i.js} +1 -1
  3. package/dist/{agents.config-Bw1hbsLj.js → agents.config-ZESYvAuZ.js} +1 -1
  4. package/dist/{auth-choice-sfRzFTug.js → auth-choice-CHCEiG_5.js} +1 -1
  5. package/dist/{auth-choice-i771W71t.js → auth-choice-CSZQYOpt.js} +1 -1
  6. package/dist/{banner-C-01b-if.js → banner-C3BSkrQk.js} +1 -1
  7. package/dist/build-info.json +2 -2
  8. package/dist/bundled/boot-md/handler.js +1 -1
  9. package/dist/bundled/session-memory/handler.js +1 -1
  10. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  11. package/dist/{channel-options-BAvRIwTX.js → channel-options-DG60shRM.js} +1 -1
  12. package/dist/{channel-options-it9Z3dNk.js → channel-options-XEKts1bm.js} +1 -1
  13. package/dist/{channel-web-BiIs0cCf.js → channel-web-XARrFQNi.js} +1 -1
  14. package/dist/{channel-web-CJ_jcZSw.js → channel-web-_2_SqIZ4.js} +1 -1
  15. package/dist/{channels-cli-CNbBNhlO.js → channels-cli-BEXYziVz.js} +6 -6
  16. package/dist/{channels-cli-miFqkj2-.js → channels-cli-ZssJjBmG.js} +6 -6
  17. package/dist/{cli-Da0pNyXg.js → cli-BZZG4J_j.js} +1 -1
  18. package/dist/{cli-BhZvhDWg.js → cli-CY_Senie.js} +1 -1
  19. package/dist/{command-registry-m8nfRV-J.js → command-registry-CWxe1f-O.js} +9 -9
  20. package/dist/{completion-cli-B-8mTxbh.js → completion-cli-BKoxA3-3.js} +2 -2
  21. package/dist/{completion-cli-c9ogb7DR.js → completion-cli-DisKMPGI.js} +1 -1
  22. package/dist/{config-cli-D2natFSq.js → config-cli-Bfwm9TCS.js} +1 -1
  23. package/dist/{config-cli-1ecjxVfC.js → config-cli-FMUUH4Ti.js} +1 -1
  24. package/dist/{configure-B-tOY-wa.js → configure-BJxly9Yt.js} +3 -3
  25. package/dist/{configure-BgqQPO5L.js → configure-DarTg7E_.js} +3 -3
  26. package/dist/{deps-send-whatsapp.runtime-BJV7VcRP.js → deps-send-whatsapp.runtime-CeFobiyN.js} +2 -2
  27. package/dist/{deps-send-whatsapp.runtime-DlmzDIzc.js → deps-send-whatsapp.runtime-D7OYrbTL.js} +2 -2
  28. package/dist/{deps-send-whatsapp.runtime-Dflrvnq-.js → deps-send-whatsapp.runtime-Dk3bVJzk.js} +3 -3
  29. package/dist/{deps-send-whatsapp.runtime-BHJLeHSL.js → deps-send-whatsapp.runtime-iiQJpw-8.js} +3 -3
  30. package/dist/{doctor-completion-DEdT-_9v.js → doctor-completion-BtQY4Eaa.js} +1 -1
  31. package/dist/{doctor-completion-C3SXIoSh.js → doctor-completion-t3rdrQev.js} +1 -1
  32. package/dist/entry.js +2 -2
  33. package/dist/extensionAPI.js +1 -1
  34. package/dist/{gateway-cli-C_4mlmOW.js → gateway-cli-BeABpkZ1.js} +11 -11
  35. package/dist/{gateway-cli-CL5LDNmu.js → gateway-cli-Juhp3APs.js} +11 -11
  36. package/dist/{health-C5a0wlfE.js → health-8quueFaP.js} +1 -1
  37. package/dist/{health-CqiwN5ZR.js → health-BoOzWD1m.js} +1 -1
  38. package/dist/{hooks-cli-C79J_WG7.js → hooks-cli-B475HcKz.js} +2 -2
  39. package/dist/{hooks-cli-DDWnA5Zx.js → hooks-cli-BcKW3j9V.js} +2 -2
  40. package/dist/index.js +6 -6
  41. package/dist/llm-slug-generator.js +1 -1
  42. package/dist/{models-Do96D4zT.js → models-FzoA9YFe.js} +2 -2
  43. package/dist/{models-cli-pblTciC_.js → models-cli-B9FoteUK.js} +3 -3
  44. package/dist/{models-cli-DOfsOmW1.js → models-cli-DPCSWjYD.js} +2 -2
  45. package/dist/{npm-resolution-Bd8dB7rI.js → npm-resolution-DUcSV3Er.js} +1 -1
  46. package/dist/{npm-resolution-DE7xcGkg.js → npm-resolution-Kay_MP5U.js} +1 -1
  47. package/dist/{onboard-CReGZ3G9.js → onboard-DSE0sFKG.js} +2 -2
  48. package/dist/{onboard-channels-DvpqJP6s.js → onboard-channels-DleZdwBe.js} +1 -1
  49. package/dist/{onboard-channels-ljMkIe7O.js → onboard-channels-DuQfbGvH.js} +1 -1
  50. package/dist/{onboard-CXyqQtlq.js → onboard-lgDkrSqS.js} +2 -2
  51. package/dist/{onboarding-BZWA8Nqq.js → onboarding-D713_nF-.js} +3 -3
  52. package/dist/{onboarding-CoH1hPY0.js → onboarding-tBrb0kFS.js} +3 -3
  53. package/dist/{onboarding.finalize-B1qRlV6H.js → onboarding.finalize-DenRnQtC.js} +5 -5
  54. package/dist/{onboarding.finalize-DzRWtkmA.js → onboarding.finalize-femvpEYf.js} +6 -6
  55. package/dist/{pi-embedded-DUO1eQ_J.js → pi-embedded-CPqoXbPh.js} +15 -15
  56. package/dist/{pi-embedded-xAf-RVi5.js → pi-embedded-yo67-7fx.js} +15 -15
  57. package/dist/{plugin-registry-DckyegZB.js → plugin-registry-ByrPvIy8.js} +1 -1
  58. package/dist/{plugin-registry-Cb_XRQUR.js → plugin-registry-C_HMboob.js} +1 -1
  59. package/dist/plugin-sdk/{channel-web-CfZNFYCV.js → channel-web-CZNn3YpA.js} +1 -1
  60. package/dist/plugin-sdk/{channel-web-D02gHjxz.js → channel-web-ut6coWO5.js} +1 -1
  61. package/dist/plugin-sdk/compat.js +50 -50
  62. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-DJlWl-wv.js → deps-send-whatsapp.runtime-7Y4jFeSR.js} +3 -3
  63. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-BxQ5tZO2.js → deps-send-whatsapp.runtime-BYqY0Q9J.js} +3 -3
  64. package/dist/plugin-sdk/imessage.js +2 -2
  65. package/dist/plugin-sdk/index.js +2 -2
  66. package/dist/plugin-sdk/{reply-BEBnUyG7.js → reply-CHTGOm7N.js} +15 -15
  67. package/dist/plugin-sdk/{reply-Cx_4UtvJ.js → reply-CbZPef0p.js} +15 -15
  68. package/dist/plugin-sdk/slack.js +2 -2
  69. package/dist/plugin-sdk/{slash-dispatch.runtime-C74v1zF9.js → slash-dispatch.runtime-CU94t3bC.js} +1 -1
  70. package/dist/plugin-sdk/{slash-dispatch.runtime-DN7TWAWh.js → slash-dispatch.runtime-fens4sxk.js} +1 -1
  71. package/dist/plugin-sdk/{subagent-registry-runtime-CprGCjIU.js → subagent-registry-runtime-CwlC6o7G.js} +1 -1
  72. package/dist/plugin-sdk/{subagent-registry-runtime-9CC9qb9s.js → subagent-registry-runtime-DE56KyD-.js} +1 -1
  73. package/dist/plugin-sdk/telegram.js +2 -2
  74. package/dist/plugin-sdk/{web-D9wJfMr_.js → web-DSbskSAb.js} +2 -2
  75. package/dist/plugin-sdk/{web-D0OZnnn7.js → web-Oo_Fd7RA.js} +2 -2
  76. package/dist/plugin-sdk/whatsapp.js +2 -2
  77. package/dist/plugin-sdk/zalouser.js +2 -2
  78. package/dist/{plugins-cli-BWCjQEMr.js → plugins-cli-CI8xpqVq.js} +2 -2
  79. package/dist/{plugins-cli-C6Oo9R6E.js → plugins-cli-DQCpV91t.js} +2 -2
  80. package/dist/{program-CEJ6CsoR.js → program-N2SbF1HK.js} +7 -7
  81. package/dist/{program-context-EXWtPjXg.js → program-context-DMg-_LjD.js} +17 -17
  82. package/dist/{prompt-select-styled-D-f3R2mt.js → prompt-select-styled-BehogMCm.js} +4 -4
  83. package/dist/{prompt-select-styled-B_AHrNLY.js → prompt-select-styled-pMhNy-Rt.js} +4 -4
  84. package/dist/{provider-auth-helpers-CN4iPBfs.js → provider-auth-helpers-4bL3VgNE.js} +1 -1
  85. package/dist/{provider-auth-helpers-CiXbjGH-.js → provider-auth-helpers-Rpp9Sh_y.js} +1 -1
  86. package/dist/{push-apns-D7Si-92v.js → push-apns-CGUAuXgJ.js} +1 -1
  87. package/dist/{push-apns-BEZdCQsM.js → push-apns-hyDzrrIU.js} +1 -1
  88. package/dist/{register.agent-BDosszM8.js → register.agent-CFrG4s6H.js} +6 -6
  89. package/dist/{register.agent-BjxrirHi.js → register.agent-CTNWQCtt.js} +7 -7
  90. package/dist/{register.configure-MduIRRMt.js → register.configure-DIKLgW8P.js} +7 -7
  91. package/dist/{register.configure-C0B9vKwT.js → register.configure-Di8Uh5GB.js} +7 -7
  92. package/dist/{register.maintenance-CfnzY1OX.js → register.maintenance-Cc675Yxz.js} +7 -7
  93. package/dist/{register.maintenance-BfdiJ7KX.js → register.maintenance-GewLmA3i.js} +8 -8
  94. package/dist/{register.message-D4VYaBqq.js → register.message-BI_R0TJs.js} +2 -2
  95. package/dist/{register.message-BszoJEBm.js → register.message-CtBJO09g.js} +2 -2
  96. package/dist/{register.onboard-CbJU4Y-3.js → register.onboard-45htf4DA.js} +2 -2
  97. package/dist/{register.onboard-CjuT9fKW.js → register.onboard-Jv--xCKB.js} +2 -2
  98. package/dist/{register.setup-DZzf7J04.js → register.setup-Bm99k2pm.js} +2 -2
  99. package/dist/{register.setup-BTTBsCT0.js → register.setup-CqrPLejH.js} +2 -2
  100. package/dist/{register.status-health-sessions-C3Ji8sqv.js → register.status-health-sessions-BBDVWYvb.js} +3 -3
  101. package/dist/{register.status-health-sessions-BKcFfUR6.js → register.status-health-sessions-BmpJln2_.js} +3 -3
  102. package/dist/{register.subclis-2iN-TxPh.js → register.subclis-4LlGcEld.js} +9 -9
  103. package/dist/{reply-KTubTl9h.js → reply-a2GVvnP2.js} +15 -15
  104. package/dist/{run-main-BEtPk_9z.js → run-main-B3eIQkhk.js} +14 -14
  105. package/dist/{server-node-events-BozhXo6J.js → server-node-events-Bn6C-kB6.js} +2 -2
  106. package/dist/{server-node-events-CFcRS-lD.js → server-node-events-CbUk95yd.js} +2 -2
  107. package/dist/{slash-dispatch.runtime-D5Cl7j1v.js → slash-dispatch.runtime-B4quYJn4.js} +1 -1
  108. package/dist/{slash-dispatch.runtime-B0OIPdp3.js → slash-dispatch.runtime-BBH2jQsL.js} +1 -1
  109. package/dist/{slash-dispatch.runtime-DDLolsGY.js → slash-dispatch.runtime-BLQZdvZW.js} +1 -1
  110. package/dist/{slash-dispatch.runtime-DtN2NmXJ.js → slash-dispatch.runtime-wBORF-o1.js} +1 -1
  111. package/dist/{status-B5hylgEQ.js → status-BqpyCRc4.js} +2 -2
  112. package/dist/{status-DClHhy30.js → status-DHIaRvxs.js} +2 -2
  113. package/dist/{subagent-registry-iD-ynHA9.js → subagent-registry-CRAr7csi.js} +15 -15
  114. package/dist/{subagent-registry-runtime-DfMDVaOY.js → subagent-registry-runtime-BfYm3d-n.js} +1 -1
  115. package/dist/{subagent-registry-runtime-CdEy9DKy.js → subagent-registry-runtime-CnPoAflv.js} +1 -1
  116. package/dist/{subagent-registry-runtime-Cv_Xt2cx.js → subagent-registry-runtime-DQb8qzq2.js} +1 -1
  117. package/dist/{subagent-registry-runtime-LH0OBaWN.js → subagent-registry-runtime-sMbEjW_q.js} +1 -1
  118. package/dist/{update-cli-C1nysDmM.js → update-cli-Bk3xkEPl.js} +8 -8
  119. package/dist/{update-cli-Dj_9Bokl.js → update-cli-G1w1hdg4.js} +7 -7
  120. package/dist/{update-runner-BpzbDTnQ.js → update-runner-CgS5D8t8.js} +1 -1
  121. package/dist/{update-runner-BUoHYjl8.js → update-runner-TyDM6-ms.js} +1 -1
  122. package/dist/{web-DxHq9RWt.js → web-7w_9CsnG.js} +2 -2
  123. package/dist/{web-Dbqs3hbC.js → web-B790MBdK.js} +1 -1
  124. package/dist/{web-CodV11ZY.js → web-BPiSo--I.js} +1 -1
  125. package/dist/{web-YBvuT4WS.js → web-BmYQFz4q.js} +2 -2
  126. package/package.json +1 -1
  127. package/dist/plugin-sdk/accounts-B71rIfIG.js +0 -35
  128. package/dist/plugin-sdk/accounts-Bh_CxVlh.js +0 -46
  129. package/dist/plugin-sdk/accounts-BoD7489q.js +0 -288
  130. package/dist/plugin-sdk/active-listener-6CPAmAh-.js +0 -50
  131. package/dist/plugin-sdk/api-key-rotation-DEDhmJAk.js +0 -181
  132. package/dist/plugin-sdk/audio-preflight-CMPZ9BXN.js +0 -69
  133. package/dist/plugin-sdk/audio-transcription-runner-CdADoJed.js +0 -2176
  134. package/dist/plugin-sdk/audit-membership-runtime-CxP2fdgS.js +0 -58
  135. package/dist/plugin-sdk/channel-activity-9ivqqvRB.js +0 -94
  136. package/dist/plugin-sdk/channel-web-CHDoy_Ex.js +0 -2256
  137. package/dist/plugin-sdk/chrome-B1yeIHRg.js +0 -2415
  138. package/dist/plugin-sdk/commands-registry-D-wyzYid.js +0 -1125
  139. package/dist/plugin-sdk/config-CmS6HzGU.js +0 -17959
  140. package/dist/plugin-sdk/deliver-Cy287pZ5.js +0 -1719
  141. package/dist/plugin-sdk/deliver-runtime-BH3fUFW1.js +0 -32
  142. package/dist/plugin-sdk/deps-send-discord.runtime-CLboFQJz.js +0 -23
  143. package/dist/plugin-sdk/deps-send-imessage.runtime-BVlGKP96.js +0 -22
  144. package/dist/plugin-sdk/deps-send-signal.runtime-0640YmBr.js +0 -21
  145. package/dist/plugin-sdk/deps-send-slack.runtime-BqbFKjcg.js +0 -19
  146. package/dist/plugin-sdk/deps-send-telegram.runtime-1a2RXcA2.js +0 -24
  147. package/dist/plugin-sdk/deps-send-whatsapp.runtime-CpOH0wYd.js +0 -57
  148. package/dist/plugin-sdk/diagnostic-DGt5TnqW.js +0 -319
  149. package/dist/plugin-sdk/errors-D7zDdduc.js +0 -54
  150. package/dist/plugin-sdk/fetch-guard-BsatETDz.js +0 -156
  151. package/dist/plugin-sdk/fs-safe-ynDN1AOr.js +0 -352
  152. package/dist/plugin-sdk/image-6No3eiOM.js +0 -2314
  153. package/dist/plugin-sdk/image-ops-CmFoHyKE.js +0 -584
  154. package/dist/plugin-sdk/image-runtime-D57a2W4s.js +0 -25
  155. package/dist/plugin-sdk/ir-CX1ZjDTn.js +0 -1296
  156. package/dist/plugin-sdk/local-roots-DnE8988Y.js +0 -186
  157. package/dist/plugin-sdk/logger-cN8CgKqt.js +0 -1163
  158. package/dist/plugin-sdk/login-hk6_2GSM.js +0 -57
  159. package/dist/plugin-sdk/login-qr-UaVS_Rce.js +0 -320
  160. package/dist/plugin-sdk/manager-CBP2ZQ5W.js +0 -3929
  161. package/dist/plugin-sdk/manager-runtime-3rKbDrJp.js +0 -15
  162. package/dist/plugin-sdk/outbound-B0Ab6CJM.js +0 -212
  163. package/dist/plugin-sdk/outbound-attachment-CktA053B.js +0 -19
  164. package/dist/plugin-sdk/path-alias-guards-WXu8eYZ3.js +0 -43
  165. package/dist/plugin-sdk/paths-Brta7ydd.js +0 -166
  166. package/dist/plugin-sdk/pi-embedded-helpers-BfbOXbe6.js +0 -9627
  167. package/dist/plugin-sdk/pi-model-discovery-ruarR-_j.js +0 -134
  168. package/dist/plugin-sdk/pi-model-discovery-runtime-26px0QfL.js +0 -8
  169. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-VVLpfXqQ.js +0 -354
  170. package/dist/plugin-sdk/plugins-C995vsQz.js +0 -864
  171. package/dist/plugin-sdk/proxy-fetch-iSQrNgP-.js +0 -38
  172. package/dist/plugin-sdk/pw-ai-BJXHSS3q.js +0 -1938
  173. package/dist/plugin-sdk/qmd-manager-A7m15SeJ.js +0 -1448
  174. package/dist/plugin-sdk/query-expansion-DngcFbkC.js +0 -1011
  175. package/dist/plugin-sdk/redact-CIb5VTTO.js +0 -319
  176. package/dist/plugin-sdk/reply-vuWmM3Ra.js +0 -100211
  177. package/dist/plugin-sdk/resolve-outbound-target-CQ6hRY-h.js +0 -40
  178. package/dist/plugin-sdk/run-with-concurrency-BlfAoChN.js +0 -1994
  179. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-YsrzSsFL.js +0 -10
  180. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-DL6Ses5K.js +0 -19
  181. package/dist/plugin-sdk/send-BEy8EUzH.js +0 -414
  182. package/dist/plugin-sdk/send-CWP6COto.js +0 -3135
  183. package/dist/plugin-sdk/send-DQTgt3Cu.js +0 -540
  184. package/dist/plugin-sdk/send-DzpV-k17.js +0 -2587
  185. package/dist/plugin-sdk/send-HuIksBS6.js +0 -503
  186. package/dist/plugin-sdk/session-Cc3Y4mXL.js +0 -169
  187. package/dist/plugin-sdk/skill-commands-p8Zwjnwy.js +0 -353
  188. package/dist/plugin-sdk/skills-k8XpacZa.js +0 -1428
  189. package/dist/plugin-sdk/slash-commands.runtime-ynnr6oUR.js +0 -13
  190. package/dist/plugin-sdk/slash-dispatch.runtime-DOmMrwMj.js +0 -52
  191. package/dist/plugin-sdk/slash-skill-commands.runtime-eAk1jhVy.js +0 -16
  192. package/dist/plugin-sdk/ssrf-DZSsYJgJ.js +0 -202
  193. package/dist/plugin-sdk/store-Cn0oLCP4.js +0 -81
  194. package/dist/plugin-sdk/subagent-registry-runtime-CQ3m7TwQ.js +0 -52
  195. package/dist/plugin-sdk/tables-KWxXnbkq.js +0 -55
  196. package/dist/plugin-sdk/target-errors-Cr0q4o7K.js +0 -195
  197. package/dist/plugin-sdk/thinking-CfA6xbI_.js +0 -1206
  198. package/dist/plugin-sdk/tokens-B-D1YRTV.js +0 -52
  199. package/dist/plugin-sdk/tool-images-CVV7LNFW.js +0 -274
  200. package/dist/plugin-sdk/web-B1Svh1KM.js +0 -56
  201. package/dist/plugin-sdk/whatsapp-actions-CLNhBLJz.js +0 -80
@@ -16366,7 +16366,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
16366
16366
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
16367
16367
  let subagentRegistryRuntimePromise = null;
16368
16368
  function loadSubagentRegistryRuntime() {
16369
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-Cv_Xt2cx.js");
16369
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DQb8qzq2.js");
16370
16370
  return subagentRegistryRuntimePromise;
16371
16371
  }
16372
16372
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -37722,7 +37722,7 @@ let slackSenderRuntimePromise = null;
37722
37722
  let signalSenderRuntimePromise = null;
37723
37723
  let imessageSenderRuntimePromise = null;
37724
37724
  function loadWhatsAppSenderRuntime() {
37725
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-BHJLeHSL.js");
37725
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-iiQJpw-8.js");
37726
37726
  return whatsappSenderRuntimePromise;
37727
37727
  }
37728
37728
  function loadTelegramSenderRuntime() {
@@ -50581,7 +50581,7 @@ function loadSlashCommandsRuntime() {
50581
50581
  return slashCommandsRuntimePromise;
50582
50582
  }
50583
50583
  function loadSlashDispatchRuntime() {
50584
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-DtN2NmXJ.js");
50584
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-wBORF-o1.js");
50585
50585
  return slashDispatchRuntimePromise;
50586
50586
  }
50587
50587
  function loadSlashSkillCommandsRuntime() {
@@ -59190,7 +59190,7 @@ function loadWebLoginQr() {
59190
59190
  return webLoginQrPromise;
59191
59191
  }
59192
59192
  function loadWebChannel() {
59193
- webChannelPromise ??= import("./web-YBvuT4WS.js");
59193
+ webChannelPromise ??= import("./web-BmYQFz4q.js");
59194
59194
  return webChannelPromise;
59195
59195
  }
59196
59196
  function loadWhatsAppActions() {
@@ -64700,7 +64700,7 @@ var GrcClient = class {
64700
64700
 
64701
64701
  //#endregion
64702
64702
  //#region src/agents/tools/grc-task-tool.ts
64703
- const GRC_DEFAULT_URL$10 = "https://grc.myaiportal.net";
64703
+ const GRC_DEFAULT_URL$10 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
64704
64704
  const GrcTaskToolSchema = Type.Object({
64705
64705
  title: Type.String({ description: "Task title (required)" }),
64706
64706
  description: Type.Optional(Type.String({ description: "Detailed task description" })),
@@ -64852,7 +64852,7 @@ function readRoleIdFromConfigState$1() {
64852
64852
 
64853
64853
  //#endregion
64854
64854
  //#region src/agents/tools/grc-task-update-tool.ts
64855
- const GRC_DEFAULT_URL$9 = "https://grc.myaiportal.net";
64855
+ const GRC_DEFAULT_URL$9 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
64856
64856
  const GrcTaskUpdateToolSchema = Type.Object({
64857
64857
  task_id: Type.String({ description: "The GRC task ID to update (required)" }),
64858
64858
  status: stringEnum(["in_progress", "blocked"], { description: "New task status: \"in_progress\" to begin/resume work, \"blocked\" to signal a blocker" }),
@@ -64917,7 +64917,7 @@ PARAMETERS:
64917
64917
 
64918
64918
  //#endregion
64919
64919
  //#region src/agents/tools/grc-task-complete-tool.ts
64920
- const GRC_DEFAULT_URL$8 = "https://grc.myaiportal.net";
64920
+ const GRC_DEFAULT_URL$8 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
64921
64921
  const GrcTaskCompleteToolSchema = Type.Object({
64922
64922
  task_id: Type.String({ description: "The GRC task ID to submit for review (required)" }),
64923
64923
  result_summary: Type.String({ description: "Final results summary describing what was accomplished (required)" }),
@@ -64989,7 +64989,7 @@ The task creator will be notified and will either approve or request rework.`,
64989
64989
 
64990
64990
  //#endregion
64991
64991
  //#region src/agents/tools/grc-task-accept-tool.ts
64992
- const GRC_DEFAULT_URL$7 = "https://grc.myaiportal.net";
64992
+ const GRC_DEFAULT_URL$7 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
64993
64993
  const GrcTaskAcceptToolSchema = Type.Object({
64994
64994
  task_id: Type.String({ description: "The GRC task ID to accept and complete (required)" }),
64995
64995
  comment: Type.Optional(Type.String({ description: "Optional acceptance comment" }))
@@ -65067,7 +65067,7 @@ Use grc_task_reject instead if rework is needed.`,
65067
65067
 
65068
65068
  //#endregion
65069
65069
  //#region src/agents/tools/grc-task-reject-tool.ts
65070
- const GRC_DEFAULT_URL$6 = "https://grc.myaiportal.net";
65070
+ const GRC_DEFAULT_URL$6 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65071
65071
  const GrcTaskRejectToolSchema = Type.Object({
65072
65072
  task_id: Type.String({ description: "The GRC task ID to reject and return for rework (required)" }),
65073
65073
  feedback: Type.String({
@@ -65133,7 +65133,7 @@ Use grc_task_accept instead if results are satisfactory.`,
65133
65133
 
65134
65134
  //#endregion
65135
65135
  //#region src/agents/tools/grc-relay-send-tool.ts
65136
- const GRC_DEFAULT_URL$5 = "https://grc.myaiportal.net";
65136
+ const GRC_DEFAULT_URL$5 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65137
65137
  const MESSAGE_TYPES = [
65138
65138
  "text",
65139
65139
  "directive",
@@ -65243,7 +65243,7 @@ otherwise queued for delivery when the target reconnects.`,
65243
65243
 
65244
65244
  //#endregion
65245
65245
  //#region src/agents/tools/grc-broadcast-tool.ts
65246
- const GRC_DEFAULT_URL$4 = "https://grc.myaiportal.net";
65246
+ const GRC_DEFAULT_URL$4 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65247
65247
  const GrcBroadcastSchema = Type.Object({
65248
65248
  subject: Type.String({ description: "Broadcast subject/title" }),
65249
65249
  message: Type.String({ description: "The broadcast message content" }),
@@ -65324,7 +65324,7 @@ Returns a summary showing how many agents received the message immediately vs qu
65324
65324
 
65325
65325
  //#endregion
65326
65326
  //#region src/agents/tools/grc-roster-tool.ts
65327
- const GRC_DEFAULT_URL$3 = "https://grc.myaiportal.net";
65327
+ const GRC_DEFAULT_URL$3 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65328
65328
  const GrcRosterSchema = Type.Object({}, { additionalProperties: false });
65329
65329
  function createGrcRosterTool(options) {
65330
65330
  return {
@@ -65371,7 +65371,7 @@ No parameters required — simply call this tool to get the current roster.`,
65371
65371
 
65372
65372
  //#endregion
65373
65373
  //#region src/agents/tools/grc-publish-tool.ts
65374
- const GRC_DEFAULT_URL$2 = "https://grc.myaiportal.net";
65374
+ const GRC_DEFAULT_URL$2 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65375
65375
  const GrcPublishSchema = Type.Object({
65376
65376
  asset_type: optionalStringEnum(["capsule", "gene"], { description: "Asset type: \"capsule\" for reusable solutions, \"gene\" for evolved behaviors" }),
65377
65377
  asset_id: Type.String({ description: "Unique asset identifier (e.g. capsule-finance-budget-template)" }),
@@ -65448,7 +65448,7 @@ PARAMETERS:
65448
65448
 
65449
65449
  //#endregion
65450
65450
  //#region src/agents/tools/grc-fetch-asset-tool.ts
65451
- const GRC_DEFAULT_URL$1 = "https://grc.myaiportal.net";
65451
+ const GRC_DEFAULT_URL$1 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65452
65452
  const GrcFetchAssetSchema = Type.Object({
65453
65453
  asset_id: Type.Optional(Type.String({ description: "Asset identifier to fetch (e.g. capsule-finance-budget-template)" })),
65454
65454
  search_query: Type.Optional(Type.String({ description: "Search term to find assets by signals or tags" })),
@@ -65523,7 +65523,7 @@ MODES:
65523
65523
 
65524
65524
  //#endregion
65525
65525
  //#region src/agents/tools/grc-community-tool.ts
65526
- const GRC_DEFAULT_URL = "https://grc.myaiportal.net";
65526
+ const GRC_DEFAULT_URL = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
65527
65527
  const PostSchema = Type.Object({
65528
65528
  channel: Type.String({ description: "Channel name (e.g. evolution-showcase, announcements, general)" }),
65529
65529
  post_type: optionalStringEnum([
@@ -27,7 +27,7 @@ import "./logging-CFvkxgcX.js";
27
27
  import "./accounts-CLKFSM00.js";
28
28
  import "./send-DTvtOsK3.js";
29
29
  import "./send-3vnK2por.js";
30
- import "./subagent-registry-iD-ynHA9.js";
30
+ import "./subagent-registry-CRAr7csi.js";
31
31
  import "./paths-ByCv35uy.js";
32
32
  import "./chat-envelope-DDCB7eZC.js";
33
33
  import "./client-DCxDsURZ.js";
@@ -110,9 +110,9 @@ import "./progress-Dtl-ttAH.js";
110
110
  import { t as ensureWinClawCliOnPath } from "./path-env-BLBb84HZ.js";
111
111
  import "./note-Emtc1zzf.js";
112
112
  import "./issue-format-DCF2SXK_.js";
113
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DckyegZB.js";
113
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-ByrPvIy8.js";
114
114
  import { t as assertSupportedRuntime } from "./runtime-guard-H-DjZ1G4.js";
115
- import { t as emitCliBanner } from "./banner-C-01b-if.js";
115
+ import { t as emitCliBanner } from "./banner-C3BSkrQk.js";
116
116
  import "./doctor-config-flow-D6rEqOwb.js";
117
117
  import { n as ensureConfigReady } from "./config-guard-DlzKrdcR.js";
118
118
  import process$1 from "node:process";
@@ -127,7 +127,7 @@ const routeHealth = {
127
127
  const verbose = getVerboseFlag(argv, { includeDebug: true });
128
128
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
129
129
  if (timeoutMs === null) return false;
130
- const { healthCommand } = await import("./health-C5a0wlfE.js").then((n) => n.i);
130
+ const { healthCommand } = await import("./health-8quueFaP.js").then((n) => n.i);
131
131
  await healthCommand({
132
132
  json,
133
133
  timeoutMs,
@@ -147,7 +147,7 @@ const routeStatus = {
147
147
  const verbose = getVerboseFlag(argv, { includeDebug: true });
148
148
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
149
149
  if (timeoutMs === null) return false;
150
- const { statusCommand } = await import("./status-B5hylgEQ.js").then((n) => n.t);
150
+ const { statusCommand } = await import("./status-BqpyCRc4.js").then((n) => n.t);
151
151
  await statusCommand({
152
152
  json,
153
153
  deep,
@@ -186,7 +186,7 @@ const routeAgentsList = {
186
186
  run: async (argv) => {
187
187
  const json = hasFlag(argv, "--json");
188
188
  const bindings = hasFlag(argv, "--bindings");
189
- const { agentsListCommand } = await import("./agents-_gcdm-kb.js").then((n) => n.t);
189
+ const { agentsListCommand } = await import("./agents-Dc_S8rZ8.js").then((n) => n.t);
190
190
  await agentsListCommand({
191
191
  json,
192
192
  bindings
@@ -252,7 +252,7 @@ const routes = [
252
252
  const pathArg = positionals[0];
253
253
  if (!pathArg) return false;
254
254
  const json = hasFlag(argv, "--json");
255
- const { runConfigGet } = await import("./config-cli-1ecjxVfC.js");
255
+ const { runConfigGet } = await import("./config-cli-FMUUH4Ti.js");
256
256
  await runConfigGet({
257
257
  path: pathArg,
258
258
  json
@@ -267,7 +267,7 @@ const routes = [
267
267
  if (!positionals || positionals.length !== 1) return false;
268
268
  const pathArg = positionals[0];
269
269
  if (!pathArg) return false;
270
- const { runConfigUnset } = await import("./config-cli-1ecjxVfC.js");
270
+ const { runConfigUnset } = await import("./config-cli-FMUUH4Ti.js");
271
271
  await runConfigUnset({ path: pathArg });
272
272
  return true;
273
273
  }
@@ -281,7 +281,7 @@ const routes = [
281
281
  const local = hasFlag(argv, "--local");
282
282
  const json = hasFlag(argv, "--json");
283
283
  const plain = hasFlag(argv, "--plain");
284
- const { modelsListCommand } = await import("./models-Do96D4zT.js").then((n) => n.t);
284
+ const { modelsListCommand } = await import("./models-FzoA9YFe.js").then((n) => n.t);
285
285
  await modelsListCommand({
286
286
  all,
287
287
  local,
@@ -312,7 +312,7 @@ const routes = [
312
312
  const plain = hasFlag(argv, "--plain");
313
313
  const check = hasFlag(argv, "--check");
314
314
  const probe = hasFlag(argv, "--probe");
315
- const { modelsStatusCommand } = await import("./models-Do96D4zT.js").then((n) => n.t);
315
+ const { modelsStatusCommand } = await import("./models-FzoA9YFe.js").then((n) => n.t);
316
316
  await modelsStatusCommand({
317
317
  json,
318
318
  plain,
@@ -396,7 +396,7 @@ async function runCli(argv = process$1.argv) {
396
396
  assertSupportedRuntime();
397
397
  if (await tryRouteCli(normalizedArgv)) return;
398
398
  enableConsoleCapture();
399
- const { buildProgram } = await import("./program-CEJ6CsoR.js");
399
+ const { buildProgram } = await import("./program-N2SbF1HK.js");
400
400
  const program = buildProgram();
401
401
  installUnhandledRejectionHandler();
402
402
  process$1.on("uncaughtException", (error) => {
@@ -409,10 +409,10 @@ async function runCli(argv = process$1.argv) {
409
409
  const { getProgramContext } = await import("./program-context-gd4x_qEm.js").then((n) => n.n);
410
410
  const ctx = getProgramContext(program);
411
411
  if (ctx) {
412
- const { registerCoreCliByName } = await import("./command-registry-m8nfRV-J.js").then((n) => n.t);
412
+ const { registerCoreCliByName } = await import("./command-registry-CWxe1f-O.js").then((n) => n.t);
413
413
  await registerCoreCliByName(program, ctx, primary, parseArgv);
414
414
  }
415
- const { registerSubCliByName } = await import("./register.subclis-2iN-TxPh.js").then((n) => n.a);
415
+ const { registerSubCliByName } = await import("./register.subclis-4LlGcEld.js").then((n) => n.a);
416
416
  await registerSubCliByName(program, primary);
417
417
  }
418
418
  if (!shouldSkipPluginCommandRegistration({
@@ -420,7 +420,7 @@ async function runCli(argv = process$1.argv) {
420
420
  primary,
421
421
  hasBuiltinPrimary: primary !== null && program.commands.some((command) => command.name() === primary)
422
422
  })) {
423
- const { registerPluginCliCommands } = await import("./cli-Da0pNyXg.js");
423
+ const { registerPluginCliCommands } = await import("./cli-BZZG4J_j.js");
424
424
  const { loadConfig } = await import("./auth-profiles-CmoHF97e.js").then((n) => n.F);
425
425
  registerPluginCliCommands(program, loadConfig());
426
426
  }
@@ -28,7 +28,7 @@ import "./logging-CFvkxgcX.js";
28
28
  import "./accounts-CLKFSM00.js";
29
29
  import "./send-DTvtOsK3.js";
30
30
  import "./send-3vnK2por.js";
31
- import { Et as resolveOutboundTarget, Jn as requestHeartbeatNow, L as createOutboundSendDeps, N as agentCommandFromIngress, Wn as enqueueSystemEvent, _n as buildOutboundSessionContext } from "./subagent-registry-iD-ynHA9.js";
31
+ import { Et as resolveOutboundTarget, Jn as requestHeartbeatNow, L as createOutboundSendDeps, N as agentCommandFromIngress, Wn as enqueueSystemEvent, _n as buildOutboundSessionContext } from "./subagent-registry-CRAr7csi.js";
32
32
  import "./paths-ByCv35uy.js";
33
33
  import "./chat-envelope-DDCB7eZC.js";
34
34
  import "./client-DCxDsURZ.js";
@@ -108,7 +108,7 @@ import "./links-Bcv6_maG.js";
108
108
  import "./cli-utils-BlpNlYVq.js";
109
109
  import "./help-format-DqamOwoM.js";
110
110
  import "./progress-Dtl-ttAH.js";
111
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-BEZdCQsM.js";
111
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-hyDzrrIU.js";
112
112
  import { randomUUID } from "node:crypto";
113
113
 
114
114
  //#region src/gateway/server-node-events.ts
@@ -2,7 +2,7 @@ import "./paths-D358qawm.js";
2
2
  import "./globals-mxjDvm3x.js";
3
3
  import "./utils-D2mWpsBR.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import { D as loadSessionEntry, Lt as createOutboundSendDeps, Nt as agentCommandFromIngress, O as pruneLegacyStoreKeys, Rn as resolveOutboundTarget, Zr as requestHeartbeatNow, k as resolveGatewaySessionStoreTarget, or as buildOutboundSessionContext, qr as enqueueSystemEvent } from "./reply-KTubTl9h.js";
5
+ import { D as loadSessionEntry, Lt as createOutboundSendDeps, Nt as agentCommandFromIngress, O as pruneLegacyStoreKeys, Rn as resolveOutboundTarget, Zr as requestHeartbeatNow, k as resolveGatewaySessionStoreTarget, or as buildOutboundSessionContext, qr as enqueueSystemEvent } from "./reply-a2GVvnP2.js";
6
6
  import "./agent-scope-BjM05Snq.js";
7
7
  import { d as defaultRuntime } from "./subsystem-notCuUgs.js";
8
8
  import { l as normalizeMainKey, p as scopedHeartbeatWakeOptions } from "./session-key-CIXZm7v4.js";
@@ -110,7 +110,7 @@ import "./help-format-BLEVId2S.js";
110
110
  import "./progress-BikJvgBA.js";
111
111
  import "./server-lifecycle-CiI6yOKH.js";
112
112
  import "./stagger-BU0UZwZh.js";
113
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-D7Si-92v.js";
113
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-CGUAuXgJ.js";
114
114
  import { randomUUID } from "node:crypto";
115
115
 
116
116
  //#region src/gateway/server-node-events.ts
@@ -26,7 +26,7 @@ import "./logging-CFvkxgcX.js";
26
26
  import "./accounts-CLKFSM00.js";
27
27
  import "./send-DTvtOsK3.js";
28
28
  import "./send-3vnK2por.js";
29
- import { C as recordInboundSessionMetaSafe, Ct as resolveAgentRoute, W as createReplyPrefixOptions, cr as finalizeInboundContext, tt as dispatchReplyWithDispatcher, w as deliverSlackSlashReplies } from "./subagent-registry-iD-ynHA9.js";
29
+ import { C as recordInboundSessionMetaSafe, Ct as resolveAgentRoute, W as createReplyPrefixOptions, cr as finalizeInboundContext, tt as dispatchReplyWithDispatcher, w as deliverSlackSlashReplies } from "./subagent-registry-CRAr7csi.js";
30
30
  import "./paths-ByCv35uy.js";
31
31
  import "./chat-envelope-DDCB7eZC.js";
32
32
  import "./client-DCxDsURZ.js";
@@ -2,7 +2,7 @@ import "./run-with-concurrency-GbBlH2It.js";
2
2
  import "./paths-3zpvpr1V.js";
3
3
  import "./logger-BYHR8bcX.js";
4
4
  import "./model-selection-DCOfPdhN.js";
5
- import { D as resolveAgentRoute, P as finalizeInboundContext, a as createReplyPrefixOptions, b as dispatchReplyWithDispatcher, n as recordInboundSessionMetaSafe, r as deliverSlackSlashReplies } from "./pi-embedded-xAf-RVi5.js";
5
+ import { D as resolveAgentRoute, P as finalizeInboundContext, a as createReplyPrefixOptions, b as dispatchReplyWithDispatcher, n as recordInboundSessionMetaSafe, r as deliverSlackSlashReplies } from "./pi-embedded-yo67-7fx.js";
6
6
  import "./github-copilot-token-C-HHmlE6.js";
7
7
  import "./thinking-bn_HIbhN.js";
8
8
  import "./tokens-BjTxlE27.js";
@@ -8,7 +8,7 @@ import "./github-copilot-token-BPV26Xlc.js";
8
8
  import "./legacy-names-BfbtBVxA.js";
9
9
  import "./thinking-leUv0tOz.js";
10
10
  import "./tokens-DKL-qP0N.js";
11
- import { I as finalizeInboundContext, S as dispatchReplyWithDispatcher, k as resolveAgentRoute, n as recordInboundSessionMetaSafe, r as deliverSlackSlashReplies, s as createReplyPrefixOptions } from "./pi-embedded-DUO1eQ_J.js";
11
+ import { I as finalizeInboundContext, S as dispatchReplyWithDispatcher, k as resolveAgentRoute, n as recordInboundSessionMetaSafe, r as deliverSlackSlashReplies, s as createReplyPrefixOptions } from "./pi-embedded-CPqoXbPh.js";
12
12
  import "./plugins-7rATz3L_.js";
13
13
  import "./accounts-C4E8dXY5.js";
14
14
  import "./send-CM2xsD1-.js";
@@ -2,7 +2,7 @@ import "./paths-D358qawm.js";
2
2
  import "./globals-mxjDvm3x.js";
3
3
  import "./utils-D2mWpsBR.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import { Fn as resolveAgentRoute, Sn as dispatchReplyWithDispatcher, gt as recordInboundSessionMetaSafe, hi as finalizeInboundContext, un as createReplyPrefixOptions, wt as deliverSlackSlashReplies } from "./reply-KTubTl9h.js";
5
+ import { Fn as resolveAgentRoute, Sn as dispatchReplyWithDispatcher, gt as recordInboundSessionMetaSafe, hi as finalizeInboundContext, un as createReplyPrefixOptions, wt as deliverSlackSlashReplies } from "./reply-a2GVvnP2.js";
6
6
  import "./agent-scope-BjM05Snq.js";
7
7
  import "./subsystem-notCuUgs.js";
8
8
  import "./winclaw-root-ExuHY0xi.js";
@@ -10,7 +10,7 @@ import { t as VERSION } from "./version-TiOyTfO4.js";
10
10
  import { t as buildWorkspaceSkillStatus } from "./skills-status-Bu28FGtt.js";
11
11
  import { X as resolveFreshSessionTotalTokens, o as loadSessionStore, tt as resolveMainSessionKey } from "./sessions-Cvvux3S6.js";
12
12
  import { n as listChannelPlugins } from "./plugins-C1OgLvb4.js";
13
- import { An as loadProviderUsageSummary, Bn as formatChannelAllowFrom, Hn as resolveChannelAccountEnabled, Rn as buildChannelSummary, Rt as readRestartSentinel, Vn as resolveChannelAccountConfigured, jn as formatUsageReportLines, qn as peekSystemEvents, zn as buildChannelAccountSnapshot, zt as summarizeRestartSentinel } from "./subagent-registry-iD-ynHA9.js";
13
+ import { An as loadProviderUsageSummary, Bn as formatChannelAllowFrom, Hn as resolveChannelAccountEnabled, Rn as buildChannelSummary, Rt as readRestartSentinel, Vn as resolveChannelAccountConfigured, jn as formatUsageReportLines, qn as peekSystemEvents, zn as buildChannelAccountSnapshot, zt as summarizeRestartSentinel } from "./subagent-registry-CRAr7csi.js";
14
14
  import { c as resolveStorePath } from "./paths-ByCv35uy.js";
15
15
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-BLyRfBMl.js";
16
16
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-CB_lUnsU.js";
@@ -32,7 +32,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-CcDMsddE.j
32
32
  import { t as probeGateway } from "./probe-D3f6QMfy.js";
33
33
  import { t as readLastGatewayErrorLine } from "./diagnostics-KfpqzhsS.js";
34
34
  import { t as renderTable } from "./table-BaxY_3r9.js";
35
- import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-C5a0wlfE.js";
35
+ import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-8quueFaP.js";
36
36
  import { a as formatGitInstallLabel, g as resolveUpdateChannelDisplay, m as normalizeUpdateChannel, n as checkUpdateStatus, t as resolveDefaultChannelAccountContext } from "./channel-account-context-B4ofKr9t.js";
37
37
  import { i as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-DdcsBl_-.js";
38
38
  import { t as resolveNodeService } from "./node-service-CLtiUeNO.js";
@@ -1,6 +1,6 @@
1
1
  import { u as resolveGatewayPort } from "./paths-D358qawm.js";
2
2
  import { f as isRich, n as info, p as theme } from "./globals-mxjDvm3x.js";
3
- import { A as resolveSessionModelRef, C as classifySessionKey, G as readRestartSentinel, K as summarizeRestartSentinel, Qt as resolveContextTokensForModel, Xr as peekSystemEvents, bt as formatUsageReportLines, c as buildChannelAccountSnapshot, d as resolveChannelAccountEnabled, l as formatChannelAllowFrom, s as buildChannelSummary, u as resolveChannelAccountConfigured, w as listAgentsForGateway, yt as loadProviderUsageSummary } from "./reply-KTubTl9h.js";
3
+ import { A as resolveSessionModelRef, C as classifySessionKey, G as readRestartSentinel, K as summarizeRestartSentinel, Qt as resolveContextTokensForModel, Xr as peekSystemEvents, bt as formatUsageReportLines, c as buildChannelAccountSnapshot, d as resolveChannelAccountEnabled, l as formatChannelAllowFrom, s as buildChannelSummary, u as resolveChannelAccountConfigured, w as listAgentsForGateway, yt as loadProviderUsageSummary } from "./reply-a2GVvnP2.js";
4
4
  import { u as resolveAgentWorkspaceDir } from "./agent-scope-BjM05Snq.js";
5
5
  import { E as parseAgentSessionKey } from "./session-key-CIXZm7v4.js";
6
6
  import { t as resolveWinClawPackageRoot } from "./winclaw-root-ExuHY0xi.js";
@@ -31,7 +31,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-HRho5EYb.j
31
31
  import { t as probeGateway } from "./probe-C9wPn2Ea.js";
32
32
  import { t as readLastGatewayErrorLine } from "./diagnostics-DL2w3coK.js";
33
33
  import { t as renderTable } from "./table-DiQF-UFj.js";
34
- import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CqiwN5ZR.js";
34
+ import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-BoOzWD1m.js";
35
35
  import { a as formatGitInstallLabel, g as resolveUpdateChannelDisplay, m as normalizeUpdateChannel, n as checkUpdateStatus, t as resolveDefaultChannelAccountContext } from "./channel-account-context-DMSK5tU0.js";
36
36
  import { i as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-C9DKQppY.js";
37
37
  import { t as resolveNodeService } from "./node-service-BccUWEHj.js";
@@ -30223,7 +30223,7 @@ var GrcClient = class {
30223
30223
 
30224
30224
  //#endregion
30225
30225
  //#region src/agents/tools/grc-task-tool.ts
30226
- const GRC_DEFAULT_URL$10 = "https://grc.myaiportal.net";
30226
+ const GRC_DEFAULT_URL$10 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30227
30227
  const GrcTaskToolSchema = Type.Object({
30228
30228
  title: Type.String({ description: "Task title (required)" }),
30229
30229
  description: Type.Optional(Type.String({ description: "Detailed task description" })),
@@ -30375,7 +30375,7 @@ function readRoleIdFromConfigState$1() {
30375
30375
 
30376
30376
  //#endregion
30377
30377
  //#region src/agents/tools/grc-task-update-tool.ts
30378
- const GRC_DEFAULT_URL$9 = "https://grc.myaiportal.net";
30378
+ const GRC_DEFAULT_URL$9 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30379
30379
  const GrcTaskUpdateToolSchema = Type.Object({
30380
30380
  task_id: Type.String({ description: "The GRC task ID to update (required)" }),
30381
30381
  status: stringEnum(["in_progress", "blocked"], { description: "New task status: \"in_progress\" to begin/resume work, \"blocked\" to signal a blocker" }),
@@ -30440,7 +30440,7 @@ PARAMETERS:
30440
30440
 
30441
30441
  //#endregion
30442
30442
  //#region src/agents/tools/grc-task-complete-tool.ts
30443
- const GRC_DEFAULT_URL$8 = "https://grc.myaiportal.net";
30443
+ const GRC_DEFAULT_URL$8 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30444
30444
  const GrcTaskCompleteToolSchema = Type.Object({
30445
30445
  task_id: Type.String({ description: "The GRC task ID to submit for review (required)" }),
30446
30446
  result_summary: Type.String({ description: "Final results summary describing what was accomplished (required)" }),
@@ -30512,7 +30512,7 @@ The task creator will be notified and will either approve or request rework.`,
30512
30512
 
30513
30513
  //#endregion
30514
30514
  //#region src/agents/tools/grc-task-accept-tool.ts
30515
- const GRC_DEFAULT_URL$7 = "https://grc.myaiportal.net";
30515
+ const GRC_DEFAULT_URL$7 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30516
30516
  const GrcTaskAcceptToolSchema = Type.Object({
30517
30517
  task_id: Type.String({ description: "The GRC task ID to accept and complete (required)" }),
30518
30518
  comment: Type.Optional(Type.String({ description: "Optional acceptance comment" }))
@@ -30590,7 +30590,7 @@ Use grc_task_reject instead if rework is needed.`,
30590
30590
 
30591
30591
  //#endregion
30592
30592
  //#region src/agents/tools/grc-task-reject-tool.ts
30593
- const GRC_DEFAULT_URL$6 = "https://grc.myaiportal.net";
30593
+ const GRC_DEFAULT_URL$6 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30594
30594
  const GrcTaskRejectToolSchema = Type.Object({
30595
30595
  task_id: Type.String({ description: "The GRC task ID to reject and return for rework (required)" }),
30596
30596
  feedback: Type.String({
@@ -30656,7 +30656,7 @@ Use grc_task_accept instead if results are satisfactory.`,
30656
30656
 
30657
30657
  //#endregion
30658
30658
  //#region src/agents/tools/grc-relay-send-tool.ts
30659
- const GRC_DEFAULT_URL$5 = "https://grc.myaiportal.net";
30659
+ const GRC_DEFAULT_URL$5 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30660
30660
  const MESSAGE_TYPES = [
30661
30661
  "text",
30662
30662
  "directive",
@@ -30766,7 +30766,7 @@ otherwise queued for delivery when the target reconnects.`,
30766
30766
 
30767
30767
  //#endregion
30768
30768
  //#region src/agents/tools/grc-broadcast-tool.ts
30769
- const GRC_DEFAULT_URL$4 = "https://grc.myaiportal.net";
30769
+ const GRC_DEFAULT_URL$4 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30770
30770
  const GrcBroadcastSchema = Type.Object({
30771
30771
  subject: Type.String({ description: "Broadcast subject/title" }),
30772
30772
  message: Type.String({ description: "The broadcast message content" }),
@@ -30847,7 +30847,7 @@ Returns a summary showing how many agents received the message immediately vs qu
30847
30847
 
30848
30848
  //#endregion
30849
30849
  //#region src/agents/tools/grc-roster-tool.ts
30850
- const GRC_DEFAULT_URL$3 = "https://grc.myaiportal.net";
30850
+ const GRC_DEFAULT_URL$3 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30851
30851
  const GrcRosterSchema = Type.Object({}, { additionalProperties: false });
30852
30852
  function createGrcRosterTool(options) {
30853
30853
  return {
@@ -30894,7 +30894,7 @@ No parameters required — simply call this tool to get the current roster.`,
30894
30894
 
30895
30895
  //#endregion
30896
30896
  //#region src/agents/tools/grc-publish-tool.ts
30897
- const GRC_DEFAULT_URL$2 = "https://grc.myaiportal.net";
30897
+ const GRC_DEFAULT_URL$2 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30898
30898
  const GrcPublishSchema = Type.Object({
30899
30899
  asset_type: optionalStringEnum(["capsule", "gene"], { description: "Asset type: \"capsule\" for reusable solutions, \"gene\" for evolved behaviors" }),
30900
30900
  asset_id: Type.String({ description: "Unique asset identifier (e.g. capsule-finance-budget-template)" }),
@@ -30971,7 +30971,7 @@ PARAMETERS:
30971
30971
 
30972
30972
  //#endregion
30973
30973
  //#region src/agents/tools/grc-fetch-asset-tool.ts
30974
- const GRC_DEFAULT_URL$1 = "https://grc.myaiportal.net";
30974
+ const GRC_DEFAULT_URL$1 = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
30975
30975
  const GrcFetchAssetSchema = Type.Object({
30976
30976
  asset_id: Type.Optional(Type.String({ description: "Asset identifier to fetch (e.g. capsule-finance-budget-template)" })),
30977
30977
  search_query: Type.Optional(Type.String({ description: "Search term to find assets by signals or tags" })),
@@ -31046,7 +31046,7 @@ MODES:
31046
31046
 
31047
31047
  //#endregion
31048
31048
  //#region src/agents/tools/grc-community-tool.ts
31049
- const GRC_DEFAULT_URL = "https://grc.myaiportal.net";
31049
+ const GRC_DEFAULT_URL = process.env.WINCLAW_GRC_URL ?? "https://grc.myaiportal.net";
31050
31050
  const PostSchema = Type.Object({
31051
31051
  channel: Type.String({ description: "Channel name (e.g. evolution-showcase, announcements, general)" }),
31052
31052
  post_type: optionalStringEnum([
@@ -57427,7 +57427,7 @@ let slackSenderRuntimePromise = null;
57427
57427
  let signalSenderRuntimePromise = null;
57428
57428
  let imessageSenderRuntimePromise = null;
57429
57429
  function loadWhatsAppSenderRuntime() {
57430
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-Dflrvnq-.js");
57430
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-Dk3bVJzk.js");
57431
57431
  return whatsappSenderRuntimePromise;
57432
57432
  }
57433
57433
  function loadTelegramSenderRuntime() {
@@ -70252,7 +70252,7 @@ function loadSlashCommandsRuntime() {
70252
70252
  return slashCommandsRuntimePromise;
70253
70253
  }
70254
70254
  function loadSlashDispatchRuntime() {
70255
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-D5Cl7j1v.js");
70255
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-B4quYJn4.js");
70256
70256
  return slashDispatchRuntimePromise;
70257
70257
  }
70258
70258
  function loadSlashSkillCommandsRuntime() {
@@ -76556,7 +76556,7 @@ function loadWebLoginQr() {
76556
76556
  return webLoginQrPromise;
76557
76557
  }
76558
76558
  function loadWebChannel() {
76559
- webChannelPromise ??= import("./web-DxHq9RWt.js");
76559
+ webChannelPromise ??= import("./web-7w_9CsnG.js");
76560
76560
  return webChannelPromise;
76561
76561
  }
76562
76562
  function loadWhatsAppActions() {
@@ -89215,7 +89215,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
89215
89215
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
89216
89216
  let subagentRegistryRuntimePromise = null;
89217
89217
  function loadSubagentRegistryRuntime() {
89218
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-LH0OBaWN.js");
89218
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-sMbEjW_q.js");
89219
89219
  return subagentRegistryRuntimePromise;
89220
89220
  }
89221
89221
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -8,7 +8,7 @@ import "./github-copilot-token-BPV26Xlc.js";
8
8
  import "./legacy-names-BfbtBVxA.js";
9
9
  import "./thinking-leUv0tOz.js";
10
10
  import "./tokens-DKL-qP0N.js";
11
- import { G as resolveRequesterForChildSession, H as countPendingDescendantRuns, U as countPendingDescendantRunsExcludingRun, V as countActiveDescendantRuns, W as isSubagentSessionRunActive } from "./pi-embedded-DUO1eQ_J.js";
11
+ import { G as resolveRequesterForChildSession, H as countPendingDescendantRuns, U as countPendingDescendantRunsExcludingRun, V as countActiveDescendantRuns, W as isSubagentSessionRunActive } from "./pi-embedded-CPqoXbPh.js";
12
12
  import "./plugins-7rATz3L_.js";
13
13
  import "./accounts-C4E8dXY5.js";
14
14
  import "./send-CM2xsD1-.js";
@@ -2,7 +2,7 @@ import "./run-with-concurrency-GbBlH2It.js";
2
2
  import "./paths-3zpvpr1V.js";
3
3
  import "./logger-BYHR8bcX.js";
4
4
  import "./model-selection-DCOfPdhN.js";
5
- import { B as countPendingDescendantRuns, H as isSubagentSessionRunActive, U as resolveRequesterForChildSession, V as countPendingDescendantRunsExcludingRun, z as countActiveDescendantRuns } from "./pi-embedded-xAf-RVi5.js";
5
+ import { B as countPendingDescendantRuns, H as isSubagentSessionRunActive, U as resolveRequesterForChildSession, V as countPendingDescendantRunsExcludingRun, z as countActiveDescendantRuns } from "./pi-embedded-yo67-7fx.js";
6
6
  import "./github-copilot-token-C-HHmlE6.js";
7
7
  import "./thinking-bn_HIbhN.js";
8
8
  import "./tokens-BjTxlE27.js";
@@ -2,7 +2,7 @@ import "./paths-D358qawm.js";
2
2
  import "./globals-mxjDvm3x.js";
3
3
  import "./utils-D2mWpsBR.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import { $n as isSubagentSessionRunActive, Xn as countPendingDescendantRuns, Yn as countActiveDescendantRuns, Zn as countPendingDescendantRunsExcludingRun, tr as resolveRequesterForChildSession } from "./reply-KTubTl9h.js";
5
+ import { $n as isSubagentSessionRunActive, Xn as countPendingDescendantRuns, Yn as countActiveDescendantRuns, Zn as countPendingDescendantRunsExcludingRun, tr as resolveRequesterForChildSession } from "./reply-a2GVvnP2.js";
6
6
  import "./agent-scope-BjM05Snq.js";
7
7
  import "./subsystem-notCuUgs.js";
8
8
  import "./winclaw-root-ExuHY0xi.js";
@@ -26,7 +26,7 @@ import "./logging-CFvkxgcX.js";
26
26
  import "./accounts-CLKFSM00.js";
27
27
  import "./send-DTvtOsK3.js";
28
28
  import "./send-3vnK2por.js";
29
- import { a as isSubagentSessionRunActive, n as countPendingDescendantRuns, r as countPendingDescendantRunsExcludingRun, s as resolveRequesterForChildSession, t as countActiveDescendantRuns } from "./subagent-registry-iD-ynHA9.js";
29
+ import { a as isSubagentSessionRunActive, n as countPendingDescendantRuns, r as countPendingDescendantRunsExcludingRun, s as resolveRequesterForChildSession, t as countActiveDescendantRuns } from "./subagent-registry-CRAr7csi.js";
30
30
  import "./paths-ByCv35uy.js";
31
31
  import "./chat-envelope-DDCB7eZC.js";
32
32
  import "./client-DCxDsURZ.js";
@@ -29,7 +29,7 @@ import "./logging-CFvkxgcX.js";
29
29
  import "./accounts-CLKFSM00.js";
30
30
  import "./send-DTvtOsK3.js";
31
31
  import "./send-3vnK2por.js";
32
- import { Bt as trimLogTail } from "./subagent-registry-iD-ynHA9.js";
32
+ import { Bt as trimLogTail } from "./subagent-registry-CRAr7csi.js";
33
33
  import "./paths-ByCv35uy.js";
34
34
  import "./chat-envelope-DDCB7eZC.js";
35
35
  import "./client-DCxDsURZ.js";
@@ -119,9 +119,9 @@ import "./skill-scanner-DqqhF5of.js";
119
119
  import "./installs-zKF10nZF.js";
120
120
  import { n as formatConfigIssueLines } from "./issue-format-DCF2SXK_.js";
121
121
  import "./channels-status-issues-DpfEWI4l.js";
122
- import { r as installCompletion } from "./completion-cli-B-8mTxbh.js";
123
- import "./register.subclis-2iN-TxPh.js";
124
- import "./command-registry-m8nfRV-J.js";
122
+ import { r as installCompletion } from "./completion-cli-BKoxA3-3.js";
123
+ import "./register.subclis-4LlGcEld.js";
124
+ import "./command-registry-CWxe1f-O.js";
125
125
  import "./program-context-gd4x_qEm.js";
126
126
  import "./daemon-install-helpers-D1YQ03lO.js";
127
127
  import { r as parseSemver } from "./runtime-guard-H-DjZ1G4.js";
@@ -133,10 +133,10 @@ import { a as terminateStaleGatewayPids, i as renderRestartDiagnostics, o as wai
133
133
  import "./probe-D3f6QMfy.js";
134
134
  import "./diagnostics-KfpqzhsS.js";
135
135
  import { t as renderTable } from "./table-BaxY_3r9.js";
136
- import "./health-C5a0wlfE.js";
136
+ import "./health-8quueFaP.js";
137
137
  import "./control-ui-assets-B0DdamQU.js";
138
138
  import { c as DEFAULT_PACKAGE_CHANNEL, d as formatUpdateChannelLabel, g as resolveUpdateChannelDisplay, h as resolveEffectiveUpdateChannel, i as fetchNpmTagVersion, m as normalizeUpdateChannel, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings, s as DEFAULT_GIT_CHANNEL, u as channelToNpmTag } from "./channel-account-context-B4ofKr9t.js";
139
- import { a as globalInstallArgs, c as readPackageName, i as detectGlobalInstallManagerForRoot, l as readPackageVersion, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as normalizePackageTagInput, t as runGatewayUpdate } from "./update-runner-BpzbDTnQ.js";
139
+ import { a as globalInstallArgs, c as readPackageName, i as detectGlobalInstallManagerForRoot, l as readPackageVersion, n as cleanupGlobalRenameDirs, o as resolveGlobalPackageRoot, r as detectGlobalInstallManagerByPresence, s as normalizePackageTagInput, t as runGatewayUpdate } from "./update-runner-CgS5D8t8.js";
140
140
  import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, t as formatUpdateAvailableHint } from "./status.update-CdaaXiD4.js";
141
141
  import "./logging-D6YjGDjQ.js";
142
142
  import { n as updateNpmInstalledPlugins, t as syncPluginsForUpdateChannel } from "./update-u6OtnABh.js";
@@ -144,8 +144,8 @@ import "./doctor-config-flow-D6rEqOwb.js";
144
144
  import "./oauth-tls-preflight-DQJBchsr.js";
145
145
  import "./systemd-linger-CyioH9ho.js";
146
146
  import "./health-format-DfUHWWsW.js";
147
- import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-D-f3R2mt.js";
148
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DEdT-_9v.js";
147
+ import { n as doctorCommand, t as selectStyled } from "./prompt-select-styled-BehogMCm.js";
148
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BtQY4Eaa.js";
149
149
  import { spawn, spawnSync } from "node:child_process";
150
150
  import os from "node:os";
151
151
  import path from "node:path";