@gaodefa/daocore 2026.5.29 → 2026.5.30

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 (1068) hide show
  1. package/dist/abort-DI3P6TIb.js +277 -0
  2. package/dist/abort.runtime-B6Z7lDEa.js +2 -0
  3. package/dist/abort.runtime.js +1 -1
  4. package/dist/account-inspect-BFz7X0TX.js +173 -0
  5. package/dist/accounts-BoYYrY7x.js +107 -0
  6. package/dist/accounts-Busq29zW.js +107 -0
  7. package/dist/accounts-CuvH2tuN.js +119 -0
  8. package/dist/accounts-DkIcqvf7.js +2 -0
  9. package/dist/acp-runtime-BA8lzXzf.js +26 -0
  10. package/dist/acp-spawn-DPz2aX3A.js +2 -0
  11. package/dist/acp-spawn-DvVCsWYV.js +1275 -0
  12. package/dist/acp-stateful-target-driver-DcC76aZW.js +89 -0
  13. package/dist/action-kill-D-dVisIX.js +33 -0
  14. package/dist/action-runtime-BEiqwxDD.js +469 -0
  15. package/dist/action-runtime-api-1LzcGjcX.js +2 -0
  16. package/dist/action-send-c3CnDuPg.js +39 -0
  17. package/dist/action-spawn-Dj4kwpWs.js +47 -0
  18. package/dist/actions-qLccmQBc.js +161 -0
  19. package/dist/actions.runtime-B5vYAgNi.js +5 -0
  20. package/dist/agent-command-D6Ds198G.js +1367 -0
  21. package/dist/agent-components.runtime-xquK0B3L.js +10 -0
  22. package/dist/agent-components.runtime.js +1 -1
  23. package/dist/agent-harness-runtime-Dq1fCBOM.js +180 -0
  24. package/dist/agent-harness-task-runtime-DvSEqFkD.js +140 -0
  25. package/dist/agent-lm5ZYOFy.js +3 -0
  26. package/dist/agent-runner-execution-Dbh2pDhQ.js +1713 -0
  27. package/dist/agent-runner-utils-Di3r2T1T.js +266 -0
  28. package/dist/agent-runner.runtime-BW90EcGW.js +3455 -0
  29. package/dist/agent-runner.runtime.js +1 -1
  30. package/dist/agent-runtime-BgIT5Ytc.js +229 -0
  31. package/dist/agent-via-gateway-DMMS8-hK.js +463 -0
  32. package/dist/agent-ylolD8-V.js +2 -0
  33. package/dist/api-BB4vXLtW.js +2 -0
  34. package/dist/api-CUhM3KNB.js +134 -0
  35. package/dist/api-CewRHSbT.js +6 -0
  36. package/dist/api-CfKjNJlW.js +2 -0
  37. package/dist/api-Rsnqui1u.js +3 -0
  38. package/dist/api-k7AvxwHr.js +639 -0
  39. package/dist/apply-DQ4TQNMA.js +54 -0
  40. package/dist/apply-S_75Py4Y.js +41 -0
  41. package/dist/approval-handler.runtime-Cthxrstu.js +130 -0
  42. package/dist/assistant-Cp9pGaBw.js +291 -0
  43. package/dist/attachment-normalize-5R0bLLOj.js +225 -0
  44. package/dist/attempt-execution-DuyyZYsU.js +558 -0
  45. package/dist/attempt-execution.runtime-DF2GPgNh.js +3 -0
  46. package/dist/attempt-execution.runtime.js +1 -1
  47. package/dist/attempt-execution.shared-CwdukA3t.js +38 -0
  48. package/dist/attempt.prompt-helpers-CUqKtIa5.js +475 -0
  49. package/dist/attempt.tool-run-context-BbN4_BYO.js +2094 -0
  50. package/dist/binding-routing-C6Ex2Blu.js +113 -0
  51. package/dist/binding-targets-BqREncSL.js +121 -0
  52. package/dist/bot-DGMEkaIJ.js +7894 -0
  53. package/dist/bot-deps-BltYjeMX.js +2 -0
  54. package/dist/bot-deps-XvGCor9f.js +747 -0
  55. package/dist/bot-message-context.runtime-kK-xvLV7.js +7 -0
  56. package/dist/bot-message-context.runtime.js +1 -1
  57. package/dist/bot-message-context.session.runtime-DpOIJUae.js +12 -0
  58. package/dist/bot-message-context.session.runtime.js +1 -1
  59. package/dist/bot-native-commands.delivery.runtime-D49p5Lc1.js +4 -0
  60. package/dist/bot-native-commands.delivery.runtime.js +1 -1
  61. package/dist/bot-native-commands.runtime-8XBdSpkQ.js +13 -0
  62. package/dist/bot-native-commands.runtime.js +1 -1
  63. package/dist/bridge-server-y_XGduPx.js +113 -0
  64. package/dist/browser-cli-B2jmmTT3.js +230 -0
  65. package/dist/browser-cli-actions-input-JQt5ZQcn.js +473 -0
  66. package/dist/browser-cli-actions-observe-CrfKh6AX.js +81 -0
  67. package/dist/browser-cli-debug-DQACWlvC.js +137 -0
  68. package/dist/browser-cli-inspect-DDnxx0Xw.js +104 -0
  69. package/dist/browser-cli-lEuOnZzs.js +2 -0
  70. package/dist/browser-cli-manage-DogmwtYt.js +443 -0
  71. package/dist/browser-cli-resize-BHuV71VZ.js +26 -0
  72. package/dist/browser-cli-shared-CidShgoF.js +50 -0
  73. package/dist/browser-cli-state-i8cCGbiQ.js +337 -0
  74. package/dist/browser-control-auth-CKfXdXWj.js +2 -0
  75. package/dist/browser-profiles-ATBTvUGh.js +2 -0
  76. package/dist/browser-runtime-KmCT6FuL.js +384 -0
  77. package/dist/build-DOOT6f62.js +257 -0
  78. package/dist/build-info.json +3 -3
  79. package/dist/bundled/boot-md/handler.js +2 -2
  80. package/dist/bundled/session-memory/handler.js +1 -1
  81. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  82. package/dist/capability-cli-DwvrwB-g.js +1782 -0
  83. package/dist/channel-B-wgK1bK.js +481 -0
  84. package/dist/channel-B1e_k1P0.js +867 -0
  85. package/dist/channel-BRDfa5tc.js +1777 -0
  86. package/dist/channel-BVEO1O4p.js +376 -0
  87. package/dist/channel-BYlO5l1d.js +508 -0
  88. package/dist/channel-Bl0sPoNx.js +653 -0
  89. package/dist/channel-C84xtDBy.js +1134 -0
  90. package/dist/channel-CLgKq4Ds.js +1556 -0
  91. package/dist/channel-CZT0qxLh.js +1249 -0
  92. package/dist/channel-CffBHWkb.js +955 -0
  93. package/dist/channel-D34ZJvVB.js +2126 -0
  94. package/dist/channel-DcdXLo_W.js +238 -0
  95. package/dist/channel-DnK5TrXV.js +362 -0
  96. package/dist/channel-Dzj4RHY2.js +740 -0
  97. package/dist/channel-OhZzLZCj.js +562 -0
  98. package/dist/channel-actions.runtime-Cdvhqc9s.js +265 -0
  99. package/dist/channel-actions.runtime.js +1 -1
  100. package/dist/channel-core-Dz9I_R4j.js +5 -0
  101. package/dist/channel-inbound-COGoV_aS.js +80 -0
  102. package/dist/channel-mP6HCIMr.js +1496 -0
  103. package/dist/channel-plugin-runtime-C0R46KeG.js +998 -0
  104. package/dist/channel-quGdgWel.js +808 -0
  105. package/dist/channel-runtime-FvPQoIF9.js +408 -0
  106. package/dist/channel.runtime-2vUz3gij.js +109 -0
  107. package/dist/channel.runtime-BZLDSNuQ.js +254 -0
  108. package/dist/channel.runtime-Bo5jO0Hj.js +4 -0
  109. package/dist/channel.runtime-CDgvrjM2.js +652 -0
  110. package/dist/channel.runtime-COf8SDFn.js +88 -0
  111. package/dist/channel.runtime-C_C1f8lu.js +733 -0
  112. package/dist/channel.runtime-CqPbsg8t.js +2528 -0
  113. package/dist/channel.runtime-DtV85Khx.js +1008 -0
  114. package/dist/channel.runtime-Spt1ukGW.js +21009 -0
  115. package/dist/channel.setup-Bc0LUQS1.js +1098 -0
  116. package/dist/channel.setup-ChTkj2hq.js +343 -0
  117. package/dist/channel.setup-CpMD9F8i.js +10 -0
  118. package/dist/chat-mUsjD5YN.js +2666 -0
  119. package/dist/chrome-u314zcbM.js +1503 -0
  120. package/dist/cli/run-main.js +5 -5
  121. package/dist/cli-CJMoqXrc.js +1341 -0
  122. package/dist/cli-compaction-qGYB7suI.js +347 -0
  123. package/dist/cli-metadata-BBJFpNU9.js +22 -0
  124. package/dist/cli-runner-C0kcts0I.js +540 -0
  125. package/dist/cli-runner-CTm8K6s8.js +2 -0
  126. package/dist/cli-runner.runtime-C8deL5FL.js +3 -0
  127. package/dist/cli-runner.runtime-DDAg1D0L.js +4 -0
  128. package/dist/cli-runner.runtime.js +1 -1
  129. package/dist/cli-startup-metadata.json +8 -8
  130. package/dist/client-CPxpgs4m.js +650 -0
  131. package/dist/client-adapter-CLlqOqfu.js +897 -0
  132. package/dist/client-factory-R7Rr2jwn.js +9 -0
  133. package/dist/command-auth-CkQP1buP.js +135 -0
  134. package/dist/command-handlers-CJEjFyMk.js +1609 -0
  135. package/dist/command-registry-BDgyOqDw.js +4 -0
  136. package/dist/command-registry-BVi5Jn1S.js +9 -0
  137. package/dist/command-registry-core-JCfsVRtz.js +110 -0
  138. package/dist/command-status.runtime-CM1JLzi6.js +90 -0
  139. package/dist/command-status.runtime.js +1 -1
  140. package/dist/commands-acp-C1-I78U6.js +74 -0
  141. package/dist/commands-compact.runtime-DOsNavwp.js +10 -0
  142. package/dist/commands-compact.runtime.js +1 -1
  143. package/dist/commands-handlers.runtime-BD1n2WGw.js +6154 -0
  144. package/dist/commands-handlers.runtime.js +1 -1
  145. package/dist/commands-status-DU_UTQz1.js +16 -0
  146. package/dist/commands-status-DejfTakp.js +3 -0
  147. package/dist/commands-status.runtime-DejfTakp.js +3 -0
  148. package/dist/commands-status.runtime.js +1 -1
  149. package/dist/commands-subagents-control.runtime-D7vo_2Y_.js +3 -0
  150. package/dist/commands-subagents-control.runtime-DGybTjJ6.js +2 -0
  151. package/dist/commands-subagents-control.runtime.js +1 -1
  152. package/dist/commands-system-prompt-BEBXAMea.js +2 -0
  153. package/dist/commands-system-prompt-gj3oQpQO.js +162 -0
  154. package/dist/commands.runtime-CgXX70IN.js +176 -0
  155. package/dist/commands.runtime.js +1 -1
  156. package/dist/commitments/runtime.js +1 -1
  157. package/dist/compact-C41XxMDt.js +480 -0
  158. package/dist/compact-DUVAF9EC.js +1141 -0
  159. package/dist/compact.runtime-COMRg6s3.js +12 -0
  160. package/dist/compact.runtime.js +1 -1
  161. package/dist/completion-cli-CmEYoB9a.js +315 -0
  162. package/dist/computer-use-BwJHu1QF.js +367 -0
  163. package/dist/config-ATBTvUGh.js +2 -0
  164. package/dist/config-DlNgjF8W.js +373 -0
  165. package/dist/config-mutations-tl_OqI6d.js +159 -0
  166. package/dist/context-engine-host-compat-BNPAIK9F.js +288 -0
  167. package/dist/context-engine-host-compat-C69CK7zS.js +2 -0
  168. package/dist/context-engine-lifecycle-iQ8f5a_-.js +1274 -0
  169. package/dist/control-auth-vVxyGKxY.js +114 -0
  170. package/dist/control-service-73nj79EW.js +145 -0
  171. package/dist/control-ui/assets/agents-DdWIz8Vk.js +1008 -0
  172. package/dist/control-ui/assets/channel-config-extras-C7ELhuDi.js +2 -0
  173. package/dist/control-ui/assets/channels-Bsoj-9BS.js +367 -0
  174. package/dist/control-ui/assets/cron-BRTEw1tT.js +1013 -0
  175. package/dist/control-ui/assets/debug-EKl_F8_L.js +97 -0
  176. package/dist/control-ui/assets/index-DSbSO7ys.js +7370 -0
  177. package/dist/control-ui/assets/instances-B1AoYwI5.js +57 -0
  178. package/dist/control-ui/assets/logs-BChOznzh.js +74 -0
  179. package/dist/control-ui/assets/nodes-5yebKh9k.js +436 -0
  180. package/dist/control-ui/assets/sessions-BlDYNThc.js +399 -0
  181. package/dist/control-ui/assets/skills-shared-CNFnf7KU.js +11 -0
  182. package/dist/control-ui/assets/skills-uxTDRmLx.js +314 -0
  183. package/dist/control-ui/index.html +1 -1
  184. package/dist/control-ui/sw.js +1 -1
  185. package/dist/conversation-binding-runtime-CmoTKcY1.js +4 -0
  186. package/dist/conversation-runtime-BxOHxuin.js +31 -0
  187. package/dist/core-D0Y2H55f.js +282 -0
  188. package/dist/core-api-BKlJUtDt.js +5 -0
  189. package/dist/core-api-_fiftUHn.js +2 -0
  190. package/dist/crestodian/crestodian.js +1 -1
  191. package/dist/crestodian/rescue-message.js +1 -1
  192. package/dist/crestodian-BJifoQiR.js +55 -0
  193. package/dist/daocore-tools-BMdF8RwK.js +11727 -0
  194. package/dist/delivery-e2ci_bcX.js +1002 -0
  195. package/dist/dialogue-BXayGhnz.js +37 -0
  196. package/dist/dir-fetch-tool-Cara5mZh.js +565 -0
  197. package/dist/dir-list-tool-CQ8Bo5Ez.js +100 -0
  198. package/dist/direct-dm-CPk6Qm9D.js +64 -0
  199. package/dist/directive-handling.fast-lane-BQ9aXqk8.js +68 -0
  200. package/dist/directive-handling.impl--a5AGurq.js +818 -0
  201. package/dist/directive-handling.impl-C4JqMwle.js +2 -0
  202. package/dist/directive-handling.model-selection-pyTYMIXn.js +122 -0
  203. package/dist/directive-handling.persist.runtime-B7vWT1r9.js +263 -0
  204. package/dist/directive-handling.persist.runtime.js +1 -1
  205. package/dist/dispatch-3Ru_eGq1.js +1640 -0
  206. package/dist/dispatch-acp-transcript.runtime-CYMP-5oE.js +40 -0
  207. package/dist/dispatch-acp-transcript.runtime.js +1 -1
  208. package/dist/dispatch-acp.runtime-BVCiklXk.js +18 -0
  209. package/dist/dispatch-acp.runtime.js +1 -1
  210. package/dist/doctor-B8mR3Sgr.js +2 -0
  211. package/dist/doctor-BJ6DuerV.js +6 -0
  212. package/dist/doctor-config-flow-BdOGs_zn.js +1741 -0
  213. package/dist/doctor-core-checks-CDf0stz-.js +2 -0
  214. package/dist/doctor-core-checks-Cpdnu2XI.js +573 -0
  215. package/dist/doctor-health-0qv_acBu.js +65 -0
  216. package/dist/doctor-health-contributions-Db1FQgFw.js +696 -0
  217. package/dist/doctor-lint-C1g4Llgl.js +94 -0
  218. package/dist/doctor-state-integrity-C8iXFLJ7.js +1231 -0
  219. package/dist/doctor-update-CsPu6p3d.js +58 -0
  220. package/dist/dynamic-tools-YQ0z0YKH.js +486 -0
  221. package/dist/embedded-backend-S0cahIZw.js +579 -0
  222. package/dist/embedded-gateway-stub.runtime-Cjw12ALm.js +12 -0
  223. package/dist/embedded-gateway-stub.runtime.js +1 -1
  224. package/dist/exec-approvals-ArHHjoE-.js +149 -0
  225. package/dist/extensionAPI.js +1 -1
  226. package/dist/extensions/active-memory/index.js +1 -1
  227. package/dist/extensions/admin-http-rpc/index.js +1 -1
  228. package/dist/extensions/browser/browser-bridge.js +1 -1
  229. package/dist/extensions/browser/browser-config.js +4 -4
  230. package/dist/extensions/browser/browser-control-auth.js +2 -2
  231. package/dist/extensions/browser/browser-doctor.js +2 -2
  232. package/dist/extensions/browser/browser-maintenance.js +1 -1
  233. package/dist/extensions/browser/browser-profiles.js +2 -2
  234. package/dist/extensions/browser/browser-runtime-api.js +11 -11
  235. package/dist/extensions/browser/cli-metadata.js +1 -1
  236. package/dist/extensions/browser/index.js +1 -1
  237. package/dist/extensions/browser/plugin-registration.js +1 -1
  238. package/dist/extensions/browser/register.runtime.js +4 -4
  239. package/dist/extensions/browser/runtime-api.js +13 -13
  240. package/dist/extensions/canvas/index.js +1 -1
  241. package/dist/extensions/clickclack/api.js +2 -2
  242. package/dist/extensions/clickclack/channel-plugin-api.js +1 -1
  243. package/dist/extensions/clickclack/runtime-api.js +2 -2
  244. package/dist/extensions/device-pair/api.js +1 -1
  245. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  246. package/dist/extensions/file-transfer/index.js +4 -4
  247. package/dist/extensions/imessage/api.js +2 -2
  248. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  249. package/dist/extensions/imessage/message-tool-api.d.ts +1 -1
  250. package/dist/extensions/imessage/runtime-api.js +3 -3
  251. package/dist/extensions/irc/api.js +2 -2
  252. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  253. package/dist/extensions/llm-task/index.js +1 -1
  254. package/dist/extensions/mattermost/api.js +1 -1
  255. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  256. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  257. package/dist/extensions/mattermost/policy-api.js +1 -1
  258. package/dist/extensions/mattermost/runtime-api.js +2 -2
  259. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  260. package/dist/extensions/memory-core/cli-metadata.js +1 -1
  261. package/dist/extensions/migrate-claude/apply.js +1 -1
  262. package/dist/extensions/migrate-claude/index.js +1 -1
  263. package/dist/extensions/migrate-claude/plan.js +1 -1
  264. package/dist/extensions/migrate-claude/provider.js +1 -1
  265. package/dist/extensions/migrate-claude/targets.js +1 -1
  266. package/dist/extensions/migrate-hermes/apply.js +1 -1
  267. package/dist/extensions/migrate-hermes/index.js +1 -1
  268. package/dist/extensions/migrate-hermes/model.js +1 -1
  269. package/dist/extensions/migrate-hermes/plan.js +1 -1
  270. package/dist/extensions/migrate-hermes/provider.js +1 -1
  271. package/dist/extensions/migrate-hermes/secrets.js +1 -1
  272. package/dist/extensions/migrate-hermes/targets.js +1 -1
  273. package/dist/extensions/policy/api.js +1 -1
  274. package/dist/extensions/policy/index.js +2 -2
  275. package/dist/extensions/signal/api.js +6 -6
  276. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  277. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  278. package/dist/extensions/signal/runtime-api.js +7 -7
  279. package/dist/extensions/skill-workshop/api.js +1 -1
  280. package/dist/extensions/skill-workshop/index.js +2 -2
  281. package/dist/extensions/telegram/account-inspect-api.js +1 -1
  282. package/dist/extensions/telegram/api.js +11 -11
  283. package/dist/extensions/telegram/channel-plugin-api.js +2 -2
  284. package/dist/extensions/telegram/contract-api.js +3 -3
  285. package/dist/extensions/telegram/runtime-api.js +7 -7
  286. package/dist/extensions/telegram/security-audit-contract-api.js +1 -1
  287. package/dist/extensions/telegram/setup-plugin-api.js +1 -1
  288. package/dist/extensions/telegram/test-api.js +2 -2
  289. package/dist/extensions/webhooks/api.js +1 -1
  290. package/dist/extensions/webhooks/index.js +1 -1
  291. package/dist/extensions/xai/index.js +4 -4
  292. package/dist/extensions/xai/realtime-transcription-provider.js +1 -1
  293. package/dist/extensions/xai/speech-provider.js +1 -1
  294. package/dist/extensions/xai/test-api.js +1 -1
  295. package/dist/extensions/xai/tts.js +1 -1
  296. package/dist/extensions/xai/web-search.js +1 -1
  297. package/dist/extensions/xai/xai-oauth.js +1 -1
  298. package/dist/file-fetch-tool-DQpAtjX4.js +124 -0
  299. package/dist/file-write-tool-CkB0oYwe.js +127 -0
  300. package/dist/format-DUJUpMFQ.js +1145 -0
  301. package/dist/gateway-cli-CQo_E4Ka.js +435 -0
  302. package/dist/gateway-method-runtime-1QPgVJH7.js +21 -0
  303. package/dist/get-reply-DfUcsC-O.js +4689 -0
  304. package/dist/get-reply-from-config.runtime-C95MG73O.js +2 -0
  305. package/dist/get-reply-from-config.runtime.js +1 -1
  306. package/dist/graph-users-DPJe0fPs.js +1419 -0
  307. package/dist/group-access-DefaNJ6L.js +112 -0
  308. package/dist/handle-action.guild-admin-C1sy1kGJ.js +288 -0
  309. package/dist/harness-BgPRdmNK.js +61 -0
  310. package/dist/health-DFR9A1YV.js +4 -0
  311. package/dist/heartbeat-runner-BiYVPs25.js +5 -0
  312. package/dist/heartbeat-runner.runtime-Bmaq8WUA.js +4 -0
  313. package/dist/heartbeat-runner.runtime.js +1 -1
  314. package/dist/hooks-CNJDuJUm.js +534 -0
  315. package/dist/inbound-direct-dm-runtime-DFt58p71.js +2 -0
  316. package/dist/inbound-reply-dispatch-kgSDM8ax.js +148 -0
  317. package/dist/index.js +1 -1
  318. package/dist/init-B0zO_U4r.js +59 -0
  319. package/dist/inline-buttons-B6zgQW3J.js +40 -0
  320. package/dist/internal-events-C3Q5t6hg.js +90 -0
  321. package/dist/isolated-agent-CaSU5GCJ.js +2 -0
  322. package/dist/isolated-agent-CnsD2TmP.js +1118 -0
  323. package/dist/lifecycle-i3WZDaIn.js +571 -0
  324. package/dist/list.probe-g0rUiVXW.js +449 -0
  325. package/dist/list.status-command-DG3PrmeO.js +789 -0
  326. package/dist/llm-slug-generator-CHlf69FU.js +78 -0
  327. package/dist/llm-slug-generator.js +1 -1
  328. package/dist/local-dispatch.runtime-CDeHUp_A.js +9 -0
  329. package/dist/local-dispatch.runtime.js +1 -1
  330. package/dist/manager.runtime-BlLMPUTq.js +2714 -0
  331. package/dist/manager.runtime.js +1 -1
  332. package/dist/markdown-to-line-r_mBHMdy.js +811 -0
  333. package/dist/mcp-http-C5UPIJGR.js +555 -0
  334. package/dist/mcp-http-CTy9gpfA.js +2 -0
  335. package/dist/media-understanding-provider-BT6TOuVa.js +339 -0
  336. package/dist/message-actions-BdcjjwFt.js +145 -0
  337. package/dist/message-handler-B29Tj2p2.js +1715 -0
  338. package/dist/message-handler-BhHb1FHI.js +384 -0
  339. package/dist/message-handler.preflight-ouZ_-3o8.js +1125 -0
  340. package/dist/message-handler.process-CrYiBx_F.js +1484 -0
  341. package/dist/model-CLbtocQX.js +74 -0
  342. package/dist/model-selection-BG_vU9Kl.js +272 -0
  343. package/dist/models-4KERn3ya.js +104 -0
  344. package/dist/models-BCa-ipxi.js +2 -0
  345. package/dist/models-cli-DtpGXEsf.js +256 -0
  346. package/dist/monitor-B-egsvmI.js +1657 -0
  347. package/dist/monitor-BJX9Yv7k.js +2 -0
  348. package/dist/monitor-BPrIy3pV.js +715 -0
  349. package/dist/monitor-BWknZZ7N.js +4377 -0
  350. package/dist/monitor-C3y_PtI1.js +60 -0
  351. package/dist/monitor-DCzfdqE4.js +1370 -0
  352. package/dist/monitor-P24epSwE.js +2788 -0
  353. package/dist/monitor-auth-CEG_xldE.js +179 -0
  354. package/dist/monitor-jEePJbbS.js +834 -0
  355. package/dist/monitor-polling.runtime-BzlHK11u.js +883 -0
  356. package/dist/monitor-polling.runtime.js +1 -1
  357. package/dist/monitor-webhook.runtime-vFEhk_Zj.js +387 -0
  358. package/dist/monitor-webhook.runtime.js +1 -1
  359. package/dist/monitor.account-BUIfgWXg.js +5233 -0
  360. package/dist/monitor.runtime-Cp7W4fhb.js +2 -0
  361. package/dist/monitor.runtime.js +1 -1
  362. package/dist/monitor.webhook-DzrbeR4T.js +180 -0
  363. package/dist/node-cli-sessions-CLbI14UA.js +1228 -0
  364. package/dist/openai-http-BM9BIA_g.js +824 -0
  365. package/dist/openresponses-http-CNoW9kk8.js +1173 -0
  366. package/dist/operations-DT4bsxV6.js +805 -0
  367. package/dist/outbound-adapter-CZRUOgY0.js +543 -0
  368. package/dist/outbound-session-route-DneMsGNx.js +45 -0
  369. package/dist/outbound.runtime-CHuoKJJI.js +2 -0
  370. package/dist/outbound.runtime.js +1 -1
  371. package/dist/pi-embedded-1-rsueO_.js +3796 -0
  372. package/dist/pi-embedded-BRfDncVO.js +4 -0
  373. package/dist/pi-embedded.runtime-DEYoa6bW.js +4 -0
  374. package/dist/pi-embedded.runtime.js +1 -1
  375. package/dist/pi-tools-C0P3NgP5.js +2413 -0
  376. package/dist/plan-BQUkjBMY.js +81 -0
  377. package/dist/plan-CRO9_2_k.js +112 -0
  378. package/dist/plugin-BJCmWhnh.js +12396 -0
  379. package/dist/plugin-app-cache-key-CXAg0F7A.js +46 -0
  380. package/dist/plugin-enabled-D93Z9LSo.js +233 -0
  381. package/dist/plugin-registration-BBrTcZnf.js +88 -0
  382. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  383. package/dist/plugin-sdk/acp-runtime-backend.js +1 -1
  384. package/dist/plugin-sdk/acp-runtime.js +2 -2
  385. package/dist/plugin-sdk/agent-harness-runtime.js +6 -6
  386. package/dist/plugin-sdk/agent-harness-task-runtime.js +1 -1
  387. package/dist/plugin-sdk/agent-harness.js +7 -7
  388. package/dist/plugin-sdk/agent-runtime.js +2 -2
  389. package/dist/plugin-sdk/channel-core.js +2 -2
  390. package/dist/plugin-sdk/channel-inbound.js +2 -2
  391. package/dist/plugin-sdk/channel-test-helpers.js +1 -1
  392. package/dist/plugin-sdk/command-auth.js +1 -1
  393. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  394. package/dist/plugin-sdk/compat.js +1 -1
  395. package/dist/plugin-sdk/conversation-binding-runtime.js +2 -2
  396. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  397. package/dist/plugin-sdk/core.js +2 -2
  398. package/dist/plugin-sdk/direct-dm.js +1 -1
  399. package/dist/plugin-sdk/gateway-method-runtime.js +1 -1
  400. package/dist/plugin-sdk/health.js +2 -2
  401. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  402. package/dist/plugin-sdk/index.js +1 -1
  403. package/dist/plugin-sdk/mattermost.js +1 -1
  404. package/dist/plugin-sdk/plugin-test-contracts.js +2 -2
  405. package/dist/plugin-sdk/provider-test-contracts.js +4 -4
  406. package/dist/plugin-sdk/reply-runtime.js +4 -4
  407. package/dist/plugin-sdk/testing.js +2 -2
  408. package/dist/plugin-sdk/zalouser.js +1 -1
  409. package/dist/plugin-service-DnZEPBEA.js +1229 -0
  410. package/dist/plugins/runtime/index.js +4 -4
  411. package/dist/policy-CMv5QMPG.js +138 -0
  412. package/dist/policy-CeoP4t9J.js +680 -0
  413. package/dist/prepare.runtime-DZ55JiTt.js +732 -0
  414. package/dist/prepare.runtime.js +1 -1
  415. package/dist/preview-warnings-O08PZRxu.js +392 -0
  416. package/dist/probe-C6w3bP8X.js +682 -0
  417. package/dist/probe-Cs1_X1NA.js +47 -0
  418. package/dist/probe-Cuee_jyM.js +2204 -0
  419. package/dist/probe-DZxCnDzn.js +2 -0
  420. package/dist/program-C2dT8VHB.js +131 -0
  421. package/dist/provider-C2_vSzYh.js +32 -0
  422. package/dist/provider-DSfTDQbj.js +152 -0
  423. package/dist/provider-U8hrm9h-.js +32 -0
  424. package/dist/provider-_v910H8y.js +8735 -0
  425. package/dist/provider-dispatcher-C3kmmIEC.js +22 -0
  426. package/dist/provider-dispatcher.runtime.js +1 -1
  427. package/dist/provider-session.runtime-Mg0fx5hH.js +9 -0
  428. package/dist/provider-session.runtime.js +1 -1
  429. package/dist/provider.runtime-pSTXuHrq.js +2 -0
  430. package/dist/provider.runtime.js +1 -1
  431. package/dist/public-surface-loader-09t4TTue.js +114 -0
  432. package/dist/pw-ai-DjNqHV3_.js +3029 -0
  433. package/dist/pw-role-snapshot-DoGefdv7.js +333 -0
  434. package/dist/reaction-level-C8Mqxizo.js +19 -0
  435. package/dist/reaction-runtime-api-DOP6xOsm.js +116 -0
  436. package/dist/realtime-transcription-provider-BTGEXXna.js +205 -0
  437. package/dist/register-CbZPpqI3.js +2178 -0
  438. package/dist/register.agent-DrBFuPKh.js +156 -0
  439. package/dist/register.crestodian-DwTbmaK8.js +24 -0
  440. package/dist/register.maintenance-BIeoYBub.js +83 -0
  441. package/dist/register.runtime-B5V9_Dwz.js +54 -0
  442. package/dist/register.subclis-CJE9ISZY.js +31 -0
  443. package/dist/register.subclis-YQsKas8N.js +3 -0
  444. package/dist/register.subclis-core-CjwdGeGU.js +273 -0
  445. package/dist/repair-sequencing-C0jrL5pw.js +640 -0
  446. package/dist/reply-delivery-B28mTIpb.js +196 -0
  447. package/dist/reply-runtime-BqQX7HHw.js +11 -0
  448. package/dist/reply.runtime-C95MG73O.js +2 -0
  449. package/dist/reply.runtime.js +1 -1
  450. package/dist/request-BqoMvXxH.js +54 -0
  451. package/dist/resolve-allowlist-hbKKd_kq.js +220 -0
  452. package/dist/result-fallback-classifier-BrORPoxj.js +79 -0
  453. package/dist/route-HHRgSzVy.js +469 -0
  454. package/dist/route-resolution-C7bafjVc.js +274 -0
  455. package/dist/routes-86XGeo7a.js +2 -0
  456. package/dist/routes-BhVGr9ie.js +3602 -0
  457. package/dist/run-Bb5QP5JV.js +1162 -0
  458. package/dist/run-attempt-CLi0wV7j.js +7704 -0
  459. package/dist/run-command-Be6GAxiW.js +2 -0
  460. package/dist/run-command-Ds4hr3iU.js +23 -0
  461. package/dist/run-embedded.runtime-wX9ORojX.js +4 -0
  462. package/dist/run-embedded.runtime.js +1 -1
  463. package/dist/run-execution-cli.runtime-BmNZVB2N.js +4 -0
  464. package/dist/run-execution-cli.runtime.js +1 -1
  465. package/dist/run-executor.runtime.js +1 -1
  466. package/dist/run-subagent-registry.runtime-Uq5sjftu.js +2 -0
  467. package/dist/run-subagent-registry.runtime.js +1 -1
  468. package/dist/runtime-BktLQ75j.js +1287 -0
  469. package/dist/runtime-C9XdR62_.js +438 -0
  470. package/dist/runtime-CTvWDPx9.js +6179 -0
  471. package/dist/runtime-api-BojB3MUw.js +21 -0
  472. package/dist/runtime-api-C92MlAwp.js +13 -0
  473. package/dist/runtime-api-CFNZE9Xt.js +13 -0
  474. package/dist/runtime-api-Cimpgm5_.js +3 -0
  475. package/dist/runtime-api-D8qG_lUm.js +17 -0
  476. package/dist/runtime-api-DMDMnQEG.js +4 -0
  477. package/dist/runtime-api-DupQdIlE.js +24 -0
  478. package/dist/runtime-api.actions-B8i3elqu.js +3 -0
  479. package/dist/runtime-api.monitor-BntFzf_M.js +6 -0
  480. package/dist/runtime-api.send-CPlmi1jc.js +4 -0
  481. package/dist/runtime-api.threads-D-H_r_Nl.js +2 -0
  482. package/dist/runtime-channel-BGhTxnXZ.js +150 -0
  483. package/dist/runtime-channel-CPFxNapZ.js +2 -0
  484. package/dist/runtime-embedded-pi.runtime-BjnMTurB.js +2 -0
  485. package/dist/runtime-embedded-pi.runtime.js +1 -1
  486. package/dist/sanitize-outbound-BMUv1NeS.js +127 -0
  487. package/dist/sdk-setup-tools-Do3DkQi_.js +8 -0
  488. package/dist/secrets-B8YVPHhk.js +113 -0
  489. package/dist/security-audit-7Gg_nL4o.js +122 -0
  490. package/dist/security-audit-Bk3CREj-.js +118 -0
  491. package/dist/security-audit.runtime-BmSJrdeq.js +2 -0
  492. package/dist/security-audit.runtime.js +1 -1
  493. package/dist/selection-BFGde9-_.js +3 -0
  494. package/dist/selection-DrLFlbgG.js +16157 -0
  495. package/dist/send-4dLa-BQo.js +1631 -0
  496. package/dist/send-CV6gCwYP.js +192 -0
  497. package/dist/send-aGiK3Efu.js +143 -0
  498. package/dist/send-dB3CehAN.js +2 -0
  499. package/dist/send.components-BcG9BlkC.js +2 -0
  500. package/dist/send.components-rLjDlfYU.js +500 -0
  501. package/dist/send.runtime-D20k2MSr.js +2 -0
  502. package/dist/send.runtime.js +1 -1
  503. package/dist/server-BTRx_U1s.js +73 -0
  504. package/dist/server-CY0ymhBg.js +24 -0
  505. package/dist/server-close.runtime.js +1 -1
  506. package/dist/server-context-BxGT8wbK.js +955 -0
  507. package/dist/server-context-DYlbhAaT.js +2 -0
  508. package/dist/server-cron-BB_15lcP.js +2 -0
  509. package/dist/server-cron-CfyJX_a4.js +2989 -0
  510. package/dist/server-methods-Ck2ab6TC.js +16494 -0
  511. package/dist/server-node-events-BdRizF-5.js +596 -0
  512. package/dist/server-plugin-bootstrap-CPUr8NFE.js +70 -0
  513. package/dist/server-plugins-__5AxjzH.js +432 -0
  514. package/dist/server-reload-handlers-BMl9Fx9b.js +714 -0
  515. package/dist/server-restart-sentinel-D11M_ZsH.js +747 -0
  516. package/dist/server-restart-sentinel-DGptQ27c.js +2 -0
  517. package/dist/server-runtime-services-BwtLs-8I.js +2 -0
  518. package/dist/server-runtime-services-aJydixRu.js +267 -0
  519. package/dist/server-startup-plugins-m_P3gY4m.js +113 -0
  520. package/dist/server-startup-post-attach-DuXQ1AXL.js +716 -0
  521. package/dist/server-ws-runtime-mXmxB1W8.js +349 -0
  522. package/dist/server.impl-fuV8aKSP.js +2586 -0
  523. package/dist/service-a8cTFka4.js +1446 -0
  524. package/dist/session-binding-BIycxo9u.js +2 -0
  525. package/dist/session-binding-xHwQr9vM.js +219 -0
  526. package/dist/session-kill-http-DiUZhcoN.js +121 -0
  527. package/dist/session-reset-service-DkepDoob.js +625 -0
  528. package/dist/session-route-Ba5u7ecb.js +93 -0
  529. package/dist/session-status.runtime-Cb1X69Rl.js +2 -0
  530. package/dist/session-status.runtime.js +1 -1
  531. package/dist/session-subagent-reactivation.runtime-rbqmto4G.js +2 -0
  532. package/dist/session-subagent-reactivation.runtime.js +1 -1
  533. package/dist/session-tab-registry-DSKOoJta.js +521 -0
  534. package/dist/sessions-history-http-CWP88I_C.js +430 -0
  535. package/dist/sessions.runtime-1q1OwLn3.js +2 -0
  536. package/dist/sessions.runtime.js +1 -1
  537. package/dist/setup-api-DtrOOYeP.js +29 -0
  538. package/dist/setup-core-DMrJS6LP.js +174 -0
  539. package/dist/setup-surface-BFPNu1qA.js +405 -0
  540. package/dist/setup-surface-CedShqhO.js +288 -0
  541. package/dist/setup-surface-DLOBH1Vf.js +320 -0
  542. package/dist/setup-surface-MhCeEWSj.js +221 -0
  543. package/dist/shared-DamL-e8D.js +121 -0
  544. package/dist/shared-client-B48JoAsz.js +2 -0
  545. package/dist/shared-client-BoSiDnUo.js +629 -0
  546. package/dist/side-question-DQoQ_ETb.js +683 -0
  547. package/dist/skill-tool-dispatch.runtime-CWLloYA8.js +143 -0
  548. package/dist/skill-tool-dispatch.runtime.js +1 -1
  549. package/dist/slash-state-DrrWJQfv.js +2166 -0
  550. package/dist/speech-provider-8Hx1uw41.js +184 -0
  551. package/dist/src-BbUYOPwU.js +4256 -0
  552. package/dist/startup-context-opAJAamX.js +313 -0
  553. package/dist/status-subagents.runtime-DSo7ZK_Z.js +18 -0
  554. package/dist/status-subagents.runtime.js +1 -1
  555. package/dist/status-text-AyPuDzrO.js +296 -0
  556. package/dist/sticker-cache-91Tp8mLP.js +206 -0
  557. package/dist/sticker-vision.runtime-DjleFXi5.js +17 -0
  558. package/dist/sticker-vision.runtime.js +1 -1
  559. package/dist/subagent-announce-delivery-DS_2W9oZ.js +958 -0
  560. package/dist/subagent-announce-hatA_PZ2.js +354 -0
  561. package/dist/subagent-control-IyFIvc7T.js +508 -0
  562. package/dist/subagent-hooks-BCj5eB0Z.js +2 -0
  563. package/dist/subagent-hooks-BWjTBkox.js +146 -0
  564. package/dist/subagent-hooks-CdGLK9_3.js +230 -0
  565. package/dist/subagent-hooks-EH0tBkw9.js +2 -0
  566. package/dist/subagent-hooks-api-BhYaXQJV.js +23 -0
  567. package/dist/subagent-hooks-api-uGsV8Xn5.js +22 -0
  568. package/dist/subagent-hooks-api-wfJFKIPx.js +23 -0
  569. package/dist/subagent-hooks-l8Xd94dt.js +2 -0
  570. package/dist/subagent-hooks-m2eHUO_d.js +116 -0
  571. package/dist/subagent-orphan-recovery-Bq9zvX3L.js +352 -0
  572. package/dist/subagent-registry-Bcb3zy6b.js +3 -0
  573. package/dist/subagent-registry-CoZNTFx-.js +2351 -0
  574. package/dist/subagent-registry.runtime.js +1 -1
  575. package/dist/subagent-session-cleanup--00EjDLe.js +525 -0
  576. package/dist/subagent-spawn-ClJJkz3D.js +1164 -0
  577. package/dist/target-id-BsZLiF3x.js +107 -0
  578. package/dist/targets-CQMe4AZP.js +44 -0
  579. package/dist/targets-SmL1AU-H.js +19 -0
  580. package/dist/targets-Y-roiA47.js +19 -0
  581. package/dist/task-registry-control.runtime.js +1 -1
  582. package/dist/telegram/token.js +1 -1
  583. package/dist/testing-B5hNJDuF.js +267 -0
  584. package/dist/thread-bindings-BD3eE0kK.js +232 -0
  585. package/dist/thread-bindings-C9NNiv8K.js +571 -0
  586. package/dist/thread-bindings-Dl4PN1vZ.js +228 -0
  587. package/dist/thread-bindings-uK1LLAwy.js +8 -0
  588. package/dist/thread-bindings.discord-api-BHNEUbnk.js +187 -0
  589. package/dist/thread-bindings.manager-B0LXiH3F.js +2 -0
  590. package/dist/thread-bindings.manager-BTlH4XMG.js +536 -0
  591. package/dist/thread-lifecycle-DG8uyPHd.js +1614 -0
  592. package/dist/token-BbGCANnE.js +134 -0
  593. package/dist/tool-actions.runtime-oUUrD8HB.js +534 -0
  594. package/dist/tool-actions.runtime.js +1 -1
  595. package/dist/tool-bqg-_vYv.js +139 -0
  596. package/dist/tool-resolution-CSZsa3kP.js +149 -0
  597. package/dist/tools-effective-inventory-0CqFp-vq.js +204 -0
  598. package/dist/tools-invoke-http-DhYHY0Yh.js +67 -0
  599. package/dist/tools-invoke-shared-CbVJJUj7.js +200 -0
  600. package/dist/tts-C2qD-ad6.js +66 -0
  601. package/dist/tui-CzGY254f.js +4709 -0
  602. package/dist/tui-backend-fzoeoSN0.js +256 -0
  603. package/dist/tui-cli-B2RWb2gM.js +37 -0
  604. package/dist/tui-dgS8hdXU.js +2 -0
  605. package/dist/update-cli-BmiBDf3c.js +3664 -0
  606. package/dist/update-runner-CM7QVX6u.js +2379 -0
  607. package/dist/vision-tools-BzoBZnIc.js +1409 -0
  608. package/dist/web-search-DmfOd66S.js +62 -0
  609. package/dist/web-search-provider.runtime-3C5-pODD.js +328 -0
  610. package/dist/web-search-provider.runtime-Doh-Z9We.js +2 -0
  611. package/dist/web-search-provider.runtime.js +1 -1
  612. package/dist/xai-oauth-BLvQ43hx.js +479 -0
  613. package/dist/xai-user-agent-BdMQ_0_O.js +32 -0
  614. package/package.json +1 -1
  615. package/dist/abort-DeEb_wKd.js +0 -277
  616. package/dist/abort.runtime-CoYXQGPK.js +0 -2
  617. package/dist/account-inspect-D_06-CYS.js +0 -173
  618. package/dist/accounts-BCTqtj4Y.js +0 -107
  619. package/dist/accounts-BudLl8P2.js +0 -107
  620. package/dist/accounts-CUReBDA0.js +0 -2
  621. package/dist/accounts-PCioSzzr.js +0 -119
  622. package/dist/acp-runtime-B2t9_BHD.js +0 -26
  623. package/dist/acp-spawn-0x4Iiu1o.js +0 -2
  624. package/dist/acp-spawn-B2Ghe0jJ.js +0 -1275
  625. package/dist/acp-stateful-target-driver-C4VgcSyz.js +0 -89
  626. package/dist/action-kill-ClYsXEz7.js +0 -33
  627. package/dist/action-runtime-DrLPkNvU.js +0 -469
  628. package/dist/action-runtime-api-BqSflr9q.js +0 -2
  629. package/dist/action-send-CIy9cziD.js +0 -39
  630. package/dist/action-spawn-BjV6lFnX.js +0 -47
  631. package/dist/actions-D-QH7wq5.js +0 -161
  632. package/dist/actions.runtime-hzDtXQGU.js +0 -5
  633. package/dist/agent-Bb1DTBgv.js +0 -3
  634. package/dist/agent-Cnqj258q.js +0 -2
  635. package/dist/agent-command-BRx6ZNgJ.js +0 -1367
  636. package/dist/agent-components.runtime-D-g6xXJ0.js +0 -10
  637. package/dist/agent-harness-runtime-dKUQFuOc.js +0 -180
  638. package/dist/agent-harness-task-runtime-v2crUm3i.js +0 -140
  639. package/dist/agent-runner-execution-AOzdxvWR.js +0 -1713
  640. package/dist/agent-runner-utils-Byv50B4Z.js +0 -266
  641. package/dist/agent-runner.runtime-hhgRE0Z-.js +0 -3455
  642. package/dist/agent-runtime-BHmh3i0o.js +0 -229
  643. package/dist/agent-via-gateway-DnCqaK4a.js +0 -463
  644. package/dist/api-Bzyb8sFU.js +0 -3
  645. package/dist/api-CIEDFXZs.js +0 -2
  646. package/dist/api-D_dTQAu8.js +0 -2
  647. package/dist/api-DilBjZ9Q.js +0 -6
  648. package/dist/api-E5zoQMmh.js +0 -134
  649. package/dist/api-OJZug8gQ.js +0 -639
  650. package/dist/apply-C0eV5T0O.js +0 -41
  651. package/dist/apply-alsYvxLE.js +0 -54
  652. package/dist/approval-handler.runtime-C6jqZXSN.js +0 -130
  653. package/dist/assistant-DDXnAAB5.js +0 -291
  654. package/dist/attachment-normalize-Cv-_4DWU.js +0 -225
  655. package/dist/attempt-execution-DECEU59r.js +0 -558
  656. package/dist/attempt-execution.runtime-kasMxuER.js +0 -3
  657. package/dist/attempt-execution.shared-ClUxk52p.js +0 -38
  658. package/dist/attempt.prompt-helpers-Bxlv9VSu.js +0 -475
  659. package/dist/attempt.tool-run-context-CplQWX6g.js +0 -2094
  660. package/dist/binding-routing-0Obpp-Ij.js +0 -113
  661. package/dist/binding-targets-CZHQaZL4.js +0 -121
  662. package/dist/bot-BPbQ0840.js +0 -7894
  663. package/dist/bot-deps-Cs1M9USs.js +0 -2
  664. package/dist/bot-deps-xAcaOtTZ.js +0 -747
  665. package/dist/bot-message-context.runtime-Bji78Cbn.js +0 -7
  666. package/dist/bot-message-context.session.runtime-C3dyOIYH.js +0 -12
  667. package/dist/bot-native-commands.delivery.runtime-WshH99fy.js +0 -4
  668. package/dist/bot-native-commands.runtime-C1L364gU.js +0 -13
  669. package/dist/bridge-server-DPlM8_Lk.js +0 -113
  670. package/dist/browser-cli-DFNQE98N.js +0 -230
  671. package/dist/browser-cli-Drb5E5--.js +0 -2
  672. package/dist/browser-cli-actions-input-Dx-1OXmE.js +0 -473
  673. package/dist/browser-cli-actions-observe-BMDfE7xU.js +0 -81
  674. package/dist/browser-cli-debug-nu7Ih09g.js +0 -137
  675. package/dist/browser-cli-inspect-D5X2wohg.js +0 -104
  676. package/dist/browser-cli-manage-DkzYwph4.js +0 -443
  677. package/dist/browser-cli-resize-B30Avedl.js +0 -26
  678. package/dist/browser-cli-shared-cMgQoQzF.js +0 -50
  679. package/dist/browser-cli-state-CQLDvDy7.js +0 -337
  680. package/dist/browser-control-auth-D7ArmHUt.js +0 -2
  681. package/dist/browser-profiles-B39SIZNb.js +0 -2
  682. package/dist/browser-runtime-DUbSAOOS.js +0 -384
  683. package/dist/build-D25KqC92.js +0 -257
  684. package/dist/capability-cli-CuyXrlAB.js +0 -1782
  685. package/dist/channel-0N3YGMGg.js +0 -1496
  686. package/dist/channel-1UyKoLyp.js +0 -481
  687. package/dist/channel-BG87pSEW.js +0 -740
  688. package/dist/channel-BPGSaZW7.js +0 -1249
  689. package/dist/channel-BQMPh1J_.js +0 -376
  690. package/dist/channel-Bd_8V6zn.js +0 -1134
  691. package/dist/channel-BtBjh_ij.js +0 -362
  692. package/dist/channel-CpFBlVH6.js +0 -562
  693. package/dist/channel-CwuTrIrF.js +0 -508
  694. package/dist/channel-Cxl4sJA-.js +0 -1777
  695. package/dist/channel-D-VfU4Z2.js +0 -2126
  696. package/dist/channel-D9q8aYrN.js +0 -867
  697. package/dist/channel-DKSvVvZh.js +0 -238
  698. package/dist/channel-DvoFfWLx.js +0 -808
  699. package/dist/channel-GktTcGHm.js +0 -955
  700. package/dist/channel-actions.runtime-CKcRA0GW.js +0 -265
  701. package/dist/channel-core-nm8s1qFZ.js +0 -5
  702. package/dist/channel-d3t2ESlE.js +0 -653
  703. package/dist/channel-inbound-DKz40dq-.js +0 -80
  704. package/dist/channel-plugin-runtime-DKIGZWfW.js +0 -998
  705. package/dist/channel-runtime-Bh8_GY12.js +0 -408
  706. package/dist/channel-yQ8jCOb9.js +0 -1556
  707. package/dist/channel.runtime-BG4mM5cQ.js +0 -652
  708. package/dist/channel.runtime-BS6PyFFa.js +0 -1008
  709. package/dist/channel.runtime-CE_xECqN.js +0 -88
  710. package/dist/channel.runtime-Cd1Sw8U4.js +0 -254
  711. package/dist/channel.runtime-DIq3XOEe.js +0 -733
  712. package/dist/channel.runtime-Dy1cx35I.js +0 -21009
  713. package/dist/channel.runtime-NyIMjLnP.js +0 -109
  714. package/dist/channel.runtime-Zx5mfE2V.js +0 -4
  715. package/dist/channel.runtime-rJRibGfN.js +0 -2528
  716. package/dist/channel.setup--4ACadmF.js +0 -10
  717. package/dist/channel.setup-DzwqIlo3.js +0 -1098
  718. package/dist/channel.setup-FKYSJwXR.js +0 -343
  719. package/dist/chat-CKxSm7r1.js +0 -2666
  720. package/dist/chrome-rMubJwRG.js +0 -1503
  721. package/dist/cli-CbTod55I.js +0 -1341
  722. package/dist/cli-compaction-BbHgjJyW.js +0 -347
  723. package/dist/cli-metadata-DkOWLC_p.js +0 -22
  724. package/dist/cli-runner-Cwzv_RKf.js +0 -540
  725. package/dist/cli-runner-DdnUsgPl.js +0 -2
  726. package/dist/cli-runner.runtime-BlrSgbEW.js +0 -3
  727. package/dist/cli-runner.runtime-D8kVfvFH.js +0 -4
  728. package/dist/client-ClvxsWgL.js +0 -650
  729. package/dist/client-adapter-CsrIIjK1.js +0 -897
  730. package/dist/client-factory-DAYClhwm.js +0 -9
  731. package/dist/command-auth-CCha2ofd.js +0 -135
  732. package/dist/command-handlers-DCWJzHyB.js +0 -1609
  733. package/dist/command-registry-BIf61QNz.js +0 -9
  734. package/dist/command-registry-DJROBy4h.js +0 -4
  735. package/dist/command-registry-core-BQOWqi6S.js +0 -110
  736. package/dist/command-status.runtime-D88CUglL.js +0 -90
  737. package/dist/commands-acp-B-8dHX4Z.js +0 -74
  738. package/dist/commands-compact.runtime-ComX5mUk.js +0 -10
  739. package/dist/commands-handlers.runtime-DR3wjXHX.js +0 -6154
  740. package/dist/commands-status-CDyGrwsI.js +0 -3
  741. package/dist/commands-status-DV-i_ZIK.js +0 -16
  742. package/dist/commands-status.runtime-CDyGrwsI.js +0 -3
  743. package/dist/commands-subagents-control.runtime-B029cXAS.js +0 -3
  744. package/dist/commands-subagents-control.runtime-DR8Qspe0.js +0 -2
  745. package/dist/commands-system-prompt-C10ctsG3.js +0 -162
  746. package/dist/commands-system-prompt-DQlRWwnk.js +0 -2
  747. package/dist/commands.runtime-BYmIAuN0.js +0 -176
  748. package/dist/compact-14Ljaaeu.js +0 -480
  749. package/dist/compact-B--ovdkx.js +0 -1141
  750. package/dist/compact.runtime-E0Idf2Dq.js +0 -12
  751. package/dist/completion-cli-DMvvQGSk.js +0 -315
  752. package/dist/computer-use-CcLwX5SR.js +0 -367
  753. package/dist/config-B39SIZNb.js +0 -2
  754. package/dist/config-D4rsGOyV.js +0 -373
  755. package/dist/config-mutations-CsI3YJu7.js +0 -159
  756. package/dist/context-engine-host-compat-BZpDFiMJ.js +0 -2
  757. package/dist/context-engine-host-compat-runUdES5.js +0 -288
  758. package/dist/context-engine-lifecycle-D6odtNrn.js +0 -1274
  759. package/dist/control-auth-BPGpPtfz.js +0 -114
  760. package/dist/control-service-C-OmdPCe.js +0 -145
  761. package/dist/control-ui/assets/agents-GeyOHPuW.js +0 -1008
  762. package/dist/control-ui/assets/channel-config-extras-D7en6iUg.js +0 -2
  763. package/dist/control-ui/assets/channels-DkEyr1w5.js +0 -367
  764. package/dist/control-ui/assets/cron-C-wThQ1Q.js +0 -1013
  765. package/dist/control-ui/assets/debug-83AFRtIX.js +0 -97
  766. package/dist/control-ui/assets/index-CiGEhMOA.js +0 -7370
  767. package/dist/control-ui/assets/instances-CVl0t-1h.js +0 -57
  768. package/dist/control-ui/assets/logs-eybVEXxg.js +0 -74
  769. package/dist/control-ui/assets/nodes-C_A7eoU2.js +0 -436
  770. package/dist/control-ui/assets/sessions-Cq4Nc69u.js +0 -399
  771. package/dist/control-ui/assets/skills-ZN6hroIh.js +0 -314
  772. package/dist/control-ui/assets/skills-shared-DIWGwmdC.js +0 -11
  773. package/dist/conversation-binding-runtime-C2U1JElL.js +0 -4
  774. package/dist/conversation-runtime-NmIUd3Zu.js +0 -31
  775. package/dist/core-DGKJP1dm.js +0 -282
  776. package/dist/core-api-1fA4sNeC.js +0 -5
  777. package/dist/core-api-BY822Quq.js +0 -2
  778. package/dist/crestodian-Bp-NXiBC.js +0 -55
  779. package/dist/daocore-tools-Defpam0j.js +0 -11727
  780. package/dist/delivery-CEdVAUGB.js +0 -1002
  781. package/dist/dialogue-CZ69INPq.js +0 -37
  782. package/dist/dir-fetch-tool-BCicHhQE.js +0 -565
  783. package/dist/dir-list-tool-Cv_WktsJ.js +0 -100
  784. package/dist/direct-dm-Bz89rM8x.js +0 -64
  785. package/dist/directive-handling.fast-lane-DDnbcc5S.js +0 -68
  786. package/dist/directive-handling.impl-B0H52Ymr.js +0 -818
  787. package/dist/directive-handling.impl-CgKpwEW-.js +0 -2
  788. package/dist/directive-handling.model-selection-_cXAr0vt.js +0 -122
  789. package/dist/directive-handling.persist.runtime-Dw0mfzXT.js +0 -263
  790. package/dist/dispatch-C3AeYvyP.js +0 -1640
  791. package/dist/dispatch-acp-transcript.runtime-CP8pqBwS.js +0 -40
  792. package/dist/dispatch-acp.runtime-Cdap-AZI.js +0 -18
  793. package/dist/doctor-BZwVH97p.js +0 -2
  794. package/dist/doctor-BfkGBii1.js +0 -6
  795. package/dist/doctor-config-flow-D3JASGDt.js +0 -1741
  796. package/dist/doctor-core-checks-DH5AIT0Q.js +0 -573
  797. package/dist/doctor-core-checks-DiNu7VSh.js +0 -2
  798. package/dist/doctor-health-BDIJ-Nro.js +0 -65
  799. package/dist/doctor-health-contributions-BgmF7w8X.js +0 -696
  800. package/dist/doctor-lint-uIxkMUSO.js +0 -94
  801. package/dist/doctor-state-integrity-ws1b_BGk.js +0 -1231
  802. package/dist/doctor-update-Cx4CqxaX.js +0 -58
  803. package/dist/dynamic-tools-DiqOxhJh.js +0 -486
  804. package/dist/embedded-backend-C634irMl.js +0 -579
  805. package/dist/embedded-gateway-stub.runtime-CCfrTOeN.js +0 -12
  806. package/dist/exec-approvals-D85KThSg.js +0 -149
  807. package/dist/file-fetch-tool-BERaGYCT.js +0 -124
  808. package/dist/file-write-tool-BjHrMyfe.js +0 -127
  809. package/dist/format-DE9PuPg1.js +0 -1145
  810. package/dist/gateway-cli-B5hjhbUy.js +0 -435
  811. package/dist/gateway-method-runtime-Bu0E9Eki.js +0 -21
  812. package/dist/get-reply-6PtPz9hv.js +0 -4689
  813. package/dist/get-reply-from-config.runtime-CwprvhoR.js +0 -2
  814. package/dist/graph-users-DUp1kgnS.js +0 -1419
  815. package/dist/group-access-D5GBQ3w6.js +0 -112
  816. package/dist/handle-action.guild-admin-CA0Y-buD.js +0 -288
  817. package/dist/harness-B5nOFVfm.js +0 -61
  818. package/dist/health-D5heIDj3.js +0 -4
  819. package/dist/heartbeat-runner-BzFkIFHh.js +0 -5
  820. package/dist/heartbeat-runner.runtime-p6H1_xMV.js +0 -4
  821. package/dist/hooks-BvTyQ14X.js +0 -534
  822. package/dist/inbound-direct-dm-runtime-DwiDXi8L.js +0 -2
  823. package/dist/inbound-reply-dispatch-YoDUOC6C.js +0 -148
  824. package/dist/init-CPtcV5Xu.js +0 -59
  825. package/dist/inline-buttons-DeD5d42c.js +0 -40
  826. package/dist/internal-events-DEb50Sw3.js +0 -90
  827. package/dist/isolated-agent-CcxFFZ-Z.js +0 -1118
  828. package/dist/isolated-agent-CpHzq5qr.js +0 -2
  829. package/dist/lifecycle-DNel-oMe.js +0 -571
  830. package/dist/list.probe-DCa3N25d.js +0 -449
  831. package/dist/list.status-command-CyeAJmZW.js +0 -789
  832. package/dist/llm-slug-generator-CyqTY37Z.js +0 -78
  833. package/dist/local-dispatch.runtime-nE39kFIP.js +0 -9
  834. package/dist/manager.runtime-CpAPB8D5.js +0 -2714
  835. package/dist/markdown-to-line-Ci6TRmoZ.js +0 -811
  836. package/dist/mcp-http-BR0vmxFL.js +0 -2
  837. package/dist/mcp-http-C0oniA8h.js +0 -555
  838. package/dist/media-understanding-provider-BwA0XqC3.js +0 -339
  839. package/dist/message-actions-C9C_Ngkd.js +0 -145
  840. package/dist/message-handler-CUUKPC5n.js +0 -384
  841. package/dist/message-handler-xRTfIXWV.js +0 -1715
  842. package/dist/message-handler.preflight-Ch2Q7V3M.js +0 -1125
  843. package/dist/message-handler.process-HM3mK93q.js +0 -1484
  844. package/dist/model-CB8Ex5xS.js +0 -74
  845. package/dist/model-selection-2s0Dinux.js +0 -272
  846. package/dist/models-Cn-6DJ41.js +0 -2
  847. package/dist/models-CzszJD__.js +0 -104
  848. package/dist/models-cli-CbhElnA5.js +0 -256
  849. package/dist/monitor-7aprTsMV.js +0 -715
  850. package/dist/monitor-BuVhqwDS.js +0 -1370
  851. package/dist/monitor-C4H_YkgY.js +0 -2
  852. package/dist/monitor-CPQsMxgv.js +0 -1657
  853. package/dist/monitor-Ce0V1PiR.js +0 -4377
  854. package/dist/monitor-D0bcGJWI.js +0 -60
  855. package/dist/monitor-DEjlJqzh.js +0 -834
  856. package/dist/monitor-auth-DjJZsjgV.js +0 -179
  857. package/dist/monitor-ikSYagv3.js +0 -2788
  858. package/dist/monitor-polling.runtime-D7yEflMM.js +0 -883
  859. package/dist/monitor-webhook.runtime-CIZt-biI.js +0 -387
  860. package/dist/monitor.account-C2sMOBCS.js +0 -5233
  861. package/dist/monitor.runtime-BAi6zmcn.js +0 -2
  862. package/dist/monitor.webhook-BcjpfRCX.js +0 -180
  863. package/dist/node-cli-sessions-CIhkJRU4.js +0 -1228
  864. package/dist/openai-http-Dj21RwSj.js +0 -824
  865. package/dist/openresponses-http-COnnr1ox.js +0 -1173
  866. package/dist/operations-H3vUh0lM.js +0 -805
  867. package/dist/outbound-adapter-WLtWE7wv.js +0 -543
  868. package/dist/outbound-session-route-CZtd64EH.js +0 -45
  869. package/dist/outbound.runtime-D98P0sN1.js +0 -2
  870. package/dist/pi-embedded-BWJzd4mK.js +0 -4
  871. package/dist/pi-embedded-DeNsSqQQ.js +0 -3796
  872. package/dist/pi-embedded.runtime-CZnNwFpc.js +0 -4
  873. package/dist/pi-tools-CNHSpjBa.js +0 -2413
  874. package/dist/plan-B0reFFlM.js +0 -81
  875. package/dist/plan-CrfF-TH8.js +0 -112
  876. package/dist/plugin-DI_8eYOe.js +0 -12396
  877. package/dist/plugin-app-cache-key-WaTUD3e-.js +0 -46
  878. package/dist/plugin-enabled-aWLXgGGi.js +0 -233
  879. package/dist/plugin-registration-ByjRIVJm.js +0 -88
  880. package/dist/plugin-service-VQm_241d.js +0 -1229
  881. package/dist/policy-BmJH-swe.js +0 -680
  882. package/dist/policy-DE-bO1zn.js +0 -138
  883. package/dist/prepare.runtime-bSj3-res.js +0 -732
  884. package/dist/preview-warnings-CbuGYsF9.js +0 -392
  885. package/dist/probe-C_rWg7_m.js +0 -682
  886. package/dist/probe-CagOFfx6.js +0 -2
  887. package/dist/probe-thX1HqOh.js +0 -2204
  888. package/dist/probe-zU6B6gFt.js +0 -47
  889. package/dist/program-BtVdH743.js +0 -131
  890. package/dist/provider-CDoD7tO0.js +0 -8735
  891. package/dist/provider-CK1gMdJ2.js +0 -32
  892. package/dist/provider-DJqr9djy.js +0 -32
  893. package/dist/provider-DsOJp5bK.js +0 -152
  894. package/dist/provider-dispatcher-UNQ-LSx9.js +0 -22
  895. package/dist/provider-session.runtime-DMrkMb4x.js +0 -9
  896. package/dist/provider.runtime-C2-t3zm8.js +0 -2
  897. package/dist/public-surface-loader-hTeyyHcd.js +0 -114
  898. package/dist/pw-ai-BaL3eVYx.js +0 -3029
  899. package/dist/pw-role-snapshot-DKeBqhN1.js +0 -333
  900. package/dist/reaction-level-BV2potsD.js +0 -19
  901. package/dist/reaction-runtime-api-CCBxgM10.js +0 -116
  902. package/dist/realtime-transcription-provider-CHYtIXZm.js +0 -205
  903. package/dist/register-BJf28G9B.js +0 -2178
  904. package/dist/register.agent-oXAHwNQv.js +0 -156
  905. package/dist/register.crestodian-CQ0sqdV2.js +0 -24
  906. package/dist/register.maintenance-CylVRs5M.js +0 -83
  907. package/dist/register.runtime-CcDgwy0X.js +0 -54
  908. package/dist/register.subclis-CpBYNw2X.js +0 -3
  909. package/dist/register.subclis-N2CvieOL.js +0 -31
  910. package/dist/register.subclis-core-BHaGvbzg.js +0 -273
  911. package/dist/repair-sequencing-EBBnBdIB.js +0 -640
  912. package/dist/reply-delivery-BLoPALlI.js +0 -196
  913. package/dist/reply-runtime-D4asNTSa.js +0 -11
  914. package/dist/reply.runtime-CwprvhoR.js +0 -2
  915. package/dist/request-DlWPRUDt.js +0 -54
  916. package/dist/resolve-allowlist-BukQf58x.js +0 -220
  917. package/dist/result-fallback-classifier-DyHFnqfV.js +0 -79
  918. package/dist/route-BMf4keN5.js +0 -469
  919. package/dist/route-resolution-DWNi1QAu.js +0 -274
  920. package/dist/routes-C20LC8c4.js +0 -3602
  921. package/dist/routes-CkK7Vv_m.js +0 -2
  922. package/dist/run-KDF_AEza.js +0 -1162
  923. package/dist/run-attempt-JHYCfonU.js +0 -7704
  924. package/dist/run-command-3PVihYIy.js +0 -2
  925. package/dist/run-command-QHAXnyKY.js +0 -23
  926. package/dist/run-embedded.runtime-BJw-2vss.js +0 -4
  927. package/dist/run-execution-cli.runtime-GHClMn2g.js +0 -4
  928. package/dist/run-subagent-registry.runtime-BLLMrhtE.js +0 -2
  929. package/dist/runtime-C2u-dC1r.js +0 -1287
  930. package/dist/runtime-ClyfkDWT.js +0 -6179
  931. package/dist/runtime-WXCarlPc.js +0 -438
  932. package/dist/runtime-api-3QhGLpZf.js +0 -13
  933. package/dist/runtime-api-DRAu3mjv.js +0 -4
  934. package/dist/runtime-api-JE07pOem.js +0 -13
  935. package/dist/runtime-api-JuKylHvw.js +0 -24
  936. package/dist/runtime-api-bcbk4yax.js +0 -21
  937. package/dist/runtime-api-dDe9U2_V.js +0 -17
  938. package/dist/runtime-api-uMexLqGS.js +0 -3
  939. package/dist/runtime-api.actions-Bo7TLDFl.js +0 -3
  940. package/dist/runtime-api.monitor-7q78L1Em.js +0 -6
  941. package/dist/runtime-api.send-Bf9RR4nV.js +0 -4
  942. package/dist/runtime-api.threads-Dj2QuhHj.js +0 -2
  943. package/dist/runtime-channel-k1C0Satl.js +0 -2
  944. package/dist/runtime-channel-qt9t0J-J.js +0 -150
  945. package/dist/runtime-embedded-pi.runtime-BPB9NlTS.js +0 -2
  946. package/dist/sanitize-outbound-BLH_SQvg.js +0 -127
  947. package/dist/sdk-setup-tools-BshlBPau.js +0 -8
  948. package/dist/secrets-CsHXv7d3.js +0 -113
  949. package/dist/security-audit-CUXBQXNX.js +0 -122
  950. package/dist/security-audit-CzdXbRma.js +0 -118
  951. package/dist/security-audit.runtime-Ca0FMFJG.js +0 -2
  952. package/dist/selection-BmvQJlSD.js +0 -3
  953. package/dist/selection-BplDXc9w.js +0 -16157
  954. package/dist/send--qFg8a9v.js +0 -1631
  955. package/dist/send-BPdryPPA.js +0 -192
  956. package/dist/send-Bl4YaRkS.js +0 -143
  957. package/dist/send-Ccm7RMXC.js +0 -2
  958. package/dist/send.components-c3OUPSmR.js +0 -2
  959. package/dist/send.components-rhQJYoXs.js +0 -500
  960. package/dist/send.runtime-dfUkAp5d.js +0 -2
  961. package/dist/server-DRhyTMLe.js +0 -73
  962. package/dist/server-Dv4BzjGn.js +0 -24
  963. package/dist/server-context-4HRJy2vp.js +0 -955
  964. package/dist/server-context-DlxYb1G5.js +0 -2
  965. package/dist/server-cron-Bt8Pkc3i.js +0 -2989
  966. package/dist/server-cron-CtNWsa4Z.js +0 -2
  967. package/dist/server-methods-rye_okUW.js +0 -16494
  968. package/dist/server-node-events-C1yZ5a1u.js +0 -596
  969. package/dist/server-plugin-bootstrap-DUMyVtlP.js +0 -70
  970. package/dist/server-plugins-B5ZWWkRE.js +0 -432
  971. package/dist/server-reload-handlers-CTnMXNjT.js +0 -714
  972. package/dist/server-restart-sentinel-CAYxtwmY.js +0 -747
  973. package/dist/server-restart-sentinel-DqrtSIvy.js +0 -2
  974. package/dist/server-runtime-services-CuptQTe5.js +0 -2
  975. package/dist/server-runtime-services-aaS2IiW3.js +0 -267
  976. package/dist/server-startup-plugins-D0ymJgQT.js +0 -113
  977. package/dist/server-startup-post-attach-DlrN2uyt.js +0 -716
  978. package/dist/server-ws-runtime-CdpLbv4o.js +0 -349
  979. package/dist/server.impl-Cb4qcMTg.js +0 -2586
  980. package/dist/service-qxvDlMQE.js +0 -1446
  981. package/dist/session-binding-6bLobLHL.js +0 -219
  982. package/dist/session-binding-Bm6fCpoY.js +0 -2
  983. package/dist/session-kill-http-B6WjVo8V.js +0 -121
  984. package/dist/session-reset-service-GUVIhxp4.js +0 -625
  985. package/dist/session-route-BcRDnvzG.js +0 -93
  986. package/dist/session-status.runtime-BcjOunV4.js +0 -2
  987. package/dist/session-subagent-reactivation.runtime-BSmk_KYn.js +0 -2
  988. package/dist/session-tab-registry-BBYzbSOu.js +0 -521
  989. package/dist/sessions-history-http-bLJJfgLm.js +0 -430
  990. package/dist/sessions.runtime-DNRtQzCk.js +0 -2
  991. package/dist/setup-api-CcolVVJs.js +0 -29
  992. package/dist/setup-core-eJD18F3B.js +0 -174
  993. package/dist/setup-surface-B75C2Qtz.js +0 -221
  994. package/dist/setup-surface-CFuPfVHp.js +0 -405
  995. package/dist/setup-surface-Dyy-Mzyz.js +0 -288
  996. package/dist/setup-surface-ZsVF_g8W.js +0 -320
  997. package/dist/shared-BkCNrcLX.js +0 -121
  998. package/dist/shared-client-B7zqC9p2.js +0 -2
  999. package/dist/shared-client-yXjKgZBz.js +0 -629
  1000. package/dist/side-question-DU3gESCb.js +0 -683
  1001. package/dist/skill-tool-dispatch.runtime-CPBuqyvk.js +0 -143
  1002. package/dist/slash-state-Do3bAahA.js +0 -2166
  1003. package/dist/speech-provider-Bg9los3C.js +0 -184
  1004. package/dist/src-D7LzUctH.js +0 -4256
  1005. package/dist/startup-context-CCF2gIOl.js +0 -313
  1006. package/dist/status-subagents.runtime-DX5FTymp.js +0 -18
  1007. package/dist/status-text-B-1u5dSV.js +0 -296
  1008. package/dist/sticker-cache-DwpU_9RJ.js +0 -206
  1009. package/dist/sticker-vision.runtime-Bbldi_YL.js +0 -17
  1010. package/dist/subagent-announce-BCo0VHVL.js +0 -354
  1011. package/dist/subagent-announce-delivery-JcnuDN_N.js +0 -958
  1012. package/dist/subagent-control-BzbA3Suz.js +0 -508
  1013. package/dist/subagent-hooks-BIGZQWrG.js +0 -2
  1014. package/dist/subagent-hooks-Bj4qYZfv.js +0 -230
  1015. package/dist/subagent-hooks-C-rvhVBv.js +0 -2
  1016. package/dist/subagent-hooks-P01_AFl5.js +0 -116
  1017. package/dist/subagent-hooks-VEfak8nl.js +0 -2
  1018. package/dist/subagent-hooks-api-BPnSxxN4.js +0 -23
  1019. package/dist/subagent-hooks-api-DwIAvMoS.js +0 -22
  1020. package/dist/subagent-hooks-api-kgyR9FOb.js +0 -23
  1021. package/dist/subagent-hooks-oED56wqq.js +0 -146
  1022. package/dist/subagent-orphan-recovery-D79ZzwKN.js +0 -352
  1023. package/dist/subagent-registry-D0soBT5j.js +0 -2351
  1024. package/dist/subagent-registry-DRJDkmty.js +0 -3
  1025. package/dist/subagent-session-cleanup-9eAO1aJe.js +0 -525
  1026. package/dist/subagent-spawn-D80vbogm.js +0 -1164
  1027. package/dist/target-id-COLv5LsJ.js +0 -107
  1028. package/dist/targets-CDW5IQ6a.js +0 -44
  1029. package/dist/targets-Ci6O1ZdP.js +0 -19
  1030. package/dist/targets-CsaWFBg1.js +0 -19
  1031. package/dist/testing-BoJit-h1.js +0 -267
  1032. package/dist/thread-bindings-CGCvw0KT.js +0 -571
  1033. package/dist/thread-bindings-ClCTNacX.js +0 -228
  1034. package/dist/thread-bindings-DRb7BMZ6.js +0 -8
  1035. package/dist/thread-bindings-Xc6smav0.js +0 -232
  1036. package/dist/thread-bindings.discord-api-DC467oeF.js +0 -187
  1037. package/dist/thread-bindings.manager-C_mpTDIZ.js +0 -536
  1038. package/dist/thread-bindings.manager-DkCRs612.js +0 -2
  1039. package/dist/thread-lifecycle-DpqCXlx9.js +0 -1614
  1040. package/dist/token-CI6HjbTA.js +0 -134
  1041. package/dist/tool-BMe7hjBK.js +0 -139
  1042. package/dist/tool-actions.runtime-D-h5PI_m.js +0 -534
  1043. package/dist/tool-resolution-CnLx0CHe.js +0 -149
  1044. package/dist/tools-effective-inventory-BR6MUMtE.js +0 -204
  1045. package/dist/tools-invoke-http-CTTs2yMT.js +0 -67
  1046. package/dist/tools-invoke-shared-9B1EjXWf.js +0 -200
  1047. package/dist/tts-eGOviZ5c.js +0 -66
  1048. package/dist/tui-Bw0HqKd7.js +0 -4709
  1049. package/dist/tui-CIZJnPzj.js +0 -2
  1050. package/dist/tui-backend-BJ_r7tcF.js +0 -256
  1051. package/dist/tui-cli-BaSMBpuA.js +0 -37
  1052. package/dist/update-cli-zuCybGNR.js +0 -3664
  1053. package/dist/update-runner-Dek2BHmQ.js +0 -2379
  1054. package/dist/vision-tools-1ps0BEE5.js +0 -1409
  1055. package/dist/web-search-B7EziZXE.js +0 -62
  1056. package/dist/web-search-provider.runtime-DGTCvGch.js +0 -328
  1057. package/dist/web-search-provider.runtime-DWL5t39M.js +0 -2
  1058. package/dist/xai-oauth-CRtsj2Gs.js +0 -479
  1059. package/dist/xai-user-agent-Dndwzw2S.js +0 -32
  1060. /package/dist/{acp-runtime-backend-DSDBcyh9.js → acp-runtime-backend-Cxo7eBHf.js} +0 -0
  1061. /package/dist/{channel-actions-FV66JqtI.js → channel-actions-UDeVjgGz.js} +0 -0
  1062. /package/dist/{command-status-runtime-BRWKSoG7.js → command-status-runtime-CoHd4Fws.js} +0 -0
  1063. /package/dist/{delegate-DGqKhwB4.js → delegate-B-2xZ77o.js} +0 -0
  1064. /package/dist/{dispatch-acp-Ceoxja_Z.js → dispatch-acp-DLPkmK7K.js} +0 -0
  1065. /package/dist/{heartbeat-runner-CJHvr5pG.js → heartbeat-runner-D2j6JwOI.js} +0 -0
  1066. /package/dist/{library-Bq3aDek_.js → library-DBT0cIPP.js} +0 -0
  1067. /package/dist/{run-executor.runtime-DNJhGPbA.js → run-executor.runtime-DE4J7f4M.js} +0 -0
  1068. /package/dist/{shared-CYxmRpq1.js → shared-xeo8Yh5n.js} +0 -0
@@ -0,0 +1,1002 @@
1
+ import { i as formatErrorMessage } from "./errors-D_oyTIw2.js";
2
+ import { o as root } from "./secure-temp-dir-BC5cWiAo.js";
3
+ import { r as logVerbose, s as warn, t as danger } from "./globals-DhGeOA1P.js";
4
+ import { t as createSubsystemLogger } from "./subsystem-CppbuBPw.js";
5
+ import { t as getGlobalHookRunner, u as fireAndForgetHook } from "./hook-runner-global-RR7B_IHd.js";
6
+ import { m as triggerInternalHook, n as createInternalHookEvent } from "./internal-hooks-jFOLQ8JS.js";
7
+ import { c as kindFromMime, s as isGifMedia } from "./mime-DppuT-pZ.js";
8
+ import { a as toInternalMessageSentContext, d as toPluginMessageSentEvent, l as toPluginMessageContext, t as buildCanonicalSentMessageHookContext } from "./message-hook-mappers-Cts6cIjh.js";
9
+ import { l as normalizeMessagePresentation } from "./payload-BDV15CYA.js";
10
+ import { n as probeVideoDimensions } from "./media-services-C8kJ1LwP.js";
11
+ import { a as projectOutboundPayloadPlanForDelivery, t as createOutboundPayloadPlan } from "./payloads-DecsNYNJ.js";
12
+ import { u as saveMediaBuffer } from "./store-53qCOCD8.js";
13
+ import { n as retryAsync } from "./retry-BKOOizpi.js";
14
+ import { a as saveRemoteMedia, n as MediaFetchError } from "./fetch-CThiKx3T.js";
15
+ import { t as loadWebMedia } from "./web-media-9RxiGagW.js";
16
+ import { i as chunkMarkdownTextWithMode } from "./chunk-DeZRGIEM.js";
17
+ import { t as buildOutboundMediaLoadOptions } from "./load-options-LnfEFXDj.js";
18
+ import { i as shouldRetryTelegramTransportFallback, t as resolveTelegramApiBase } from "./fetch-CBRkqVBE.js";
19
+ import "./runtime-env-BSECk1Nm.js";
20
+ import { o as isSafeToRetrySendError, u as isTelegramRateLimitError } from "./request-timeouts-CQOVTeCu.js";
21
+ import "./reply-chunking-C6CVu1PV.js";
22
+ import "./web-media-CRJx89eu.js";
23
+ import "./outbound-runtime-BWFKdtGY.js";
24
+ import "./file-access-runtime-BFNHVWzb.js";
25
+ import { n as createChannelApiRetryRunner } from "./retry-policy-NbhM9vPP.js";
26
+ import "./ssrf-runtime-Gwgbj2qf.js";
27
+ import "./media-runtime-CPXTkSQr.js";
28
+ import "./plugin-runtime-TPqTSJyy.js";
29
+ import "./hook-runtime-CUNYBlUz.js";
30
+ import "./retry-runtime-BObvpQE1.js";
31
+ import { B as resolveTelegramMediaPlaceholder, D as resolveTelegramReplyId, a as renderTelegramHtmlText, c as wrapFileReferencesInHtml, n as markdownToTelegramChunks, r as markdownToTelegramHtml } from "./format-DUJUpMFQ.js";
32
+ import { t as resolveTelegramInlineButtons } from "./button-types-C0Gyj4Tz.js";
33
+ import { t as resolveTelegramInteractiveTextFallback } from "./interactive-fallback-hkNKT0cd.js";
34
+ import { a as getCachedSticker, n as cacheSticker } from "./sticker-cache-91Tp8mLP.js";
35
+ import { D as splitTelegramCaption, O as withTelegramApiErrorLogging, b as removeTelegramNativeQuoteParam, h as resolveTelegramVoiceSend, v as buildTelegramSendParams, x as buildInlineKeyboard, y as getTelegramNativeQuoteReplyMessageId } from "./send-4dLa-BQo.js";
36
+ import path from "node:path";
37
+ import { GrammyError, InputFile } from "grammy";
38
+ //#region extensions/telegram/src/bot/delivery.send.ts
39
+ const PARSE_ERR_RE = /can't parse entities|parse entities|find end of the entity/i;
40
+ const EMPTY_TEXT_ERR_RE = /message text is empty/i;
41
+ const QUOTE_PARAM_RE = /\bquote not found\b|\bQUOTE_TEXT_INVALID\b|\bquote text invalid\b/i;
42
+ const GrammyErrorCtor$2 = typeof GrammyError === "function" ? GrammyError : void 0;
43
+ function isTelegramQuoteParamError(err) {
44
+ if (GrammyErrorCtor$2 && err instanceof GrammyErrorCtor$2) return QUOTE_PARAM_RE.test(err.description);
45
+ return QUOTE_PARAM_RE.test(formatErrorMessage(err));
46
+ }
47
+ function createTelegramDeliverySendRetry() {
48
+ return createChannelApiRetryRunner({
49
+ shouldRetry: (err) => isSafeToRetrySendError(err) || isTelegramRateLimitError(err),
50
+ strictShouldRetry: true
51
+ });
52
+ }
53
+ async function sendTelegramWithThreadFallback(params) {
54
+ const hasNativeQuote = getTelegramNativeQuoteReplyMessageId(params.requestParams) != null;
55
+ const shouldSuppressFirstErrorLog = (err) => hasNativeQuote && isTelegramQuoteParamError(err);
56
+ const mergedShouldLog = params.shouldLog ? (err) => params.shouldLog(err) && !shouldSuppressFirstErrorLog(err) : (err) => !shouldSuppressFirstErrorLog(err);
57
+ const requestWithRetry = createTelegramDeliverySendRetry();
58
+ const runLoggedSend = (operation, requestParams, shouldLog) => withTelegramApiErrorLogging({
59
+ operation,
60
+ runtime: params.runtime,
61
+ ...shouldLog ? { shouldLog } : {},
62
+ fn: () => requestWithRetry(() => params.send(requestParams), operation)
63
+ });
64
+ try {
65
+ return await runLoggedSend(params.operation, params.requestParams, mergedShouldLog);
66
+ } catch (err) {
67
+ if (hasNativeQuote && isTelegramQuoteParamError(err)) {
68
+ params.runtime.log?.(`telegram ${params.operation}: native quote rejected; retrying with legacy reply_to_message_id`);
69
+ return await sendTelegramWithThreadFallback({
70
+ ...params,
71
+ operation: `${params.operation} (legacy reply retry)`,
72
+ requestParams: removeTelegramNativeQuoteParam(params.requestParams)
73
+ });
74
+ }
75
+ throw err;
76
+ }
77
+ }
78
+ async function sendTelegramText(bot, chatId, text, runtime, opts) {
79
+ const baseParams = buildTelegramSendParams({
80
+ replyToMessageId: opts?.replyToMessageId,
81
+ replyQuoteMessageId: opts?.replyQuoteMessageId,
82
+ replyQuoteText: opts?.replyQuoteText,
83
+ replyQuotePosition: opts?.replyQuotePosition,
84
+ replyQuoteEntities: opts?.replyQuoteEntities,
85
+ thread: opts?.thread,
86
+ silent: opts?.silent
87
+ });
88
+ const linkPreviewOptions = opts?.linkPreview ?? true ? void 0 : { is_disabled: true };
89
+ const htmlText = (opts?.textMode ?? "markdown") === "html" ? text : markdownToTelegramHtml(text);
90
+ const fallbackText = opts?.plainText ?? text;
91
+ const hasFallbackText = fallbackText.trim().length > 0;
92
+ const sendPlainFallback = async () => {
93
+ const res = await sendTelegramWithThreadFallback({
94
+ operation: "sendMessage",
95
+ runtime,
96
+ thread: opts?.thread,
97
+ requestParams: baseParams,
98
+ send: (effectiveParams) => bot.api.sendMessage(chatId, fallbackText, {
99
+ ...linkPreviewOptions ? { link_preview_options: linkPreviewOptions } : {},
100
+ ...opts?.replyMarkup ? { reply_markup: opts.replyMarkup } : {},
101
+ ...effectiveParams
102
+ })
103
+ });
104
+ runtime.log?.(`telegram sendMessage ok chat=${chatId} message=${res.message_id} (plain)`);
105
+ return res.message_id;
106
+ };
107
+ if (!htmlText.trim()) {
108
+ if (!hasFallbackText) throw new Error("telegram sendMessage failed: empty formatted text and empty plain fallback");
109
+ return await sendPlainFallback();
110
+ }
111
+ try {
112
+ const res = await sendTelegramWithThreadFallback({
113
+ operation: "sendMessage",
114
+ runtime,
115
+ thread: opts?.thread,
116
+ requestParams: baseParams,
117
+ shouldLog: (err) => {
118
+ const errText = formatErrorMessage(err);
119
+ return !PARSE_ERR_RE.test(errText) && !EMPTY_TEXT_ERR_RE.test(errText);
120
+ },
121
+ send: (effectiveParams) => bot.api.sendMessage(chatId, htmlText, {
122
+ parse_mode: "HTML",
123
+ ...linkPreviewOptions ? { link_preview_options: linkPreviewOptions } : {},
124
+ ...opts?.replyMarkup ? { reply_markup: opts.replyMarkup } : {},
125
+ ...effectiveParams
126
+ })
127
+ });
128
+ runtime.log?.(`telegram sendMessage ok chat=${chatId} message=${res.message_id}`);
129
+ return res.message_id;
130
+ } catch (err) {
131
+ const errText = formatErrorMessage(err);
132
+ if (PARSE_ERR_RE.test(errText) || EMPTY_TEXT_ERR_RE.test(errText)) {
133
+ if (!hasFallbackText) throw err;
134
+ runtime.log?.(`telegram formatted send failed; retrying without formatting: ${errText}`);
135
+ return await sendPlainFallback();
136
+ }
137
+ throw err;
138
+ }
139
+ }
140
+ //#endregion
141
+ //#region extensions/telegram/src/bot/reply-threading.ts
142
+ function resolveReplyToForSend(params) {
143
+ return params.replyToId && (params.replyToMode === "all" || !params.progress.hasReplied) ? params.replyToId : void 0;
144
+ }
145
+ function markReplyApplied(progress, replyToId) {
146
+ if (replyToId && !progress.hasReplied) progress.hasReplied = true;
147
+ }
148
+ function markDelivered$1(progress) {
149
+ progress.hasDelivered = true;
150
+ }
151
+ async function sendChunkedTelegramReplyText(params) {
152
+ const applyDelivered = params.markDelivered ?? markDelivered$1;
153
+ for (let i = 0; i < params.chunks.length; i += 1) {
154
+ const chunk = params.chunks[i];
155
+ if (!chunk) continue;
156
+ const isFirstChunk = i === 0;
157
+ const replyToMessageId = resolveReplyToForSend({
158
+ replyToId: params.replyToId,
159
+ replyToMode: params.replyToMode,
160
+ progress: params.progress
161
+ });
162
+ const shouldAttachQuote = Boolean(replyToMessageId) && Boolean(params.replyQuoteText) && (params.quoteOnlyOnFirstChunk !== true || isFirstChunk);
163
+ await params.sendChunk({
164
+ chunk,
165
+ isFirstChunk,
166
+ replyToMessageId,
167
+ replyMarkup: isFirstChunk ? params.replyMarkup : void 0,
168
+ replyQuoteText: shouldAttachQuote ? params.replyQuoteText : void 0
169
+ });
170
+ markReplyApplied(params.progress, replyToMessageId);
171
+ applyDelivered(params.progress);
172
+ }
173
+ }
174
+ //#endregion
175
+ //#region extensions/telegram/src/bot/delivery.replies.ts
176
+ const VOICE_FORBIDDEN_MARKER = "VOICE_MESSAGES_FORBIDDEN";
177
+ const CAPTION_TOO_LONG_RE = /caption is too long/i;
178
+ const GrammyErrorCtor$1 = typeof GrammyError === "function" ? GrammyError : void 0;
179
+ const silentReplyLogger = createSubsystemLogger("telegram/silent-reply");
180
+ function buildChunkTextResolver(params) {
181
+ return (markdown) => {
182
+ const markdownChunks = params.chunkMode === "newline" ? chunkMarkdownTextWithMode(markdown, params.textLimit, params.chunkMode) : [markdown];
183
+ const chunks = [];
184
+ for (const chunk of markdownChunks) {
185
+ const nested = markdownToTelegramChunks(chunk, params.textLimit, { tableMode: params.tableMode });
186
+ if (!nested.length && chunk) {
187
+ chunks.push({
188
+ html: wrapFileReferencesInHtml(markdownToTelegramHtml(chunk, {
189
+ tableMode: params.tableMode,
190
+ wrapFileRefs: false
191
+ })),
192
+ text: chunk
193
+ });
194
+ continue;
195
+ }
196
+ chunks.push(...nested);
197
+ }
198
+ return chunks;
199
+ };
200
+ }
201
+ function markDelivered(progress) {
202
+ progress.hasDelivered = true;
203
+ progress.deliveredCount += 1;
204
+ }
205
+ function filterEmptyTelegramTextChunks(chunks) {
206
+ return chunks.filter((chunk) => chunk.text.trim().length > 0);
207
+ }
208
+ function resolveReplyQuoteForSend(params) {
209
+ if (params.replyToId != null) {
210
+ const mapped = params.replyQuoteByMessageId?.[String(params.replyToId)];
211
+ if (mapped?.text) {
212
+ const quote = {
213
+ messageId: params.replyToId,
214
+ text: mapped.text
215
+ };
216
+ if (typeof mapped.position === "number") quote.position = mapped.position;
217
+ if (mapped.entities) quote.entities = mapped.entities;
218
+ return quote;
219
+ }
220
+ }
221
+ const quote = {};
222
+ if (params.replyQuoteMessageId != null) quote.messageId = params.replyQuoteMessageId;
223
+ if (params.replyQuoteText != null) quote.text = params.replyQuoteText;
224
+ if (params.replyQuotePosition != null) quote.position = params.replyQuotePosition;
225
+ if (params.replyQuoteEntities != null) quote.entities = params.replyQuoteEntities;
226
+ return quote;
227
+ }
228
+ async function deliverTextReply(params) {
229
+ let firstDeliveredMessageId;
230
+ await sendChunkedTelegramReplyText({
231
+ chunks: filterEmptyTelegramTextChunks(params.chunkText(params.replyText)),
232
+ progress: params.progress,
233
+ replyToId: params.replyToId,
234
+ replyToMode: params.replyToMode,
235
+ replyMarkup: params.replyMarkup,
236
+ replyQuoteText: params.replyQuoteText,
237
+ markDelivered,
238
+ sendChunk: async ({ chunk, replyToMessageId, replyMarkup, replyQuoteText }) => {
239
+ const messageId = await sendTelegramText(params.bot, params.chatId, chunk.html, params.runtime, {
240
+ replyToMessageId,
241
+ replyQuoteMessageId: params.replyQuoteMessageId,
242
+ replyQuoteText,
243
+ replyQuotePosition: params.replyQuotePosition,
244
+ replyQuoteEntities: params.replyQuoteEntities,
245
+ thread: params.thread,
246
+ textMode: "html",
247
+ plainText: chunk.text,
248
+ linkPreview: params.linkPreview,
249
+ silent: params.silent,
250
+ replyMarkup
251
+ });
252
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = messageId;
253
+ }
254
+ });
255
+ return firstDeliveredMessageId;
256
+ }
257
+ async function sendPendingFollowUpText(params) {
258
+ await sendChunkedTelegramReplyText({
259
+ chunks: filterEmptyTelegramTextChunks(params.chunkText(params.text)),
260
+ progress: params.progress,
261
+ replyToId: params.replyToId,
262
+ replyToMode: params.replyToMode,
263
+ replyMarkup: params.replyMarkup,
264
+ markDelivered,
265
+ sendChunk: async ({ chunk, replyToMessageId, replyMarkup }) => {
266
+ await sendTelegramText(params.bot, params.chatId, chunk.html, params.runtime, {
267
+ replyToMessageId,
268
+ thread: params.thread,
269
+ textMode: "html",
270
+ plainText: chunk.text,
271
+ linkPreview: params.linkPreview,
272
+ silent: params.silent,
273
+ replyMarkup
274
+ });
275
+ }
276
+ });
277
+ }
278
+ function isVoiceMessagesForbidden(err) {
279
+ if (GrammyErrorCtor$1 && err instanceof GrammyErrorCtor$1) return err.description.includes(VOICE_FORBIDDEN_MARKER);
280
+ return formatErrorMessage(err).includes(VOICE_FORBIDDEN_MARKER);
281
+ }
282
+ function isCaptionTooLong(err) {
283
+ if (GrammyErrorCtor$1 && err instanceof GrammyErrorCtor$1) return CAPTION_TOO_LONG_RE.test(err.description);
284
+ return CAPTION_TOO_LONG_RE.test(formatErrorMessage(err));
285
+ }
286
+ function resolveVoiceFallbackText(reply) {
287
+ if (reply.text?.trim()) return reply.text;
288
+ if (reply.spokenText?.trim()) return reply.spokenText;
289
+ }
290
+ async function sendTelegramVoiceFallbackText(opts) {
291
+ let firstDeliveredMessageId;
292
+ const chunks = filterEmptyTelegramTextChunks(opts.chunkText(opts.text));
293
+ let appliedReplyTo = false;
294
+ for (let i = 0; i < chunks.length; i += 1) {
295
+ const chunk = chunks[i];
296
+ const replyToForChunk = !appliedReplyTo ? opts.replyToId : void 0;
297
+ const applyQuoteForChunk = !appliedReplyTo;
298
+ const messageId = await sendTelegramText(opts.bot, opts.chatId, chunk.html, opts.runtime, {
299
+ replyToMessageId: replyToForChunk,
300
+ replyQuoteMessageId: applyQuoteForChunk ? opts.replyQuoteMessageId : void 0,
301
+ replyQuoteText: applyQuoteForChunk ? opts.replyQuoteText : void 0,
302
+ replyQuotePosition: applyQuoteForChunk ? opts.replyQuotePosition : void 0,
303
+ replyQuoteEntities: applyQuoteForChunk ? opts.replyQuoteEntities : void 0,
304
+ thread: opts.thread,
305
+ textMode: "html",
306
+ plainText: chunk.text,
307
+ linkPreview: opts.linkPreview,
308
+ silent: opts.silent,
309
+ replyMarkup: !appliedReplyTo ? opts.replyMarkup : void 0
310
+ });
311
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = messageId;
312
+ if (replyToForChunk) appliedReplyTo = true;
313
+ }
314
+ return firstDeliveredMessageId;
315
+ }
316
+ async function deliverMediaReply(params) {
317
+ let firstDeliveredMessageId;
318
+ let visibleFallbackText;
319
+ let first = true;
320
+ let pendingFollowUpText;
321
+ for (const mediaUrl of params.mediaList) {
322
+ const isFirstMedia = first;
323
+ const media = await params.mediaLoader(mediaUrl, buildOutboundMediaLoadOptions({
324
+ mediaLocalRoots: params.mediaLocalRoots,
325
+ maxBytes: params.mediaMaxBytes
326
+ }));
327
+ const kind = kindFromMime(media.contentType ?? void 0);
328
+ const isGif = isGifMedia({
329
+ contentType: media.contentType,
330
+ fileName: media.fileName
331
+ });
332
+ const fileName = media.fileName ?? (isGif ? "animation.gif" : "file");
333
+ const file = new InputFile(media.buffer, fileName);
334
+ const { caption, followUpText } = splitTelegramCaption(isFirstMedia ? params.reply.text ?? void 0 : void 0);
335
+ const htmlCaption = caption ? renderTelegramHtmlText(caption, { tableMode: params.tableMode }) : void 0;
336
+ if (followUpText) pendingFollowUpText = followUpText;
337
+ first = false;
338
+ const replyToMessageId = resolveReplyToForSend({
339
+ replyToId: params.replyToId,
340
+ replyToMode: params.replyToMode,
341
+ progress: params.progress
342
+ });
343
+ const shouldAttachButtonsToMedia = isFirstMedia && params.replyMarkup && !followUpText;
344
+ const videoDimensions = kind === "video" ? await probeVideoDimensions(media.buffer) : void 0;
345
+ const mediaParams = {
346
+ caption: htmlCaption,
347
+ ...htmlCaption ? { parse_mode: "HTML" } : {},
348
+ ...shouldAttachButtonsToMedia ? { reply_markup: params.replyMarkup } : {},
349
+ ...videoDimensions ? {
350
+ width: videoDimensions.width,
351
+ height: videoDimensions.height
352
+ } : {},
353
+ ...buildTelegramSendParams({
354
+ replyToMessageId,
355
+ replyQuoteMessageId: params.replyQuoteMessageId,
356
+ replyQuoteText: params.replyQuoteText,
357
+ replyQuotePosition: params.replyQuotePosition,
358
+ replyQuoteEntities: params.replyQuoteEntities,
359
+ thread: params.thread,
360
+ silent: params.silent
361
+ })
362
+ };
363
+ if (isGif) {
364
+ const result = await sendTelegramWithThreadFallback({
365
+ operation: "sendAnimation",
366
+ runtime: params.runtime,
367
+ thread: params.thread,
368
+ requestParams: mediaParams,
369
+ send: (effectiveParams) => params.bot.api.sendAnimation(params.chatId, file, { ...effectiveParams })
370
+ });
371
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
372
+ markDelivered(params.progress);
373
+ } else if (kind === "image") {
374
+ const result = await sendTelegramWithThreadFallback({
375
+ operation: "sendPhoto",
376
+ runtime: params.runtime,
377
+ thread: params.thread,
378
+ requestParams: mediaParams,
379
+ send: (effectiveParams) => params.bot.api.sendPhoto(params.chatId, file, { ...effectiveParams })
380
+ });
381
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
382
+ markDelivered(params.progress);
383
+ } else if (kind === "video") {
384
+ const result = await sendTelegramWithThreadFallback({
385
+ operation: "sendVideo",
386
+ runtime: params.runtime,
387
+ thread: params.thread,
388
+ requestParams: mediaParams,
389
+ send: (effectiveParams) => params.bot.api.sendVideo(params.chatId, file, { ...effectiveParams })
390
+ });
391
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
392
+ markDelivered(params.progress);
393
+ } else if (kind === "audio") {
394
+ const { useVoice } = resolveTelegramVoiceSend({
395
+ wantsVoice: params.reply.audioAsVoice === true,
396
+ contentType: media.contentType,
397
+ fileName,
398
+ logFallback: logVerbose
399
+ });
400
+ if (useVoice) {
401
+ const sendVoiceMedia = async (requestParams, shouldLog) => {
402
+ const result = await sendTelegramWithThreadFallback({
403
+ operation: "sendVoice",
404
+ runtime: params.runtime,
405
+ thread: params.thread,
406
+ requestParams,
407
+ shouldLog,
408
+ send: (effectiveParams) => params.bot.api.sendVoice(params.chatId, file, { ...effectiveParams })
409
+ });
410
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
411
+ markDelivered(params.progress);
412
+ };
413
+ await params.onVoiceRecording?.();
414
+ try {
415
+ await sendVoiceMedia(mediaParams, (err) => !isVoiceMessagesForbidden(err));
416
+ } catch (voiceErr) {
417
+ if (isVoiceMessagesForbidden(voiceErr)) {
418
+ const fallbackText = resolveVoiceFallbackText(params.reply);
419
+ if (!fallbackText || !fallbackText.trim()) throw voiceErr;
420
+ logVerbose("telegram sendVoice forbidden (recipient has voice messages blocked in privacy settings); falling back to text");
421
+ const voiceFallbackReplyTo = resolveReplyToForSend({
422
+ replyToId: params.replyToId,
423
+ replyToMode: params.replyToMode,
424
+ progress: params.progress
425
+ });
426
+ const fallbackMessageId = await sendTelegramVoiceFallbackText({
427
+ bot: params.bot,
428
+ chatId: params.chatId,
429
+ runtime: params.runtime,
430
+ text: fallbackText,
431
+ chunkText: params.chunkText,
432
+ replyToId: voiceFallbackReplyTo,
433
+ replyQuoteMessageId: params.replyQuoteMessageId,
434
+ replyQuotePosition: params.replyQuotePosition,
435
+ replyQuoteEntities: params.replyQuoteEntities,
436
+ thread: params.thread,
437
+ linkPreview: params.linkPreview,
438
+ silent: params.silent,
439
+ replyMarkup: params.replyMarkup,
440
+ replyQuoteText: params.replyQuoteText
441
+ });
442
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = fallbackMessageId;
443
+ visibleFallbackText = fallbackText;
444
+ markReplyApplied(params.progress, voiceFallbackReplyTo);
445
+ markDelivered(params.progress);
446
+ continue;
447
+ }
448
+ if (isCaptionTooLong(voiceErr)) {
449
+ logVerbose("telegram sendVoice caption too long; resending voice without caption + text separately");
450
+ const noCaptionParams = { ...mediaParams };
451
+ delete noCaptionParams.caption;
452
+ delete noCaptionParams.parse_mode;
453
+ await sendVoiceMedia(noCaptionParams);
454
+ const fallbackText = resolveVoiceFallbackText(params.reply);
455
+ if (fallbackText?.trim()) {
456
+ await sendTelegramVoiceFallbackText({
457
+ bot: params.bot,
458
+ chatId: params.chatId,
459
+ runtime: params.runtime,
460
+ text: fallbackText,
461
+ chunkText: params.chunkText,
462
+ replyToId: void 0,
463
+ thread: params.thread,
464
+ linkPreview: params.linkPreview,
465
+ silent: params.silent,
466
+ replyMarkup: params.replyMarkup
467
+ });
468
+ visibleFallbackText = fallbackText;
469
+ }
470
+ markReplyApplied(params.progress, replyToMessageId);
471
+ continue;
472
+ }
473
+ throw voiceErr;
474
+ }
475
+ } else {
476
+ const result = await sendTelegramWithThreadFallback({
477
+ operation: "sendAudio",
478
+ runtime: params.runtime,
479
+ thread: params.thread,
480
+ requestParams: mediaParams,
481
+ send: (effectiveParams) => params.bot.api.sendAudio(params.chatId, file, { ...effectiveParams })
482
+ });
483
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
484
+ markDelivered(params.progress);
485
+ }
486
+ } else {
487
+ const result = await sendTelegramWithThreadFallback({
488
+ operation: "sendDocument",
489
+ runtime: params.runtime,
490
+ thread: params.thread,
491
+ requestParams: mediaParams,
492
+ send: (effectiveParams) => params.bot.api.sendDocument(params.chatId, file, { ...effectiveParams })
493
+ });
494
+ if (firstDeliveredMessageId == null) firstDeliveredMessageId = result.message_id;
495
+ markDelivered(params.progress);
496
+ }
497
+ markReplyApplied(params.progress, replyToMessageId);
498
+ if (pendingFollowUpText && isFirstMedia) {
499
+ await sendPendingFollowUpText({
500
+ bot: params.bot,
501
+ chatId: params.chatId,
502
+ runtime: params.runtime,
503
+ thread: params.thread,
504
+ chunkText: params.chunkText,
505
+ text: pendingFollowUpText,
506
+ replyMarkup: params.replyMarkup,
507
+ linkPreview: params.linkPreview,
508
+ silent: params.silent,
509
+ replyToId: params.replyToId,
510
+ replyToMode: params.replyToMode,
511
+ progress: params.progress
512
+ });
513
+ pendingFollowUpText = void 0;
514
+ }
515
+ }
516
+ return {
517
+ firstDeliveredMessageId,
518
+ visibleFallbackText
519
+ };
520
+ }
521
+ async function maybePinFirstDeliveredMessage(params) {
522
+ if (!(params.pin === true || typeof params.pin === "object" && params.pin.enabled) || typeof params.firstDeliveredMessageId !== "number") return;
523
+ const notify = typeof params.pin === "object" && params.pin.notify === true;
524
+ try {
525
+ await params.bot.api.pinChatMessage(params.chatId, params.firstDeliveredMessageId, { disable_notification: !notify });
526
+ } catch (err) {
527
+ logVerbose(`telegram pinChatMessage failed chat=${params.chatId} message=${params.firstDeliveredMessageId}: ${formatErrorMessage(err)}`);
528
+ }
529
+ }
530
+ function buildTelegramSentHookContext(params) {
531
+ return buildCanonicalSentMessageHookContext({
532
+ to: params.chatId,
533
+ content: params.content,
534
+ success: params.success,
535
+ error: params.error,
536
+ channelId: "telegram",
537
+ accountId: params.accountId,
538
+ conversationId: params.chatId,
539
+ messageId: typeof params.messageId === "number" ? String(params.messageId) : void 0,
540
+ isGroup: params.isGroup,
541
+ groupId: params.groupId
542
+ });
543
+ }
544
+ function emitInternalMessageSentHook(params) {
545
+ if (!params.sessionKeyForInternalHooks) return;
546
+ const canonical = buildTelegramSentHookContext(params);
547
+ fireAndForgetHook(triggerInternalHook(createInternalHookEvent("message", "sent", params.sessionKeyForInternalHooks, toInternalMessageSentContext(canonical))), "telegram: message:sent internal hook failed");
548
+ }
549
+ function emitMessageSentHooks(params) {
550
+ if (!params.enabled && !params.sessionKeyForInternalHooks) return;
551
+ const canonical = buildTelegramSentHookContext(params);
552
+ if (params.enabled) fireAndForgetHook(Promise.resolve(params.hookRunner.runMessageSent(toPluginMessageSentEvent(canonical), toPluginMessageContext(canonical))), "telegram: message_sent plugin hook failed");
553
+ emitInternalMessageSentHook(params);
554
+ }
555
+ function emitTelegramMessageSentHooks(params) {
556
+ const hookRunner = getGlobalHookRunner();
557
+ emitMessageSentHooks({
558
+ ...params,
559
+ hookRunner,
560
+ enabled: hookRunner?.hasHooks("message_sent") ?? false
561
+ });
562
+ }
563
+ async function deliverReplies(params) {
564
+ const progress = {
565
+ hasReplied: false,
566
+ hasDelivered: false,
567
+ deliveredCount: 0
568
+ };
569
+ const mediaLoader = params.mediaLoader ?? loadWebMedia;
570
+ const transcriptMirror = params.transcriptMirror;
571
+ const deliveredContents = [];
572
+ const hookRunner = getGlobalHookRunner();
573
+ const hasMessageSendingHooks = hookRunner?.hasHooks("message_sending") ?? false;
574
+ const hasMessageSentHooks = hookRunner?.hasHooks("message_sent") ?? false;
575
+ const chunkText = buildChunkTextResolver({
576
+ textLimit: params.textLimit,
577
+ chunkMode: params.chunkMode ?? "length",
578
+ tableMode: params.tableMode
579
+ });
580
+ const candidateReplies = [];
581
+ for (const reply of params.replies) {
582
+ if (!reply || typeof reply !== "object") {
583
+ params.runtime.error?.(danger("reply missing text/media"));
584
+ continue;
585
+ }
586
+ candidateReplies.push(reply);
587
+ }
588
+ const normalizedReplies = projectOutboundPayloadPlanForDelivery(createOutboundPayloadPlan(candidateReplies, {
589
+ cfg: params.cfg,
590
+ sessionKey: params.policySessionKey ?? params.sessionKeyForInternalHooks,
591
+ surface: "telegram"
592
+ }));
593
+ const originalExactSilentCount = candidateReplies.filter((reply) => typeof reply.text === "string" && reply.text.trim().toUpperCase() === "NO_REPLY").length;
594
+ if (originalExactSilentCount > 0) silentReplyLogger.debug("telegram delivery normalized NO_REPLY candidates", {
595
+ hasSessionKey: Boolean(params.sessionKeyForInternalHooks),
596
+ hasChatId: params.chatId.length > 0,
597
+ originalCount: candidateReplies.length,
598
+ normalizedCount: normalizedReplies.length,
599
+ originalExactSilentCount
600
+ });
601
+ for (const originalReply of normalizedReplies) {
602
+ let reply = originalReply;
603
+ const mediaList = reply?.mediaUrls?.length ? reply.mediaUrls : reply?.mediaUrl ? [reply.mediaUrl] : [];
604
+ const hasMedia = mediaList.length > 0;
605
+ const presentation = normalizeMessagePresentation(reply?.presentation);
606
+ const interactive = reply?.interactive;
607
+ const resolvedReplyText = resolveTelegramInteractiveTextFallback({
608
+ text: reply?.text,
609
+ interactive,
610
+ presentation
611
+ }) ?? reply?.text ?? "";
612
+ if (reply && resolvedReplyText !== (reply.text ?? "")) reply = {
613
+ ...reply,
614
+ text: resolvedReplyText
615
+ };
616
+ if (!resolvedReplyText && !hasMedia) {
617
+ if (reply?.audioAsVoice) {
618
+ logVerbose("telegram reply has audioAsVoice without media/text; skipping");
619
+ continue;
620
+ }
621
+ params.runtime.error?.(danger("reply missing text/media"));
622
+ continue;
623
+ }
624
+ const rawContent = resolvedReplyText;
625
+ const spokenHookContent = !rawContent && reply.audioAsVoice === true && reply.spokenText?.trim() ? reply.spokenText : void 0;
626
+ const hookContent = spokenHookContent ?? rawContent;
627
+ const replyToId = params.replyToMode === "off" ? void 0 : resolveTelegramReplyId(reply.replyToId);
628
+ const replyQuote = resolveReplyQuoteForSend({
629
+ replyToId,
630
+ replyQuoteByMessageId: params.replyQuoteByMessageId,
631
+ replyQuoteMessageId: params.replyQuoteMessageId,
632
+ replyQuoteText: params.replyQuoteText,
633
+ replyQuotePosition: params.replyQuotePosition,
634
+ replyQuoteEntities: params.replyQuoteEntities
635
+ });
636
+ if (hasMessageSendingHooks) {
637
+ const hookResult = await hookRunner?.runMessageSending({
638
+ to: params.chatId,
639
+ content: hookContent,
640
+ replyToId,
641
+ threadId: params.thread?.id,
642
+ metadata: {
643
+ channel: "telegram",
644
+ mediaUrls: mediaList,
645
+ threadId: params.thread?.id
646
+ }
647
+ }, {
648
+ channelId: "telegram",
649
+ accountId: params.accountId,
650
+ conversationId: params.chatId
651
+ });
652
+ if (hookResult?.cancel) continue;
653
+ if (typeof hookResult?.content === "string" && hookResult.content !== hookContent) reply = spokenHookContent ? {
654
+ ...reply,
655
+ spokenText: hookResult.content
656
+ } : {
657
+ ...reply,
658
+ text: hookResult.content
659
+ };
660
+ }
661
+ let contentForSentHook = reply.text || (reply.audioAsVoice === true ? resolveVoiceFallbackText(reply) : "") || "";
662
+ try {
663
+ const deliveredCountBeforeReply = progress.deliveredCount;
664
+ const telegramData = reply.channelData?.telegram;
665
+ const replyMarkup = buildInlineKeyboard(resolveTelegramInlineButtons({
666
+ buttons: telegramData?.buttons,
667
+ presentation,
668
+ interactive
669
+ }));
670
+ let firstDeliveredMessageId;
671
+ if (mediaList.length === 0) firstDeliveredMessageId = await deliverTextReply({
672
+ bot: params.bot,
673
+ chatId: params.chatId,
674
+ runtime: params.runtime,
675
+ thread: params.thread,
676
+ chunkText,
677
+ replyText: reply.text || "",
678
+ replyMarkup,
679
+ replyQuoteMessageId: replyQuote.messageId,
680
+ replyQuoteText: replyQuote.text,
681
+ replyQuotePosition: replyQuote.position,
682
+ replyQuoteEntities: replyQuote.entities,
683
+ linkPreview: params.linkPreview,
684
+ silent: params.silent,
685
+ replyToId,
686
+ replyToMode: params.replyToMode,
687
+ progress
688
+ });
689
+ else {
690
+ const mediaDelivery = await deliverMediaReply({
691
+ reply,
692
+ mediaList,
693
+ bot: params.bot,
694
+ chatId: params.chatId,
695
+ runtime: params.runtime,
696
+ thread: params.thread,
697
+ tableMode: params.tableMode,
698
+ mediaLocalRoots: params.mediaLocalRoots,
699
+ mediaMaxBytes: params.mediaMaxBytes,
700
+ chunkText,
701
+ mediaLoader,
702
+ onVoiceRecording: params.onVoiceRecording,
703
+ linkPreview: params.linkPreview,
704
+ silent: params.silent,
705
+ replyQuoteMessageId: replyQuote.messageId,
706
+ replyQuoteText: replyQuote.text,
707
+ replyQuotePosition: replyQuote.position,
708
+ replyQuoteEntities: replyQuote.entities,
709
+ replyMarkup,
710
+ replyToId,
711
+ replyToMode: params.replyToMode,
712
+ progress
713
+ });
714
+ firstDeliveredMessageId = mediaDelivery.firstDeliveredMessageId;
715
+ if (mediaDelivery.visibleFallbackText) contentForSentHook = mediaDelivery.visibleFallbackText;
716
+ }
717
+ await maybePinFirstDeliveredMessage({
718
+ pin: reply.delivery?.pin,
719
+ bot: params.bot,
720
+ chatId: params.chatId,
721
+ runtime: params.runtime,
722
+ firstDeliveredMessageId
723
+ });
724
+ if (progress.deliveredCount > deliveredCountBeforeReply && transcriptMirror) deliveredContents.push({
725
+ text: contentForSentHook,
726
+ mediaUrls: mediaList
727
+ });
728
+ emitMessageSentHooks({
729
+ hookRunner,
730
+ enabled: hasMessageSentHooks,
731
+ sessionKeyForInternalHooks: params.sessionKeyForInternalHooks,
732
+ chatId: params.chatId,
733
+ accountId: params.accountId,
734
+ content: contentForSentHook,
735
+ success: progress.deliveredCount > deliveredCountBeforeReply,
736
+ messageId: firstDeliveredMessageId,
737
+ isGroup: params.mirrorIsGroup,
738
+ groupId: params.mirrorGroupId
739
+ });
740
+ } catch (error) {
741
+ emitMessageSentHooks({
742
+ hookRunner,
743
+ enabled: hasMessageSentHooks,
744
+ sessionKeyForInternalHooks: params.sessionKeyForInternalHooks,
745
+ chatId: params.chatId,
746
+ accountId: params.accountId,
747
+ content: contentForSentHook,
748
+ success: false,
749
+ error: formatErrorMessage(error),
750
+ isGroup: params.mirrorIsGroup,
751
+ groupId: params.mirrorGroupId
752
+ });
753
+ throw error;
754
+ }
755
+ }
756
+ if (progress.hasDelivered && transcriptMirror) {
757
+ const text = deliveredContents.map((content) => content.text).filter(Boolean).join("\n\n");
758
+ const mediaUrls = deliveredContents.flatMap((content) => content.mediaUrls);
759
+ if (text || mediaUrls.length > 0) try {
760
+ await transcriptMirror({
761
+ text: text || void 0,
762
+ mediaUrls: mediaUrls.length > 0 ? mediaUrls : void 0
763
+ });
764
+ } catch (mirrorErr) {
765
+ logVerbose(`telegram transcriptMirror failed: ${formatErrorMessage(mirrorErr)}`);
766
+ }
767
+ }
768
+ return { delivered: progress.hasDelivered };
769
+ }
770
+ //#endregion
771
+ //#region extensions/telegram/src/bot/delivery.resolve-media.ts
772
+ const FILE_TOO_BIG_RE = /file is too big/i;
773
+ const GrammyErrorCtor = typeof GrammyError === "function" ? GrammyError : void 0;
774
+ function buildTelegramMediaSsrfPolicy(apiRoot, dangerouslyAllowPrivateNetwork) {
775
+ const hostnames = ["api.telegram.org"];
776
+ let allowedHostnames;
777
+ if (apiRoot) try {
778
+ const customHost = new URL(apiRoot).hostname;
779
+ if (customHost && !hostnames.includes(customHost)) {
780
+ hostnames.push(customHost);
781
+ allowedHostnames = [customHost];
782
+ }
783
+ } catch (err) {
784
+ logVerbose(`telegram: invalid apiRoot URL "${apiRoot}": ${String(err)}`);
785
+ }
786
+ return {
787
+ hostnameAllowlist: hostnames,
788
+ ...allowedHostnames ? { allowedHostnames } : {},
789
+ ...dangerouslyAllowPrivateNetwork ? { allowPrivateNetwork: true } : {},
790
+ allowRfc2544BenchmarkRange: true
791
+ };
792
+ }
793
+ /**
794
+ * Returns true if the error is Telegram's "file is too big" error.
795
+ * This happens when trying to download files >20MB via the Bot API.
796
+ * Unlike network errors, this is a permanent error and should not be retried.
797
+ */
798
+ function isFileTooBigError(err) {
799
+ if (GrammyErrorCtor && err instanceof GrammyErrorCtor) return FILE_TOO_BIG_RE.test(err.description);
800
+ return FILE_TOO_BIG_RE.test(formatErrorMessage(err));
801
+ }
802
+ /**
803
+ * Returns true if the error is a transient network error that should be retried.
804
+ * Returns false for permanent errors like "file is too big" (400 Bad Request).
805
+ */
806
+ function isRetryableGetFileError(err) {
807
+ if (isFileTooBigError(err)) return false;
808
+ return true;
809
+ }
810
+ function resolveMediaMetadata(msg) {
811
+ return {
812
+ fileRef: msg.photo?.[msg.photo.length - 1] ?? msg.video ?? msg.video_note ?? msg.document ?? msg.audio ?? msg.voice,
813
+ fileName: msg.document?.file_name ?? msg.audio?.file_name ?? msg.video?.file_name ?? msg.animation?.file_name,
814
+ mimeType: msg.audio?.mime_type ?? msg.voice?.mime_type ?? msg.video?.mime_type ?? msg.document?.mime_type ?? msg.animation?.mime_type
815
+ };
816
+ }
817
+ async function resolveTelegramFileWithRetry(ctx) {
818
+ try {
819
+ return await retryAsync(() => ctx.getFile(), {
820
+ attempts: 3,
821
+ minDelayMs: 1e3,
822
+ maxDelayMs: 4e3,
823
+ jitter: .2,
824
+ label: "telegram:getFile",
825
+ shouldRetry: isRetryableGetFileError,
826
+ onRetry: ({ attempt, maxAttempts }) => logVerbose(`telegram: getFile retry ${attempt}/${maxAttempts}`)
827
+ });
828
+ } catch (err) {
829
+ if (isFileTooBigError(err)) {
830
+ logVerbose(warn("telegram: getFile failed - file exceeds Telegram Bot API 20MB limit; skipping attachment"));
831
+ return null;
832
+ }
833
+ logVerbose(`telegram: getFile failed after retries: ${String(err)}`);
834
+ return null;
835
+ }
836
+ }
837
+ function resolveRequiredTelegramTransport(transport) {
838
+ if (transport) return transport;
839
+ const resolvedFetch = globalThis.fetch;
840
+ if (!resolvedFetch) throw new Error("fetch is not available; set channels.telegram.proxy in config");
841
+ return {
842
+ fetch: resolvedFetch,
843
+ sourceFetch: resolvedFetch,
844
+ close: async () => {}
845
+ };
846
+ }
847
+ /** Default idle timeout for Telegram media downloads (30 seconds). */
848
+ const TELEGRAM_DOWNLOAD_IDLE_TIMEOUT_MS = 3e4;
849
+ function usesTrustedTelegramExplicitProxy(transport) {
850
+ return transport.dispatcherAttempts?.some((attempt) => attempt.dispatcherPolicy?.mode === "explicit-proxy") ?? false;
851
+ }
852
+ function resolveTrustedLocalTelegramRoot(filePath, trustedLocalFileRoots) {
853
+ if (!path.isAbsolute(filePath)) return null;
854
+ for (const rootDir of trustedLocalFileRoots ?? []) {
855
+ const relativePath = path.relative(rootDir, filePath);
856
+ if (relativePath === "" || relativePath === ".." || relativePath.startsWith(`..${path.sep}`) || path.isAbsolute(relativePath)) continue;
857
+ return {
858
+ rootDir,
859
+ relativePath
860
+ };
861
+ }
862
+ return null;
863
+ }
864
+ async function downloadAndSaveTelegramFile(params) {
865
+ const trustedLocalFile = resolveTrustedLocalTelegramRoot(params.filePath, params.trustedLocalFileRoots);
866
+ if (trustedLocalFile) {
867
+ let localFile;
868
+ try {
869
+ localFile = await (await root(trustedLocalFile.rootDir)).read(trustedLocalFile.relativePath, { maxBytes: params.maxBytes });
870
+ } catch (err) {
871
+ throw new MediaFetchError("fetch_failed", `Failed to read local Telegram Bot API media from ${params.filePath}: ${formatErrorMessage(err)}`, { cause: err });
872
+ }
873
+ return await saveMediaBuffer(localFile.buffer, params.mimeType, "inbound", params.maxBytes, params.telegramFileName ?? path.basename(localFile.realPath));
874
+ }
875
+ if (path.isAbsolute(params.filePath)) throw new MediaFetchError("fetch_failed", `Telegram Bot API returned absolute file path ${params.filePath} outside trustedLocalFileRoots`);
876
+ const transport = resolveRequiredTelegramTransport(params.transport);
877
+ return await saveRemoteMedia({
878
+ url: `${resolveTelegramApiBase(params.apiRoot)}/file/bot${params.token}/${params.filePath}`,
879
+ fetchImpl: transport.sourceFetch,
880
+ dispatcherAttempts: transport.dispatcherAttempts,
881
+ trustExplicitProxyDns: usesTrustedTelegramExplicitProxy(transport),
882
+ shouldRetryFetchError: shouldRetryTelegramTransportFallback,
883
+ retry: {
884
+ attempts: 3,
885
+ minDelayMs: 1e3,
886
+ maxDelayMs: 4e3,
887
+ jitter: .2,
888
+ label: "telegram:media-download",
889
+ onRetry: ({ attempt, maxAttempts }) => logVerbose(`telegram: media download retry ${attempt}/${maxAttempts}`)
890
+ },
891
+ filePathHint: params.filePath,
892
+ maxBytes: params.maxBytes,
893
+ readIdleTimeoutMs: TELEGRAM_DOWNLOAD_IDLE_TIMEOUT_MS,
894
+ ssrfPolicy: buildTelegramMediaSsrfPolicy(params.apiRoot, params.dangerouslyAllowPrivateNetwork),
895
+ fallbackContentType: params.mimeType,
896
+ originalFilename: params.telegramFileName
897
+ });
898
+ }
899
+ async function resolveStickerMedia(params) {
900
+ const { msg, ctx, maxBytes, token, transport } = params;
901
+ if (!msg.sticker) return;
902
+ const sticker = msg.sticker;
903
+ if (sticker.is_animated || sticker.is_video) {
904
+ logVerbose("telegram: skipping animated/video sticker (only static stickers supported)");
905
+ return null;
906
+ }
907
+ if (!sticker.file_id) return null;
908
+ try {
909
+ const file = await resolveTelegramFileWithRetry(ctx);
910
+ if (!file?.file_path) {
911
+ logVerbose("telegram: getFile returned no file_path for sticker");
912
+ return null;
913
+ }
914
+ const saved = await downloadAndSaveTelegramFile({
915
+ filePath: file.file_path,
916
+ token,
917
+ transport,
918
+ maxBytes,
919
+ apiRoot: params.apiRoot,
920
+ trustedLocalFileRoots: params.trustedLocalFileRoots,
921
+ dangerouslyAllowPrivateNetwork: params.dangerouslyAllowPrivateNetwork
922
+ });
923
+ const cached = sticker.file_unique_id ? getCachedSticker(sticker.file_unique_id) : null;
924
+ if (cached) {
925
+ logVerbose(`telegram: sticker cache hit for ${sticker.file_unique_id}`);
926
+ const fileId = sticker.file_id ?? cached.fileId;
927
+ const emoji = sticker.emoji ?? cached.emoji;
928
+ const setName = sticker.set_name ?? cached.setName;
929
+ if (fileId !== cached.fileId || emoji !== cached.emoji || setName !== cached.setName) cacheSticker({
930
+ ...cached,
931
+ fileId,
932
+ emoji,
933
+ setName
934
+ });
935
+ return {
936
+ path: saved.path,
937
+ contentType: saved.contentType,
938
+ placeholder: "<media:sticker>",
939
+ stickerMetadata: {
940
+ emoji,
941
+ setName,
942
+ fileId,
943
+ fileUniqueId: sticker.file_unique_id,
944
+ cachedDescription: cached.description
945
+ }
946
+ };
947
+ }
948
+ return {
949
+ path: saved.path,
950
+ contentType: saved.contentType,
951
+ placeholder: "<media:sticker>",
952
+ stickerMetadata: {
953
+ emoji: sticker.emoji ?? void 0,
954
+ setName: sticker.set_name ?? void 0,
955
+ fileId: sticker.file_id,
956
+ fileUniqueId: sticker.file_unique_id
957
+ }
958
+ };
959
+ } catch (err) {
960
+ logVerbose(`telegram: failed to process sticker: ${String(err)}`);
961
+ return null;
962
+ }
963
+ }
964
+ async function resolveMedia(params) {
965
+ const { ctx, maxBytes, token, transport, apiRoot, trustedLocalFileRoots, dangerouslyAllowPrivateNetwork } = params;
966
+ const msg = ctx.message;
967
+ const stickerResolved = await resolveStickerMedia({
968
+ msg,
969
+ ctx,
970
+ maxBytes,
971
+ token,
972
+ transport,
973
+ apiRoot,
974
+ trustedLocalFileRoots,
975
+ dangerouslyAllowPrivateNetwork
976
+ });
977
+ if (stickerResolved !== void 0) return stickerResolved;
978
+ const metadata = resolveMediaMetadata(msg);
979
+ if (!metadata.fileRef?.file_id) return null;
980
+ const file = await resolveTelegramFileWithRetry(ctx);
981
+ if (!file) return null;
982
+ if (!file.file_path) throw new Error("Telegram getFile returned no file_path");
983
+ const saved = await downloadAndSaveTelegramFile({
984
+ filePath: file.file_path,
985
+ token,
986
+ transport,
987
+ maxBytes,
988
+ telegramFileName: metadata.fileName,
989
+ mimeType: metadata.mimeType,
990
+ apiRoot,
991
+ trustedLocalFileRoots,
992
+ dangerouslyAllowPrivateNetwork
993
+ });
994
+ const placeholder = resolveTelegramMediaPlaceholder(msg) ?? "<media:document>";
995
+ return {
996
+ path: saved.path,
997
+ contentType: saved.contentType,
998
+ placeholder
999
+ };
1000
+ }
1001
+ //#endregion
1002
+ export { emitTelegramMessageSentHooks as i, deliverReplies as n, emitInternalMessageSentHook as r, resolveMedia as t };