@visorcraft/idlehands 4.2.3 → 4.2.4

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 (223) hide show
  1. package/dist/{accounts-B8cGzkjD.js → accounts-BDVs8LTu.js} +1 -1
  2. package/dist/{accounts-D5tB_lO0.js → accounts-CIvVRRHb.js} +1 -1
  3. package/dist/{accounts-BQC_GRUB.js → accounts-Dk8mJIrQ.js} +6 -6
  4. package/dist/{agent-scope-Bxq1eWbA.js → agent-scope-DyP_tr7s.js} +4 -4
  5. package/dist/{agent-via-gateway-BtMWCqx4.js → agent-via-gateway-CugFJzVP.js} +2 -2
  6. package/dist/{agent-via-gateway-BsTP4WyI.js → agent-via-gateway-DG8Axzn2.js} +60 -60
  7. package/dist/{agent-via-gateway-9aP1U_YQ.js → agent-via-gateway-DwRsFLFS.js} +1 -1
  8. package/dist/{agent-via-gateway-BN0HMYd7.js → agent-via-gateway-VdG-s4L4.js} +1 -1
  9. package/dist/{agents-Bitc3LDE.js → agents-DDuWSZ0g.js} +4 -4
  10. package/dist/{agents.config-DmFqh5v8.js → agents.config-8tuPdcTQ.js} +1 -1
  11. package/dist/{agents.config-DLjDlH4M.js → agents.config-A-WLFOiz.js} +1 -1
  12. package/dist/{anton-CmB9XtGt.js → anton-CaPVBTOS.js} +27 -7
  13. package/dist/{anton-DqSQ27RK.js → anton-DCN6G6Up.js} +27 -7
  14. package/dist/{anton-C3Y_hYo3.js → anton-DqWaq0gv.js} +26 -7
  15. package/dist/{anton-Dn_Pc4P0.js → anton-sGTx_HDs.js} +30 -11
  16. package/dist/{audio-preflight-qkU2lsDn.js → audio-preflight-CW8IH1lU.js} +35 -35
  17. package/dist/{auth-choice-nFObMeHm.js → auth-choice-C0ADVtim.js} +1 -1
  18. package/dist/{auth-choice-BKDISagq.js → auth-choice-CnB-Ffeh.js} +1 -1
  19. package/dist/{auth-store-Bb4aajHu.js → auth-store-DXT-l7fO.js} +12 -12
  20. package/dist/{banner-IB7Cylyq.js → banner-C1dFMwdL.js} +1 -1
  21. package/dist/{bindings-CLZIJ0Eo.js → bindings-D3b5Fmc9.js} +2 -2
  22. package/dist/build-info.json +3 -3
  23. package/dist/bundled/boot-md/handler.js +60 -60
  24. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  25. package/dist/bundled/command-logger/handler.js +3 -3
  26. package/dist/bundled/session-memory/handler.js +60 -60
  27. package/dist/{channel-activity-DdL3RAv_.js → channel-activity-D_TMOGQ0.js} +3 -3
  28. package/dist/{channel-options-B2LlZj0S.js → channel-options-DPIZ2OfB.js} +1 -1
  29. package/dist/{channel-options-DcxOFxzU.js → channel-options-dvj7gQ75.js} +1 -1
  30. package/dist/{channel-web-XLD22Zzs.js → channel-web-C022IdsV.js} +2 -2
  31. package/dist/{channel-web-Cu_AcYVB.js → channel-web-DAeB1zPN.js} +2 -2
  32. package/dist/{channels-cli-BWMjEguK.js → channels-cli-BdUt4Lf-.js} +7 -7
  33. package/dist/{channels-cli-DZWOS5d6.js → channels-cli-DzA8ku51.js} +7 -7
  34. package/dist/{chrome-CT_a9OgI.js → chrome-BcJB6PcM.js} +17 -17
  35. package/dist/{chunk-Djk-9JeT.js → chunk-CMpX7Jaz.js} +1 -1
  36. package/dist/{cli-Bq5b8f58.js → cli-BC9fLKsk.js} +2 -2
  37. package/dist/{cli-BN8I3vTa.js → cli-VNJdJ9_T.js} +2 -2
  38. package/dist/{command-registry-CeIfSw9l.js → command-registry-Bo2L5BJz.js} +10 -10
  39. package/dist/{commands-registry-_TBHHpvt.js → commands-registry-j4vAzcF2.js} +5 -5
  40. package/dist/{completion-cli-Dh0MVQJ6.js → completion-cli-CevdZ8t2.js} +2 -2
  41. package/dist/{completion-cli-ClOKco1N.js → completion-cli-w7SY12wl.js} +1 -1
  42. package/dist/{config-cli-CpgR8c8d.js → config-cli-C8s4mZF3.js} +1 -1
  43. package/dist/{config-cli-BaNTuQ52.js → config-cli-D2221rb8.js} +1 -1
  44. package/dist/{configure-C4n13-o1.js → configure-6COQEc8d.js} +3 -3
  45. package/dist/{configure-BfzLtTQH.js → configure-BpeVYPCY.js} +3 -3
  46. package/dist/{deliver-Db2xqgLg.js → deliver-BUiQ-9fE.js} +20 -20
  47. package/dist/{deps-c-x2UBbd.js → deps-B3svY-p3.js} +1 -1
  48. package/dist/{deps-CnUuBleG.js → deps-BTDAxEQ6.js} +6 -6
  49. package/dist/{deps-CjvmCq-K.js → deps-Coo8Thxy.js} +1 -1
  50. package/dist/{deps-BH4bzzRD.js → deps-DOxHxBHl.js} +1 -1
  51. package/dist/{diagnostic-BvlZ0Sot.js → diagnostic-4owMk4vH.js} +1 -1
  52. package/dist/{dock-ejUetwTC.js → dock-BgOmHcbh.js} +6 -6
  53. package/dist/{doctor-completion-BUUL91Dy.js → doctor-completion-CCuJkHb8.js} +1 -1
  54. package/dist/{doctor-completion-IIzctUix.js → doctor-completion-CkCkSkfC.js} +1 -1
  55. package/dist/{emergency-stop-HaFAEk9Z.js → emergency-stop-BNon2wpA.js} +2 -2
  56. package/dist/{emergency-stop-CjxNr2he.js → emergency-stop-DO0wn668.js} +2 -2
  57. package/dist/{emergency-stop-Bg9a1fXU.js → emergency-stop-DZFe7oYv.js} +2 -2
  58. package/dist/emergency-stop-JMddgwUX.js +113 -0
  59. package/dist/entry.js +1 -1
  60. package/dist/{env-q-PhWbb_.js → env-B5G1qwGc.js} +1 -1
  61. package/dist/{errors-C4SHjIZK.js → errors-C_0nm4TJ.js} +1 -1
  62. package/dist/extensionAPI.js +2 -2
  63. package/dist/{fetch-guard-CcfDZXe9.js → fetch-guard-iuQsIjqN.js} +1 -1
  64. package/dist/{frontmatter-pTUG4Sx_.js → frontmatter-BOudmHMS.js} +2 -2
  65. package/dist/{fs-safe-2l05hI1Y.js → fs-safe-CYUaAFO9.js} +2 -2
  66. package/dist/{gateway-cli-C2jOWbsN.js → gateway-cli-Cf7kqenc.js} +9 -9
  67. package/dist/{gateway-cli-Bcamqq7Z.js → gateway-cli-D6Sh2d9w.js} +9 -9
  68. package/dist/{gemini-auth-DLSGffQK.js → gemini-auth-CIyaa44H.js} +2 -2
  69. package/dist/{github-copilot-token-BjmEQcmi.js → github-copilot-token-Dgt6cnsM.js} +7 -7
  70. package/dist/{health-3B8ANLz5.js → health-BavRGpi2.js} +1 -1
  71. package/dist/{health-BTU1dGHH.js → health-j2mDzeUl.js} +1 -1
  72. package/dist/{hooks-cli-CdEcbqPF.js → hooks-cli-AnCnOcQY.js} +3 -3
  73. package/dist/{hooks-cli-BOc85-37.js → hooks-cli-DDAeDBcO.js} +3 -3
  74. package/dist/{image-Dlu13Ebx.js → image-D8b_rlQC.js} +6 -6
  75. package/dist/{image-ops-J8P5zOFm.js → image-ops-D1KtygWz.js} +1 -1
  76. package/dist/index.js +7 -7
  77. package/dist/{ir-BT5aAdU9.js → ir-B7IBoKLy.js} +5 -5
  78. package/dist/llm-slug-generator.js +60 -60
  79. package/dist/{local-roots-d4y0lvs2.js → local-roots-KN4Hp1yZ.js} +5 -5
  80. package/dist/{login-C2X0In6m.js → login-CFr5vJmR.js} +6 -6
  81. package/dist/{login-qr-C17PY0rr.js → login-qr-CFFFOjOl.js} +11 -11
  82. package/dist/{manager-CgzA1hKo.js → manager-BE_76jWB.js} +15 -15
  83. package/dist/{markdown-tables-R8VTpfE9.js → markdown-tables-CzsockiZ.js} +1 -1
  84. package/dist/{message-channel-ZdI1-uUh.js → message-channel-C8QtrwEU.js} +1 -1
  85. package/dist/{model-selection-C5hI1dum.js → model-selection-1MMYqY6M.js} +41 -41
  86. package/dist/{models-CIS_OcjC.js → models-RiKkYhfQ.js} +2 -2
  87. package/dist/{models-cli-BS7pagh1.js → models-cli-B4HXQG2Q.js} +3 -3
  88. package/dist/{models-cli-6njz6jJl.js → models-cli-CSSZi7-P.js} +4 -4
  89. package/dist/{npm-resolution-CkpVYF4z.js → npm-resolution-D1b0Eoa4.js} +1 -1
  90. package/dist/{npm-resolution-DWXTcpqo.js → npm-resolution-vCuR0Tv5.js} +1 -1
  91. package/dist/{onboard-b_mYsSas.js → onboard-Dcj7w5Sb.js} +2 -2
  92. package/dist/{onboard-channels-sslbndju.js → onboard-channels-BT-vQKYZ.js} +1 -1
  93. package/dist/{onboard-channels-CzB1oDsu.js → onboard-channels-jrbhR8dl.js} +1 -1
  94. package/dist/{onboard-BYOBc47n.js → onboard-enaQTAES.js} +2 -2
  95. package/dist/{onboarding-BfDz8n6H.js → onboarding-BpiNSUID.js} +3 -3
  96. package/dist/{onboarding-qxSl79A_.js → onboarding-fRvJJ_jS.js} +3 -3
  97. package/dist/{onboarding.finalize-DGZkcjrv.js → onboarding.finalize-6q8jh9r4.js} +6 -6
  98. package/dist/{onboarding.finalize-DeEXxkOU.js → onboarding.finalize-B557eJgx.js} +7 -7
  99. package/dist/{outbound-CdY_AskB.js → outbound-BNh6PpQb.js} +6 -6
  100. package/dist/{outbound-attachment-IfeZJAKk.js → outbound-attachment-3I6GzwDe.js} +2 -2
  101. package/dist/{path-alias-guards-BZmt6hFb.js → path-alias-guards-Cu1nXNMM.js} +1 -1
  102. package/dist/{paths-DQpv9a3Q.js → paths-BYNVLNi_.js} +5 -5
  103. package/dist/{paths-D3p7ZvM6.js → paths-D_qUel1T.js} +3 -3
  104. package/dist/{pi-embedded-xW12sr9Q.js → pi-embedded-CMll1riT.js} +179 -179
  105. package/dist/{pi-embedded-E9CG0AZO.js → pi-embedded-D35RiR0f.js} +11 -11
  106. package/dist/{pi-embedded-helpers-B3ceCcxm.js → pi-embedded-helpers-CghCLoPo.js} +24 -24
  107. package/dist/{pi-model-discovery-Dlx4RLWo.js → pi-model-discovery-Bb__OY-j.js} +7 -7
  108. package/dist/{plugin-registry-CY1u8bd9.js → plugin-registry-DMdIUK_2.js} +1 -1
  109. package/dist/{plugin-registry-CJfl54B-.js → plugin-registry-DdywtXL5.js} +1 -1
  110. package/dist/plugin-sdk/{agent-via-gateway-NXyTgftN.js → agent-via-gateway-W4SFqR3m.js} +2 -2
  111. package/dist/plugin-sdk/{anton-8LTiJnvw.js → anton-DgXekgcy.js} +26 -7
  112. package/dist/plugin-sdk/{channel-web-DEl6BZu6.js → channel-web-DbwkbMKY.js} +2 -2
  113. package/dist/plugin-sdk/commands/anton.d.ts +28 -4
  114. package/dist/plugin-sdk/{deps-CdRm6UCM.js → deps-HLNhWkFy.js} +1 -1
  115. package/dist/plugin-sdk/{emergency-stop-vr_MLBH0.js → emergency-stop-BXP-MZHW.js} +2 -2
  116. package/dist/plugin-sdk/index.js +3 -3
  117. package/dist/plugin-sdk/{reply-Cii_-apO.js → reply-BEnj9--x.js} +11 -11
  118. package/dist/plugin-sdk/{web-BrcYG4Cd.js → web-TsEAe4Bs.js} +3 -3
  119. package/dist/{plugins-DYr-HHj0.js → plugins-CRB60mCJ.js} +10 -10
  120. package/dist/{plugins-cli-BsCu9ZxX.js → plugins-cli-CkqS4cmo.js} +3 -3
  121. package/dist/{plugins-cli-rEURRyag.js → plugins-cli-DHVkVGke.js} +3 -3
  122. package/dist/{program-CtFnQFId.js → program-BeB3v4zk.js} +8 -8
  123. package/dist/{program-context-BsCSqznM.js → program-context-w-tdgurY.js} +18 -18
  124. package/dist/{prompt-select-styled-BKPmN1HP.js → prompt-select-styled-CE6lL16-.js} +4 -4
  125. package/dist/{prompt-select-styled-BB8mtFS9.js → prompt-select-styled-CGdWABH5.js} +4 -4
  126. package/dist/{provider-auth-helpers-ar7t02s1.js → provider-auth-helpers-C72Fb__o.js} +1 -1
  127. package/dist/{provider-auth-helpers-486CLY6U.js → provider-auth-helpers-D0RhcC2q.js} +1 -1
  128. package/dist/{push-apns-CJJ-O5fL.js → push-apns-CeEArjp5.js} +1 -1
  129. package/dist/{push-apns-AHniql5u.js → push-apns-Nj66xHk1.js} +1 -1
  130. package/dist/{pw-ai-DIV4PcIo.js → pw-ai-CfYaR1K2.js} +13 -13
  131. package/dist/{qmd-manager-BRvg3Rx2.js → qmd-manager-B_GgyQQ0.js} +8 -8
  132. package/dist/{query-expansion-DHuNyU-_.js → query-expansion-DEq020GG.js} +5 -5
  133. package/dist/{redact-1Y0KPNtr.js → redact-Bvpf-ATQ.js} +1 -1
  134. package/dist/{register.agent-DswuLYd8.js → register.agent-BaiV-Kp5.js} +9 -9
  135. package/dist/{register.agent-TMXz7bwT.js → register.agent-CoADvHMz.js} +8 -8
  136. package/dist/{register.configure-BFWnHArB.js → register.configure-COg3mvRi.js} +8 -8
  137. package/dist/{register.configure-DlxSU46q.js → register.configure-Dhfhctpj.js} +8 -8
  138. package/dist/{register.maintenance-C2B-RPnI.js → register.maintenance-CjxM0oKc.js} +8 -8
  139. package/dist/{register.maintenance-Dj8A9Hj7.js → register.maintenance-MELPxVyx.js} +9 -9
  140. package/dist/{register.message-CR569hCK.js → register.message-CbssH6ek.js} +3 -3
  141. package/dist/{register.message-DWm_Lizi.js → register.message-kzRNe_7l.js} +3 -3
  142. package/dist/{register.onboard-CBlF61-5.js → register.onboard-CAbo-VF1.js} +2 -2
  143. package/dist/{register.onboard-BjMv8Rc2.js → register.onboard-CJeQ64iC.js} +2 -2
  144. package/dist/{register.orchestrator-anton-CehFZHyG.js → register.orchestrator-anton-CBnyqoHX.js} +2 -2
  145. package/dist/{register.orchestrator-anton-Cvw__ptb.js → register.orchestrator-anton-CdVQ30at.js} +2 -2
  146. package/dist/{register.setup-BrXOX1jn.js → register.setup-DEH8S3Y5.js} +2 -2
  147. package/dist/{register.setup-B8TX05TM.js → register.setup-XGT1lV6o.js} +2 -2
  148. package/dist/{register.status-health-sessions-DexyefSU.js → register.status-health-sessions-0ppExIVs.js} +4 -4
  149. package/dist/{register.status-health-sessions-C-3gl9qR.js → register.status-health-sessions-jEhyhioj.js} +4 -4
  150. package/dist/{register.subclis-CFcZU6Sc.js → register.subclis-DQx75Ni7.js} +9 -9
  151. package/dist/{replies-2C16fnBP.js → replies-6_GxvQYe.js} +3 -3
  152. package/dist/{reply-dLJYULbb.js → reply-Du7Q5RJl.js} +11 -11
  153. package/dist/{reply-prefix-DCljZiIB.js → reply-prefix-BUgeSN2R.js} +1 -1
  154. package/dist/{resolve-route-ClcifpKn.js → resolve-route-DuttYY7A.js} +4 -4
  155. package/dist/{retry-CG6cMRDQ.js → retry-BeB9WenR.js} +1 -1
  156. package/dist/{run-main-xc_0T201.js → run-main-D56C-iq4.js} +15 -15
  157. package/dist/{runner-BkCU-kqs.js → runner-PgRFPYUj.js} +11 -11
  158. package/dist/{send-DZa8fWSm.js → send-BeIZJuy4.js} +7 -7
  159. package/dist/{send-Y1hD4tQ1.js → send-C1hvd3bt.js} +6 -6
  160. package/dist/{send-BOxJ4QXF.js → send-D4bMycQu.js} +7 -7
  161. package/dist/{send-FLdrx-oF.js → send-Dfa3sn6r.js} +24 -24
  162. package/dist/{send-IlPMLAH-.js → send-DmLC7aEF.js} +10 -10
  163. package/dist/{server-node-events-CgSZVd8M.js → server-node-events-C1uC6pPJ.js} +3 -3
  164. package/dist/{server-node-events-Dj5jYSln.js → server-node-events-h-U5Mfvv.js} +3 -3
  165. package/dist/{session-nUPBXeEa.js → session-F_YDS_1V.js} +7 -7
  166. package/dist/{sessions-DRA4oaxz.js → sessions-3ioSeOA1.js} +41 -41
  167. package/dist/{skill-commands-BHTBXXVn.js → skill-commands-Ck3flWX7.js} +9 -9
  168. package/dist/{skills-umlGvChF.js → skills-CnAPWfca.js} +22 -22
  169. package/dist/{status-Bp-x4GJi.js → status-CQ18Gd-d.js} +2 -2
  170. package/dist/{status-CV7OIIGl.js → status-DmPnFNgt.js} +2 -2
  171. package/dist/{store-D-ZicQeo.js → store-CvMgrKWx.js} +2 -2
  172. package/dist/{subagent-registry-CJX_DOgh.js → subagent-registry-CPeVtSZk.js} +11 -11
  173. package/dist/{subsystem-D7ZepYT1.js → subsystem-tzu-rIAJ.js} +1 -1
  174. package/dist/{tables-Co_R_WKs.js → tables-5k-zOZ-s.js} +1 -1
  175. package/dist/{target-errors-B1mcM4WR.js → target-errors-BPfQrPim.js} +2 -2
  176. package/dist/{tokens-DGajj8M9.js → tokens-BRLyURxW.js} +1 -1
  177. package/dist/{tool-images-Duuqr4bN.js → tool-images-CcGZpzmq.js} +2 -2
  178. package/dist/{tool-loop-detection-CjWRg_4q.js → tool-loop-detection-BNGetx3Z.js} +3 -3
  179. package/dist/{update-cli-Crq7aGUA.js → update-cli-Di_N9xCB.js} +8 -8
  180. package/dist/{update-cli-z5fJRDU4.js → update-cli-DraOIip8.js} +9 -9
  181. package/dist/{update-runner-BLquhnrL.js → update-runner-BJRwxU_y.js} +1 -1
  182. package/dist/{update-runner-BkSrWsKc.js → update-runner-BQlZS5zz.js} +1 -1
  183. package/dist/{utils-D9wGoiU9.js → utils-CTFLl_ji.js} +18 -18
  184. package/dist/{web-CNowaS6B.js → web-Cp8ceOUo.js} +66 -66
  185. package/dist/{web-BKSxBqZw.js → web-CrYZNxAg.js} +3 -3
  186. package/dist/{web-BKs38Jg4.js → web-D77Xu1Fp.js} +3 -3
  187. package/dist/{web-B267OUXc.js → web-DzfcaLnK.js} +3 -3
  188. package/dist/{whatsapp-actions-BJ6kVDXi.js → whatsapp-actions-DbPcN6JQ.js} +25 -25
  189. package/dist/{workspace-tAtkoD_r.js → workspace-DBFSzT6O.js} +18 -18
  190. package/extensions/acpx/package.json +1 -1
  191. package/extensions/bluebubbles/package.json +1 -1
  192. package/extensions/copilot-proxy/package.json +1 -1
  193. package/extensions/diagnostics-otel/package.json +1 -1
  194. package/extensions/discord/package.json +1 -1
  195. package/extensions/feishu/package.json +1 -1
  196. package/extensions/google-gemini-cli-auth/package.json +1 -1
  197. package/extensions/googlechat/package.json +1 -1
  198. package/extensions/hand/package.json +1 -1
  199. package/extensions/imessage/package.json +1 -1
  200. package/extensions/irc/package.json +1 -1
  201. package/extensions/line/package.json +1 -1
  202. package/extensions/llm-task/package.json +1 -1
  203. package/extensions/matrix/package.json +1 -1
  204. package/extensions/mattermost/package.json +1 -1
  205. package/extensions/memory-core/package.json +1 -1
  206. package/extensions/memory-lancedb/package.json +1 -1
  207. package/extensions/minimax-portal-auth/package.json +1 -1
  208. package/extensions/msteams/package.json +1 -1
  209. package/extensions/nextcloud-talk/package.json +1 -1
  210. package/extensions/nostr/package.json +1 -1
  211. package/extensions/open-prose/package.json +1 -1
  212. package/extensions/signal/package.json +1 -1
  213. package/extensions/slack/package.json +1 -1
  214. package/extensions/synology-chat/package.json +1 -1
  215. package/extensions/telegram/package.json +1 -1
  216. package/extensions/tlon/package.json +1 -1
  217. package/extensions/twitch/package.json +1 -1
  218. package/extensions/voice-call/package.json +1 -1
  219. package/extensions/whatsapp/package.json +1 -1
  220. package/extensions/zalo/package.json +1 -1
  221. package/extensions/zalouser/package.json +1 -1
  222. package/package.json +1 -1
  223. package/dist/emergency-stop-Chw8LiXP.js +0 -113
@@ -1,12 +1,12 @@
1
- import { m as resolveRequiredHomeDir } from "./paths-DQpv9a3Q.js";
2
- import { t as createSubsystemLogger } from "./subsystem-D7ZepYT1.js";
3
- import { A as shouldLogVerbose, L as getLogger, M as warn, O as logVerboseConsole, T as info, f as pathExists$1, h as resolveUserPath, w as danger } from "./utils-D9wGoiU9.js";
1
+ import { m as resolveRequiredHomeDir } from "./paths-BYNVLNi_.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-tzu-rIAJ.js";
3
+ import { A as shouldLogVerbose, L as getLogger, M as warn, O as logVerboseConsole, T as info, f as pathExists$1, h as resolveUserPath, w as danger } from "./utils-CTFLl_ji.js";
4
4
  import { n as defaultRuntime } from "./runtime-8mi3mpYB.js";
5
5
  import { b as isSubagentSessionKey, y as isCronSessionKey } from "./session-key-CuLPSMu_.js";
6
6
  import fs from "node:fs/promises";
7
7
  import os from "node:os";
8
8
  import path from "node:path";
9
- import fs$1 from "node:fs";
9
+ import syncFs from "node:fs";
10
10
  import { promisify } from "node:util";
11
11
  import { execFile, spawn } from "node:child_process";
12
12
  import { fileURLToPath } from "node:url";
@@ -226,7 +226,7 @@ function resolveBoundaryPathLexicalSync(params) {
226
226
  lexicalCursor = path.join(lexicalCursor, segment);
227
227
  let stat;
228
228
  try {
229
- stat = fs$1.lstatSync(lexicalCursor);
229
+ stat = syncFs.lstatSync(lexicalCursor);
230
230
  } catch (error) {
231
231
  if (isNotFoundPathError(error)) {
232
232
  const missingSuffix = segments.slice(idx);
@@ -332,15 +332,15 @@ function resolvePathViaExistingAncestorSync(targetPath) {
332
332
  const normalized = path.resolve(targetPath);
333
333
  let cursor = normalized;
334
334
  const missingSuffix = [];
335
- while (!isFilesystemRoot(cursor) && !fs$1.existsSync(cursor)) {
335
+ while (!isFilesystemRoot(cursor) && !syncFs.existsSync(cursor)) {
336
336
  missingSuffix.unshift(path.basename(cursor));
337
337
  const parent = path.dirname(cursor);
338
338
  if (parent === cursor) break;
339
339
  cursor = parent;
340
340
  }
341
- if (!fs$1.existsSync(cursor)) return normalized;
341
+ if (!syncFs.existsSync(cursor)) return normalized;
342
342
  try {
343
- const resolvedAncestor = path.resolve(fs$1.realpathSync(cursor));
343
+ const resolvedAncestor = path.resolve(syncFs.realpathSync(cursor));
344
344
  if (missingSuffix.length === 0) return resolvedAncestor;
345
345
  return path.resolve(resolvedAncestor, ...missingSuffix);
346
346
  } catch {
@@ -365,7 +365,7 @@ function getPathKindSync(absolutePath, preserveFinalSymlink) {
365
365
  try {
366
366
  return {
367
367
  exists: true,
368
- kind: toResolvedKind(preserveFinalSymlink ? fs$1.lstatSync(absolutePath) : fs$1.statSync(absolutePath))
368
+ kind: toResolvedKind(preserveFinalSymlink ? syncFs.lstatSync(absolutePath) : syncFs.statSync(absolutePath))
369
369
  };
370
370
  } catch (error) {
371
371
  if (isNotFoundPathError(error)) return {
@@ -425,10 +425,10 @@ async function resolveSymlinkHopPath(symlinkPath) {
425
425
  }
426
426
  function resolveSymlinkHopPathSync(symlinkPath) {
427
427
  try {
428
- return path.resolve(fs$1.realpathSync(symlinkPath));
428
+ return path.resolve(syncFs.realpathSync(symlinkPath));
429
429
  } catch (error) {
430
430
  if (!isNotFoundPathError(error)) throw error;
431
- const linkTarget = fs$1.readlinkSync(symlinkPath);
431
+ const linkTarget = syncFs.readlinkSync(symlinkPath);
432
432
  return resolvePathViaExistingAncestorSync(path.resolve(path.dirname(symlinkPath), linkTarget));
433
433
  }
434
434
  }
@@ -454,7 +454,7 @@ function sameFileIdentity(left, right) {
454
454
  return sameFileIdentity$1(left, right);
455
455
  }
456
456
  function openVerifiedFileSync(params) {
457
- const ioFs = params.ioFs ?? fs$1;
457
+ const ioFs = params.ioFs ?? syncFs;
458
458
  const openReadFlags = ioFs.constants.O_RDONLY | (typeof ioFs.constants.O_NOFOLLOW === "number" ? ioFs.constants.O_NOFOLLOW : 0);
459
459
  let fd = null;
460
460
  try {
@@ -526,7 +526,7 @@ function canUseBoundaryFileOpen(ioFs) {
526
526
  return typeof ioFs.openSync === "function" && typeof ioFs.closeSync === "function" && typeof ioFs.fstatSync === "function" && typeof ioFs.lstatSync === "function" && typeof ioFs.realpathSync === "function" && typeof ioFs.readFileSync === "function" && typeof ioFs.constants === "object" && ioFs.constants !== null;
527
527
  }
528
528
  function openBoundaryFileSync(params) {
529
- const ioFs = params.ioFs ?? fs$1;
529
+ const ioFs = params.ioFs ?? syncFs;
530
530
  const absolutePath = path.resolve(params.absolutePath);
531
531
  let resolvedPath;
532
532
  let rootRealPath;
@@ -864,7 +864,7 @@ async function readPackageName(dir) {
864
864
  }
865
865
  function readPackageNameSync(dir) {
866
866
  try {
867
- const raw = fs$1.readFileSync(path.join(dir, "package.json"), "utf-8");
867
+ const raw = syncFs.readFileSync(path.join(dir, "package.json"), "utf-8");
868
868
  const parsed = JSON.parse(raw);
869
869
  return typeof parsed.name === "string" ? parsed.name : null;
870
870
  } catch {
@@ -898,7 +898,7 @@ function candidateDirsFromArgv1(argv1) {
898
898
  const normalized = path.resolve(argv1);
899
899
  const candidates = [path.dirname(normalized)];
900
900
  try {
901
- const resolved = fs$1.realpathSync(normalized);
901
+ const resolved = syncFs.realpathSync(normalized);
902
902
  if (resolved !== normalized) candidates.push(path.dirname(resolved));
903
903
  } catch {}
904
904
  const parts = normalized.split(path.sep);
@@ -1010,14 +1010,14 @@ async function readWorkspaceFileWithGuards(params) {
1010
1010
  const identity = workspaceFileIdentity(opened.stat, opened.path);
1011
1011
  const cached = workspaceFileCache.get(params.filePath);
1012
1012
  if (cached && cached.identity === identity) {
1013
- fs$1.closeSync(opened.fd);
1013
+ syncFs.closeSync(opened.fd);
1014
1014
  return {
1015
1015
  ok: true,
1016
1016
  content: cached.content
1017
1017
  };
1018
1018
  }
1019
1019
  try {
1020
- const content = fs$1.readFileSync(opened.fd, "utf-8");
1020
+ const content = syncFs.readFileSync(opened.fd, "utf-8");
1021
1021
  workspaceFileCache.set(params.filePath, {
1022
1022
  content,
1023
1023
  identity
@@ -1034,7 +1034,7 @@ async function readWorkspaceFileWithGuards(params) {
1034
1034
  error
1035
1035
  };
1036
1036
  } finally {
1037
- fs$1.closeSync(opened.fd);
1037
+ syncFs.closeSync(opened.fd);
1038
1038
  }
1039
1039
  }
1040
1040
  function stripFrontMatter(content) {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/acpx",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands ACP runtime backend via acpx",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/bluebubbles",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands BlueBubbles channel plugin",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/copilot-proxy",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Copilot Proxy provider plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/diagnostics-otel",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands diagnostics OpenTelemetry exporter",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/discord",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Discord channel plugin",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/feishu",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Feishu/Lark channel plugin (community maintained by @m1heng)",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/google-gemini-cli-auth",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Gemini CLI OAuth provider plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/googlechat",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Google Chat channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/hand",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "Hand workflow tool plugin (typed pipelines + resumable approvals)",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/imessage",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands iMessage channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/irc",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands IRC channel plugin",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/line",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands LINE channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/llm-task",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands JSON-only LLM task plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/matrix",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Matrix channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/mattermost",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Mattermost channel plugin",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/memory-core",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands core memory search plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/memory-lancedb",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands LanceDB-backed long-term memory plugin with auto-recall/capture",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/minimax-portal-auth",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands MiniMax Portal OAuth provider plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/msteams",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Microsoft Teams channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/nextcloud-talk",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Nextcloud Talk channel plugin",
5
5
  "type": "module",
6
6
  "idlehands": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/nostr",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Nostr channel plugin for NIP-04 encrypted DMs",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/open-prose",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "OpenProse VM skill pack plugin (slash command + telemetry).",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/signal",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Signal channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/slack",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Slack channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/synology-chat",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "Synology Chat channel plugin for IdleHands",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/telegram",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands Telegram channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/tlon",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Tlon/Urbit channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/twitch",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Twitch channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/voice-call",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands voice-call plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/whatsapp",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "private": true,
5
5
  "description": "IdleHands WhatsApp channel plugin",
6
6
  "type": "module",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/zalo",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Zalo channel plugin",
5
5
  "type": "module",
6
6
  "dependencies": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idlehands/zalouser",
3
- "version": "4.2.2",
3
+ "version": "4.2.4",
4
4
  "description": "IdleHands Zalo Personal Account plugin via zca-cli",
5
5
  "type": "module",
6
6
  "dependencies": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visorcraft/idlehands",
3
- "version": "4.2.3",
3
+ "version": "4.2.4",
4
4
  "description": "Multi-channel AI gateway with extensible messaging integrations",
5
5
  "keywords": [],
6
6
  "homepage": "https://github.com/visorcraft/IdleHands#readme",
@@ -1,113 +0,0 @@
1
- import "./agent-scope-Bxq1eWbA.js";
2
- import "./paths-DQpv9a3Q.js";
3
- import "./subsystem-D7ZepYT1.js";
4
- import { D as logVerbose } from "./utils-D9wGoiU9.js";
5
- import "./runtime-8mi3mpYB.js";
6
- import "./workspace-tAtkoD_r.js";
7
- import "./model-selection-C5hI1dum.js";
8
- import "./github-copilot-token-BjmEQcmi.js";
9
- import "./boolean-CE7i9tBR.js";
10
- import "./env-q-PhWbb_.js";
11
- import "./dock-ejUetwTC.js";
12
- import "./tokens-DGajj8M9.js";
13
- import { B as clearSessionQueues, F as isAbortRequestText, I as stopSubagentsForRequester, P as formatAbortReplyText, n as abortEmbeddedPiRun } from "./pi-embedded-xW12sr9Q.js";
14
- import "./plugins-DYr-HHj0.js";
15
- import "./accounts-BQC_GRUB.js";
16
- import "./bindings-CLZIJ0Eo.js";
17
- import "./auth-store-Bb4aajHu.js";
18
- import "./send-DZa8fWSm.js";
19
- import "./send-IlPMLAH-.js";
20
- import "./deliver-Db2xqgLg.js";
21
- import "./diagnostic-BvlZ0Sot.js";
22
- import "./diagnostic-session-state-BGF2r-kt.js";
23
- import "./accounts-B8cGzkjD.js";
24
- import "./send-FLdrx-oF.js";
25
- import "./image-ops-J8P5zOFm.js";
26
- import "./pi-model-discovery-Dlx4RLWo.js";
27
- import "./message-channel-ZdI1-uUh.js";
28
- import "./pi-embedded-helpers-B3ceCcxm.js";
29
- import "./chrome-CT_a9OgI.js";
30
- import "./ssrf-CZeHDwVZ.js";
31
- import "./frontmatter-pTUG4Sx_.js";
32
- import "./skills-umlGvChF.js";
33
- import "./path-alias-guards-BZmt6hFb.js";
34
- import "./redact-1Y0KPNtr.js";
35
- import "./errors-C4SHjIZK.js";
36
- import "./fs-safe-2l05hI1Y.js";
37
- import "./store-D-ZicQeo.js";
38
- import { s as loadSessionStore } from "./sessions-DRA4oaxz.js";
39
- import "./accounts-D5tB_lO0.js";
40
- import { r as resolveDefaultSessionStorePath } from "./paths-D3p7ZvM6.js";
41
- import "./tool-images-Duuqr4bN.js";
42
- import "./thinking-z4_linel.js";
43
- import "./image-Dlu13Ebx.js";
44
- import "./reply-prefix-DCljZiIB.js";
45
- import "./manager-CgzA1hKo.js";
46
- import "./gemini-auth-DLSGffQK.js";
47
- import "./fetch-guard-CcfDZXe9.js";
48
- import "./query-expansion-DHuNyU-_.js";
49
- import "./retry-CG6cMRDQ.js";
50
- import "./target-errors-B1mcM4WR.js";
51
- import "./chunk-Djk-9JeT.js";
52
- import "./markdown-tables-R8VTpfE9.js";
53
- import "./local-roots-d4y0lvs2.js";
54
- import "./ir-BT5aAdU9.js";
55
- import "./render-MTSxc7LK.js";
56
- import "./commands-registry-_TBHHpvt.js";
57
- import "./skill-commands-BHTBXXVn.js";
58
- import "./runner-BkCU-kqs.js";
59
- import "./fetch-CsfR_943.js";
60
- import "./channel-activity-DdL3RAv_.js";
61
- import "./tables-Co_R_WKs.js";
62
- import "./send-Y1hD4tQ1.js";
63
- import "./outbound-attachment-IfeZJAKk.js";
64
- import "./send-BOxJ4QXF.js";
65
- import "./resolve-route-ClcifpKn.js";
66
- import "./proxy-CRB9oCP5.js";
67
- import "./replies-2C16fnBP.js";
68
- import "./deps-CnUuBleG.js";
69
-
70
- //#region src/auto-reply/reply/emergency-stop.ts
71
- /**
72
- * Emergency stop — bypass all queues and debouncing.
73
- * Called at the earliest ingress point (before debouncer) to guarantee immediate execution.
74
- */
75
- /**
76
- * Execute an emergency stop for a session.
77
- * Clears all queues, aborts embedded runs, and stops subagents.
78
- * Returns the reply text to send to the user.
79
- */
80
- function emergencyStop(params) {
81
- const { cfg, sessionKey, sessionId } = params;
82
- const cleared = clearSessionQueues([sessionKey, sessionId]);
83
- if (cleared.followupCleared > 0 || cleared.laneCleared > 0) logVerbose(`emergency-stop: cleared followups=${cleared.followupCleared} lane=${cleared.laneCleared} keys=${cleared.keys.join(",")}`);
84
- if (sessionId) abortEmbeddedPiRun(sessionId);
85
- const { stopped } = stopSubagentsForRequester({
86
- cfg,
87
- requesterSessionKey: sessionKey
88
- });
89
- logVerbose(`emergency-stop: sessionKey=${sessionKey} sessionId=${sessionId} stoppedSubagents=${stopped}`);
90
- return {
91
- aborted: true,
92
- replyText: formatAbortReplyText(stopped),
93
- sessionKey
94
- };
95
- }
96
- /**
97
- * Resolve session info from the session store for emergency stop.
98
- * Lightweight — just reads the store, no locks.
99
- */
100
- function resolveSessionForEmergencyStop(sessionKey) {
101
- try {
102
- const store = loadSessionStore(resolveDefaultSessionStorePath());
103
- return {
104
- sessionId: store[sessionKey]?.sessionId,
105
- store
106
- };
107
- } catch {
108
- return {};
109
- }
110
- }
111
-
112
- //#endregion
113
- export { emergencyStop, isAbortRequestText, resolveSessionForEmergencyStop };