@gaodefa/daocore 2026.5.74 → 2026.5.76

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 (1140) hide show
  1. package/dist/abort-CB4Bin7P.js +277 -0
  2. package/dist/abort.runtime-C5imf3M6.js +2 -0
  3. package/dist/abort.runtime.js +1 -1
  4. package/dist/account-inspect-BrLOD3dL.js +173 -0
  5. package/dist/accounts-BJghihjE.js +107 -0
  6. package/dist/accounts-Cmmoz0Uc.js +119 -0
  7. package/dist/accounts-CtHQ9LlB.js +2 -0
  8. package/dist/accounts-D2XmsEdz.js +107 -0
  9. package/dist/acp/control-plane/manager.d.ts +2 -1
  10. package/dist/acp-runtime-CsJkP6Eh.js +26 -0
  11. package/dist/acp-spawn-DrF63yyT.js +1275 -0
  12. package/dist/acp-spawn-ORtTG-uw.js +2 -0
  13. package/dist/acp-stateful-target-driver-XI6lnVTT.js +89 -0
  14. package/dist/action-kill-BkWa08iK.js +33 -0
  15. package/dist/action-runtime-CW2Fkm81.js +469 -0
  16. package/dist/action-runtime-api-LQHyxfBM.js +2 -0
  17. package/dist/action-send-BSTkpsKB.js +39 -0
  18. package/dist/action-spawn-CG0owoYM.js +47 -0
  19. package/dist/actions-BQH4Vf20.js +161 -0
  20. package/dist/actions.runtime-BwFgiJFE.js +5 -0
  21. package/dist/agent-B1k62jFg.js +3 -0
  22. package/dist/agent-CooPvAB8.js +2 -0
  23. package/dist/agent-command-DQ1XgXqe.d.ts +105 -0
  24. package/dist/agent-command-Djll6bnb.js +1367 -0
  25. package/dist/agent-components.runtime-Bxmeq5SX.js +10 -0
  26. package/dist/agent-components.runtime.js +1 -1
  27. package/dist/agent-harness-Bt_1zRJ1.d.ts +146 -0
  28. package/dist/agent-harness-runtime-Bt2xTt2z.js +180 -0
  29. package/dist/agent-harness-task-runtime-C6Sx-QFy.js +140 -0
  30. package/dist/agent-runner-execution-CUB1dxz1.js +1713 -0
  31. package/dist/agent-runner-utils-LoP2ghjB.js +266 -0
  32. package/dist/agent-runner.runtime-B6FEpN97.js +3455 -0
  33. package/dist/agent-runner.runtime.js +1 -1
  34. package/dist/agent-runtime-DDBYT9PU.js +229 -0
  35. package/dist/agent-via-gateway-Cac7aWXN.js +463 -0
  36. package/dist/api-C7_eM4X7.js +2 -0
  37. package/dist/api-CTv-thVP.js +2 -0
  38. package/dist/api-CyVlHCwr.js +6 -0
  39. package/dist/api-DfnW7Cwk.js +134 -0
  40. package/dist/api-mdeTtlMU.js +3 -0
  41. package/dist/api-rzVN_ShI.js +639 -0
  42. package/dist/apply-CA6OjGyH.js +41 -0
  43. package/dist/apply-YMZKb6rV.js +54 -0
  44. package/dist/approval-handler.runtime-Bo3XBEmS.js +130 -0
  45. package/dist/assistant-D0Y0TW8p.js +291 -0
  46. package/dist/attachment-normalize-CRqY0rzf.js +225 -0
  47. package/dist/attempt-execution-BL2-MkN9.js +558 -0
  48. package/dist/attempt-execution.runtime-BbkIPww8.js +3 -0
  49. package/dist/attempt-execution.runtime.js +1 -1
  50. package/dist/attempt-execution.shared-xgnVkNxr.js +38 -0
  51. package/dist/attempt.prompt-helpers--NxxT8xy.js +475 -0
  52. package/dist/attempt.tool-run-context-EsAayWh6.js +2094 -0
  53. package/dist/binding-routing-BIf2zYbn.js +113 -0
  54. package/dist/binding-targets-CnVPlLL3.js +121 -0
  55. package/dist/bot-BUkIAmq4.js +7894 -0
  56. package/dist/bot-deps-BDpF3-2x.js +747 -0
  57. package/dist/bot-deps-Ctxazu0z.js +2 -0
  58. package/dist/bot-message-context.runtime-Ddl-CF0g.js +7 -0
  59. package/dist/bot-message-context.runtime.js +1 -1
  60. package/dist/bot-message-context.session.runtime-BOBDJGi6.js +12 -0
  61. package/dist/bot-message-context.session.runtime.js +1 -1
  62. package/dist/bot-native-commands.delivery.runtime-Cp2bC1cm.js +4 -0
  63. package/dist/bot-native-commands.delivery.runtime.js +1 -1
  64. package/dist/bot-native-commands.runtime-BxOgiBSg.js +13 -0
  65. package/dist/bot-native-commands.runtime.js +1 -1
  66. package/dist/bridge-server-BD8gdvCj.js +113 -0
  67. package/dist/browser-cli-BxOiqtw0.js +230 -0
  68. package/dist/browser-cli-CQSbU4r7.js +2 -0
  69. package/dist/browser-cli-actions-input-CACwoXjH.js +473 -0
  70. package/dist/browser-cli-actions-observe-7y44Efff.js +81 -0
  71. package/dist/browser-cli-debug--cZDNVgZ.js +137 -0
  72. package/dist/browser-cli-inspect-Bjm1LYpb.js +104 -0
  73. package/dist/browser-cli-manage-BdoQAGZ5.js +443 -0
  74. package/dist/browser-cli-resize-CiWfi52U.js +26 -0
  75. package/dist/browser-cli-shared-Cf2UTok5.js +50 -0
  76. package/dist/browser-cli-state-BzSo9Zyo.js +337 -0
  77. package/dist/browser-control-auth-goBz3LrL.js +2 -0
  78. package/dist/browser-profiles-5QyWxduY.js +2 -0
  79. package/dist/browser-runtime-DpYYMv_-.js +384 -0
  80. package/dist/build-BOWwrF6B.js +257 -0
  81. package/dist/build-info.json +3 -3
  82. package/dist/bundled/boot-md/handler.js +2 -2
  83. package/dist/bundled/session-memory/handler.js +1 -1
  84. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  85. package/dist/capability-cli-p3b5r_A5.js +1782 -0
  86. package/dist/channel-8rtqtIC-.js +238 -0
  87. package/dist/channel-B2t80bjP.js +1556 -0
  88. package/dist/channel-BFgbA2E6.js +562 -0
  89. package/dist/channel-BPZSxEkQ.js +808 -0
  90. package/dist/channel-BibcrGJ7.js +955 -0
  91. package/dist/channel-Bj3a13bG.js +1777 -0
  92. package/dist/channel-Bsd0VVMJ.js +2126 -0
  93. package/dist/channel-C4Ouz2jY.js +481 -0
  94. package/dist/channel-CXcp2i5k.js +653 -0
  95. package/dist/channel-CZNxKVdH.js +1134 -0
  96. package/dist/channel-CfI-ubEB.js +740 -0
  97. package/dist/channel-CgNA5Zih.js +1496 -0
  98. package/dist/channel-D1AKh1-N.d.ts +6 -0
  99. package/dist/channel-D5n_k9F5.js +867 -0
  100. package/dist/channel-D7vJSPUF.js +1249 -0
  101. package/dist/channel-DcV0Ld4N.js +362 -0
  102. package/dist/channel-De73mgO_.js +508 -0
  103. package/dist/channel-Dmdu9Pzb.js +376 -0
  104. package/dist/channel-actions.runtime-CihZrf0M.js +265 -0
  105. package/dist/channel-actions.runtime.js +1 -1
  106. package/dist/channel-cGJKLfJe.d.ts +427 -0
  107. package/dist/channel-core-Ng_haxOP.js +5 -0
  108. package/dist/channel-inbound-Dz8i5Map.js +80 -0
  109. package/dist/channel-lifecycle-BXdiTu_h.d.ts +126 -0
  110. package/dist/channel-pairing-qPwn6FAN.d.ts +58 -0
  111. package/dist/channel-plugin-runtime-BGwpeswU.js +998 -0
  112. package/dist/channel-runtime-5xfHeIpP.js +408 -0
  113. package/dist/channel.runtime-3cv5PIqa.js +21009 -0
  114. package/dist/channel.runtime-B48fiEqP.js +109 -0
  115. package/dist/channel.runtime-B9omb8Je.js +733 -0
  116. package/dist/channel.runtime-BTnYLrjs.js +652 -0
  117. package/dist/channel.runtime-Bw4vm2KP.js +4 -0
  118. package/dist/channel.runtime-JZVnahXY.js +254 -0
  119. package/dist/channel.runtime-OyE1NDe4.js +2528 -0
  120. package/dist/channel.runtime-Q3Chs30P.js +1008 -0
  121. package/dist/channel.runtime-cGEI9b88.js +88 -0
  122. package/dist/channel.setup-BvvO8wUo.js +1098 -0
  123. package/dist/channel.setup-Cy2rvR1u.js +10 -0
  124. package/dist/channel.setup-Xo7BBamM.js +343 -0
  125. package/dist/chat-CfSmQsWK.js +2666 -0
  126. package/dist/chrome-CB8ELr8g.js +1503 -0
  127. package/dist/cli/run-main.js +5 -5
  128. package/dist/cli-CCnAoXu8.js +1341 -0
  129. package/dist/cli-compaction-C5z02QAR.js +347 -0
  130. package/dist/cli-metadata-VfQG__-m.js +22 -0
  131. package/dist/cli-runner-C8VlXbx6.js +2 -0
  132. package/dist/cli-runner-FnNwgi9z.js +540 -0
  133. package/dist/cli-runner.runtime-3y8ztIrM.js +4 -0
  134. package/dist/cli-runner.runtime-DjJNUNqh.js +3 -0
  135. package/dist/cli-runner.runtime.js +1 -1
  136. package/dist/cli-startup-metadata.json +8 -8
  137. package/dist/client-BxaKR3NR.js +650 -0
  138. package/dist/client-adapter-CD2eYE5u.js +897 -0
  139. package/dist/client-factory-wknOz0YZ.js +9 -0
  140. package/dist/command-auth-5oWRlAgW.js +135 -0
  141. package/dist/command-handlers-DRLCoUOI.js +1609 -0
  142. package/dist/command-registry-ClgHMh-P.js +4 -0
  143. package/dist/command-registry-Crw-ALyo.js +9 -0
  144. package/dist/command-registry-core-Q8mKRnm2.js +110 -0
  145. package/dist/command-status.runtime-Bv5-S6Jh.js +90 -0
  146. package/dist/command-status.runtime.js +1 -1
  147. package/dist/commands-acp-D7wwvhSb.js +74 -0
  148. package/dist/commands-compact.runtime-Do6XoPgi.js +10 -0
  149. package/dist/commands-compact.runtime.js +1 -1
  150. package/dist/commands-handlers.runtime-CQIeiOBs.js +6154 -0
  151. package/dist/commands-handlers.runtime.js +1 -1
  152. package/dist/commands-status--6Ec-6xl.js +3 -0
  153. package/dist/commands-status-B71V5ctj.js +16 -0
  154. package/dist/commands-status.runtime--6Ec-6xl.js +3 -0
  155. package/dist/commands-status.runtime.js +1 -1
  156. package/dist/commands-subagents-control.runtime-0bdHKGkh.js +2 -0
  157. package/dist/commands-subagents-control.runtime-C699ndyM.js +3 -0
  158. package/dist/commands-subagents-control.runtime.js +1 -1
  159. package/dist/commands-system-prompt-B-_6D_8o.js +2 -0
  160. package/dist/commands-system-prompt-Cf5S370X.js +162 -0
  161. package/dist/commands.runtime-C95VhDIj.js +176 -0
  162. package/dist/commands.runtime.js +1 -1
  163. package/dist/commitments/runtime.js +1 -1
  164. package/dist/compact-BUfPJl6J.js +1141 -0
  165. package/dist/compact-WFlFbfB-.js +480 -0
  166. package/dist/compact.runtime-CQnO12gG.js +12 -0
  167. package/dist/compact.runtime.js +1 -1
  168. package/dist/completion-cli-uJRHgHYJ.js +315 -0
  169. package/dist/components-u4gL95dv.d.ts +228 -0
  170. package/dist/components.modal-glHG-y8o.d.ts +568 -0
  171. package/dist/computer-use-BqSdNbdx.js +367 -0
  172. package/dist/config-5QyWxduY.js +2 -0
  173. package/dist/config-D7UGquxF.js +373 -0
  174. package/dist/config-mutations-BcFxP9jF.js +159 -0
  175. package/dist/context-engine-host-compat-BBGC6Eb4.js +2 -0
  176. package/dist/context-engine-host-compat-Us6I7iiS.js +288 -0
  177. package/dist/context-engine-lifecycle-BRYjJ_xx.js +1274 -0
  178. package/dist/control-auth-Dz6wWtYF.js +114 -0
  179. package/dist/control-service-OTMJ16Vr.js +145 -0
  180. package/dist/control-ui/assets/agents-BFH1c5D8.js +1008 -0
  181. package/dist/control-ui/assets/channel-config-extras-DsnCLOmU.js +2 -0
  182. package/dist/control-ui/assets/channels-DSisxQja.js +367 -0
  183. package/dist/control-ui/assets/cron-DyI8r1tM.js +1013 -0
  184. package/dist/control-ui/assets/debug-DHzN1qXF.js +97 -0
  185. package/dist/control-ui/assets/index-BE880hFY.js +7378 -0
  186. package/dist/control-ui/assets/index-BimYwq-S.css +1 -0
  187. package/dist/control-ui/assets/instances-D-kXaz60.js +57 -0
  188. package/dist/control-ui/assets/logs-DoWwrXFx.js +74 -0
  189. package/dist/control-ui/assets/nodes-DYXRkdwm.js +436 -0
  190. package/dist/control-ui/assets/sessions-DBse3-4Y.js +399 -0
  191. package/dist/control-ui/assets/skills-SWnspXME.js +314 -0
  192. package/dist/control-ui/assets/skills-shared-D_taQTw1.js +11 -0
  193. package/dist/control-ui/assets/zh-CN-CDrBrfT7.js +2 -0
  194. package/dist/control-ui/index.html +2 -2
  195. package/dist/control-ui/sw.js +1 -1
  196. package/dist/conversation-binding-runtime-Qzm50Ztm.js +4 -0
  197. package/dist/conversation-runtime-B8IRh0X_.js +31 -0
  198. package/dist/core-B9JJc5bK.js +282 -0
  199. package/dist/core-api-BkLqoKIY.js +5 -0
  200. package/dist/core-api-D_qLiSVx.js +2 -0
  201. package/dist/crestodian/crestodian.js +1 -1
  202. package/dist/crestodian/rescue-message.js +1 -1
  203. package/dist/crestodian-Wce00VL9.js +55 -0
  204. package/dist/daocore-tools-BGfsn9OX.js +11727 -0
  205. package/dist/delivery-CKZNf6HN.js +1002 -0
  206. package/dist/dialogue-DMyfQ10Y.js +37 -0
  207. package/dist/dir-fetch-tool-Bodc_UiO.js +565 -0
  208. package/dist/dir-list-tool-DKdRgmE0.js +100 -0
  209. package/dist/direct-dm-gubxMBvV.js +64 -0
  210. package/dist/directive-handling.fast-lane-SIR-LK_X.js +68 -0
  211. package/dist/directive-handling.impl-CyETmsuZ.js +2 -0
  212. package/dist/directive-handling.impl-DBRFiFvk.js +818 -0
  213. package/dist/directive-handling.model-selection-DY-tmC6k.js +122 -0
  214. package/dist/directive-handling.persist.runtime-NzxgMnZ0.js +263 -0
  215. package/dist/directive-handling.persist.runtime.js +1 -1
  216. package/dist/dispatch-Cfc2X0Y6.js +1640 -0
  217. package/dist/dispatch-acp-transcript.runtime-QL350v4-.js +40 -0
  218. package/dist/dispatch-acp-transcript.runtime.js +1 -1
  219. package/dist/dispatch-acp.runtime-D3FviqFZ.js +18 -0
  220. package/dist/dispatch-acp.runtime.js +1 -1
  221. package/dist/doctor-C7gTSFfH.js +6 -0
  222. package/dist/doctor-DiHS_IQ0.js +2 -0
  223. package/dist/doctor-config-flow-B8FwXA-r.js +1741 -0
  224. package/dist/doctor-core-checks-BYeuryZ4.js +2 -0
  225. package/dist/doctor-core-checks-CnzzLGiH.js +573 -0
  226. package/dist/doctor-health-BnmOyTty.js +65 -0
  227. package/dist/doctor-health-contributions-ocQMPxjM.js +696 -0
  228. package/dist/doctor-lint-CjRi8o5u.js +94 -0
  229. package/dist/doctor-state-integrity-Dbu4NMz2.js +1231 -0
  230. package/dist/dynamic-tools-6zBBc1qr.js +486 -0
  231. package/dist/embedded-backend-BZOf3nmp.js +579 -0
  232. package/dist/embedded-gateway-stub.runtime-Bz0nKXhe.js +12 -0
  233. package/dist/embedded-gateway-stub.runtime.js +1 -1
  234. package/dist/exec-approvals-D7MoRNan.js +149 -0
  235. package/dist/extensionAPI.js +1 -1
  236. package/dist/extensions/active-memory/index.js +1 -1
  237. package/dist/extensions/admin-http-rpc/index.js +1 -1
  238. package/dist/extensions/anthropic/doctor-contract-api.d.ts +1 -1
  239. package/dist/extensions/browser/browser-bridge.js +1 -1
  240. package/dist/extensions/browser/browser-config.js +4 -4
  241. package/dist/extensions/browser/browser-control-auth.js +2 -2
  242. package/dist/extensions/browser/browser-doctor.js +2 -2
  243. package/dist/extensions/browser/browser-maintenance.js +1 -1
  244. package/dist/extensions/browser/browser-profiles.js +2 -2
  245. package/dist/extensions/browser/browser-runtime-api.js +11 -11
  246. package/dist/extensions/browser/cli-metadata.js +1 -1
  247. package/dist/extensions/browser/index.js +1 -1
  248. package/dist/extensions/browser/plugin-registration.js +1 -1
  249. package/dist/extensions/browser/register.runtime.js +4 -4
  250. package/dist/extensions/browser/runtime-api.js +13 -13
  251. package/dist/extensions/browser/test-support.d.ts +1 -1
  252. package/dist/extensions/canvas/index.js +1 -1
  253. package/dist/extensions/clickclack/api.js +2 -2
  254. package/dist/extensions/clickclack/channel-plugin-api.js +1 -1
  255. package/dist/extensions/clickclack/runtime-api.js +2 -2
  256. package/dist/extensions/device-pair/api.js +1 -1
  257. package/dist/extensions/device-pair/pair-command-approve.js +1 -1
  258. package/dist/extensions/file-transfer/index.js +4 -4
  259. package/dist/extensions/google/doctor-contract-api.d.ts +1 -1
  260. package/dist/extensions/image-generation-core/api.d.ts +1 -1
  261. package/dist/extensions/imessage/api.js +2 -2
  262. package/dist/extensions/imessage/channel-plugin-api.js +1 -1
  263. package/dist/extensions/imessage/message-tool-api.d.ts +1 -1
  264. package/dist/extensions/imessage/runtime-api.d.ts +1 -1
  265. package/dist/extensions/imessage/runtime-api.js +3 -3
  266. package/dist/extensions/irc/api.js +2 -2
  267. package/dist/extensions/irc/channel-plugin-api.js +1 -1
  268. package/dist/extensions/llm-task/index.js +1 -1
  269. package/dist/extensions/mattermost/api.js +1 -1
  270. package/dist/extensions/mattermost/channel-plugin-api.js +1 -1
  271. package/dist/extensions/mattermost/channel-plugin-runtime.js +1 -1
  272. package/dist/extensions/mattermost/policy-api.js +1 -1
  273. package/dist/extensions/mattermost/runtime-api.d.ts +7 -7
  274. package/dist/extensions/mattermost/runtime-api.js +2 -2
  275. package/dist/extensions/mattermost/slash-route-api.js +1 -1
  276. package/dist/extensions/memory-core/cli-metadata.js +1 -1
  277. package/dist/extensions/migrate-claude/apply.js +1 -1
  278. package/dist/extensions/migrate-claude/index.js +1 -1
  279. package/dist/extensions/migrate-claude/plan.js +1 -1
  280. package/dist/extensions/migrate-claude/provider.js +1 -1
  281. package/dist/extensions/migrate-claude/targets.js +1 -1
  282. package/dist/extensions/migrate-hermes/apply.js +1 -1
  283. package/dist/extensions/migrate-hermes/index.js +1 -1
  284. package/dist/extensions/migrate-hermes/model.js +1 -1
  285. package/dist/extensions/migrate-hermes/plan.js +1 -1
  286. package/dist/extensions/migrate-hermes/provider.js +1 -1
  287. package/dist/extensions/migrate-hermes/secrets.js +1 -1
  288. package/dist/extensions/migrate-hermes/targets.js +1 -1
  289. package/dist/extensions/policy/api.js +1 -1
  290. package/dist/extensions/policy/index.js +2 -2
  291. package/dist/extensions/signal/api.d.ts +1 -1
  292. package/dist/extensions/signal/api.js +6 -6
  293. package/dist/extensions/signal/channel-plugin-api.js +1 -1
  294. package/dist/extensions/signal/reaction-runtime-api.js +1 -1
  295. package/dist/extensions/signal/runtime-api.d.ts +2 -2
  296. package/dist/extensions/signal/runtime-api.js +7 -7
  297. package/dist/extensions/skill-workshop/api.js +1 -1
  298. package/dist/extensions/skill-workshop/index.js +2 -2
  299. package/dist/extensions/telegram/account-inspect-api.js +1 -1
  300. package/dist/extensions/telegram/api.d.ts +1 -1
  301. package/dist/extensions/telegram/api.js +11 -11
  302. package/dist/extensions/telegram/channel-plugin-api.js +2 -2
  303. package/dist/extensions/telegram/contract-api.js +3 -3
  304. package/dist/extensions/telegram/runtime-api.js +7 -7
  305. package/dist/extensions/telegram/security-audit-contract-api.js +1 -1
  306. package/dist/extensions/telegram/setup-plugin-api.js +1 -1
  307. package/dist/extensions/telegram/test-api.js +2 -2
  308. package/dist/extensions/video-generation-core/api.d.ts +1 -1
  309. package/dist/extensions/webhooks/api.js +1 -1
  310. package/dist/extensions/webhooks/index.js +1 -1
  311. package/dist/extensions/webhooks/runtime-api.d.ts +2 -2
  312. package/dist/extensions/xai/index.js +4 -4
  313. package/dist/extensions/xai/realtime-transcription-provider.js +1 -1
  314. package/dist/extensions/xai/speech-provider.js +1 -1
  315. package/dist/extensions/xai/test-api.js +1 -1
  316. package/dist/extensions/xai/tts.js +1 -1
  317. package/dist/extensions/xai/web-search.js +1 -1
  318. package/dist/extensions/xai/xai-oauth.js +1 -1
  319. package/dist/file-fetch-tool-UOp-kXiF.js +124 -0
  320. package/dist/file-write-tool-Bmics566.js +127 -0
  321. package/dist/format-BAPtahQp.js +1145 -0
  322. package/dist/gateway-cli-C9vWttAu.js +435 -0
  323. package/dist/gateway-method-runtime-cf2DQe_R.js +21 -0
  324. package/dist/get-reply-from-config.runtime-973T_WNQ.js +2 -0
  325. package/dist/get-reply-from-config.runtime.js +1 -1
  326. package/dist/get-reply-nFbvZyXJ.js +4689 -0
  327. package/dist/graph-users-DX3qj987.js +1419 -0
  328. package/dist/group-access-fUxE_esT.js +112 -0
  329. package/dist/group-keys-wTgDt5mh.d.ts +17 -0
  330. package/dist/handle-action.guild-admin-DzmixKDt.js +288 -0
  331. package/dist/harness-BvoaeM2G.js +61 -0
  332. package/dist/health-BNfYEJaa.js +4 -0
  333. package/dist/heartbeat-runner-DHFAz5O-.js +5 -0
  334. package/dist/heartbeat-runner.runtime-BTARhrNZ.js +4 -0
  335. package/dist/heartbeat-runner.runtime.js +1 -1
  336. package/dist/hook-runtime-BBONf8H3.d.ts +108 -0
  337. package/dist/hooks-DxGU2YA5.js +534 -0
  338. package/dist/inbound-direct-dm-runtime-CAX9fltu.js +2 -0
  339. package/dist/inbound-reply-dispatch-T13MYtrr.js +148 -0
  340. package/dist/index.d.ts +1 -1
  341. package/dist/index.js +1 -1
  342. package/dist/init-DCCh5oSO.js +59 -0
  343. package/dist/inline-buttons-DaFc4jXn.js +40 -0
  344. package/dist/internal-events-Gz1ipxmh.js +90 -0
  345. package/dist/isolated-agent-CHUsxMC-.js +1118 -0
  346. package/dist/isolated-agent-K2nfnPOc.js +2 -0
  347. package/dist/lifecycle-kyB2yqsq.js +571 -0
  348. package/dist/list.probe-BSjy8u2p.js +449 -0
  349. package/dist/list.status-command-BxIAK-G5.js +789 -0
  350. package/dist/llm-slug-generator-BMH4faWD.js +78 -0
  351. package/dist/llm-slug-generator.js +1 -1
  352. package/dist/local-dispatch.runtime-DFy7ycDP.js +9 -0
  353. package/dist/local-dispatch.runtime.js +1 -1
  354. package/dist/manager-DWN3qo90.d.ts +10 -0
  355. package/dist/manager.core-BRd2_lqA.d.ts +198 -0
  356. package/dist/manager.runtime-CPqoT9HS.js +2714 -0
  357. package/dist/manager.runtime.js +1 -1
  358. package/dist/markdown-to-line-DQuET8BD.js +811 -0
  359. package/dist/mcp-http-BTLfb7mN.js +555 -0
  360. package/dist/mcp-http-Bcx2IvUV.js +2 -0
  361. package/dist/media-understanding-provider-BXfXH9ER.js +339 -0
  362. package/dist/message-actions-O4ffm7Zz.js +145 -0
  363. package/dist/message-handler-B3NHGkvn.js +1715 -0
  364. package/dist/message-handler-Dm-49Yay.js +384 -0
  365. package/dist/message-handler.preflight-Dmy4TMmc.js +1125 -0
  366. package/dist/message-handler.process-BvIh9714.js +1484 -0
  367. package/dist/model-CiE38oM-.js +74 -0
  368. package/dist/model-selection-B4wj_z32.js +272 -0
  369. package/dist/models-DF0uMtab.js +2 -0
  370. package/dist/models-DupIeDpS.js +104 -0
  371. package/dist/models-cli-BKoIijSE.js +256 -0
  372. package/dist/monitor-BGkgqVYu.js +4377 -0
  373. package/dist/monitor-BJBnArAU.js +834 -0
  374. package/dist/monitor-C1L1aR0q.js +2788 -0
  375. package/dist/monitor-C3wAzu_q.js +2 -0
  376. package/dist/monitor-CN29zOnf.js +1370 -0
  377. package/dist/monitor-D7FhV0Qe.js +1657 -0
  378. package/dist/monitor-Dcy6FUPv.js +60 -0
  379. package/dist/monitor-Y4SvOC0z.js +715 -0
  380. package/dist/monitor-auth-B_73QHux.js +179 -0
  381. package/dist/monitor-polling.runtime-D3yoLMON.js +883 -0
  382. package/dist/monitor-polling.runtime.js +1 -1
  383. package/dist/monitor-webhook.runtime-CnchK0Ki.js +387 -0
  384. package/dist/monitor-webhook.runtime.js +1 -1
  385. package/dist/monitor.account-B0u_Xih0.js +5233 -0
  386. package/dist/monitor.runtime-9JVw9n8z.js +2 -0
  387. package/dist/monitor.runtime.js +1 -1
  388. package/dist/monitor.webhook-ixq3jhC8.js +180 -0
  389. package/dist/node-cli-sessions-C07qXjfH.js +1228 -0
  390. package/dist/openai-http-DL1i7Pdz.js +824 -0
  391. package/dist/openresponses-http-4vW7i5hM.js +1173 -0
  392. package/dist/operations-hyqHq47Z.js +805 -0
  393. package/dist/outbound-adapter-B2lF_Qp0.js +543 -0
  394. package/dist/outbound-session-route-CXbw-Zbl.js +45 -0
  395. package/dist/outbound.runtime-ROOz_EXD.js +2 -0
  396. package/dist/outbound.runtime.js +1 -1
  397. package/dist/pairing-store-Cfy_zHzi.d.ts +87 -0
  398. package/dist/pi-embedded-D23Jv1_v.js +4 -0
  399. package/dist/pi-embedded-LwXPGFfT.js +3796 -0
  400. package/dist/pi-embedded.runtime-Rk5rpqL7.js +4 -0
  401. package/dist/pi-embedded.runtime.js +1 -1
  402. package/dist/pi-tools-DqhrI9AL.js +2413 -0
  403. package/dist/plan-BCEMv5RF.js +112 -0
  404. package/dist/plan-BHwmpZjz.js +81 -0
  405. package/dist/plugin-app-cache-key-CWYPZS_p.js +46 -0
  406. package/dist/plugin-enabled-NkokTFHK.js +233 -0
  407. package/dist/plugin-oDyOB4UI.js +12396 -0
  408. package/dist/plugin-registration-CeH_6Is4.js +88 -0
  409. package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
  410. package/dist/plugin-sdk/acp-runtime-backend.js +1 -1
  411. package/dist/plugin-sdk/acp-runtime.js +2 -2
  412. package/dist/plugin-sdk/agent-harness-runtime.js +6 -6
  413. package/dist/plugin-sdk/agent-harness-task-runtime.js +1 -1
  414. package/dist/plugin-sdk/agent-harness.js +7 -7
  415. package/dist/plugin-sdk/agent-runtime.js +2 -2
  416. package/dist/plugin-sdk/channel-core.js +2 -2
  417. package/dist/plugin-sdk/channel-inbound.js +2 -2
  418. package/dist/plugin-sdk/channel-test-helpers.js +1 -1
  419. package/dist/plugin-sdk/command-auth.js +1 -1
  420. package/dist/plugin-sdk/command-status-runtime.js +1 -1
  421. package/dist/plugin-sdk/compat.js +1 -1
  422. package/dist/plugin-sdk/conversation-binding-runtime.js +2 -2
  423. package/dist/plugin-sdk/conversation-runtime.js +3 -3
  424. package/dist/plugin-sdk/core.js +2 -2
  425. package/dist/plugin-sdk/direct-dm.js +1 -1
  426. package/dist/plugin-sdk/gateway-method-runtime.js +1 -1
  427. package/dist/plugin-sdk/health.js +2 -2
  428. package/dist/plugin-sdk/inbound-reply-dispatch.js +1 -1
  429. package/dist/plugin-sdk/index.js +1 -1
  430. package/dist/plugin-sdk/mattermost.js +1 -1
  431. package/dist/plugin-sdk/plugin-test-contracts.js +2 -2
  432. package/dist/plugin-sdk/provider-test-contracts.js +4 -4
  433. package/dist/plugin-sdk/reply-runtime.js +4 -4
  434. package/dist/plugin-sdk/testing.js +2 -2
  435. package/dist/plugin-sdk/zalouser.js +1 -1
  436. package/dist/plugin-service-XeCZ8oFI.js +1229 -0
  437. package/dist/plugins/runtime/index.js +4 -4
  438. package/dist/policy-BsS7jXyV.js +138 -0
  439. package/dist/policy-dTLidj41.js +680 -0
  440. package/dist/postinstall-inventory.json +11611 -0
  441. package/dist/prepare.runtime-CxSRhibQ.js +732 -0
  442. package/dist/prepare.runtime.js +1 -1
  443. package/dist/preview-warnings-CYO_Ec8j.js +392 -0
  444. package/dist/probe-B38i01ob.js +2 -0
  445. package/dist/probe-BfuwJZxZ.js +47 -0
  446. package/dist/probe-DaZ-zbpf.js +2204 -0
  447. package/dist/probe-TNHaSvg4.js +682 -0
  448. package/dist/program-BHDY7txk.js +131 -0
  449. package/dist/provider-B2OEKMgz.js +8735 -0
  450. package/dist/provider-BN5zYpXy.js +152 -0
  451. package/dist/provider-C5wk4Zq2.js +32 -0
  452. package/dist/provider-C_AVioxd.js +32 -0
  453. package/dist/provider-dispatcher-D8wmCCX8.js +22 -0
  454. package/dist/provider-dispatcher.runtime.js +1 -1
  455. package/dist/provider-session.runtime-B63XBUkk.js +9 -0
  456. package/dist/provider-session.runtime.js +1 -1
  457. package/dist/provider.runtime-D1lu1iBi.js +2 -0
  458. package/dist/provider.runtime.js +1 -1
  459. package/dist/public-surface-loader-ClnvswYD.js +114 -0
  460. package/dist/pw-ai-CUvQLjDl.js +3029 -0
  461. package/dist/pw-role-snapshot-DqOQm6b-.js +333 -0
  462. package/dist/reaction-level-DdxMc_S-.js +19 -0
  463. package/dist/reaction-runtime-api-DV5ADguG.js +116 -0
  464. package/dist/realtime-transcription-provider-Jx3qVPVX.js +205 -0
  465. package/dist/register-B6JqGeZm.js +2178 -0
  466. package/dist/register.agent-pQ55YbLM.js +156 -0
  467. package/dist/register.crestodian-DG48cq1n.js +24 -0
  468. package/dist/register.maintenance-CmyTyWfW.js +83 -0
  469. package/dist/register.runtime-Dc2ah3hl.js +54 -0
  470. package/dist/register.subclis-BNslxGzE.js +3 -0
  471. package/dist/register.subclis-BltgkX8W.js +31 -0
  472. package/dist/register.subclis-core-CXo28UGO.js +273 -0
  473. package/dist/repair-sequencing-SddJfHba.js +640 -0
  474. package/dist/reply-delivery-YOUVxLhE.js +196 -0
  475. package/dist/reply-runtime-Bic05q8u.js +11 -0
  476. package/dist/reply-runtime-DUv2dRp3.d.ts +34 -0
  477. package/dist/reply.runtime-973T_WNQ.js +2 -0
  478. package/dist/reply.runtime.js +1 -1
  479. package/dist/request-De-MLnVs.js +54 -0
  480. package/dist/resolve-allowlist-0P5Zm3Ih.js +220 -0
  481. package/dist/result-fallback-classifier-CRFWJOeW.js +79 -0
  482. package/dist/route-A4sH-KRJ.js +469 -0
  483. package/dist/route-resolution-BR89k_5k.js +274 -0
  484. package/dist/routes-BbmTgfa7.js +3602 -0
  485. package/dist/routes-H_X6d_BR.js +2 -0
  486. package/dist/run-C_HJBF46.js +1162 -0
  487. package/dist/run-attempt-DVUpjMzw.js +7704 -0
  488. package/dist/run-command-CtO053FV.js +23 -0
  489. package/dist/run-command-whpq0vSs.js +2 -0
  490. package/dist/run-embedded.runtime-z8KRAA9N.js +4 -0
  491. package/dist/run-embedded.runtime.js +1 -1
  492. package/dist/run-execution-cli.runtime-DP4sTGB3.js +4 -0
  493. package/dist/run-execution-cli.runtime.js +1 -1
  494. package/dist/run-executor.runtime.js +1 -1
  495. package/dist/run-subagent-registry.runtime-Ic4qjJAZ.js +2 -0
  496. package/dist/run-subagent-registry.runtime.js +1 -1
  497. package/dist/runtime-C84q1uWh.js +438 -0
  498. package/dist/runtime-D21vC5Bd.d.ts +17 -0
  499. package/dist/runtime-DM-8CUG8.js +1287 -0
  500. package/dist/runtime-api-B92-eAFH.js +4 -0
  501. package/dist/runtime-api-BA-_f4wN.js +21 -0
  502. package/dist/runtime-api-C3x1bTUP.js +3 -0
  503. package/dist/runtime-api-C4J88HGc.js +13 -0
  504. package/dist/runtime-api-C7ToEUFX.d.ts +3151 -0
  505. package/dist/runtime-api-CBJPQTPG.js +24 -0
  506. package/dist/runtime-api-DI4rBaZp.js +17 -0
  507. package/dist/runtime-api-D_JIC4_F.js +13 -0
  508. package/dist/runtime-api.actions-CClxRuYx.d.ts +23 -0
  509. package/dist/runtime-api.actions-Crwfcz27.js +3 -0
  510. package/dist/runtime-api.monitor-DXEdIqiH.d.ts +3757 -0
  511. package/dist/runtime-api.monitor-KeGId_a2.js +6 -0
  512. package/dist/runtime-api.send-B5TgJp5s.d.ts +38 -0
  513. package/dist/runtime-api.send-DkmqVan7.js +4 -0
  514. package/dist/runtime-api.threads--LYxacx4.js +2 -0
  515. package/dist/runtime-channel-C0fX96Yx.js +2 -0
  516. package/dist/runtime-channel-CmXstmiO.js +150 -0
  517. package/dist/runtime-doctor-DVYwKwIT.d.ts +47 -0
  518. package/dist/runtime-embedded-pi.runtime-C0nckPTh.js +2 -0
  519. package/dist/runtime-embedded-pi.runtime.js +1 -1
  520. package/dist/runtime-o-9rMitP.js +6179 -0
  521. package/dist/sanitize-outbound-BDtDO_r3.js +127 -0
  522. package/dist/sdk-setup-tools-Bw1sb2J0.js +8 -0
  523. package/dist/secrets-Cexd83PL.js +113 -0
  524. package/dist/security-audit-DeMasGQi.js +122 -0
  525. package/dist/security-audit-lZXBiK8a.js +118 -0
  526. package/dist/security-audit.runtime-B73uav0c.js +2 -0
  527. package/dist/security-audit.runtime.js +1 -1
  528. package/dist/selection-BPe1-NRx.js +16157 -0
  529. package/dist/selection-DtlsSu6t.js +3 -0
  530. package/dist/send-BP8O_f3_.js +2 -0
  531. package/dist/send-D95RJNJM.d.ts +104 -0
  532. package/dist/send-DB92XENW.js +192 -0
  533. package/dist/send-DPpvAomE.js +1631 -0
  534. package/dist/send-DUSg5J3j.js +143 -0
  535. package/dist/send-DZ4YhPHH.d.ts +231 -0
  536. package/dist/send.components-Beh2GSlI.js +500 -0
  537. package/dist/send.components-vjkB2tEO.js +2 -0
  538. package/dist/send.runtime-XHNBD8mm.js +2 -0
  539. package/dist/send.runtime.js +1 -1
  540. package/dist/send.types-_f4omMzG.d.ts +159 -0
  541. package/dist/server-CAQk-GlH.js +24 -0
  542. package/dist/server-Um3iJ7EL.js +73 -0
  543. package/dist/server-close.runtime.js +1 -1
  544. package/dist/server-context-Cq6Mf_Hx.js +2 -0
  545. package/dist/server-context-CxM3niUB.js +955 -0
  546. package/dist/server-cron-BSh0DjkH.js +2989 -0
  547. package/dist/server-cron-Csg1r2SE.js +2 -0
  548. package/dist/server-methods-CBPnwVD3.js +16499 -0
  549. package/dist/server-node-events-CZCahsw3.js +596 -0
  550. package/dist/server-plugin-bootstrap-DB4Iptzd.js +70 -0
  551. package/dist/server-plugins-BVVgDSdq.d.ts +1 -0
  552. package/dist/server-plugins-BZIW7Sn8.js +432 -0
  553. package/dist/server-reload-handlers-V9f07KRC.js +714 -0
  554. package/dist/server-restart-sentinel-DSQyhuO9.js +2 -0
  555. package/dist/server-restart-sentinel-DnS4nSXg.js +747 -0
  556. package/dist/server-runtime-services-Da8S4dip.js +2 -0
  557. package/dist/server-runtime-services-hMwmCtz4.js +267 -0
  558. package/dist/server-startup-plugins-CFedlOir.js +113 -0
  559. package/dist/server-startup-post-attach-BC4ypGDV.js +716 -0
  560. package/dist/server-ws-runtime-BZdnJ8_f.js +349 -0
  561. package/dist/server.impl-JxdGpBse.js +2586 -0
  562. package/dist/service-CrRxM1s3.js +1446 -0
  563. package/dist/session-binding-B1kLTRx0.js +219 -0
  564. package/dist/session-binding-BhmP2qr8.js +2 -0
  565. package/dist/session-kill-http-hVTRFmxJ.js +121 -0
  566. package/dist/session-reset-service-NFIUAaub.js +625 -0
  567. package/dist/session-route-CAVGKfbY.js +93 -0
  568. package/dist/session-status.runtime-CAujMI0m.js +2 -0
  569. package/dist/session-status.runtime.js +1 -1
  570. package/dist/session-subagent-reactivation.runtime-CAD_WZE1.js +2 -0
  571. package/dist/session-subagent-reactivation.runtime.js +1 -1
  572. package/dist/session-tab-registry-BIhFQ2_N.js +521 -0
  573. package/dist/sessions-history-http-DTUCgSIv.js +430 -0
  574. package/dist/sessions.runtime-BhxJAIUl.js +2 -0
  575. package/dist/sessions.runtime.js +1 -1
  576. package/dist/setup-api-BaSNfjGt.js +29 -0
  577. package/dist/setup-core-Cv-UM5DV.js +174 -0
  578. package/dist/setup-surface-3iygBoSk.js +288 -0
  579. package/dist/setup-surface-BYu3PlXP.js +405 -0
  580. package/dist/setup-surface-BnCUx0xf.js +221 -0
  581. package/dist/setup-surface-DajEGPq9.js +320 -0
  582. package/dist/shared-DjUBdZw0.js +121 -0
  583. package/dist/shared-client-B364qsQs.js +2 -0
  584. package/dist/shared-client-vi4UjWgq.js +629 -0
  585. package/dist/side-question-Cfz-6Mik.js +683 -0
  586. package/dist/skill-tool-dispatch.runtime-BHi8qkm6.js +143 -0
  587. package/dist/skill-tool-dispatch.runtime.js +1 -1
  588. package/dist/slash-state-1yv6e-CZ.js +2166 -0
  589. package/dist/speech-provider-BBTLPoxz.js +184 -0
  590. package/dist/src-DQGUHoew.js +4256 -0
  591. package/dist/startup-context-CSXtIxM4.js +313 -0
  592. package/dist/status-subagents.runtime-Ce4XFNpI.js +18 -0
  593. package/dist/status-subagents.runtime.js +1 -1
  594. package/dist/status-text-B_aeJyIx.js +296 -0
  595. package/dist/sticker-cache-CyXfXSnD.js +206 -0
  596. package/dist/sticker-vision.runtime-CfEwepme.js +17 -0
  597. package/dist/sticker-vision.runtime.js +1 -1
  598. package/dist/subagent-announce-DJP9Deag.js +354 -0
  599. package/dist/subagent-announce-delivery-djkdPFWz.js +958 -0
  600. package/dist/subagent-control-C59CHxJT.js +508 -0
  601. package/dist/subagent-hooks-B7HsNzMr.js +230 -0
  602. package/dist/subagent-hooks-BPSvsSKo.js +2 -0
  603. package/dist/subagent-hooks-Bg-RSz4n.js +146 -0
  604. package/dist/subagent-hooks-BvAYM6MF.js +2 -0
  605. package/dist/subagent-hooks-DCga-z0P.js +2 -0
  606. package/dist/subagent-hooks-DpUUm-nC.js +116 -0
  607. package/dist/subagent-hooks-api-BfBPES7I.js +23 -0
  608. package/dist/subagent-hooks-api-Ct3H1JvT.js +23 -0
  609. package/dist/subagent-hooks-api-D-gcal8L.js +22 -0
  610. package/dist/subagent-orphan-recovery-TurbGwPo.js +352 -0
  611. package/dist/subagent-registry-BVVgDSdq.d.ts +1 -0
  612. package/dist/subagent-registry-Dcr5vJsh.js +3 -0
  613. package/dist/subagent-registry-almRMGiJ.js +2351 -0
  614. package/dist/subagent-registry-read-BVVgDSdq.d.ts +1 -0
  615. package/dist/subagent-registry.runtime.js +1 -1
  616. package/dist/subagent-session-cleanup-DStloUoa.js +525 -0
  617. package/dist/subagent-spawn-a5zQq79_.js +1164 -0
  618. package/dist/target-id-C0AUAPRt.js +107 -0
  619. package/dist/targets-9NQEAB_8.js +44 -0
  620. package/dist/targets-BX9hUOE0.js +19 -0
  621. package/dist/targets-uCQJMS9L.js +19 -0
  622. package/dist/task-registry-control.runtime.d.ts +1 -1
  623. package/dist/task-registry-control.runtime.js +1 -1
  624. package/dist/telegram/token.js +1 -1
  625. package/dist/test-fixtures-xgg7UsEw.d.ts +27 -0
  626. package/dist/test-support-BVVgDSdq.d.ts +1 -0
  627. package/dist/testing-CL4tSWlY.js +267 -0
  628. package/dist/thread-bindings-CuYgnJrA.js +232 -0
  629. package/dist/thread-bindings-DrLRFv9V.js +571 -0
  630. package/dist/thread-bindings-DuDBMJUH.js +8 -0
  631. package/dist/thread-bindings-DuPLUeEg.js +228 -0
  632. package/dist/thread-bindings.discord-api-CRkN3LO6.js +187 -0
  633. package/dist/thread-bindings.manager-U4vvV74R.js +2 -0
  634. package/dist/thread-bindings.manager-qvjQ7XrE.js +536 -0
  635. package/dist/thread-lifecycle-ebEJZlV8.js +1614 -0
  636. package/dist/token-BfUGddbB.js +134 -0
  637. package/dist/tool-DMbMn8SG.js +139 -0
  638. package/dist/tool-actions.runtime-3flyBx99.js +534 -0
  639. package/dist/tool-actions.runtime.js +1 -1
  640. package/dist/tool-resolution-CteuwLWG.js +149 -0
  641. package/dist/tools-effective-inventory-C3umjhj4.js +204 -0
  642. package/dist/tools-invoke-http-BPDxOpMS.js +67 -0
  643. package/dist/tools-invoke-shared-BgajIn1A.js +200 -0
  644. package/dist/tts-DWkHFEoO.js +66 -0
  645. package/dist/tui-BLuAg68O.js +2 -0
  646. package/dist/tui-backend-B_XhQILj.js +256 -0
  647. package/dist/tui-cli-C3L6mNyE.js +37 -0
  648. package/dist/tui-kx080n35.js +4709 -0
  649. package/dist/typed-cases-v8PtmO3g.d.ts +68 -0
  650. package/dist/update-cli-Ca7CiQOc.js +3664 -0
  651. package/dist/vision-tools-V-w_kZa2.js +1409 -0
  652. package/dist/web-search-LuWKS3f2.js +62 -0
  653. package/dist/web-search-provider.runtime-CmbTFxDm.js +2 -0
  654. package/dist/web-search-provider.runtime-DZXMqd4W.js +328 -0
  655. package/dist/web-search-provider.runtime.js +1 -1
  656. package/dist/webhook-targets-C9cJD_kB.d.ts +99 -0
  657. package/dist/xai-oauth-C_tPwhEw.js +479 -0
  658. package/dist/xai-user-agent-C1zI5_IU.js +32 -0
  659. package/npm-shrinkwrap.json +2 -2
  660. package/package.json +1 -1
  661. package/dist/abort-By1jCXcv.js +0 -277
  662. package/dist/abort.runtime-BUEReR-v.js +0 -2
  663. package/dist/account-inspect-DkuYTikX.js +0 -173
  664. package/dist/accounts-C19Qdo7I.js +0 -107
  665. package/dist/accounts-CjG0t0Cv.js +0 -119
  666. package/dist/accounts-CtWjp889.js +0 -2
  667. package/dist/accounts-qPTOizTg.js +0 -107
  668. package/dist/acp-runtime-CMLjiKa-.js +0 -26
  669. package/dist/acp-spawn-BGT-Px6Z.js +0 -1275
  670. package/dist/acp-spawn-CPO-hI4Y.js +0 -2
  671. package/dist/acp-stateful-target-driver-CDW_IRB4.js +0 -89
  672. package/dist/action-kill-B77KpIIQ.js +0 -33
  673. package/dist/action-runtime-EWSpHGrj.js +0 -469
  674. package/dist/action-runtime-api-bUNFqFoC.js +0 -2
  675. package/dist/action-send-DkQiw_fv.js +0 -39
  676. package/dist/action-spawn-noygtmpa.js +0 -47
  677. package/dist/actions-CPKTkTAD.js +0 -161
  678. package/dist/actions.runtime-eslFNzsP.js +0 -5
  679. package/dist/agent-CjNqqyKT.js +0 -3
  680. package/dist/agent-DaUQpTpc.js +0 -2
  681. package/dist/agent-command-COFQwKxZ.d.ts +0 -141
  682. package/dist/agent-command-DFcGb1lF.js +0 -1367
  683. package/dist/agent-components.runtime-_b4M39T5.js +0 -10
  684. package/dist/agent-harness-WlBoSv-g.d.ts +0 -146
  685. package/dist/agent-harness-runtime-C09s_5eo.js +0 -180
  686. package/dist/agent-harness-task-runtime-wnzHUZZT.js +0 -140
  687. package/dist/agent-runner-execution-Bx_X59we.js +0 -1713
  688. package/dist/agent-runner-utils-hOwJODaJ.js +0 -266
  689. package/dist/agent-runner.runtime-LeZ65RXP.js +0 -3455
  690. package/dist/agent-runtime-Cio-RAUW.js +0 -229
  691. package/dist/agent-via-gateway-C06ks7Yk.js +0 -463
  692. package/dist/api-CBKedD81.js +0 -2
  693. package/dist/api-Ct1qM1Qp.js +0 -3
  694. package/dist/api-DN_WUxmH.js +0 -639
  695. package/dist/api-D_cLf5HR.js +0 -6
  696. package/dist/api-DhpRwVRC.js +0 -134
  697. package/dist/api-HHeiUqKx.js +0 -2
  698. package/dist/apply-CBc3t-6b.js +0 -41
  699. package/dist/apply-DP2LNAI1.js +0 -54
  700. package/dist/approval-handler.runtime-D3dVfQpz.js +0 -130
  701. package/dist/assistant-CJUhCzx1.js +0 -291
  702. package/dist/attachment-normalize-B7BuPwh0.js +0 -225
  703. package/dist/attempt-execution-C_zoopZx.js +0 -558
  704. package/dist/attempt-execution.runtime-BORPE4U7.js +0 -3
  705. package/dist/attempt-execution.shared-CVs8nY8C.js +0 -38
  706. package/dist/attempt.prompt-helpers-hRgWdd1i.js +0 -475
  707. package/dist/attempt.tool-run-context-kTuNRgCl.js +0 -2094
  708. package/dist/binding-routing-DODVC3IC.js +0 -113
  709. package/dist/binding-targets-AB_RKGdU.js +0 -121
  710. package/dist/bot-CSLsTmf1.js +0 -7894
  711. package/dist/bot-deps-DynTqfAM.js +0 -2
  712. package/dist/bot-deps-W46ftf2D.js +0 -747
  713. package/dist/bot-message-context.runtime-CYqi6a9-.js +0 -7
  714. package/dist/bot-message-context.session.runtime-zGfXe8D8.js +0 -12
  715. package/dist/bot-native-commands.delivery.runtime-Cl0_uLC6.js +0 -4
  716. package/dist/bot-native-commands.runtime-yy3akJPm.js +0 -13
  717. package/dist/bridge-server-B6ImaGh0.js +0 -113
  718. package/dist/browser-cli-CPNZpueD.js +0 -230
  719. package/dist/browser-cli-CntDlufK.js +0 -2
  720. package/dist/browser-cli-actions-input-DiJDRQCl.js +0 -473
  721. package/dist/browser-cli-actions-observe-9KtuDERW.js +0 -81
  722. package/dist/browser-cli-debug-lSi6c_Ol.js +0 -137
  723. package/dist/browser-cli-inspect-B5KmooQv.js +0 -104
  724. package/dist/browser-cli-manage-ClQjPfwK.js +0 -443
  725. package/dist/browser-cli-resize-DDY2Vnxq.js +0 -26
  726. package/dist/browser-cli-shared-KEAus8qW.js +0 -50
  727. package/dist/browser-cli-state-cmFcL-Ov.js +0 -337
  728. package/dist/browser-control-auth-B9USDwU2.js +0 -2
  729. package/dist/browser-profiles-wUaKqWjT.js +0 -2
  730. package/dist/browser-runtime-BMjauwo0.js +0 -384
  731. package/dist/build-Dpe0nJg9.js +0 -257
  732. package/dist/capability-cli-APHxOZ1-.js +0 -1782
  733. package/dist/channel--E_8Ztf3.js +0 -238
  734. package/dist/channel-3EQVZa8n.js +0 -2126
  735. package/dist/channel-B78AzY4z.d.ts +0 -6
  736. package/dist/channel-BWohDmFY.js +0 -1777
  737. package/dist/channel-BfuypvUg.js +0 -562
  738. package/dist/channel-C-xJIqXb.js +0 -508
  739. package/dist/channel-C9ZiWsaI.js +0 -1496
  740. package/dist/channel-CWrkQgCl.js +0 -376
  741. package/dist/channel-CeYYSdzG.js +0 -740
  742. package/dist/channel-ClyBSyAK.js +0 -481
  743. package/dist/channel-Czs81UUj.d.ts +0 -427
  744. package/dist/channel-DG1b4zfh.js +0 -1134
  745. package/dist/channel-DW54rSJn.js +0 -1249
  746. package/dist/channel-DxjDXDxn.js +0 -867
  747. package/dist/channel-FomvCEVN.js +0 -955
  748. package/dist/channel-GKsXwHeD.js +0 -808
  749. package/dist/channel-WXdZaj61.js +0 -653
  750. package/dist/channel-actions.runtime-NGRDvF7V.js +0 -265
  751. package/dist/channel-core-DtMwDjjI.js +0 -5
  752. package/dist/channel-e8DrnKQ4.js +0 -1556
  753. package/dist/channel-inbound-DHAnp9B7.js +0 -80
  754. package/dist/channel-lifecycle-C4NrMjdz.d.ts +0 -125
  755. package/dist/channel-nELBI87_.js +0 -362
  756. package/dist/channel-pairing-ndZVB-VX.d.ts +0 -58
  757. package/dist/channel-plugin-runtime-Djo2BcWh.js +0 -998
  758. package/dist/channel-runtime-CAlo3fCO.js +0 -408
  759. package/dist/channel.runtime-B3Ul1RFH.js +0 -4
  760. package/dist/channel.runtime-B9St3ZA6.js +0 -2528
  761. package/dist/channel.runtime-BJQkhPRD.js +0 -109
  762. package/dist/channel.runtime-CK75RXGn.js +0 -652
  763. package/dist/channel.runtime-CToTSl-o.js +0 -254
  764. package/dist/channel.runtime-CmCC2X3-.js +0 -1008
  765. package/dist/channel.runtime-D9aRtIhc.js +0 -733
  766. package/dist/channel.runtime-awjkyecJ.js +0 -88
  767. package/dist/channel.runtime-j5gDw94U.js +0 -21009
  768. package/dist/channel.setup--MA2uXGh.js +0 -1098
  769. package/dist/channel.setup-CoJW0xXI.js +0 -343
  770. package/dist/channel.setup-Du2MwoWF.js +0 -10
  771. package/dist/chat-_rJvHV8g.js +0 -2666
  772. package/dist/chrome-Du8Sd8UD.js +0 -1503
  773. package/dist/cli-DmfcqkxN.js +0 -1341
  774. package/dist/cli-compaction-6W-_Qcqh.js +0 -347
  775. package/dist/cli-metadata-B4zGtsS4.js +0 -22
  776. package/dist/cli-runner-C2sL9k3L.js +0 -2
  777. package/dist/cli-runner-DppcV2AG.js +0 -540
  778. package/dist/cli-runner.runtime-CQLSyTQY.js +0 -4
  779. package/dist/cli-runner.runtime-CbEAn48-.js +0 -3
  780. package/dist/client-Dk9ROpNW.js +0 -650
  781. package/dist/client-adapter-ClI0hCmb.js +0 -897
  782. package/dist/client-factory-CaCu9BQF.js +0 -9
  783. package/dist/command-auth-6q0HyTu9.js +0 -135
  784. package/dist/command-handlers-DMAACmGz.js +0 -1609
  785. package/dist/command-registry-CfpDWtfY.js +0 -9
  786. package/dist/command-registry-Dnxqw0fv.js +0 -4
  787. package/dist/command-registry-core-D11J7oB_.js +0 -110
  788. package/dist/command-status.runtime-DrsPaVZw.js +0 -90
  789. package/dist/commands-acp-B4PDb6rs.js +0 -74
  790. package/dist/commands-compact.runtime-BmK2PNTw.js +0 -10
  791. package/dist/commands-handlers.runtime-C5hpRwAL.js +0 -6154
  792. package/dist/commands-status-CiZyKzzI.js +0 -3
  793. package/dist/commands-status-CzSWpd6s.js +0 -16
  794. package/dist/commands-status.runtime-CiZyKzzI.js +0 -3
  795. package/dist/commands-subagents-control.runtime-qc9m5MmZ.js +0 -3
  796. package/dist/commands-subagents-control.runtime-tWG0OlZd.js +0 -2
  797. package/dist/commands-system-prompt-6Q-vf5jq.js +0 -162
  798. package/dist/commands-system-prompt-FecWmCWC.js +0 -2
  799. package/dist/commands.runtime-DEt9uWfr.js +0 -176
  800. package/dist/compact-CgCjnQEP.js +0 -480
  801. package/dist/compact-D6t2ld0f.js +0 -1141
  802. package/dist/compact.runtime-CtoOHiEB.js +0 -12
  803. package/dist/completion-cli-CAHVBBDJ.js +0 -315
  804. package/dist/components-D9TlXmrM.d.ts +0 -228
  805. package/dist/components.modal-F1ooc12a.d.ts +0 -568
  806. package/dist/computer-use-CdIz1WHr.js +0 -367
  807. package/dist/config-CFxlEsAY.js +0 -373
  808. package/dist/config-mutations-6ioXU8Qg.js +0 -159
  809. package/dist/config-wUaKqWjT.js +0 -2
  810. package/dist/context-engine-host-compat-CFAOug91.js +0 -288
  811. package/dist/context-engine-host-compat-Cqe9ZyUZ.js +0 -2
  812. package/dist/context-engine-lifecycle-BjQwDRNw.js +0 -1274
  813. package/dist/control-auth-Du_jaEQB.js +0 -114
  814. package/dist/control-service-DIBBeoM_.js +0 -145
  815. package/dist/control-ui/assets/agents-BzOECW97.js +0 -1008
  816. package/dist/control-ui/assets/channel-config-extras-C-cqqjn3.js +0 -2
  817. package/dist/control-ui/assets/channels-B2c1DoAf.js +0 -367
  818. package/dist/control-ui/assets/cron-Dikdppj_.js +0 -1013
  819. package/dist/control-ui/assets/debug-BTcka11D.js +0 -97
  820. package/dist/control-ui/assets/index-BifhGgI4.js +0 -7378
  821. package/dist/control-ui/assets/index-Cc-YFhIX.css +0 -1
  822. package/dist/control-ui/assets/instances-DnlcwLSs.js +0 -57
  823. package/dist/control-ui/assets/logs-CUGJL7Ia.js +0 -74
  824. package/dist/control-ui/assets/nodes-DuwS3hRY.js +0 -436
  825. package/dist/control-ui/assets/sessions-DtiOFwOv.js +0 -399
  826. package/dist/control-ui/assets/skills-shared-Y3plxrx2.js +0 -11
  827. package/dist/control-ui/assets/skills-yR0YXQld.js +0 -314
  828. package/dist/control-ui/assets/zh-CN-pJJdaNGr.js +0 -2
  829. package/dist/conversation-binding-runtime-BnDFNjpw.js +0 -4
  830. package/dist/conversation-runtime-DXfeo_YZ.js +0 -31
  831. package/dist/core-CwGP8lnn.js +0 -282
  832. package/dist/core-api-B3hgaGPY.js +0 -5
  833. package/dist/core-api-DhVgU6Pw.js +0 -2
  834. package/dist/crestodian-BQF8KHgB.js +0 -55
  835. package/dist/daocore-tools-DwFKEwEz.js +0 -11727
  836. package/dist/delivery-LkV1NN8a.js +0 -1002
  837. package/dist/dialogue-BIB1NqtA.js +0 -37
  838. package/dist/dir-fetch-tool-DyG20xlt.js +0 -565
  839. package/dist/dir-list-tool-BntISSEL.js +0 -100
  840. package/dist/direct-dm-Dfgmj_Rk.js +0 -64
  841. package/dist/directive-handling.fast-lane-CPtDyKdP.js +0 -68
  842. package/dist/directive-handling.impl-CuhOq-BS.js +0 -2
  843. package/dist/directive-handling.impl-SAvKobjF.js +0 -818
  844. package/dist/directive-handling.model-selection-3dnu2j_t.js +0 -122
  845. package/dist/directive-handling.persist.runtime-y8pN8w-i.js +0 -263
  846. package/dist/dispatch-C_JMxM3D.js +0 -1640
  847. package/dist/dispatch-acp-transcript.runtime-BA4jA5DL.js +0 -40
  848. package/dist/dispatch-acp.runtime-BhpXHUuZ.js +0 -18
  849. package/dist/doctor-CRMnQl-o.js +0 -6
  850. package/dist/doctor-DD_iqydP.js +0 -2
  851. package/dist/doctor-config-flow-BXKaaiSk.js +0 -1741
  852. package/dist/doctor-core-checks-CSYsZXuS.js +0 -573
  853. package/dist/doctor-core-checks-xGSa7eSt.js +0 -2
  854. package/dist/doctor-health-contributions-DVLNXMsN.js +0 -696
  855. package/dist/doctor-health-wIbh8NF6.js +0 -65
  856. package/dist/doctor-lint-Hq2tNUox.js +0 -94
  857. package/dist/doctor-state-integrity-CQQ1oMeP.js +0 -1231
  858. package/dist/dynamic-tools-B3DtJJJn.js +0 -486
  859. package/dist/embedded-backend-Cz0ZebJI.js +0 -579
  860. package/dist/embedded-gateway-stub.runtime-CIk1aOal.js +0 -12
  861. package/dist/exec-approvals-DqJA2OTf.js +0 -149
  862. package/dist/file-fetch-tool-BM0auSop.js +0 -124
  863. package/dist/file-write-tool-CshXwc98.js +0 -127
  864. package/dist/format-BrPefrQt.js +0 -1145
  865. package/dist/gateway-cli-UkR6BmcI.js +0 -435
  866. package/dist/gateway-method-runtime-ucwF-DHM.js +0 -21
  867. package/dist/get-reply-BJ1QFEY8.js +0 -4689
  868. package/dist/get-reply-from-config.runtime-Rm8cMH3e.js +0 -2
  869. package/dist/graph-users-D2gOcc5D.js +0 -1419
  870. package/dist/group-access-BkQ2ldY4.js +0 -112
  871. package/dist/group-keys-z9CWcRVA.d.ts +0 -17
  872. package/dist/handle-action.guild-admin-aiua5pA-.js +0 -288
  873. package/dist/harness-BT2riWLr.js +0 -61
  874. package/dist/health-CnVZ4T6j.js +0 -4
  875. package/dist/heartbeat-runner-Cjg3EgS1.js +0 -5
  876. package/dist/heartbeat-runner.runtime-CoC3qR61.js +0 -4
  877. package/dist/hook-runtime-Cms52qXe.d.ts +0 -107
  878. package/dist/hooks-DlRvRnbJ.js +0 -534
  879. package/dist/inbound-direct-dm-runtime-BzQSanFy.js +0 -2
  880. package/dist/inbound-reply-dispatch-CDI1clh-.js +0 -148
  881. package/dist/init-pnw2iggs.js +0 -59
  882. package/dist/inline-buttons-Bh_p4ehq.js +0 -40
  883. package/dist/internal-events-u0Ov8uLt.js +0 -90
  884. package/dist/isolated-agent-By1ca-36.js +0 -2
  885. package/dist/isolated-agent-Zz-RQA7J.js +0 -1118
  886. package/dist/lifecycle-R9-dS5vo.js +0 -571
  887. package/dist/list.probe-CZLSVJOU.js +0 -449
  888. package/dist/list.status-command-BfFEfb9a.js +0 -789
  889. package/dist/llm-slug-generator-dCtCznm8.js +0 -78
  890. package/dist/local-dispatch.runtime-D9LP1xHX.js +0 -9
  891. package/dist/manager-CuzV3XAs.d.ts +0 -205
  892. package/dist/manager.runtime-6QpcwMf8.js +0 -2714
  893. package/dist/markdown-to-line-zbqRGuzM.js +0 -811
  894. package/dist/mcp-http-8c8x2bw2.js +0 -555
  895. package/dist/mcp-http-_a6CgNfk.js +0 -2
  896. package/dist/media-understanding-provider-CXP_WVXG.js +0 -339
  897. package/dist/message-actions-SByKheul.js +0 -145
  898. package/dist/message-handler-CKCY2qPA.js +0 -384
  899. package/dist/message-handler-StORmhkH.js +0 -1715
  900. package/dist/message-handler.preflight-BBcy1Vmz.js +0 -1125
  901. package/dist/message-handler.process-DC3NGb_U.js +0 -1484
  902. package/dist/model-qHmcK-wV.js +0 -74
  903. package/dist/model-selection-C_bNk70D.js +0 -272
  904. package/dist/models-0m6kj9Kh.js +0 -104
  905. package/dist/models-P3tVodj6.js +0 -2
  906. package/dist/models-cli-C_jhGL9M.js +0 -256
  907. package/dist/monitor-BK8o2fuJ.js +0 -2788
  908. package/dist/monitor-Bi5Al5Qq.js +0 -1657
  909. package/dist/monitor-CG3e3DTn.js +0 -4377
  910. package/dist/monitor-Cfa9dKXg.js +0 -1370
  911. package/dist/monitor-D3o4Su4a.js +0 -834
  912. package/dist/monitor-D5fMTlZ5.js +0 -60
  913. package/dist/monitor-DmPTU0tw.js +0 -715
  914. package/dist/monitor-DzgPE9f5.js +0 -2
  915. package/dist/monitor-auth-CVtN6J4_.js +0 -179
  916. package/dist/monitor-polling.runtime-Cg2e0kqq.js +0 -883
  917. package/dist/monitor-webhook.runtime-Dj1HmLMX.js +0 -387
  918. package/dist/monitor.account-BQImY6W4.js +0 -5233
  919. package/dist/monitor.runtime-CDK8uUpm.js +0 -2
  920. package/dist/monitor.webhook-DyEHhPJ1.js +0 -180
  921. package/dist/node-cli-sessions-Bv5PguQJ.js +0 -1228
  922. package/dist/openai-http-CIBLqlWd.js +0 -824
  923. package/dist/openresponses-http-DjoX4IHF.js +0 -1173
  924. package/dist/operations-DP1MZD9K.js +0 -805
  925. package/dist/outbound-adapter-BAwVSQlL.js +0 -543
  926. package/dist/outbound-session-route-DtqxN5uz.js +0 -45
  927. package/dist/outbound.runtime-DHPJ4ASv.js +0 -2
  928. package/dist/pairing-challenge-EwSQYSud.d.ts +0 -87
  929. package/dist/pi-embedded-BAC7pDy3.js +0 -4
  930. package/dist/pi-embedded-CNX1q8t8.js +0 -3796
  931. package/dist/pi-embedded.runtime-SbuDxtwm.js +0 -4
  932. package/dist/pi-tools-CnpfHiC0.js +0 -2413
  933. package/dist/plan-BNvONvjS.js +0 -81
  934. package/dist/plan-CADq4BFI.js +0 -112
  935. package/dist/plugin-D7gXSmDQ.js +0 -12396
  936. package/dist/plugin-app-cache-key-DrmlMiVI.js +0 -46
  937. package/dist/plugin-enabled-BoIsHSBf.js +0 -233
  938. package/dist/plugin-registration-yt9E-tcz.js +0 -88
  939. package/dist/plugin-sdk/scripts/lib/plugin-sdk-doc-metadata.d.ts +0 -107
  940. package/dist/plugin-service-BV0GV7gk.js +0 -1229
  941. package/dist/policy-D11pkH-F.js +0 -680
  942. package/dist/policy-DRVErS8F.js +0 -138
  943. package/dist/prepare.runtime-D5popyud.js +0 -732
  944. package/dist/preview-warnings-CdcHFLjy.js +0 -392
  945. package/dist/probe-BR_XxREj.js +0 -682
  946. package/dist/probe-CSkuj1Ki.js +0 -47
  947. package/dist/probe-DZHxSUyh.js +0 -2204
  948. package/dist/probe-DvUH7S2e.js +0 -2
  949. package/dist/program-Dp1JSnyB.js +0 -131
  950. package/dist/provider-4N9pa4vk.js +0 -32
  951. package/dist/provider-B6N1_oRM.js +0 -8735
  952. package/dist/provider-_W55dN19.js +0 -152
  953. package/dist/provider-dispatcher-BY0BKM51.js +0 -22
  954. package/dist/provider-session.runtime-CIMHFVsw.js +0 -9
  955. package/dist/provider-yjwJ7cEv.js +0 -32
  956. package/dist/provider.runtime-BXgHyxdL.js +0 -2
  957. package/dist/public-surface-loader-BtZpLAiq.js +0 -114
  958. package/dist/pw-ai-C8gW7XAX.js +0 -3029
  959. package/dist/pw-role-snapshot-DUCYIx3v.js +0 -333
  960. package/dist/reaction-level-D9FhYPnf.js +0 -19
  961. package/dist/reaction-runtime-api-C3r-xTtB.js +0 -116
  962. package/dist/realtime-transcription-provider-Ibc5MlDn.js +0 -205
  963. package/dist/register-C8HRj-Rv.js +0 -2178
  964. package/dist/register.agent-DRcH0h2g.js +0 -156
  965. package/dist/register.crestodian-Cc0_1XnJ.js +0 -24
  966. package/dist/register.maintenance-hDD-888W.js +0 -83
  967. package/dist/register.runtime-3KCk-rHT.js +0 -54
  968. package/dist/register.subclis-CrUZyRN9.js +0 -31
  969. package/dist/register.subclis-DGaNfEn8.js +0 -3
  970. package/dist/register.subclis-core-B5LkL2i6.js +0 -273
  971. package/dist/repair-sequencing-DSOttY24.js +0 -640
  972. package/dist/reply-delivery-CjS0vGdN.js +0 -196
  973. package/dist/reply-runtime-CEB3h2ID.js +0 -11
  974. package/dist/reply.runtime-Rm8cMH3e.js +0 -2
  975. package/dist/request-hp0T5HDv.js +0 -54
  976. package/dist/resolve-allowlist-BN__FO0F.js +0 -220
  977. package/dist/result-fallback-classifier-CfKrq2-s.js +0 -79
  978. package/dist/route-B2z32D9-.js +0 -469
  979. package/dist/route-resolution-B25jgDh8.js +0 -274
  980. package/dist/routes-CM95LS3k.js +0 -3602
  981. package/dist/routes-CUOimkJP.js +0 -2
  982. package/dist/run-CCrse9cU.js +0 -1162
  983. package/dist/run-attempt-Bp3H4oIM.js +0 -7704
  984. package/dist/run-command-9aTCc0HJ.js +0 -23
  985. package/dist/run-command-BuJ1fk8M.js +0 -2
  986. package/dist/run-embedded.runtime-CTprMJ8Z.js +0 -4
  987. package/dist/run-execution-cli.runtime-B05Oa61H.js +0 -4
  988. package/dist/run-subagent-registry.runtime-CJ0Hs8Pw.js +0 -2
  989. package/dist/runtime-C3k-ZByi.d.ts +0 -17
  990. package/dist/runtime-CKKZ8Pcs.js +0 -438
  991. package/dist/runtime-Cdi7BCo3.js +0 -6179
  992. package/dist/runtime-D3XaGRT8.js +0 -1287
  993. package/dist/runtime-api-1yqMVS2P.js +0 -17
  994. package/dist/runtime-api-B2sZsZh8.js +0 -4
  995. package/dist/runtime-api-BgQT9LMm.js +0 -21
  996. package/dist/runtime-api-CsbGUmvA.js +0 -3
  997. package/dist/runtime-api-DpTi-PJ3.js +0 -24
  998. package/dist/runtime-api-Dsp6Q8-12.d.ts +0 -3151
  999. package/dist/runtime-api-c9O4luRc.js +0 -13
  1000. package/dist/runtime-api-iiw2xe0i.js +0 -13
  1001. package/dist/runtime-api.actions-BVrajshb.js +0 -3
  1002. package/dist/runtime-api.actions-CzDO06T7.d.ts +0 -23
  1003. package/dist/runtime-api.monitor-BP7gIISf.d.ts +0 -3757
  1004. package/dist/runtime-api.monitor-BShOXy33.js +0 -6
  1005. package/dist/runtime-api.send-BTuGzQtf.js +0 -4
  1006. package/dist/runtime-api.send-C_MjuzGA.d.ts +0 -38
  1007. package/dist/runtime-api.threads-3cF-9XFp.js +0 -2
  1008. package/dist/runtime-channel-CwZHOoMT.js +0 -2
  1009. package/dist/runtime-channel-fHBJLcYG.js +0 -150
  1010. package/dist/runtime-doctor-_yVIDUi3.d.ts +0 -48
  1011. package/dist/runtime-embedded-pi.runtime-Cgc2MHEr.js +0 -2
  1012. package/dist/sanitize-outbound-DTdYOSuN.js +0 -127
  1013. package/dist/sdk-setup-tools-DsgXMSJF.js +0 -8
  1014. package/dist/secrets-xq1GA7Xo.js +0 -113
  1015. package/dist/security-audit-Du_2AwxR.js +0 -122
  1016. package/dist/security-audit-i1ehCFCk.js +0 -118
  1017. package/dist/security-audit.runtime-nBiU375z.js +0 -2
  1018. package/dist/selection-CZeNX1pE.js +0 -3
  1019. package/dist/selection-DTrJ8MmR.js +0 -16157
  1020. package/dist/send-79TPg_6c.js +0 -2
  1021. package/dist/send-91PqXvSN.js +0 -192
  1022. package/dist/send-C2reDA-B.js +0 -143
  1023. package/dist/send-CTDEXMPp.d.ts +0 -231
  1024. package/dist/send-DaFuA5cD.d.ts +0 -105
  1025. package/dist/send-JRMzkOJi.js +0 -1631
  1026. package/dist/send.components-Dv_9V1n4.js +0 -500
  1027. package/dist/send.components-MeAhqv9J.js +0 -2
  1028. package/dist/send.runtime-BXAcNcFW.js +0 -2
  1029. package/dist/send.types-DU1uiiR9.d.ts +0 -160
  1030. package/dist/server-CFMwy7OB.js +0 -24
  1031. package/dist/server-context-Dqwl703G.js +0 -955
  1032. package/dist/server-context-wK29CPaJ.js +0 -2
  1033. package/dist/server-cron-B1DKKd9L.js +0 -2
  1034. package/dist/server-cron-i1RW7vPj.js +0 -2989
  1035. package/dist/server-jF0fwwqG.js +0 -73
  1036. package/dist/server-methods-CbFofeYw.js +0 -16499
  1037. package/dist/server-node-events-DL9C2Zgb.js +0 -596
  1038. package/dist/server-plugin-bootstrap-BpLRcl2N.js +0 -70
  1039. package/dist/server-plugins-Bw4luxP4.js +0 -432
  1040. package/dist/server-reload-handlers-Du2MmNNy.js +0 -714
  1041. package/dist/server-restart-sentinel-Bi93NfH5.js +0 -747
  1042. package/dist/server-restart-sentinel-CZQ5DtCS.js +0 -2
  1043. package/dist/server-runtime-services-6xIr0oF5.js +0 -267
  1044. package/dist/server-runtime-services-Bn_-QBG_.js +0 -2
  1045. package/dist/server-startup-plugins-D67Ykogy.js +0 -113
  1046. package/dist/server-startup-post-attach-DGj_JzsI.js +0 -716
  1047. package/dist/server-ws-runtime-DY6Aw13I.js +0 -349
  1048. package/dist/server.impl-6rbQJgzF.js +0 -2586
  1049. package/dist/service-BniJ-ml1.js +0 -1446
  1050. package/dist/session-binding-BCrf6P9-.js +0 -2
  1051. package/dist/session-binding-Dv-7cruS.js +0 -219
  1052. package/dist/session-kill-http-BJFrJrtN.js +0 -121
  1053. package/dist/session-reset-service-BbWtWMwD.js +0 -625
  1054. package/dist/session-route-DU5w8Y32.js +0 -93
  1055. package/dist/session-status.runtime-BlQpbVG5.js +0 -2
  1056. package/dist/session-subagent-reactivation.runtime-5Q01Ew9-.js +0 -2
  1057. package/dist/session-tab-registry-BuYe4OOF.js +0 -521
  1058. package/dist/sessions-history-http-DSsnYvkK.js +0 -430
  1059. package/dist/sessions.runtime-BmeoWYRz.js +0 -2
  1060. package/dist/setup-api-CKNdGNsP.js +0 -29
  1061. package/dist/setup-core-DP5EwSY0.js +0 -174
  1062. package/dist/setup-surface-BYCu55nE.js +0 -288
  1063. package/dist/setup-surface-B_2igLCv.js +0 -405
  1064. package/dist/setup-surface-BcnlyFJo.js +0 -221
  1065. package/dist/setup-surface-BuTeC8Tu.js +0 -320
  1066. package/dist/shared-RXlS1jcs.js +0 -121
  1067. package/dist/shared-client-C3MyzMO-.js +0 -2
  1068. package/dist/shared-client-ChFVc6qy.js +0 -629
  1069. package/dist/side-question-C7XXJ3WJ.js +0 -683
  1070. package/dist/skill-tool-dispatch.runtime-D-KdTx1M.js +0 -143
  1071. package/dist/slash-state-Bkj8dL5a.js +0 -2166
  1072. package/dist/speech-provider-BunrBrCI.js +0 -184
  1073. package/dist/src-CEgolSf5.js +0 -4256
  1074. package/dist/startup-context-JB4BWjRi.js +0 -313
  1075. package/dist/status-subagents.runtime-Bp7aARu7.js +0 -18
  1076. package/dist/status-text-DN8S2Q1J.js +0 -296
  1077. package/dist/sticker-cache-Be-oBI7L.js +0 -206
  1078. package/dist/sticker-vision.runtime-Ba4krDPo.js +0 -17
  1079. package/dist/subagent-announce-C7j9VsZa.js +0 -354
  1080. package/dist/subagent-announce-delivery-CB4UtEg2.js +0 -958
  1081. package/dist/subagent-control-C4koBB2g.js +0 -508
  1082. package/dist/subagent-hooks-C6RmP8Ul.js +0 -2
  1083. package/dist/subagent-hooks-CrDfx1bX.js +0 -146
  1084. package/dist/subagent-hooks-Dh-10ODX.js +0 -116
  1085. package/dist/subagent-hooks-DjGGmJOs.js +0 -2
  1086. package/dist/subagent-hooks-Djrkg_r_.js +0 -230
  1087. package/dist/subagent-hooks-XiGzfcD1.js +0 -2
  1088. package/dist/subagent-hooks-api-BAuY6yAp.js +0 -23
  1089. package/dist/subagent-hooks-api-X4Wq3-bg.js +0 -22
  1090. package/dist/subagent-hooks-api-uGaYQ3ls.js +0 -23
  1091. package/dist/subagent-orphan-recovery-CiT4T6EK.js +0 -352
  1092. package/dist/subagent-registry-CJUOLPWx.js +0 -3
  1093. package/dist/subagent-registry-DkLEo8Gw.js +0 -2351
  1094. package/dist/subagent-session-cleanup-BXd7lwdo.js +0 -525
  1095. package/dist/subagent-spawn-C0nFUSkA.js +0 -1164
  1096. package/dist/target-id-C-_5ZyaM.js +0 -107
  1097. package/dist/targets-C6aOnm7M.js +0 -19
  1098. package/dist/targets-CeAvrPZY.js +0 -19
  1099. package/dist/targets-CiQWn-48.js +0 -44
  1100. package/dist/test-fixtures-HY6a4nTW.d.ts +0 -26
  1101. package/dist/testing-dGXqtqph.js +0 -267
  1102. package/dist/thread-bindings-2it1TXRk.js +0 -228
  1103. package/dist/thread-bindings-BVsdSE6x.js +0 -232
  1104. package/dist/thread-bindings-CxRt4oO6.js +0 -571
  1105. package/dist/thread-bindings-Duucj0p6.js +0 -8
  1106. package/dist/thread-bindings.discord-api-5DrSBok8.js +0 -187
  1107. package/dist/thread-bindings.manager-8Evv-rZ-.js +0 -2
  1108. package/dist/thread-bindings.manager-Dqs05Cqt.js +0 -536
  1109. package/dist/thread-lifecycle-a9ORG_Qn.js +0 -1614
  1110. package/dist/token-Cd4ZyEet.js +0 -134
  1111. package/dist/tool-X8pfYjSy.js +0 -139
  1112. package/dist/tool-actions.runtime-Be5Jzai5.js +0 -534
  1113. package/dist/tool-resolution-BsitImc6.js +0 -149
  1114. package/dist/tools-effective-inventory-BZrHm8Fz.js +0 -204
  1115. package/dist/tools-invoke-http-ShL1W_9J.js +0 -67
  1116. package/dist/tools-invoke-shared-DeHgr_VB.js +0 -200
  1117. package/dist/tts-Ayx5XgJd.js +0 -66
  1118. package/dist/tui-BMb_k0zQ.js +0 -2
  1119. package/dist/tui-Cok5WLhQ.js +0 -4709
  1120. package/dist/tui-backend-ByoQP-cW.js +0 -256
  1121. package/dist/tui-cli-CUq3hRch.js +0 -37
  1122. package/dist/typed-cases-BYRVKA1F.d.ts +0 -68
  1123. package/dist/update-cli-CEgVV8KX.js +0 -3664
  1124. package/dist/vision-tools-l3OhetFy.js +0 -1409
  1125. package/dist/web-search-cDMQBezP.js +0 -62
  1126. package/dist/web-search-provider.runtime-Ckon24db.js +0 -2
  1127. package/dist/web-search-provider.runtime-bfpMar6S.js +0 -328
  1128. package/dist/webhook-targets-DqetRJVn.d.ts +0 -99
  1129. package/dist/xai-oauth-DI_oDf1M.js +0 -479
  1130. package/dist/xai-user-agent-C3kBfnkY.js +0 -32
  1131. /package/dist/{accounts-5C9AWgJV2.d.ts → accounts-5C9AWgJV.d.ts} +0 -0
  1132. /package/dist/{acp-runtime-backend-BZ5O5ObX.js → acp-runtime-backend-BetObVpx.js} +0 -0
  1133. /package/dist/{channel-actions-CgtkgM0g.js → channel-actions-DckqlhU7.js} +0 -0
  1134. /package/dist/{command-status-runtime-CP5giZCt.js → command-status-runtime-E16rrPc3.js} +0 -0
  1135. /package/dist/{delegate-BqgaH2oz.js → delegate-BSLYNrsG.js} +0 -0
  1136. /package/dist/{dispatch-acp-BZWxbCpX.js → dispatch-acp-D4tmhg9Q.js} +0 -0
  1137. /package/dist/{heartbeat-runner-Ci-DNWRz.js → heartbeat-runner-DVT5MIY3.js} +0 -0
  1138. /package/dist/{library-Be_uMwZR.js → library-DxK3LF7B.js} +0 -0
  1139. /package/dist/{run-executor.runtime-CMc4ImJr.js → run-executor.runtime-6pORvlOZ.js} +0 -0
  1140. /package/dist/{shared-RstjPNr2.js → shared-KCy8RvKa.js} +0 -0
@@ -0,0 +1,1409 @@
1
+ import { i as emitTrustedDiagnosticEvent } from "./diagnostic-events-DPfGiEBK.js";
2
+ import { _ as buildAgentHookContextChannelFields } from "./attempt.prompt-helpers--NxxT8xy.js";
3
+ import { u as runBeforeToolCallHook } from "./pi-tools.before-tool-call-Bg83EfDo.js";
4
+ import { t as callGatewayTool } from "./gateway-D3dk8G-T.js";
5
+ import { t as log } from "./logger-DYJ7BvAc.js";
6
+ import { t as formatApprovalDisplayPath } from "./approval-display-paths-BqRczx-P.js";
7
+ import "./agent-harness-runtime-Bt2xTt2z.js";
8
+ import { n as hasNativeHookRelayInvocation, r as invokeNativeHookRelay } from "./native-hook-relay-BpBAk9JY.js";
9
+ import { t as isJsonObject } from "./protocol-oeJQu4rs.js";
10
+ import { s as formatCodexDisplayText } from "./notification-correlation-qKY_sgga.js";
11
+ import { createHash } from "node:crypto";
12
+ //#region extensions/codex/src/app-server/plugin-approval-roundtrip.ts
13
+ const DEFAULT_CODEX_APPROVAL_TIMEOUT_MS = 12e4;
14
+ const MAX_PLUGIN_APPROVAL_TITLE_LENGTH = 80;
15
+ const MAX_PLUGIN_APPROVAL_DESCRIPTION_LENGTH = 256;
16
+ async function requestPluginApproval(params) {
17
+ const timeoutMs = DEFAULT_CODEX_APPROVAL_TIMEOUT_MS;
18
+ return callGatewayTool("plugin.approval.request", { timeoutMs: 13e4 }, {
19
+ pluginId: "daocore-codex-app-server",
20
+ title: truncateForGateway(params.title, MAX_PLUGIN_APPROVAL_TITLE_LENGTH),
21
+ description: truncateForGateway(params.description, MAX_PLUGIN_APPROVAL_DESCRIPTION_LENGTH),
22
+ severity: params.severity,
23
+ toolName: params.toolName,
24
+ toolCallId: params.toolCallId,
25
+ agentId: params.paramsForRun.agentId,
26
+ sessionKey: params.paramsForRun.sessionKey,
27
+ turnSourceChannel: params.paramsForRun.messageChannel ?? params.paramsForRun.messageProvider,
28
+ turnSourceTo: params.paramsForRun.currentChannelId,
29
+ turnSourceAccountId: params.paramsForRun.agentAccountId,
30
+ turnSourceThreadId: params.paramsForRun.currentThreadTs,
31
+ timeoutMs,
32
+ twoPhase: true
33
+ }, { expectFinal: false });
34
+ }
35
+ function approvalRequestExplicitlyUnavailable(result) {
36
+ if (result === null || result === void 0 || typeof result !== "object") return false;
37
+ let descriptor;
38
+ try {
39
+ descriptor = Object.getOwnPropertyDescriptor(result, "decision");
40
+ } catch {
41
+ return false;
42
+ }
43
+ return descriptor !== void 0 && "value" in descriptor && descriptor.value === null;
44
+ }
45
+ async function waitForPluginApprovalDecision(params) {
46
+ const waitPromise = callGatewayTool("plugin.approval.waitDecision", { timeoutMs: 13e4 }, { id: params.approvalId });
47
+ if (!params.signal) return (await waitPromise)?.decision;
48
+ let onAbort;
49
+ const abortPromise = new Promise((_, reject) => {
50
+ if (params.signal.aborted) {
51
+ reject(params.signal.reason);
52
+ return;
53
+ }
54
+ onAbort = () => reject(params.signal.reason);
55
+ params.signal.addEventListener("abort", onAbort, { once: true });
56
+ });
57
+ try {
58
+ return (await Promise.race([waitPromise, abortPromise]))?.decision;
59
+ } finally {
60
+ if (onAbort) params.signal.removeEventListener("abort", onAbort);
61
+ }
62
+ }
63
+ function mapExecDecisionToOutcome(decision) {
64
+ if (decision === "allow-once") return "approved-once";
65
+ if (decision === "allow-always") return "approved-session";
66
+ if (decision === null || decision === void 0) return "unavailable";
67
+ return "denied";
68
+ }
69
+ function truncateForGateway(value, maxLength) {
70
+ return value.length <= maxLength ? value : `${value.slice(0, Math.max(0, maxLength - 3))}...`;
71
+ }
72
+ //#endregion
73
+ //#region extensions/codex/src/app-server/approval-bridge.ts
74
+ const PERMISSION_DESCRIPTION_MAX_LENGTH = 700;
75
+ const PERMISSION_SAMPLE_LIMIT = 2;
76
+ const PERMISSION_VALUE_MAX_LENGTH = 48;
77
+ const COMMAND_PREVIEW_WITH_DETAILS_MAX_LENGTH = 80;
78
+ const APPROVAL_PREVIEW_SCAN_MAX_LENGTH = 4096;
79
+ const APPROVAL_PREVIEW_OMITTED = "[preview truncated or unsafe content omitted]";
80
+ const ANSI_OSC_SEQUENCE_RE$1 = new RegExp(String.raw`(?:\u001b]|\u009d)[^\u001b\u009c\u0007]*(?:\u0007|\u001b\\|\u009c)`, "g");
81
+ const ANSI_CONTROL_SEQUENCE_RE$1 = new RegExp(String.raw`(?:\u001b\[[0-?]*[ -/]*[@-~]|\u009b[0-?]*[ -/]*[@-~]|\u001b[@-Z\\-_])`, "g");
82
+ const CONTROL_CHARACTER_RE$1 = new RegExp(String.raw`[\u0000-\u001f\u007f-\u009f]+`, "g");
83
+ const INVISIBLE_FORMATTING_CONTROL_RE$1 = new RegExp(String.raw`[\u00ad\u034f\u061c\u200b-\u200f\u202a-\u202e\u2060-\u206f\ufeff\ufe00-\ufe0f\u{e0100}-\u{e01ef}]`, "gu");
84
+ const DANGLING_TERMINAL_SEQUENCE_SUFFIX_RE$1 = new RegExp(String.raw`(?:\u001b\][^\u001b\u009c\u0007]*|\u009d[^\u001b\u009c\u0007]*|\u001b\[[0-?]*[ -/]*|\u009b[0-?]*[ -/]*|\u001b)$`);
85
+ async function handleCodexAppServerApprovalRequest(params) {
86
+ const requestParams = isJsonObject(params.requestParams) ? params.requestParams : void 0;
87
+ if (!matchesCurrentTurn(requestParams, params.threadId, params.turnId)) return;
88
+ if (!isSupportedAppServerApprovalMethod(params.method)) return unsupportedApprovalResponse();
89
+ const context = buildApprovalContext({
90
+ method: params.method,
91
+ requestParams,
92
+ paramsForRun: params.paramsForRun
93
+ });
94
+ try {
95
+ const policyOutcome = await runDaoCoreToolPolicyForApprovalRequest({
96
+ method: params.method,
97
+ requestParams,
98
+ paramsForRun: params.paramsForRun,
99
+ context,
100
+ nativeHookRelay: params.nativeHookRelay,
101
+ signal: params.signal
102
+ });
103
+ if (policyOutcome?.outcome === "denied") {
104
+ emitApprovalEvent(params.paramsForRun, {
105
+ phase: "resolved",
106
+ kind: context.kind,
107
+ status: "denied",
108
+ title: context.title,
109
+ ...context.eventDetails,
110
+ ...approvalEventScope(params.method, "denied"),
111
+ message: policyOutcome.reason
112
+ });
113
+ return buildApprovalResponse(params.method, context.requestParams, "denied");
114
+ }
115
+ const requestResult = await requestPluginApproval({
116
+ paramsForRun: params.paramsForRun,
117
+ title: context.title,
118
+ description: context.description,
119
+ severity: context.severity,
120
+ toolName: context.toolName,
121
+ toolCallId: context.itemId
122
+ });
123
+ const approvalId = requestResult?.id;
124
+ if (!approvalId) {
125
+ emitApprovalEvent(params.paramsForRun, {
126
+ phase: "resolved",
127
+ kind: context.kind,
128
+ status: "unavailable",
129
+ title: context.title,
130
+ ...context.eventDetails,
131
+ ...approvalEventScope(params.method, "denied"),
132
+ message: "Codex app-server approval route unavailable."
133
+ });
134
+ return buildApprovalResponse(params.method, context.requestParams, "denied");
135
+ }
136
+ emitApprovalEvent(params.paramsForRun, {
137
+ phase: "requested",
138
+ kind: context.kind,
139
+ status: "pending",
140
+ title: context.title,
141
+ approvalId,
142
+ approvalSlug: approvalId,
143
+ ...context.eventDetails,
144
+ message: "Codex app-server approval requested."
145
+ });
146
+ const outcome = mapExecDecisionToOutcome(approvalRequestExplicitlyUnavailable(requestResult) ? null : await waitForPluginApprovalDecision({
147
+ approvalId,
148
+ signal: params.signal
149
+ }));
150
+ emitApprovalEvent(params.paramsForRun, {
151
+ phase: "resolved",
152
+ kind: context.kind,
153
+ status: outcome === "denied" ? "denied" : outcome === "unavailable" ? "unavailable" : outcome === "cancelled" ? "failed" : "approved",
154
+ title: context.title,
155
+ approvalId,
156
+ approvalSlug: approvalId,
157
+ ...context.eventDetails,
158
+ ...approvalEventScope(params.method, outcome),
159
+ message: approvalResolutionMessage(outcome)
160
+ });
161
+ return buildApprovalResponse(params.method, context.requestParams, outcome);
162
+ } catch (error) {
163
+ const cancelled = params.signal?.aborted === true;
164
+ emitApprovalEvent(params.paramsForRun, {
165
+ phase: "resolved",
166
+ kind: context.kind,
167
+ status: cancelled ? "failed" : "unavailable",
168
+ title: context.title,
169
+ ...context.eventDetails,
170
+ ...approvalEventScope(params.method, cancelled ? "cancelled" : "denied"),
171
+ message: cancelled ? "Codex app-server approval cancelled because the run stopped." : `Codex app-server approval route failed: ${formatCodexDisplayText(formatErrorMessage(error))}`
172
+ });
173
+ return buildApprovalResponse(params.method, context.requestParams, cancelled ? "cancelled" : "denied");
174
+ }
175
+ }
176
+ function buildApprovalResponse(method, requestParams, outcome) {
177
+ if (method === "item/commandExecution/requestApproval") return { decision: commandApprovalDecision(requestParams, outcome) };
178
+ if (method === "item/fileChange/requestApproval") return { decision: fileChangeApprovalDecision(outcome) };
179
+ if (method === "item/permissions/requestApproval") {
180
+ if (outcome === "approved-session" || outcome === "approved-once") return {
181
+ permissions: requestedPermissions(requestParams),
182
+ scope: outcome === "approved-session" ? "session" : "turn"
183
+ };
184
+ return {
185
+ permissions: {},
186
+ scope: "turn"
187
+ };
188
+ }
189
+ return unsupportedApprovalResponse();
190
+ }
191
+ function matchesCurrentTurn(requestParams, threadId, turnId) {
192
+ if (!requestParams) return false;
193
+ const requestThreadId = readString$1(requestParams, "threadId") ?? readString$1(requestParams, "conversationId");
194
+ const requestTurnId = readString$1(requestParams, "turnId");
195
+ return requestThreadId === threadId && requestTurnId === turnId;
196
+ }
197
+ function buildApprovalContext(params) {
198
+ const itemId = readString$1(params.requestParams, "itemId") ?? readString$1(params.requestParams, "callId") ?? readString$1(params.requestParams, "approvalId");
199
+ const commandDetailLines = params.method === "item/commandExecution/requestApproval" ? describeCommandApprovalDetails(params.requestParams) : [];
200
+ const commandPreview = sanitizeApprovalPreview(readDisplayCommandPreview(params.requestParams), commandDetailLines.length > 0 ? COMMAND_PREVIEW_WITH_DETAILS_MAX_LENGTH : 180);
201
+ const reasonPreview = sanitizeApprovalPreview(readStringPreview(params.requestParams, "reason"), 180);
202
+ const command = commandPreview.text;
203
+ const reason = reasonPreview.text;
204
+ const kind = approvalKindForMethod(params.method);
205
+ const permissionLines = params.method === "item/permissions/requestApproval" ? describeRequestedPermissions(params.requestParams) : [];
206
+ const title = kind === "exec" ? "Codex app-server command approval" : params.method === "item/permissions/requestApproval" ? "Codex app-server permission approval" : kind === "plugin" ? "Codex app-server file approval" : "Codex app-server approval";
207
+ const subject = permissionLines[0] ?? (command ? `Command: ${formatApprovalPreviewSubject(command, commandPreview.omitted)}` : commandPreview.omitted ? `Command: ${APPROVAL_PREVIEW_OMITTED}` : reason ? `Reason: ${formatApprovalPreviewSubject(reason, reasonPreview.omitted)}` : reasonPreview.omitted ? `Reason: ${APPROVAL_PREVIEW_OMITTED}` : `Request method: ${params.method}`);
208
+ return {
209
+ kind,
210
+ title,
211
+ description: permissionLines.length > 0 ? joinDescriptionLinesWithinLimit(permissionLines, PERMISSION_DESCRIPTION_MAX_LENGTH) : [
212
+ subject,
213
+ ...commandDetailLines,
214
+ params.paramsForRun.sessionKey && `Session: ${params.paramsForRun.sessionKey}`
215
+ ].filter(Boolean).join("\n"),
216
+ severity: kind === "exec" ? "warning" : "info",
217
+ toolName: kind === "exec" ? "codex_command_approval" : params.method === "item/permissions/requestApproval" ? "codex_permission_approval" : "codex_file_approval",
218
+ itemId,
219
+ requestParams: params.requestParams,
220
+ eventDetails: {
221
+ ...itemId ? { itemId } : {},
222
+ ...command ? { command } : {},
223
+ ...commandPreview.omitted ? { commandPreviewOmitted: true } : {},
224
+ ...reason ? { reason } : {},
225
+ ...reasonPreview.omitted ? { reasonPreviewOmitted: true } : {}
226
+ }
227
+ };
228
+ }
229
+ async function runDaoCoreToolPolicyForApprovalRequest(params) {
230
+ const policyRequest = buildDaoCoreToolPolicyRequest(params.method, params.requestParams);
231
+ if (!policyRequest) return;
232
+ const cwd = readString$1(params.requestParams, "cwd") ?? params.paramsForRun.workspaceDir;
233
+ const nativeRelayOutcome = await runNativeRelayToolPolicyForApprovalRequest({
234
+ method: params.method,
235
+ requestParams: params.requestParams,
236
+ context: params.context,
237
+ policyRequest,
238
+ nativeHookRelay: params.nativeHookRelay,
239
+ cwd
240
+ });
241
+ if (nativeRelayOutcome?.blocked) return {
242
+ outcome: "denied",
243
+ reason: nativeRelayOutcome.reason
244
+ };
245
+ if (nativeRelayOutcome?.handled) return { outcome: "no-decision" };
246
+ const hookChannelId = buildAgentHookContextChannelFields({
247
+ sessionKey: params.paramsForRun.sessionKey,
248
+ messageChannel: params.paramsForRun.messageChannel,
249
+ messageProvider: params.paramsForRun.messageProvider,
250
+ currentChannelId: params.paramsForRun.currentChannelId,
251
+ messageTo: params.paramsForRun.messageTo
252
+ }).channelId;
253
+ const outcome = await runBeforeToolCallHook({
254
+ toolName: policyRequest.toolName,
255
+ params: policyRequest.params,
256
+ ...params.context.itemId ? { toolCallId: params.context.itemId } : {},
257
+ approvalMode: "report",
258
+ signal: params.signal,
259
+ ctx: {
260
+ ...params.paramsForRun.agentId ? { agentId: params.paramsForRun.agentId } : {},
261
+ ...params.paramsForRun.config ? { config: params.paramsForRun.config } : {},
262
+ ...cwd ? { cwd } : {},
263
+ ...params.paramsForRun.sessionKey ? { sessionKey: params.paramsForRun.sessionKey } : {},
264
+ ...params.paramsForRun.sessionId ? { sessionId: params.paramsForRun.sessionId } : {},
265
+ ...params.paramsForRun.runId ? { runId: params.paramsForRun.runId } : {},
266
+ ...hookChannelId ? { channelId: hookChannelId } : {}
267
+ }
268
+ });
269
+ if (outcome.blocked) return {
270
+ outcome: "denied",
271
+ reason: outcome.reason
272
+ };
273
+ if ("params" in outcome && toolPolicyParamsWereRewritten(policyRequest.params, outcome.params)) return {
274
+ outcome: "denied",
275
+ reason: "DaoCore tool policy rewrote Codex app-server approval params; refusing original request."
276
+ };
277
+ }
278
+ async function runNativeRelayToolPolicyForApprovalRequest(params) {
279
+ if (params.method !== "item/commandExecution/requestApproval" || !params.nativeHookRelay?.allowedEvents.includes("pre_tool_use")) return;
280
+ const payload = buildNativeRelayPreToolUsePayload({
281
+ requestParams: params.requestParams,
282
+ policyRequest: params.policyRequest,
283
+ context: params.context,
284
+ cwd: params.cwd
285
+ });
286
+ if (!payload) return;
287
+ if (hasNativeHookRelayInvocation({
288
+ relayId: params.nativeHookRelay.relayId,
289
+ event: "pre_tool_use",
290
+ toolUseId: params.context.itemId
291
+ })) return { handled: true };
292
+ try {
293
+ const decision = readNativeRelayPreToolUseDecision(await invokeNativeHookRelay({
294
+ provider: "codex",
295
+ relayId: params.nativeHookRelay.relayId,
296
+ event: "pre_tool_use",
297
+ rawPayload: payload
298
+ }));
299
+ if (decision.blocked) return {
300
+ handled: true,
301
+ blocked: true,
302
+ reason: decision.reason
303
+ };
304
+ return { handled: true };
305
+ } catch (error) {
306
+ return {
307
+ handled: true,
308
+ blocked: true,
309
+ reason: `DaoCore native hook relay unavailable for Codex app-server approval: ${formatCodexDisplayText(formatErrorMessage(error))}`
310
+ };
311
+ }
312
+ }
313
+ function buildNativeRelayPreToolUsePayload(params) {
314
+ const command = readString$1(params.policyRequest.params, "command");
315
+ if (!command) return;
316
+ const turnId = readString$1(params.requestParams, "turnId");
317
+ return {
318
+ hook_event_name: "PreToolUse",
319
+ daocore_approval_mode: "report",
320
+ tool_name: "exec_command",
321
+ ...params.context.itemId ? { tool_use_id: params.context.itemId } : {},
322
+ ...params.cwd ? { cwd: params.cwd } : {},
323
+ ...turnId ? { turn_id: turnId } : {},
324
+ tool_input: {
325
+ ...params.policyRequest.params,
326
+ command,
327
+ cmd: command
328
+ }
329
+ };
330
+ }
331
+ function readNativeRelayPreToolUseDecision(response) {
332
+ if (!response || response.exitCode !== 0) return {
333
+ blocked: true,
334
+ reason: sanitizeRelayDecisionReason(response?.stderr) || sanitizeRelayDecisionReason(response?.stdout) || "DaoCore native hook relay failed for Codex app-server approval."
335
+ };
336
+ const stdout = response.stdout?.trim();
337
+ if (!stdout) return { blocked: false };
338
+ const parsed = parseRelayJsonResponse(stdout);
339
+ const output = isJsonObject(parsed?.hookSpecificOutput) ? parsed.hookSpecificOutput : void 0;
340
+ if (output?.permissionDecision === "deny") return {
341
+ blocked: true,
342
+ reason: readString$1(output, "permissionDecisionReason") || "DaoCore native hook policy denied Codex app-server approval."
343
+ };
344
+ return {
345
+ blocked: true,
346
+ reason: output ? "DaoCore native hook relay returned a non-deny Codex app-server approval decision." : "DaoCore native hook relay returned an unreadable Codex app-server approval result."
347
+ };
348
+ }
349
+ function parseRelayJsonResponse(text) {
350
+ try {
351
+ const parsed = JSON.parse(text);
352
+ return isJsonObject(parsed) ? parsed : void 0;
353
+ } catch {
354
+ return;
355
+ }
356
+ }
357
+ function sanitizeRelayDecisionReason(value) {
358
+ return sanitizeApprovalPreview(value ? {
359
+ value,
360
+ clipped: false
361
+ } : void 0, 240).text;
362
+ }
363
+ function buildDaoCoreToolPolicyRequest(method, requestParams) {
364
+ if (method === "item/commandExecution/requestApproval") {
365
+ const command = readPolicyCommand(requestParams);
366
+ return {
367
+ toolName: "exec",
368
+ params: {
369
+ ...command ? { command } : {},
370
+ ...readString$1(requestParams, "cwd") ? { cwd: readString$1(requestParams, "cwd") } : {},
371
+ approval: requestParams ?? {}
372
+ }
373
+ };
374
+ }
375
+ if (method === "item/fileChange/requestApproval") return {
376
+ toolName: "apply_patch",
377
+ params: requestParams ?? {}
378
+ };
379
+ if (method === "item/permissions/requestApproval") return {
380
+ toolName: "codex_permission_approval",
381
+ params: requestParams ?? {}
382
+ };
383
+ }
384
+ function toolPolicyParamsWereRewritten(original, candidate) {
385
+ if (candidate === original) return false;
386
+ const originalText = stableJsonText(original);
387
+ const candidateText = stableJsonText(candidate);
388
+ return !candidateText || candidateText !== originalText;
389
+ }
390
+ function stableJsonText(value) {
391
+ if (value === null || typeof value === "string" || typeof value === "number" || typeof value === "boolean") return JSON.stringify(value);
392
+ if (Array.isArray(value)) {
393
+ const items = value.map((item) => stableJsonText(item));
394
+ return items.every((item) => item !== void 0) ? `[${items.join(",")}]` : void 0;
395
+ }
396
+ if (isPlainRecord(value)) {
397
+ const entries = Object.entries(value).toSorted(([left], [right]) => left.localeCompare(right)).map(([key, item]) => {
398
+ const text = stableJsonText(item);
399
+ return text === void 0 ? void 0 : `${JSON.stringify(key)}:${text}`;
400
+ });
401
+ return entries.every((entry) => entry !== void 0) ? `{${entries.join(",")}}` : void 0;
402
+ }
403
+ }
404
+ function isPlainRecord(value) {
405
+ return Boolean(value && typeof value === "object" && !Array.isArray(value));
406
+ }
407
+ function commandApprovalDecision(requestParams, outcome) {
408
+ if (outcome === "cancelled") return commandRejectionDecision(requestParams, "cancel");
409
+ if (outcome === "denied" || outcome === "unavailable") return commandRejectionDecision(requestParams, "decline");
410
+ if (outcome === "approved-session") {
411
+ if (hasAvailableDecision(requestParams, "acceptForSession")) return "acceptForSession";
412
+ const amendmentDecision = findAvailableCommandAmendmentDecision(requestParams);
413
+ if (amendmentDecision) return amendmentDecision;
414
+ }
415
+ return hasAvailableDecision(requestParams, "accept") ? "accept" : commandRejectionDecision(requestParams, "decline");
416
+ }
417
+ function fileChangeApprovalDecision(outcome) {
418
+ if (outcome === "cancelled") return "cancel";
419
+ if (outcome === "denied" || outcome === "unavailable") return "decline";
420
+ return outcome === "approved-session" ? "acceptForSession" : "accept";
421
+ }
422
+ function requestedPermissions(requestParams) {
423
+ const permissions = isJsonObject(requestParams?.permissions) ? requestParams.permissions : {};
424
+ const granted = {};
425
+ if (isJsonObject(permissions.network)) granted.network = permissions.network;
426
+ if (isJsonObject(permissions.fileSystem)) granted.fileSystem = permissions.fileSystem;
427
+ return granted;
428
+ }
429
+ function unsupportedApprovalResponse() {
430
+ return {
431
+ decision: "decline",
432
+ reason: "DaoCore codex app-server bridge does not grant native approvals yet."
433
+ };
434
+ }
435
+ function describeRequestedPermissions(requestParams) {
436
+ return describePermissionProfile(requestedPermissions(requestParams), "Permissions");
437
+ }
438
+ function describeCommandApprovalDetails(requestParams) {
439
+ const lines = [];
440
+ const additionalPermissions = isJsonObject(requestParams?.additionalPermissions) ? requestParams.additionalPermissions : void 0;
441
+ if (additionalPermissions) lines.push(...describePermissionProfile(additionalPermissions, "Additional permissions"));
442
+ const execpolicySummary = summarizeStringArray(requestParams?.proposedExecpolicyAmendment, "Proposed exec policy", sanitizePermissionScalar);
443
+ if (execpolicySummary) lines.push(execpolicySummary);
444
+ const networkAmendmentSummary = summarizeNetworkPolicyAmendments(requestParams?.proposedNetworkPolicyAmendments);
445
+ if (networkAmendmentSummary) lines.push(networkAmendmentSummary);
446
+ return lines;
447
+ }
448
+ function describePermissionProfile(permissions, label) {
449
+ const lines = [];
450
+ const kinds = [];
451
+ const risks = /* @__PURE__ */ new Set();
452
+ if (isJsonObject(permissions.network)) kinds.push("network");
453
+ if (isJsonObject(permissions.fileSystem)) kinds.push("fileSystem");
454
+ if (kinds.length > 0) lines.push(`${label}: ${kinds.join(", ")}`);
455
+ let networkSummary;
456
+ if (isJsonObject(permissions.network)) {
457
+ const summaries = [summarizeNetworkEnabledPermission(permissions.network, risks), summarizePermissionRecord(permissions.network, risks, [{
458
+ key: "allowHosts",
459
+ label: "allowHosts",
460
+ sanitize: sanitizePermissionHostValue,
461
+ risksFor: permissionHostRisks
462
+ }])].filter((summary) => Boolean(summary));
463
+ networkSummary = summaries.length > 0 ? summaries.join("; ") : void 0;
464
+ }
465
+ let fileSystemSummary;
466
+ if (isJsonObject(permissions.fileSystem)) {
467
+ const summaries = [summarizePermissionRecord(permissions.fileSystem, risks, [
468
+ {
469
+ key: "read",
470
+ label: "read",
471
+ sanitize: sanitizePermissionPathValue,
472
+ risksFor: permissionPathRisks
473
+ },
474
+ {
475
+ key: "write",
476
+ label: "write",
477
+ sanitize: sanitizePermissionPathValue,
478
+ risksFor: permissionPathRisks
479
+ },
480
+ {
481
+ key: "roots",
482
+ label: "roots",
483
+ sanitize: sanitizePermissionPathValue,
484
+ risksFor: permissionPathRisks
485
+ },
486
+ {
487
+ key: "readPaths",
488
+ label: "readPaths",
489
+ sanitize: sanitizePermissionPathValue,
490
+ risksFor: permissionPathRisks
491
+ },
492
+ {
493
+ key: "writePaths",
494
+ label: "writePaths",
495
+ sanitize: sanitizePermissionPathValue,
496
+ risksFor: permissionPathRisks
497
+ }
498
+ ]), summarizeFileSystemEntries(permissions.fileSystem, risks)].filter((summary) => Boolean(summary));
499
+ fileSystemSummary = summaries.length > 0 ? summaries.join("; ") : void 0;
500
+ }
501
+ if (risks.size > 0) lines.push(`High-risk targets: ${[...risks].join(", ")}`);
502
+ if (networkSummary) lines.push(`Network ${networkSummary}`);
503
+ if (fileSystemSummary) lines.push(`File system ${fileSystemSummary}`);
504
+ return lines;
505
+ }
506
+ function summarizeNetworkEnabledPermission(permission, risks) {
507
+ const enabled = permission.enabled;
508
+ if (typeof enabled !== "boolean") return;
509
+ if (enabled) risks.add("network access");
510
+ return `enabled: ${enabled}`;
511
+ }
512
+ function summarizeFileSystemEntries(permission, risks) {
513
+ const entries = permission.entries;
514
+ if (!Array.isArray(entries)) return;
515
+ const samples = [];
516
+ let count = 0;
517
+ for (const entry of entries) {
518
+ const item = isJsonObject(entry) ? entry : void 0;
519
+ const path = typeof item?.path === "string" ? item.path.trim() : "";
520
+ const access = typeof item?.access === "string" ? item.access.trim() : "";
521
+ if (!path || !access) continue;
522
+ count += 1;
523
+ if (access !== "none") for (const risk of permissionPathRisks(path)) risks.add(risk);
524
+ if (samples.length < PERMISSION_SAMPLE_LIMIT) samples.push(`${sanitizePermissionScalar(access)} ${sanitizePermissionPathValue(path)}`);
525
+ }
526
+ if (count === 0) return;
527
+ const remaining = count - samples.length;
528
+ const remainderSuffix = remaining > 0 ? ` (+${remaining} more)` : "";
529
+ return `entries: ${samples.join(", ")}${remainderSuffix}`;
530
+ }
531
+ function summarizePermissionRecord(permission, risks, descriptors) {
532
+ const details = [];
533
+ for (const descriptor of descriptors) {
534
+ const summary = summarizePermissionArray(permission, descriptor, risks);
535
+ if (summary) details.push(summary);
536
+ }
537
+ return details.length > 0 ? details.join("; ") : void 0;
538
+ }
539
+ function summarizePermissionArray(record, descriptor, risks) {
540
+ const values = readStringArray(record, descriptor.key);
541
+ if (values.length === 0) return;
542
+ for (const value of values) for (const risk of descriptor.risksFor(value)) risks.add(risk);
543
+ const sampleValues = values.slice(0, PERMISSION_SAMPLE_LIMIT).map(descriptor.sanitize).filter(Boolean);
544
+ if (sampleValues.length === 0) return `${descriptor.label}: ${values.length}`;
545
+ const remaining = values.length - sampleValues.length;
546
+ const remainderSuffix = remaining > 0 ? ` (+${remaining} more)` : "";
547
+ return `${descriptor.label}: ${sampleValues.join(", ")}${remainderSuffix}`;
548
+ }
549
+ function summarizeStringArray(value, label, sanitize) {
550
+ if (!Array.isArray(value)) return;
551
+ const values = value.filter((entry) => typeof entry === "string").map((entry) => sanitize(entry)).filter(Boolean);
552
+ if (values.length === 0) return;
553
+ const samples = values.slice(0, PERMISSION_SAMPLE_LIMIT);
554
+ const remaining = values.length - samples.length;
555
+ const remainderSuffix = remaining > 0 ? ` (+${remaining} more)` : "";
556
+ return `${label}: ${samples.join(", ")}${remainderSuffix}`;
557
+ }
558
+ function summarizeNetworkPolicyAmendments(value) {
559
+ if (!Array.isArray(value)) return;
560
+ const samples = [];
561
+ let count = 0;
562
+ for (const entry of value) {
563
+ const amendment = isJsonObject(entry) ? entry : void 0;
564
+ const host = typeof amendment?.host === "string" ? amendment.host : "";
565
+ const action = typeof amendment?.action === "string" ? amendment.action : "";
566
+ if (!host || !action) continue;
567
+ count += 1;
568
+ if (samples.length < PERMISSION_SAMPLE_LIMIT) samples.push(`${sanitizePermissionScalar(action)} ${sanitizePermissionHostValue(host)}`);
569
+ }
570
+ if (count === 0) return;
571
+ const remaining = count - samples.length;
572
+ const remainderSuffix = remaining > 0 ? ` (+${remaining} more)` : "";
573
+ return `Proposed network policy: ${samples.join(", ")}${remainderSuffix}`;
574
+ }
575
+ function readStringArray(record, key) {
576
+ const value = record[key];
577
+ return Array.isArray(value) ? value.map((entry) => typeof entry === "string" ? entry.trim() : "").filter(Boolean) : [];
578
+ }
579
+ function sanitizePermissionHostValue(value) {
580
+ const withoutScheme = sanitizePermissionScalar(value).toLowerCase().replace(/^[a-z][a-z0-9+.-]*:\/\//, "");
581
+ const authority = withoutScheme.split(/[/?#]/, 1)[0] ?? withoutScheme;
582
+ return truncate(authority.includes("@") ? authority.slice(authority.lastIndexOf("@") + 1) : authority, PERMISSION_VALUE_MAX_LENGTH);
583
+ }
584
+ function sanitizePermissionPathValue(value) {
585
+ return truncate(formatApprovalDisplayPath(sanitizePermissionScalar(value)), PERMISSION_VALUE_MAX_LENGTH);
586
+ }
587
+ function sanitizePermissionScalar(value) {
588
+ return sanitizeVisibleScalar(value);
589
+ }
590
+ function permissionHostRisks(value) {
591
+ const normalized = value.trim().toLowerCase();
592
+ const risks = [];
593
+ if (normalized.includes("*")) {
594
+ risks.push("wildcard hosts");
595
+ if (isPrivateNetworkHostPattern(normalized)) risks.push("private-network wildcards");
596
+ }
597
+ return risks;
598
+ }
599
+ function permissionPathRisks(value) {
600
+ const normalized = sanitizePermissionScalar(value);
601
+ const risks = [];
602
+ if (normalized === "/" || normalized === "\\" || /^[A-Za-z]:[\\/]*$/.test(normalized)) risks.push("filesystem root");
603
+ return risks;
604
+ }
605
+ function isPrivateNetworkHostPattern(value) {
606
+ const wildcardStripped = value.toLowerCase().replace(/^\*\./, "");
607
+ if (wildcardStripped === "localhost" || wildcardStripped === "local" || wildcardStripped === "internal" || wildcardStripped === "lan" || wildcardStripped === "home" || wildcardStripped === "corp" || wildcardStripped === "private" || wildcardStripped.endsWith(".local") || wildcardStripped.endsWith(".internal") || wildcardStripped.endsWith(".lan") || wildcardStripped.endsWith(".home") || wildcardStripped.endsWith(".corp") || wildcardStripped.endsWith(".private")) return true;
608
+ if (wildcardStripped.startsWith("10.") || wildcardStripped.startsWith("127.") || wildcardStripped.startsWith("192.168.") || wildcardStripped.startsWith("169.254.")) return true;
609
+ return /^172\.(1[6-9]|2\d|3[0-1])\./.test(wildcardStripped);
610
+ }
611
+ function hasAvailableDecision(requestParams, decision) {
612
+ const available = requestParams?.availableDecisions;
613
+ if (!Array.isArray(available)) return true;
614
+ return available.includes(decision);
615
+ }
616
+ function findAvailableCommandAmendmentDecision(requestParams) {
617
+ const available = requestParams?.availableDecisions;
618
+ if (!Array.isArray(available)) return;
619
+ return available.find((entry) => isJsonObject(entry) && (isJsonObject(entry.acceptWithExecpolicyAmendment) || isJsonObject(entry.applyNetworkPolicyAmendment)));
620
+ }
621
+ function commandRejectionDecision(requestParams, preferred) {
622
+ const available = requestParams?.availableDecisions;
623
+ if (!Array.isArray(available)) return preferred;
624
+ if (available.includes(preferred)) return preferred;
625
+ const alternate = preferred === "decline" ? "cancel" : "decline";
626
+ if (available.includes(alternate)) return alternate;
627
+ return preferred;
628
+ }
629
+ function approvalResolutionMessage(outcome) {
630
+ if (outcome === "approved-session") return "Codex app-server approval granted for the session.";
631
+ if (outcome === "approved-once") return "Codex app-server approval granted for this turn.";
632
+ if (outcome === "cancelled") return "Codex app-server approval cancelled.";
633
+ if (outcome === "unavailable") return "Codex app-server approval unavailable.";
634
+ return "Codex app-server approval denied.";
635
+ }
636
+ function approvalScopeForOutcome(outcome) {
637
+ return outcome === "approved-session" ? "session" : "turn";
638
+ }
639
+ function approvalEventScope(method, outcome) {
640
+ return method === "item/permissions/requestApproval" ? { scope: approvalScopeForOutcome(outcome) } : {};
641
+ }
642
+ function approvalKindForMethod(method) {
643
+ if (method.includes("commandExecution") || method.includes("execCommand")) return "exec";
644
+ if (method.includes("fileChange") || method.includes("Patch") || method.includes("permissions")) return "plugin";
645
+ return "unknown";
646
+ }
647
+ function isSupportedAppServerApprovalMethod(method) {
648
+ return method === "item/commandExecution/requestApproval" || method === "item/fileChange/requestApproval" || method === "item/permissions/requestApproval";
649
+ }
650
+ function emitApprovalEvent(params, data) {
651
+ params.onAgentEvent?.({
652
+ stream: "approval",
653
+ data
654
+ });
655
+ }
656
+ function readDisplayCommandPreview(record) {
657
+ const actionCommand = readCommandActionsPreview(record);
658
+ if (actionCommand) return actionCommand;
659
+ return readCommandPreview(record);
660
+ }
661
+ function readPolicyCommand(record) {
662
+ const command = record?.command;
663
+ if (typeof command === "string") return command;
664
+ if (Array.isArray(command) && command.every((part) => typeof part === "string")) return command.join(" ");
665
+ const actionCommands = readCommandActions(record);
666
+ if (actionCommands.length > 0) return actionCommands.join(" && ");
667
+ }
668
+ function readCommandActions(record) {
669
+ const actions = record?.commandActions;
670
+ if (!Array.isArray(actions)) return [];
671
+ return actions.map((action) => isJsonObject(action) ? readString$1(action, "command") : void 0).filter((command) => Boolean(command));
672
+ }
673
+ function readCommandActionsPreview(record) {
674
+ let source;
675
+ for (const command of readCommandActions(record)) {
676
+ source = appendPreviewPart(source, command, " && ");
677
+ if (source.clipped) break;
678
+ }
679
+ return source;
680
+ }
681
+ function readCommandPreview(record) {
682
+ const command = record?.command;
683
+ if (typeof command === "string") return previewSource(command);
684
+ if (!Array.isArray(command)) return;
685
+ let source;
686
+ for (const part of command) {
687
+ if (typeof part !== "string") return;
688
+ source = appendPreviewPart(source, part, " ");
689
+ if (source.clipped) break;
690
+ }
691
+ return source;
692
+ }
693
+ function readStringPreview(record, key) {
694
+ const value = readString$1(record, key);
695
+ return value === void 0 ? void 0 : previewSource(value);
696
+ }
697
+ function readString$1(record, key) {
698
+ const value = record?.[key];
699
+ return typeof value === "string" ? value : void 0;
700
+ }
701
+ function truncate(value, maxLength) {
702
+ return value.length <= maxLength ? value : `${value.slice(0, Math.max(0, maxLength - 3))}...`;
703
+ }
704
+ function previewSource(value) {
705
+ return {
706
+ value: value.slice(0, APPROVAL_PREVIEW_SCAN_MAX_LENGTH),
707
+ clipped: value.length > APPROVAL_PREVIEW_SCAN_MAX_LENGTH
708
+ };
709
+ }
710
+ function appendPreviewPart(source, part, separator) {
711
+ const value = `${source?.value ? `${source.value}${separator}` : ""}${part}`;
712
+ const clipped = source?.clipped === true || value.length > APPROVAL_PREVIEW_SCAN_MAX_LENGTH;
713
+ return {
714
+ value: value.slice(0, APPROVAL_PREVIEW_SCAN_MAX_LENGTH),
715
+ clipped
716
+ };
717
+ }
718
+ function sanitizeApprovalPreview(source, maxLength) {
719
+ if (!source || !source.value) return { omitted: false };
720
+ const sanitized = sanitizeVisibleScalar(source.value.replace(DANGLING_TERMINAL_SEQUENCE_SUFFIX_RE$1, ""));
721
+ if (!sanitized) return { omitted: true };
722
+ return {
723
+ text: formatCodexDisplayText(truncate(sanitized, maxLength)),
724
+ omitted: source.clipped
725
+ };
726
+ }
727
+ function sanitizeVisibleScalar(value) {
728
+ return value.replace(ANSI_OSC_SEQUENCE_RE$1, "").replace(ANSI_CONTROL_SEQUENCE_RE$1, "").replace(INVISIBLE_FORMATTING_CONTROL_RE$1, " ").replace(CONTROL_CHARACTER_RE$1, " ").replace(/\s+/g, " ").trim();
729
+ }
730
+ function formatApprovalPreviewSubject(text, omitted) {
731
+ return omitted ? `${text} ${APPROVAL_PREVIEW_OMITTED}` : text;
732
+ }
733
+ function joinDescriptionLinesWithinLimit(lines, maxLength) {
734
+ let description = "";
735
+ for (const line of lines) {
736
+ const prefix = description ? "\n" : "";
737
+ const next = `${description}${prefix}${line}`;
738
+ if (next.length <= maxLength) {
739
+ description = next;
740
+ continue;
741
+ }
742
+ const remaining = maxLength - description.length - prefix.length;
743
+ if (remaining < 3) break;
744
+ description += `${prefix}${truncate(line, remaining)}`;
745
+ break;
746
+ }
747
+ return description;
748
+ }
749
+ function formatErrorMessage(error) {
750
+ return error instanceof Error ? error.message : String(error);
751
+ }
752
+ //#endregion
753
+ //#region extensions/codex/src/app-server/dynamic-tool-diagnostics.ts
754
+ function emitDynamicToolStartedDiagnostic(params) {
755
+ emitTrustedDiagnosticEvent({
756
+ type: "tool.execution.started",
757
+ runId: params.runId,
758
+ sessionId: params.sessionId,
759
+ sessionKey: params.sessionKey,
760
+ toolName: params.call.tool,
761
+ toolCallId: params.call.callId
762
+ });
763
+ }
764
+ function emitDynamicToolErrorDiagnostic(params) {
765
+ emitTrustedDiagnosticEvent({
766
+ type: "tool.execution.error",
767
+ runId: params.runId,
768
+ sessionId: params.sessionId,
769
+ sessionKey: params.sessionKey,
770
+ toolName: params.call.tool,
771
+ toolCallId: params.call.callId,
772
+ durationMs: params.durationMs,
773
+ errorCategory: "codex_dynamic_tool_error"
774
+ });
775
+ }
776
+ function emitDynamicToolTerminalDiagnostic(params) {
777
+ const terminalType = params.response.diagnosticTerminalType ?? (params.response.success ? "completed" : "error");
778
+ if (terminalType === "completed") {
779
+ emitTrustedDiagnosticEvent({
780
+ type: "tool.execution.completed",
781
+ runId: params.runId,
782
+ sessionId: params.sessionId,
783
+ sessionKey: params.sessionKey,
784
+ toolName: params.call.tool,
785
+ toolCallId: params.call.callId,
786
+ durationMs: params.durationMs
787
+ });
788
+ return;
789
+ }
790
+ if (terminalType === "blocked") {
791
+ emitTrustedDiagnosticEvent({
792
+ type: "tool.execution.blocked",
793
+ runId: params.runId,
794
+ sessionId: params.sessionId,
795
+ sessionKey: params.sessionKey,
796
+ toolName: params.call.tool,
797
+ toolCallId: params.call.callId,
798
+ deniedReason: "plugin-before-tool-call",
799
+ reason: "Tool call blocked"
800
+ });
801
+ return;
802
+ }
803
+ emitDynamicToolErrorDiagnostic(params);
804
+ }
805
+ //#endregion
806
+ //#region extensions/codex/src/app-server/elicitation-bridge.ts
807
+ const MCP_TOOL_APPROVAL_KIND = "mcp_tool_call";
808
+ const MCP_TOOL_APPROVAL_KIND_KEY = "codex_approval_kind";
809
+ const MCP_TOOL_APPROVAL_CONNECTOR_NAME_KEY = "connector_name";
810
+ const MCP_TOOL_APPROVAL_TOOL_TITLE_KEY = "tool_title";
811
+ const MCP_TOOL_APPROVAL_TOOL_DESCRIPTION_KEY = "tool_description";
812
+ const MCP_TOOL_APPROVAL_TOOL_PARAMS_DISPLAY_KEY = "tool_params_display";
813
+ const MCP_TOOL_APPROVAL_SOURCE_KEY = "source";
814
+ const MCP_TOOL_APPROVAL_CONNECTOR_SOURCE = "connector";
815
+ const CODEX_APPS_SERVER_NAME = "codex_apps";
816
+ const COMPUTER_USE_APPROVAL_TITLE = "Computer Use approval";
817
+ const EMPTY_OBJECT_SCHEMA = {
818
+ type: "object",
819
+ properties: {}
820
+ };
821
+ const PLUGIN_APP_ID_META_KEYS = [
822
+ "app_id",
823
+ "appId",
824
+ "codex_app_id",
825
+ "codexAppId"
826
+ ];
827
+ const PLUGIN_CONNECTOR_ID_META_KEYS = ["connector_id", "connectorId"];
828
+ const PLUGIN_NAME_META_KEYS = [
829
+ "plugin_name",
830
+ "pluginName",
831
+ "codex_plugin_name",
832
+ "codexPluginName"
833
+ ];
834
+ const PLUGIN_CONFIG_KEY_META_KEYS = [
835
+ "config_key",
836
+ "configKey",
837
+ "codex_config_key"
838
+ ];
839
+ const PLUGIN_MARKETPLACE_NAME_META_KEYS = [
840
+ "marketplace_name",
841
+ "marketplaceName",
842
+ "codex_marketplace_name",
843
+ "codexMarketplaceName"
844
+ ];
845
+ const MAX_DISPLAY_PARAM_ENTRIES = 8;
846
+ const MAX_DISPLAY_PARAM_VALUE_LENGTH = 120;
847
+ const MAX_DISPLAY_VALUE_ARRAY_ITEMS = 8;
848
+ const MAX_DISPLAY_VALUE_OBJECT_KEYS = 8;
849
+ const MAX_DISPLAY_VALUE_DEPTH = 3;
850
+ const DISPLAY_TEXT_SCAN_MAX_LENGTH = 4096;
851
+ const ANSI_OSC_SEQUENCE_RE = new RegExp(String.raw`(?:\u001b]|\u009d)[^\u001b\u009c\u0007]*(?:\u0007|\u001b\\|\u009c)`, "g");
852
+ const ANSI_CONTROL_SEQUENCE_RE = new RegExp(String.raw`(?:\u001b\[[0-?]*[ -/]*[@-~]|\u009b[0-?]*[ -/]*[@-~]|\u001b[@-Z\\-_])`, "g");
853
+ const CONTROL_CHARACTER_RE = new RegExp(String.raw`[\u0000-\u001f\u007f-\u009f]+`, "g");
854
+ const INVISIBLE_FORMATTING_CONTROL_RE = new RegExp(String.raw`[\u00ad\u034f\u061c\u200b-\u200f\u202a-\u202e\u2060-\u206f\ufeff\ufe00-\ufe0f\u{e0100}-\u{e01ef}]`, "gu");
855
+ const DANGLING_TERMINAL_SEQUENCE_SUFFIX_RE = new RegExp(String.raw`(?:\u001b\][^\u001b\u009c\u0007]*|\u009d[^\u001b\u009c\u0007]*|\u001b\[[0-?]*[ -/]*|\u009b[0-?]*[ -/]*|\u001b)$`);
856
+ async function handleCodexAppServerElicitationRequest(params) {
857
+ const requestParams = isJsonObject(params.requestParams) ? params.requestParams : void 0;
858
+ if (!requestParams) return;
859
+ if (!matchesCurrentThread(requestParams, params.threadId)) return;
860
+ if (turnIdMismatches(requestParams, params.turnId)) return;
861
+ const pluginResolution = resolvePluginElicitation({
862
+ requestParams,
863
+ pluginAppPolicyContext: params.pluginAppPolicyContext
864
+ });
865
+ if (pluginResolution.kind !== "not_plugin") {
866
+ if (pluginResolution.kind === "decline") {
867
+ logPluginElicitationDecline(pluginResolution.reason, requestParams);
868
+ return declineElicitationResponse();
869
+ }
870
+ if (!hasExactTurnId(requestParams, params.turnId)) {
871
+ logPluginElicitationDecline("missing_active_turn", requestParams);
872
+ return declineElicitationResponse();
873
+ }
874
+ return buildPluginPolicyElicitationResponse(pluginResolution.entry, requestParams);
875
+ }
876
+ const approvalPrompt = readComputerUseApprovalElicitation(requestParams, params.computerUseMcpServerName) ?? readBridgeableApprovalElicitation(requestParams);
877
+ if (!approvalPrompt) return;
878
+ const outcome = await requestPluginApprovalOutcome({
879
+ paramsForRun: params.paramsForRun,
880
+ title: approvalPrompt.title,
881
+ description: approvalPrompt.description,
882
+ signal: params.signal
883
+ });
884
+ return buildElicitationResponse(approvalPrompt.requestedSchema, approvalPrompt.meta, outcome);
885
+ }
886
+ function matchesCurrentThread(requestParams, threadId) {
887
+ if (!requestParams) return false;
888
+ return readString(requestParams, "threadId") === threadId;
889
+ }
890
+ function turnIdMismatches(requestParams, turnId) {
891
+ const rawTurnId = requestParams?.turnId;
892
+ return rawTurnId !== null && rawTurnId !== void 0 && rawTurnId !== turnId;
893
+ }
894
+ function hasExactTurnId(requestParams, turnId) {
895
+ return requestParams?.turnId === turnId;
896
+ }
897
+ function resolvePluginElicitation(params) {
898
+ const requestParams = params.requestParams;
899
+ if (!requestParams) return { kind: "not_plugin" };
900
+ const meta = isJsonObject(requestParams["_meta"]) ? requestParams["_meta"] : {};
901
+ const context = params.pluginAppPolicyContext;
902
+ const entries = context ? Object.values(context.apps) : [];
903
+ const appId = readFirstString(meta, PLUGIN_APP_ID_META_KEYS) ?? readFirstString(requestParams, PLUGIN_APP_ID_META_KEYS);
904
+ const connectorId = readFirstString(meta, PLUGIN_CONNECTOR_ID_META_KEYS);
905
+ const isCodexConnectorApproval = isCodexConnectorApprovalElicitation(requestParams, meta);
906
+ if (isCodexConnectorApproval && appId && connectorId && appId !== connectorId) return {
907
+ kind: "decline",
908
+ reason: "app_id_connector_id_mismatch"
909
+ };
910
+ if (appId) {
911
+ if (!context) return {
912
+ kind: "decline",
913
+ reason: "missing_policy_context"
914
+ };
915
+ const entry = context.apps[appId];
916
+ return uniquePluginMatch(entry ? [entry] : [], "app_id");
917
+ }
918
+ if (isCodexConnectorApproval && connectorId) {
919
+ if (!context) return {
920
+ kind: "decline",
921
+ reason: "missing_policy_context"
922
+ };
923
+ const entry = context.apps[connectorId];
924
+ return uniquePluginMatch(entry ? [entry] : [], "connector_id");
925
+ }
926
+ const serverName = readString(requestParams, "serverName");
927
+ if (serverName && context) {
928
+ const matches = entries.filter((entry) => entry.mcpServerNames.includes(serverName));
929
+ if (matches.length > 0) return uniquePluginMatch(matches, "server_name");
930
+ }
931
+ const metadataResolution = resolvePluginStableMetadataMatch({
932
+ meta,
933
+ requestParams,
934
+ entries,
935
+ context
936
+ });
937
+ if (metadataResolution.kind !== "not_plugin") return metadataResolution;
938
+ if (context && hasDisplayNameOnlyPluginMatch(meta, entries)) return {
939
+ kind: "decline",
940
+ reason: "display_name_only"
941
+ };
942
+ return { kind: "not_plugin" };
943
+ }
944
+ function isCodexConnectorApprovalElicitation(requestParams, meta) {
945
+ return readString(requestParams, "serverName") === CODEX_APPS_SERVER_NAME && readString(meta, MCP_TOOL_APPROVAL_KIND_KEY) === MCP_TOOL_APPROVAL_KIND && readString(meta, MCP_TOOL_APPROVAL_SOURCE_KEY) === MCP_TOOL_APPROVAL_CONNECTOR_SOURCE;
946
+ }
947
+ function resolvePluginStableMetadataMatch(params) {
948
+ const pluginName = readFirstString(params.meta, PLUGIN_NAME_META_KEYS) ?? readFirstString(params.requestParams, PLUGIN_NAME_META_KEYS);
949
+ const configKey = readFirstString(params.meta, PLUGIN_CONFIG_KEY_META_KEYS) ?? readFirstString(params.requestParams, PLUGIN_CONFIG_KEY_META_KEYS);
950
+ const marketplaceName = readFirstString(params.meta, PLUGIN_MARKETPLACE_NAME_META_KEYS) ?? readFirstString(params.requestParams, PLUGIN_MARKETPLACE_NAME_META_KEYS);
951
+ if (!pluginName && !configKey) return { kind: "not_plugin" };
952
+ if (!params.context) return {
953
+ kind: "decline",
954
+ reason: "missing_policy_context"
955
+ };
956
+ return uniquePluginMatch(params.entries.filter((entry) => {
957
+ if (marketplaceName && entry.marketplaceName !== marketplaceName) return false;
958
+ if (pluginName && entry.pluginName !== pluginName) return false;
959
+ if (configKey && entry.configKey !== configKey) return false;
960
+ return true;
961
+ }), "metadata");
962
+ }
963
+ function uniquePluginMatch(matches, source) {
964
+ if (matches.length === 1 && matches[0]) return {
965
+ kind: "matched",
966
+ entry: matches[0]
967
+ };
968
+ return {
969
+ kind: "decline",
970
+ reason: matches.length === 0 ? `${source}_not_enabled` : `${source}_ambiguous`
971
+ };
972
+ }
973
+ function hasDisplayNameOnlyPluginMatch(meta, entries) {
974
+ const connectorName = readString(meta, MCP_TOOL_APPROVAL_CONNECTOR_NAME_KEY);
975
+ if (!connectorName) return false;
976
+ const normalized = normalizePluginIdentityText(connectorName);
977
+ return entries.some((entry) => normalizePluginIdentityText(entry.pluginName) === normalized || normalizePluginIdentityText(entry.configKey) === normalized);
978
+ }
979
+ function normalizePluginIdentityText(value) {
980
+ return value.toLowerCase().replace(/[^a-z0-9]+/g, "");
981
+ }
982
+ function buildPluginPolicyElicitationResponse(entry, requestParams) {
983
+ if (!entry.allowDestructiveActions) {
984
+ logPluginElicitationDecline("destructive_actions_disabled", requestParams);
985
+ return declineElicitationResponse();
986
+ }
987
+ if (readString(requestParams, "mode") !== "form" || !isJsonObject(requestParams.requestedSchema)) {
988
+ logPluginElicitationDecline("unsupported_schema", requestParams);
989
+ return declineElicitationResponse();
990
+ }
991
+ const meta = isJsonObject(requestParams["_meta"]) ? requestParams["_meta"] : {};
992
+ const response = buildElicitationResponse(requestParams.requestedSchema, meta, "approved-once");
993
+ if (isJsonObject(response) && response.action === "accept") return response;
994
+ logPluginElicitationDecline("unmappable_schema", requestParams);
995
+ return declineElicitationResponse();
996
+ }
997
+ function declineElicitationResponse() {
998
+ return {
999
+ action: "decline",
1000
+ content: null,
1001
+ _meta: null
1002
+ };
1003
+ }
1004
+ function logPluginElicitationDecline(reason, requestParams) {
1005
+ log.debug("codex plugin elicitation declined", {
1006
+ reason,
1007
+ serverName: readString(requestParams, "serverName"),
1008
+ mode: readString(requestParams, "mode")
1009
+ });
1010
+ }
1011
+ function readBridgeableApprovalElicitation(requestParams) {
1012
+ if (!requestParams || readString(requestParams, "mode") !== "form" || !isJsonObject(requestParams["_meta"]) || requestParams["_meta"][MCP_TOOL_APPROVAL_KIND_KEY] !== MCP_TOOL_APPROVAL_KIND || !isJsonObject(requestParams.requestedSchema)) return;
1013
+ const requestedSchema = requestParams.requestedSchema;
1014
+ if (readString(requestedSchema, "type") !== "object" || !isJsonObject(requestedSchema.properties)) return;
1015
+ const title = sanitizeDisplayText(readString(requestParams, "message") ?? "") || "Codex MCP tool approval";
1016
+ return {
1017
+ title,
1018
+ description: buildApprovalDescription({
1019
+ title,
1020
+ meta: requestParams["_meta"],
1021
+ requestedSchema,
1022
+ serverName: sanitizeOptionalDisplayText(readString(requestParams, "serverName"))
1023
+ }),
1024
+ requestedSchema,
1025
+ meta: requestParams["_meta"]
1026
+ };
1027
+ }
1028
+ function readComputerUseApprovalElicitation(requestParams, expectedServerName) {
1029
+ const serverName = readString(requestParams, "serverName");
1030
+ if (!serverName || !expectedServerName || serverName !== expectedServerName || readString(requestParams, "mode") !== "form") return;
1031
+ const requestedSchema = isJsonObject(requestParams?.requestedSchema) ? requestParams.requestedSchema : EMPTY_OBJECT_SCHEMA;
1032
+ if (readString(requestedSchema, "type") !== "object" || !isJsonObject(requestedSchema.properties)) return;
1033
+ const meta = isJsonObject(requestParams?.["_meta"]) ? requestParams["_meta"] : {};
1034
+ const title = sanitizeDisplayText(readString(requestParams, "message") ?? "") || COMPUTER_USE_APPROVAL_TITLE;
1035
+ return {
1036
+ title,
1037
+ description: buildApprovalDescription({
1038
+ title,
1039
+ meta,
1040
+ requestedSchema,
1041
+ serverName: sanitizeOptionalDisplayText(serverName)
1042
+ }),
1043
+ requestedSchema,
1044
+ meta
1045
+ };
1046
+ }
1047
+ function buildApprovalDescription(params) {
1048
+ const connectorName = sanitizeOptionalDisplayText(readString(params.meta, MCP_TOOL_APPROVAL_CONNECTOR_NAME_KEY));
1049
+ const toolTitle = sanitizeOptionalDisplayText(readString(params.meta, MCP_TOOL_APPROVAL_TOOL_TITLE_KEY));
1050
+ const toolDescription = sanitizeOptionalDisplayText(readString(params.meta, MCP_TOOL_APPROVAL_TOOL_DESCRIPTION_KEY));
1051
+ const summaryLines = [
1052
+ connectorName && `App: ${connectorName}`,
1053
+ toolTitle && `Tool: ${toolTitle}`,
1054
+ params.serverName && `MCP server: ${params.serverName}`,
1055
+ toolDescription
1056
+ ].filter((line) => Boolean(line));
1057
+ const paramLines = readDisplayParamLines(params.meta);
1058
+ const propertyLines = readPropertyDescriptionLines(params.requestedSchema);
1059
+ return [
1060
+ params.title,
1061
+ summaryLines.join("\n"),
1062
+ paramLines.length > 0 ? ["Parameters:", ...paramLines].join("\n") : "",
1063
+ propertyLines.length > 0 ? ["Fields:", ...propertyLines].join("\n") : ""
1064
+ ].filter(Boolean).join("\n\n");
1065
+ }
1066
+ function readPropertyDescriptionLines(requestedSchema) {
1067
+ const properties = isJsonObject(requestedSchema.properties) ? requestedSchema.properties : {};
1068
+ return Object.entries(properties).map(([name, value]) => {
1069
+ const schema = isJsonObject(value) ? value : void 0;
1070
+ if (!schema) return;
1071
+ const propTitle = sanitizeDisplayText(readString(schema, "title") ?? "") || sanitizeDisplayText(name) || "field";
1072
+ const description = sanitizeOptionalDisplayText(readString(schema, "description"));
1073
+ return description ? `- ${propTitle}: ${description}` : `- ${propTitle}`;
1074
+ }).filter((line) => Boolean(line));
1075
+ }
1076
+ function readDisplayParamLines(meta) {
1077
+ const displayParams = meta[MCP_TOOL_APPROVAL_TOOL_PARAMS_DISPLAY_KEY];
1078
+ if (!Array.isArray(displayParams)) return [];
1079
+ const lines = displayParams.slice(0, MAX_DISPLAY_PARAM_ENTRIES).map((entry) => {
1080
+ const param = isJsonObject(entry) ? entry : void 0;
1081
+ if (!param) return;
1082
+ const name = sanitizeOptionalDisplayText(readString(param, "display_name")) ?? sanitizeOptionalDisplayText(readString(param, "name"));
1083
+ if (!name) return;
1084
+ return `- ${name}: ${formatDisplayParamValue(param.value)}`;
1085
+ }).filter((line) => Boolean(line));
1086
+ const remaining = displayParams.length - MAX_DISPLAY_PARAM_ENTRIES;
1087
+ return remaining > 0 ? [...lines, `- Additional parameters: ${remaining} more`] : lines;
1088
+ }
1089
+ function formatDisplayParamValue(value) {
1090
+ return truncateDisplayText(sanitizeDisplayText(typeof value === "string" ? value : formatDisplayJsonValue(value ?? null)), MAX_DISPLAY_PARAM_VALUE_LENGTH);
1091
+ }
1092
+ function formatDisplayJsonValue(value, depth = MAX_DISPLAY_VALUE_DEPTH) {
1093
+ if (value === null) return "null";
1094
+ if (typeof value === "string") return JSON.stringify(truncateDisplayText(sanitizeDisplayText(value), 80));
1095
+ if (typeof value === "number" || typeof value === "boolean") return String(value);
1096
+ if (Array.isArray(value)) {
1097
+ if (depth <= 0) return "[truncated]";
1098
+ const parts = [];
1099
+ const limit = Math.min(value.length, MAX_DISPLAY_VALUE_ARRAY_ITEMS);
1100
+ for (let i = 0; i < limit; i += 1) parts.push(formatDisplayJsonValue(value[i] ?? null, depth - 1));
1101
+ if (value.length > MAX_DISPLAY_VALUE_ARRAY_ITEMS) parts.push("...");
1102
+ return `[${parts.join(",")}]`;
1103
+ }
1104
+ if (typeof value === "object") {
1105
+ if (depth <= 0) return "{truncated}";
1106
+ const parts = [];
1107
+ let count = 0;
1108
+ let truncated = false;
1109
+ for (const key in value) {
1110
+ if (!Object.prototype.hasOwnProperty.call(value, key)) continue;
1111
+ if (count >= MAX_DISPLAY_VALUE_OBJECT_KEYS) {
1112
+ truncated = true;
1113
+ break;
1114
+ }
1115
+ const safeKey = truncateDisplayText(sanitizeDisplayText(key), 80);
1116
+ parts.push(`${JSON.stringify(safeKey)}:${formatDisplayJsonValue(value[key] ?? null, depth - 1)}`);
1117
+ count += 1;
1118
+ }
1119
+ if (truncated) parts.push("...");
1120
+ return `{${parts.join(",")}}`;
1121
+ }
1122
+ return "null";
1123
+ }
1124
+ function sanitizeOptionalDisplayText(value) {
1125
+ return (value === void 0 ? "" : sanitizeDisplayText(value)) || void 0;
1126
+ }
1127
+ function sanitizeDisplayText(value) {
1128
+ const scanned = value.slice(0, DISPLAY_TEXT_SCAN_MAX_LENGTH);
1129
+ const clipped = value.length > DISPLAY_TEXT_SCAN_MAX_LENGTH;
1130
+ const sanitized = scanned.replace(ANSI_OSC_SEQUENCE_RE, "").replace(ANSI_CONTROL_SEQUENCE_RE, "").replace(DANGLING_TERMINAL_SEQUENCE_SUFFIX_RE, "").replace(INVISIBLE_FORMATTING_CONTROL_RE, " ").replace(CONTROL_CHARACTER_RE, " ").replace(/\s+/g, " ").trim();
1131
+ const escaped = sanitized ? formatCodexDisplayText(sanitized) : "";
1132
+ return clipped && escaped ? `${escaped}...` : escaped;
1133
+ }
1134
+ function truncateDisplayText(value, maxLength) {
1135
+ return value.length <= maxLength ? value : `${value.slice(0, Math.max(0, maxLength - 3))}...`;
1136
+ }
1137
+ async function requestPluginApprovalOutcome(params) {
1138
+ try {
1139
+ const requestResult = await requestPluginApproval({
1140
+ paramsForRun: params.paramsForRun,
1141
+ title: params.title,
1142
+ description: params.description,
1143
+ severity: "warning",
1144
+ toolName: "codex_mcp_tool_approval"
1145
+ });
1146
+ const approvalId = requestResult?.id;
1147
+ if (!approvalId) return "unavailable";
1148
+ return mapExecDecisionToOutcome(approvalRequestExplicitlyUnavailable(requestResult) ? null : await waitForPluginApprovalDecision({
1149
+ approvalId,
1150
+ signal: params.signal
1151
+ }));
1152
+ } catch {
1153
+ return params.signal?.aborted ? "cancelled" : "denied";
1154
+ }
1155
+ }
1156
+ function buildElicitationResponse(requestedSchema, meta, outcome) {
1157
+ if (outcome === "cancelled") return {
1158
+ action: "cancel",
1159
+ content: null,
1160
+ _meta: null
1161
+ };
1162
+ if (outcome === "denied" || outcome === "unavailable") return {
1163
+ action: "decline",
1164
+ content: null,
1165
+ _meta: null
1166
+ };
1167
+ const content = buildAcceptedContent(requestedSchema, meta, outcome);
1168
+ if (!content) {
1169
+ if (hasNoSchemaProperties(requestedSchema)) return {
1170
+ action: "accept",
1171
+ content: null,
1172
+ _meta: buildAcceptedMeta(meta, outcome)
1173
+ };
1174
+ log.warn("codex MCP approval elicitation approved without a mappable response", {
1175
+ approvalKind: meta[MCP_TOOL_APPROVAL_KIND_KEY],
1176
+ fields: Object.keys(requestedSchema.properties ?? {}),
1177
+ outcome
1178
+ });
1179
+ return {
1180
+ action: "decline",
1181
+ content: null,
1182
+ _meta: null
1183
+ };
1184
+ }
1185
+ return {
1186
+ action: "accept",
1187
+ content,
1188
+ _meta: buildAcceptedMeta(meta, outcome)
1189
+ };
1190
+ }
1191
+ function buildAcceptedContent(requestedSchema, meta, outcome) {
1192
+ const properties = isJsonObject(requestedSchema.properties) ? requestedSchema.properties : void 0;
1193
+ if (!properties) return;
1194
+ const required = Array.isArray(requestedSchema.required) ? new Set(requestedSchema.required.filter((entry) => typeof entry === "string")) : /* @__PURE__ */ new Set();
1195
+ const content = {};
1196
+ let sawApprovalField = false;
1197
+ for (const [name, value] of Object.entries(properties)) {
1198
+ const schema = isJsonObject(value) ? value : void 0;
1199
+ if (!schema) continue;
1200
+ const property = {
1201
+ name,
1202
+ schema,
1203
+ required: required.has(name)
1204
+ };
1205
+ const next = readApprovalFieldValue(property, outcome) ?? readPersistFieldValue(property, meta, outcome) ?? readFallbackFieldValue(property, outcome);
1206
+ if (next === void 0) {
1207
+ if (isApprovalField(property)) sawApprovalField = true;
1208
+ if (property.required) return;
1209
+ continue;
1210
+ }
1211
+ if (isApprovalField(property)) sawApprovalField = true;
1212
+ content[name] = next;
1213
+ }
1214
+ return sawApprovalField ? content : void 0;
1215
+ }
1216
+ function readApprovalFieldValue(property, outcome) {
1217
+ if (!isApprovalField(property)) return;
1218
+ if (readString(property.schema, "type") === "boolean") return true;
1219
+ const options = readEnumOptions(property.schema);
1220
+ if (options.length === 0) return;
1221
+ const sessionChoice = options.find((option) => isSessionApprovalOption(option));
1222
+ const acceptChoice = options.find((option) => isPositiveApprovalOption(option));
1223
+ if (outcome === "approved-session") return sessionChoice?.value ?? acceptChoice?.value;
1224
+ return acceptChoice?.value ?? sessionChoice?.value;
1225
+ }
1226
+ function readPersistFieldValue(property, meta, outcome) {
1227
+ if (!isPersistField(property) || outcome !== "approved-session") return;
1228
+ const persistHints = readPersistHints(meta);
1229
+ const options = readEnumOptions(property.schema);
1230
+ if (options.length === 0) return;
1231
+ const preferred = choosePersistHint(persistHints);
1232
+ if (preferred) return options.find((option) => option.value === preferred || option.label === preferred)?.value;
1233
+ }
1234
+ function readDefaultValue(schema) {
1235
+ return schema.default;
1236
+ }
1237
+ function readFallbackFieldValue(property, outcome) {
1238
+ if (outcome === "approved-once" && isPersistField(property)) return;
1239
+ return readDefaultValue(property.schema);
1240
+ }
1241
+ function isApprovalField(property) {
1242
+ const haystack = propertyText(property).toLowerCase();
1243
+ return /\b(approve|approval|allow|accept|decision)\b/.test(haystack);
1244
+ }
1245
+ function isPersistField(property) {
1246
+ const haystack = propertyText(property).toLowerCase();
1247
+ return /\b(persist|session|always|scope)\b/.test(haystack);
1248
+ }
1249
+ function propertyText(property) {
1250
+ return [
1251
+ property.name,
1252
+ readString(property.schema, "title"),
1253
+ readString(property.schema, "description")
1254
+ ].filter(Boolean).join(" ");
1255
+ }
1256
+ function readPersistHints(meta) {
1257
+ const raw = meta.persist;
1258
+ if (typeof raw === "string") return [raw];
1259
+ if (Array.isArray(raw)) return raw.filter((entry) => typeof entry === "string");
1260
+ return ["session", "always"];
1261
+ }
1262
+ function buildAcceptedMeta(meta, outcome) {
1263
+ if (outcome !== "approved-session") return null;
1264
+ const persist = choosePersistHint(readPersistHints(meta));
1265
+ return persist ? { persist } : null;
1266
+ }
1267
+ function choosePersistHint(persistHints) {
1268
+ if (persistHints.includes("always")) return "always";
1269
+ if (persistHints.includes("session")) return "session";
1270
+ }
1271
+ function hasNoSchemaProperties(requestedSchema) {
1272
+ const properties = isJsonObject(requestedSchema.properties) ? requestedSchema.properties : {};
1273
+ return Object.keys(properties).length === 0;
1274
+ }
1275
+ function readEnumOptions(schema) {
1276
+ if (Array.isArray(schema.enum)) {
1277
+ const values = schema.enum.filter((entry) => typeof entry === "string");
1278
+ const labels = Array.isArray(schema.enumNames) ? schema.enumNames.filter((entry) => typeof entry === "string") : [];
1279
+ return values.map((value, index) => ({
1280
+ value,
1281
+ label: labels[index] ?? value
1282
+ }));
1283
+ }
1284
+ if (Array.isArray(schema.oneOf)) return schema.oneOf.map((entry) => {
1285
+ const option = isJsonObject(entry) ? entry : void 0;
1286
+ const value = readString(option, "const");
1287
+ if (!value) return;
1288
+ return {
1289
+ value,
1290
+ label: readString(option, "title") ?? value
1291
+ };
1292
+ }).filter((entry) => Boolean(entry));
1293
+ return [];
1294
+ }
1295
+ function isPositiveApprovalOption(option) {
1296
+ const haystack = `${option.value} ${option.label}`.toLowerCase();
1297
+ return /\b(allow|approve|accept|yes|continue|proceed|true)\b/.test(haystack);
1298
+ }
1299
+ function isSessionApprovalOption(option) {
1300
+ const haystack = `${option.value} ${option.label}`.toLowerCase();
1301
+ return /\b(session|always|persistent)\b/.test(haystack) && /\b(allow|approve|accept)\b/.test(haystack);
1302
+ }
1303
+ function readString(record, key) {
1304
+ const value = record?.[key];
1305
+ return typeof value === "string" && value.trim() ? value : void 0;
1306
+ }
1307
+ function readFirstString(record, keys) {
1308
+ for (const key of keys) {
1309
+ const value = readString(record, key);
1310
+ if (value) return value;
1311
+ }
1312
+ }
1313
+ //#endregion
1314
+ //#region extensions/codex/src/app-server/native-hook-relay.ts
1315
+ const CODEX_NATIVE_HOOK_RELAY_EVENTS = [
1316
+ "pre_tool_use",
1317
+ "post_tool_use",
1318
+ "permission_request",
1319
+ "before_agent_finalize"
1320
+ ];
1321
+ const CODEX_HOOK_EVENT_BY_NATIVE_EVENT = {
1322
+ pre_tool_use: "PreToolUse",
1323
+ post_tool_use: "PostToolUse",
1324
+ permission_request: "PermissionRequest",
1325
+ before_agent_finalize: "Stop"
1326
+ };
1327
+ const CODEX_HOOK_KEY_LABEL_BY_NATIVE_EVENT = {
1328
+ pre_tool_use: "pre_tool_use",
1329
+ post_tool_use: "post_tool_use",
1330
+ permission_request: "permission_request",
1331
+ before_agent_finalize: "stop"
1332
+ };
1333
+ const CODEX_SESSION_FLAGS_HOOK_SOURCE_PATHS = ["/<session-flags>/config.toml", "<session-flags>/config.toml"];
1334
+ function buildCodexNativeHookRelayConfig(params) {
1335
+ const events = params.events?.length ? params.events : CODEX_NATIVE_HOOK_RELAY_EVENTS;
1336
+ const selectedEvents = new Set(events);
1337
+ const config = { "features.hooks": true };
1338
+ const hookState = {};
1339
+ for (const event of CODEX_NATIVE_HOOK_RELAY_EVENTS) {
1340
+ const codexEvent = CODEX_HOOK_EVENT_BY_NATIVE_EVENT[event];
1341
+ const selected = selectedEvents.has(event);
1342
+ if (!selected || !params.relay.shouldRelayEvent(event)) {
1343
+ if (selected || params.clearOmittedEvents) config[`hooks.${codexEvent}`] = [];
1344
+ if (params.clearOmittedEvents) for (const sourcePath of CODEX_SESSION_FLAGS_HOOK_SOURCE_PATHS) hookState[`${sourcePath}:${CODEX_HOOK_KEY_LABEL_BY_NATIVE_EVENT[event]}:0:0`] = { enabled: false };
1345
+ continue;
1346
+ }
1347
+ const command = params.relay.commandForEvent(event);
1348
+ const timeout = normalizeHookTimeoutSec(params.hookTimeoutSec);
1349
+ config[`hooks.${codexEvent}`] = [{ hooks: [{
1350
+ type: "command",
1351
+ command,
1352
+ timeout,
1353
+ async: false,
1354
+ statusMessage: "DaoCore native hook relay"
1355
+ }] }];
1356
+ const state = {
1357
+ enabled: true,
1358
+ trusted_hash: codexCommandHookTrustedHash({
1359
+ event,
1360
+ command,
1361
+ timeout,
1362
+ statusMessage: "DaoCore native hook relay"
1363
+ })
1364
+ };
1365
+ for (const sourcePath of CODEX_SESSION_FLAGS_HOOK_SOURCE_PATHS) hookState[`${sourcePath}:${CODEX_HOOK_KEY_LABEL_BY_NATIVE_EVENT[event]}:0:0`] = state;
1366
+ }
1367
+ config["hooks.state"] = hookState;
1368
+ return config;
1369
+ }
1370
+ function buildCodexNativeHookRelayDisabledConfig() {
1371
+ return {
1372
+ "features.hooks": false,
1373
+ "hooks.PreToolUse": [],
1374
+ "hooks.PostToolUse": [],
1375
+ "hooks.PermissionRequest": [],
1376
+ "hooks.Stop": []
1377
+ };
1378
+ }
1379
+ function normalizeHookTimeoutSec(value) {
1380
+ return typeof value === "number" && Number.isFinite(value) && value > 0 ? Math.ceil(value) : 5;
1381
+ }
1382
+ function codexCommandHookTrustedHash(params) {
1383
+ const identity = {
1384
+ event_name: CODEX_HOOK_KEY_LABEL_BY_NATIVE_EVENT[params.event],
1385
+ hooks: [{
1386
+ async: false,
1387
+ command: params.command,
1388
+ statusMessage: params.statusMessage,
1389
+ timeout: params.timeout,
1390
+ type: "command"
1391
+ }]
1392
+ };
1393
+ return `sha256:${createHash("sha256").update(JSON.stringify(sortJsonValue(identity))).digest("hex")}`;
1394
+ }
1395
+ function sortJsonValue(value) {
1396
+ if (!value || typeof value !== "object") return value;
1397
+ if (Array.isArray(value)) return value.map(sortJsonValue);
1398
+ const sorted = {};
1399
+ for (const key of Object.keys(value).toSorted()) sorted[key] = sortJsonValue(value[key]);
1400
+ return sorted;
1401
+ }
1402
+ //#endregion
1403
+ //#region extensions/codex/src/app-server/vision-tools.ts
1404
+ function filterToolsForVisionInputs(tools, params) {
1405
+ if (!params.modelHasVision || !params.hasInboundImages) return tools;
1406
+ return tools.filter((tool) => tool.name !== "image");
1407
+ }
1408
+ //#endregion
1409
+ export { handleCodexAppServerElicitationRequest as a, emitDynamicToolTerminalDiagnostic as c, buildCodexNativeHookRelayDisabledConfig as i, handleCodexAppServerApprovalRequest as l, CODEX_NATIVE_HOOK_RELAY_EVENTS as n, emitDynamicToolErrorDiagnostic as o, buildCodexNativeHookRelayConfig as r, emitDynamicToolStartedDiagnostic as s, filterToolsForVisionInputs as t };