@fased/fased 0.1.55 → 0.1.56

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 (453) hide show
  1. package/config/capability-catalog.json +12 -0
  2. package/dist/acp/client.js +2 -2
  3. package/dist/acp/secret-file.js +2 -2
  4. package/dist/agents/agent-scope.js +2 -2
  5. package/dist/agents/apply-patch.js +8 -8
  6. package/dist/agents/auth-profiles/paths.js +2 -2
  7. package/dist/agents/auth-profiles/store.js +2 -2
  8. package/dist/agents/authenticated-model-catalog.js +3 -2
  9. package/dist/agents/bash-tools.exec-host-node.js +1 -1
  10. package/dist/agents/bash-tools.exec.js +1 -1
  11. package/dist/agents/bash-tools.shared.js +2 -2
  12. package/dist/agents/cli-credentials.js +4 -4
  13. package/dist/agents/copilot-dynamic-headers.js +37 -0
  14. package/dist/agents/current-model-catalog.js +6 -3
  15. package/dist/agents/docs-path.js +3 -3
  16. package/dist/agents/embedded-pi-mcp.js +4 -4
  17. package/dist/agents/identity-avatar.js +3 -3
  18. package/dist/agents/identity-file.js +2 -2
  19. package/dist/agents/model-catalog-source.js +2 -2
  20. package/dist/agents/model-catalog.js +1 -1
  21. package/dist/agents/model-metadata.js +34 -6
  22. package/dist/agents/openai-codex-app-server.js +499 -0
  23. package/dist/agents/pi-embedded-runner/compact.js +3 -3
  24. package/dist/agents/pi-embedded-runner/extra-params.js +159 -95
  25. package/dist/agents/pi-embedded-runner/model.js +62 -1
  26. package/dist/agents/pi-embedded-runner/moonshot-stream-wrappers.js +46 -0
  27. package/dist/agents/pi-embedded-runner/openai-stream-wrappers.js +221 -0
  28. package/dist/agents/pi-embedded-runner/run/attempt.js +6 -4
  29. package/dist/agents/pi-embedded-runner/run.js +5 -2
  30. package/dist/agents/pi-embedded-runner/utils.js +1 -1
  31. package/dist/agents/pi-embedded-runner.js +1 -1
  32. package/dist/agents/pi-embedded-subscribe.raw-stream.js +3 -3
  33. package/dist/agents/pi-extensions/compaction-safeguard.js +3 -3
  34. package/dist/agents/pi-model-discovery.js +6 -6
  35. package/dist/agents/pi-project-settings.js +3 -3
  36. package/dist/agents/pi-tools.js +2 -2
  37. package/dist/agents/sandbox/fs-bridge.js +2 -2
  38. package/dist/agents/session-dirs.js +4 -4
  39. package/dist/agents/session-write-lock.js +13 -13
  40. package/dist/agents/shell-utils.js +5 -5
  41. package/dist/agents/skills/bundled-dir.js +4 -4
  42. package/dist/agents/skills/local-loader.js +6 -6
  43. package/dist/agents/skills/plugin-skills.js +2 -2
  44. package/dist/agents/skills/workspace.js +13 -13
  45. package/dist/agents/skills-install-download.js +7 -7
  46. package/dist/agents/skills-install-plan.js +2 -2
  47. package/dist/agents/skills-install.js +2 -2
  48. package/dist/agents/skills-status.js +2 -2
  49. package/dist/agents/subagent-depth.js +2 -2
  50. package/dist/agents/system-prompt-params.js +2 -2
  51. package/dist/agents/tools/discord-actions-messaging.js +1 -1
  52. package/dist/agents/tools/message-tool.js +1 -1
  53. package/dist/agents/tools/session-status-tool.js +3 -3
  54. package/dist/agents/tools/slack-actions.js +1 -1
  55. package/dist/agents/tools/tts-tool.js +1 -1
  56. package/dist/agents/workspace.js +22 -22
  57. package/dist/auto-reply/reply/agent-runner-execution.js +2 -2
  58. package/dist/auto-reply/reply/agent-runner.js +2 -2
  59. package/dist/auto-reply/reply/commands-export-session.js +7 -7
  60. package/dist/auto-reply/reply/commands-models.js +1 -1
  61. package/dist/auto-reply/reply/directive-handling.impl.js +4 -1
  62. package/dist/auto-reply/reply/dispatch-acp.js +1 -1
  63. package/dist/auto-reply/reply/dispatch-from-config.js +1 -1
  64. package/dist/auto-reply/reply/get-reply-run.js +20 -2
  65. package/dist/auto-reply/reply/model-selection.js +1 -1
  66. package/dist/auto-reply/reply/post-compaction-audit.js +3 -3
  67. package/dist/auto-reply/reply/post-compaction-context.js +3 -3
  68. package/dist/auto-reply/reply/session-reset-model.js +1 -1
  69. package/dist/auto-reply/reply/session.js +3 -3
  70. package/dist/auto-reply/skill-commands.js +3 -3
  71. package/dist/auto-reply/status.js +7 -7
  72. package/dist/auto-reply/thinking.js +1 -1
  73. package/dist/brand.js +1 -1
  74. package/dist/browser/cdp.helpers.js +2 -2
  75. package/dist/browser/chrome.executables.js +3 -3
  76. package/dist/browser/chrome.js +5 -5
  77. package/dist/browser/chrome.profile-decoration.js +6 -6
  78. package/dist/browser/extension-relay.js +7 -7
  79. package/dist/browser/profiles-service.js +2 -2
  80. package/dist/browser/server-context.js +2 -2
  81. package/dist/browser/trash.js +4 -4
  82. package/dist/build-info.json +3 -3
  83. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  84. package/dist/canvas-host/server.js +4 -4
  85. package/dist/capabilities/catalog.js +3 -3
  86. package/dist/channels/plugins/catalog.js +3 -3
  87. package/dist/cli/browser-cli-extension.js +6 -6
  88. package/dist/cli/command-format.js +2 -2
  89. package/dist/cli/cron-cli/register.cron-add.js +1 -1
  90. package/dist/cli/cron-cli/register.cron-simple.js +2 -2
  91. package/dist/cli/dns-cli.js +9 -9
  92. package/dist/cli/gateway-cli/dev.js +5 -5
  93. package/dist/cli/gateway-cli/run.js +2 -2
  94. package/dist/cli/hooks-cli.js +5 -5
  95. package/dist/cli/lightweight/gateway-runtime-probe.js +2 -2
  96. package/dist/cli/memory-cli.js +7 -7
  97. package/dist/cli/nodes-media-utils.js +2 -2
  98. package/dist/cli/plugins-cli.js +2 -2
  99. package/dist/cli/program/register.agent.js +1 -1
  100. package/dist/cli/secrets-cli.js +3 -3
  101. package/dist/cli/windows-argv.js +2 -2
  102. package/dist/commands/agent.js +22 -3
  103. package/dist/commands/dashboard-link.js +3 -3
  104. package/dist/commands/doctor-config-flow.js +1 -1
  105. package/dist/commands/doctor-install.js +5 -5
  106. package/dist/commands/doctor-memory-search.js +2 -2
  107. package/dist/commands/doctor-platform-notes.js +2 -2
  108. package/dist/commands/doctor-sandbox.js +2 -2
  109. package/dist/commands/doctor-state-integrity.js +23 -23
  110. package/dist/commands/doctor-workspace.js +3 -3
  111. package/dist/commands/doctor.js +3 -3
  112. package/dist/commands/hosted-dashboard-probe.js +3 -3
  113. package/dist/commands/managed-up.js +2 -2
  114. package/dist/commands/model-picker.js +4 -3
  115. package/dist/commands/models/list.probe.js +1 -1
  116. package/dist/commands/models/list.registry.js +3 -2
  117. package/dist/commands/models/list.status-command.js +2 -2
  118. package/dist/commands/onboard-auth.credentials.js +3 -3
  119. package/dist/commands/onboarding/plugin-install.js +2 -2
  120. package/dist/commands/openai-codex-model-default.js +3 -2
  121. package/dist/commands/sessions-cleanup.js +2 -2
  122. package/dist/commands/signal-install.js +6 -6
  123. package/dist/commands/status-all/channels.js +2 -2
  124. package/dist/commands/wallet.js +47 -47
  125. package/dist/config/cache-utils.js +2 -2
  126. package/dist/config/includes.js +5 -5
  127. package/dist/config/io.js +2 -2
  128. package/dist/config/paths.js +3 -3
  129. package/dist/config/sat-runtime-ids.js +3 -3
  130. package/dist/config/sessions/disk-budget.js +6 -6
  131. package/dist/config/sessions/paths.js +2 -2
  132. package/dist/config/sessions/store.js +17 -17
  133. package/dist/config/sessions/transcript.js +4 -4
  134. package/dist/config/talk.js +2 -2
  135. package/dist/config/zod-schema.agent-defaults.js +4 -2
  136. package/dist/config/zod-schema.agent-runtime.js +4 -2
  137. package/dist/config/zod-schema.core.js +4 -2
  138. package/dist/control-ui/assets/{app-D2RaTXoV.js → app-D7TXyNRi.js} +390 -383
  139. package/dist/control-ui/assets/chat-model-ref-Djkv93yn.js +2 -0
  140. package/dist/control-ui/assets/{index-D2nC6I-9.js → index-BmSBom-w.js} +3 -3
  141. package/dist/control-ui/assets/{providers-CyjiG5Jw.js → providers-Cc89iMdx.js} +3 -3
  142. package/dist/control-ui/index.html +1 -1
  143. package/dist/control-ui/version.json +1 -1
  144. package/dist/cron/isolated-agent/run.js +6 -2
  145. package/dist/cron/service/jobs.js +11 -1
  146. package/dist/cron/service/store.js +2 -2
  147. package/dist/cron/store.js +6 -6
  148. package/dist/daemon/systemd-system.js +5 -5
  149. package/dist/discord/monitor/gateway-plugin.js +2 -2
  150. package/dist/discord/monitor/thread-bindings.state.js +2 -2
  151. package/dist/discord/voice/manager.js +1 -1
  152. package/dist/extensions/sat-mining/src/sat-bond-layout.js +9 -9
  153. package/dist/gateway/client.js +4 -4
  154. package/dist/gateway/control-ui-boot-check.js +6 -6
  155. package/dist/gateway/control-ui-login.js +7 -7
  156. package/dist/gateway/control-ui.js +9 -9
  157. package/dist/gateway/hooks-mapping.js +4 -4
  158. package/dist/gateway/protocol/schema/agents-models-skills.js +63 -4
  159. package/dist/gateway/server-discovery.js +2 -2
  160. package/dist/gateway/server-http.js +4 -4
  161. package/dist/gateway/server-methods/chat.js +3 -3
  162. package/dist/gateway/server-methods/models.js +4 -3
  163. package/dist/gateway/server-methods/sessions.js +8 -8
  164. package/dist/gateway/server-methods/tts.js +2 -2
  165. package/dist/gateway/server-methods/usage.js +2 -2
  166. package/dist/gateway/server-model-catalog.js +1 -1
  167. package/dist/gateway/server.impl.js +3 -3
  168. package/dist/gateway/session-compaction-checkpoints.js +4 -4
  169. package/dist/gateway/session-utils.fs.js +24 -24
  170. package/dist/gateway/session-utils.js +6 -6
  171. package/dist/gateway/sessions-patch.js +27 -24
  172. package/dist/hooks/bundled-dir.js +4 -4
  173. package/dist/hooks/gmail-setup-utils.js +6 -6
  174. package/dist/hooks/import-url.js +2 -2
  175. package/dist/hooks/loader.js +4 -4
  176. package/dist/hooks/workspace.js +7 -7
  177. package/dist/infra/archive.js +17 -17
  178. package/dist/infra/boundary-file-read.js +2 -2
  179. package/dist/infra/boundary-path.js +15 -15
  180. package/dist/infra/brew.js +2 -2
  181. package/dist/infra/control-ui-assets.js +14 -14
  182. package/dist/infra/device-auth-store.js +8 -8
  183. package/dist/infra/device-identity.js +8 -8
  184. package/dist/infra/dotenv.js +2 -2
  185. package/dist/infra/exec-approvals.js +8 -8
  186. package/dist/infra/exec-command-resolution.js +4 -4
  187. package/dist/infra/exec-safe-bin-trust.js +2 -2
  188. package/dist/infra/fased-root.js +5 -5
  189. package/dist/infra/fs-safe.js +14 -14
  190. package/dist/infra/gateway-lock.js +11 -11
  191. package/dist/infra/git-commit.js +5 -5
  192. package/dist/infra/git-root.js +4 -4
  193. package/dist/infra/hosted-runtime-artifact.js +3 -3
  194. package/dist/infra/is-main.js +2 -2
  195. package/dist/infra/json-file.js +7 -7
  196. package/dist/infra/outbound/delivery-queue.js +16 -16
  197. package/dist/infra/path-env.js +3 -3
  198. package/dist/infra/ports-lsof.js +4 -4
  199. package/dist/infra/provider-usage.auth.js +3 -3
  200. package/dist/infra/safe-open-sync.js +2 -2
  201. package/dist/infra/session-cost-usage.js +9 -9
  202. package/dist/infra/shell-env.js +2 -2
  203. package/dist/infra/state-migrations.fs.js +6 -6
  204. package/dist/infra/state-migrations.js +23 -23
  205. package/dist/infra/tmp-fased-dir.js +6 -6
  206. package/dist/infra/widearea-dns.js +3 -3
  207. package/dist/infra/wsl.js +2 -2
  208. package/dist/light-update-status.js +11 -11
  209. package/dist/line/accounts.js +2 -2
  210. package/dist/line/download.js +2 -2
  211. package/dist/logging/config.js +3 -3
  212. package/dist/logging/logger.js +7 -7
  213. package/dist/managed/federation.js +3 -3
  214. package/dist/managed/tunnel.js +3 -3
  215. package/dist/media/store.js +13 -13
  216. package/dist/media-understanding/runner.js +3 -3
  217. package/dist/memory/embeddings.js +2 -2
  218. package/dist/memory/internal.js +10 -10
  219. package/dist/memory/manager-sync-ops.js +7 -7
  220. package/dist/memory/repair-executor.js +17 -17
  221. package/dist/node-host/invoke-system-run-plan.js +8 -8
  222. package/dist/node-host/invoke.js +2 -2
  223. package/dist/node-host/runner.js +3 -3
  224. package/dist/pairing/pairing-store.js +3 -3
  225. package/dist/plugin-sdk/{accounts-CeRNo5Ae.js → accounts-DzWlKv1U.js} +1 -1
  226. package/dist/plugin-sdk/{actions-OMRHtXPj.js → actions-BplQVLL6.js} +4 -4
  227. package/dist/plugin-sdk/{active-listener-BlIkS3iR.js → active-listener-x4MLhYUw.js} +1 -1
  228. package/dist/plugin-sdk/{allow-list-BYeKk0Sy.js → allow-list-DyAxs4yw.js} +1 -1
  229. package/dist/plugin-sdk/{audio-preflight-B2n3a2Tj.js → audio-preflight-G8h3Sn8_.js} +43 -47
  230. package/dist/plugin-sdk/{audit-Ppg6dR_b.js → audit-CWknklvI.js} +1 -1
  231. package/dist/plugin-sdk/{channel-access-af8dWWRv.js → channel-access-a9Dnfw7-.js} +1 -1
  232. package/dist/plugin-sdk/{channel-access-configure-B6IAGlE0.js → channel-access-configure-CD4QDN5E.js} +1 -1
  233. package/dist/plugin-sdk/{channel-adapters.discord-IOZP8Cv5.js → channel-adapters.discord-BS4S4Svh.js} +1 -1
  234. package/dist/plugin-sdk/channel-plugin-common.d.ts +3 -3
  235. package/dist/plugin-sdk/channel-plugin-common.js +4 -4
  236. package/dist/plugin-sdk/{chunk-CD76Byie.js → chunk-B8EZkwiT.js} +1 -1
  237. package/dist/plugin-sdk/{chunk-items-Bu19zrYH.js → chunk-items-CEPklxGe.js} +1 -1
  238. package/dist/plugin-sdk/command-status.d.ts +2 -2
  239. package/dist/plugin-sdk/command-status.js +43 -47
  240. package/dist/plugin-sdk/{commands-registry-DgS55tNj.js → commands-registry-BfEa4tFA.js} +2 -2
  241. package/dist/plugin-sdk/{common-CWvfeiX0.js → common-CbfckC19.js} +1 -1
  242. package/dist/plugin-sdk/{config-CYDETqcF.js → config-Bt5GhnA-.js} +29 -15
  243. package/dist/plugin-sdk/{config-schema-CQ4EVcQG.js → config-schema-B9DKr6J5.js} +95877 -81287
  244. package/dist/plugin-sdk/device-pair.d.ts +1 -1
  245. package/dist/plugin-sdk/device-pair.js +2 -3
  246. package/dist/plugin-sdk/{diagnostic-Dfn1iERm.js → diagnostic-DLL_zekv.js} +3 -3
  247. package/dist/plugin-sdk/{directory-live-DatqU-eS.js → directory-live-CSuYxdwk.js} +1 -1
  248. package/dist/plugin-sdk/{directory-live-ClwN5KKq.js → directory-live-Dw7ZgC9_.js} +1 -1
  249. package/dist/plugin-sdk/discord.d.ts +5 -5
  250. package/dist/plugin-sdk/discord.js +31 -32
  251. package/dist/plugin-sdk/{draft-stream-controls-D4Tb_iS_.js → draft-stream-controls-BqchW1vi.js} +1 -1
  252. package/dist/plugin-sdk/{fetch-guard-BuYrl6q2.js → fetch-guard-CeG6u6ld.js} +1 -1
  253. package/dist/plugin-sdk/{filesystem-manager-B9DDPgfU.js → filesystem-manager-BGGGrkiN.js} +2 -2
  254. package/dist/plugin-sdk/{fs-safe-BG-VzVkL.js → fs-safe-xBqok6yR.js} +1 -1
  255. package/dist/plugin-sdk/{group-mentions-BxDgHCgj.d.ts → group-mentions-BHRff6j8.d.ts} +1 -1
  256. package/dist/plugin-sdk/{guilds-BeT3iHHJ.js → guilds-CDhRIX57.js} +1 -1
  257. package/dist/plugin-sdk/{handle-action-B75UVKxF.js → handle-action-DbzZFYnG.js} +24 -25
  258. package/dist/plugin-sdk/{helpers-BuEwju6y.js → helpers-CluGKuIV.js} +1 -1
  259. package/dist/plugin-sdk/{image-ops-C66HPeAZ.js → image-ops-CUaLtIFj.js} +1 -1
  260. package/dist/plugin-sdk/index.d.ts +7 -7
  261. package/dist/plugin-sdk/index.js +47 -51
  262. package/dist/plugin-sdk/json-store.js +6 -6
  263. package/dist/plugin-sdk/{login-Amr2DpKU.js → login-DJuHYDiK.js} +3 -3
  264. package/dist/plugin-sdk/{login-qr-DMQNEi9m.js → login-qr-CbHL5ayf.js} +3 -3
  265. package/dist/plugin-sdk/{manager-Bvpq49BI.js → manager-oHAvZCT3.js} +7 -7
  266. package/dist/plugin-sdk/{markdown-tables-DmQ7oXOm.js → markdown-tables-Mkx7k92Y.js} +1 -1
  267. package/dist/plugin-sdk/{media-ByLQbEwJ.js → media-CA8sTmVE.js} +4 -4
  268. package/dist/plugin-sdk/{monitor-K_u6daGa.js → monitor-CZrN9pev.js} +51 -55
  269. package/dist/plugin-sdk/{monitor-S_7LrvSj.js → monitor-CmwGqNyV.js} +61 -65
  270. package/dist/plugin-sdk/{openresponses-http-BrDJUZXR.js → openresponses-http-CWOd4war.js} +43 -47
  271. package/dist/plugin-sdk/{optional-runtime-dependency-CbYjAC2b.js → optional-runtime-dependency-DKmk9PZa.js} +1 -1
  272. package/dist/plugin-sdk/{outbound-BuDafBBI.js → outbound-0oN9IfNw.js} +9 -9
  273. package/dist/plugin-sdk/{outbound-attachment-DmZmUqFP.js → outbound-attachment-DdVkqUzE.js} +2 -2
  274. package/dist/plugin-sdk/{pairing-message-D0-UWGFJ.d.ts → pairing-message-BMkkS038.d.ts} +2 -2
  275. package/dist/plugin-sdk/{pairing-message-e4D4eBDA.js → pairing-message-ClqhfCUk.js} +1 -1
  276. package/dist/plugin-sdk/{pairing-store-T3IGoGZg.js → pairing-store-B01mCSct.js} +2 -2
  277. package/dist/plugin-sdk/{pi-model-discovery-DvAG_Png.js → pi-model-discovery-Buz0JC1Y.js} +1 -1
  278. package/dist/plugin-sdk/{pi-model-discovery-runtime-NjkUgjIf.js → pi-model-discovery-runtime-DuwuoteY.js} +2 -2
  279. package/dist/plugin-sdk/{probe-Cyb-DGA3.js → probe--7xtfzMm.js} +3 -3
  280. package/dist/plugin-sdk/{probe-Dlk0Jxpw.js → probe-BFroeK3g.js} +1 -1
  281. package/dist/plugin-sdk/{probe-D8JAILir.js → probe-l_whvGLY.js} +1 -1
  282. package/dist/plugin-sdk/{resolve-channels-zEnvugag.js → probe-xY3Ky0Tx.js} +3 -4
  283. package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +2 -2
  284. package/dist/plugin-sdk/{pw-ai-D7eW43DL.js → pw-ai-B0domrii.js} +6 -8
  285. package/dist/plugin-sdk/{qmd-manager-DCUE21Kj.js → qmd-manager-CFFeM4Fl.js} +3 -3
  286. package/dist/plugin-sdk/{query-expansion-Zr9qQixm.js → query-expansion-CAI2kKLQ.js} +1 -1
  287. package/dist/plugin-sdk/{replies-BMIPmEoP.js → replies-1macZ1mZ.js} +4 -4
  288. package/dist/plugin-sdk/{resolve-channels-ChWKWtA9.js → resolve-channels-87LZrFk_.js} +2 -2
  289. package/dist/plugin-sdk/resolve-channels-CwB2_019.js +4 -0
  290. package/dist/plugin-sdk/{resolve-outbound-target-CXCqUUPV.js → resolve-outbound-target-BdH6LUoW.js} +2 -2
  291. package/dist/plugin-sdk/{resolve-route-DJN-SUSt.js → resolve-route-CkNIKKEW.js} +1 -1
  292. package/dist/plugin-sdk/{resolve-users-BTvjQuui.js → resolve-users-Cxb5wpAQ.js} +1 -1
  293. package/dist/plugin-sdk/{resolve-users-CTzoruIZ.js → resolve-users-V6dHh_2B.js} +2 -2
  294. package/dist/plugin-sdk/{retry-policy-CY1qY6d7.js → retry-policy-9ybIh4Fq.js} +1 -1
  295. package/dist/plugin-sdk/{runtime-CgOkQe0w.js → runtime-Dy420wBu.js} +3 -3
  296. package/dist/plugin-sdk/{runtime-dependency-DvdRNMvs.js → runtime-dependency-CIw9t7-k.js} +123 -15
  297. package/dist/plugin-sdk/{sandbox-paths-lj7_EVuA.js → sandbox-paths-w64tYl0v.js} +1 -1
  298. package/dist/plugin-sdk/sat-runtime.d.ts +3 -3
  299. package/dist/plugin-sdk/sat-runtime.js +44 -10
  300. package/dist/plugin-sdk/{send-BAz22RZr.js → send-2VcOMTN5.js} +9 -9
  301. package/dist/plugin-sdk/{send-2ITqny2W.js → send-BQUtCJFW.js} +10 -10
  302. package/dist/plugin-sdk/{send-Cr-dj6S-.js → send-DPJIIYAs.js} +6 -6
  303. package/dist/plugin-sdk/{send-BG3RWyil.js → send-Dqes9tdU.js} +13 -13
  304. package/dist/plugin-sdk/{send-eTxqFFsw.js → send-J4JWKP62.js} +8 -8
  305. package/dist/plugin-sdk/{session-C8nJmmVE.js → session-C_n2S5ub.js} +3 -3
  306. package/dist/plugin-sdk/{skill-commands-Rm5by9S8.js → skill-commands-B7wx9ax8.js} +102 -102
  307. package/dist/plugin-sdk/{slack-xvIVvyEM.js → slack-BouRQG-W.js} +64 -68
  308. package/dist/plugin-sdk/{slack-actions-BNIALJTA.js → slack-actions-CasHVtiq.js} +20 -21
  309. package/dist/plugin-sdk/slack.d.ts +5 -5
  310. package/dist/plugin-sdk/slack.js +13 -13
  311. package/dist/plugin-sdk/{ssrf-BZG8Ztod.js → ssrf-fG4UHKBw.js} +180 -2
  312. package/dist/plugin-sdk/{sticker-cache-D3oDiu2u.js → sticker-cache-BvGEUas3.js} +3 -3
  313. package/dist/plugin-sdk/{tables-DS5L7lCA.js → tables-CjlQJV4r.js} +2 -2
  314. package/dist/plugin-sdk/{device-pairing-D2Yq-_U6.js → tailscale-status-DwpNdO3Z.js} +104 -2
  315. package/dist/plugin-sdk/{targets-D6lUomJc.js → targets-QfP164Dh.js} +2 -2
  316. package/dist/plugin-sdk/{telegram-actions-MSFkDn0m.js → telegram-actions-CwYjV6Db.js} +48 -52
  317. package/dist/plugin-sdk/telegram.d.ts +5 -5
  318. package/dist/plugin-sdk/telegram.js +11 -11
  319. package/dist/plugin-sdk/{thread-bindings.lifecycle-Ry6Vcgw3.js → thread-bindings.lifecycle-DU4iX_Jr.js} +3 -3
  320. package/dist/plugin-sdk/{thread-bindings.state-C0stmvNk.js → thread-bindings.state-BgYWFjNF.js} +2 -2
  321. package/dist/plugin-sdk/{tmp-fased-dir-D91GExk4.d.ts → tmp-fased-dir-BdFQvrvw.d.ts} +2 -2
  322. package/dist/plugin-sdk/{types-DVTIpopt.d.ts → types-BYDL6dQj.d.ts} +2 -2
  323. package/dist/plugin-sdk/{types-DKvBJHfH.d.ts → types-CLIvQaVg.d.ts} +26 -1
  324. package/dist/plugin-sdk/{types-BzadOItY.d.ts → types-DyhXnYUr.d.ts} +1 -1
  325. package/dist/plugin-sdk/{types.plugin-BiHPaDTF.d.ts → types.plugin-_fbu40Re.d.ts} +7 -5
  326. package/dist/plugin-sdk/{web-DRNJxHXA.js → web-D0yENDve.js} +52 -56
  327. package/dist/plugin-sdk/{whatsapp-actions-BDXZF2R5.js → whatsapp-actions-BT2nPLyo.js} +18 -19
  328. package/dist/plugin-sdk/{whatsapp-heartbeat-CKgmwCGr.js → whatsapp-heartbeat-CiABSZ6G.js} +2 -2
  329. package/dist/plugin-sdk/whatsapp.d.ts +5 -5
  330. package/dist/plugin-sdk/whatsapp.js +14 -14
  331. package/dist/plugin-sdk/{wsl-Biw7Mj39.js → wsl-B_ojyEtC.js} +53 -53
  332. package/dist/plugins/bundled-dir.js +3 -3
  333. package/dist/plugins/discovery.js +11 -11
  334. package/dist/plugins/loader.js +13 -13
  335. package/dist/plugins/manifest-registry.js +2 -2
  336. package/dist/plugins/manifest.js +4 -4
  337. package/dist/plugins/path-safety.js +3 -3
  338. package/dist/plugins/runtime/index.js +1 -1
  339. package/dist/plugins/status-cache.js +9 -9
  340. package/dist/plugins/update.js +3 -3
  341. package/dist/plugins/web-search-install-catalog.js +3 -3
  342. package/dist/providers/github-copilot-model-discovery.js +51 -0
  343. package/dist/providers/openai-codex-model-discovery.js +166 -0
  344. package/dist/providers/refresh.js +116 -34
  345. package/dist/providers/registry.js +2 -2
  346. package/dist/providers/runtime-model-catalog.js +97 -28
  347. package/dist/secrets/apply.js +16 -16
  348. package/dist/secrets/audit.js +11 -11
  349. package/dist/secrets/shared.js +9 -9
  350. package/dist/security/scan-paths.js +2 -2
  351. package/dist/shared/config-eval.js +2 -2
  352. package/dist/shared/model-thinking.js +13 -2
  353. package/dist/shared/pid-alive.js +2 -2
  354. package/dist/tasks/standing-orders.js +5 -5
  355. package/dist/tasks/task-flow-registry.js +5 -5
  356. package/dist/tasks/task-registry.js +5 -5
  357. package/dist/tasks/workflow-definitions.js +6 -6
  358. package/dist/telegram/bot-message-context.js +1 -1
  359. package/dist/telegram/token.js +5 -5
  360. package/dist/utils.js +5 -5
  361. package/dist/wallet/local-socket-signer-broker.js +16 -16
  362. package/dist/wallet/providers/embedded-keystore-adapter.js +5 -5
  363. package/dist/wallet/providers/local-socket-signer-adapter.js +2 -2
  364. package/dist/wallet/wallet-approval-auth.js +5 -5
  365. package/dist/wallet/wallet-audit-log.js +5 -5
  366. package/dist/wallet/wallet-custody.js +21 -21
  367. package/dist/wallet/wallet-inbound-events.js +5 -5
  368. package/dist/wallet/wallet-observability.js +5 -5
  369. package/dist/wallet/wallet-policy.js +9 -9
  370. package/dist/wallet/wallet-provider-registry.js +7 -7
  371. package/dist/wallet/wallet-runtime-config.js +3 -3
  372. package/dist/wallet/wallet-secrets-store.js +22 -22
  373. package/dist/wallet/wallet-send-approvals.js +5 -5
  374. package/dist/wallet/wallet-settlement-links.js +5 -5
  375. package/dist/web/accounts.js +3 -3
  376. package/dist/web/auth-store.js +18 -18
  377. package/dist/web/session.js +4 -4
  378. package/dist/wizard/host-security-capability.js +2 -2
  379. package/dist/wizard/onboarding.host-security.js +7 -7
  380. package/dist/wizard/onboarding.js +7 -7
  381. package/dist/wizard/onboarding.wallet.js +44 -44
  382. package/extensions/acpx/package.json +1 -1
  383. package/extensions/bluebubbles/package.json +1 -1
  384. package/extensions/copilot-proxy/package.json +1 -1
  385. package/extensions/diagnostics-otel/package.json +1 -1
  386. package/extensions/fased-federation/package.json +1 -1
  387. package/extensions/google-gemini-cli-auth/package.json +1 -1
  388. package/extensions/imessage/package.json +1 -1
  389. package/extensions/irc/package.json +1 -1
  390. package/extensions/line/package.json +1 -1
  391. package/extensions/llm-task/package.json +1 -1
  392. package/extensions/lobster/package.json +1 -1
  393. package/extensions/matrix/CHANGELOG.md +6 -0
  394. package/extensions/matrix/package.json +1 -1
  395. package/extensions/mattermost/package.json +1 -1
  396. package/extensions/memory-core/package.json +2 -2
  397. package/extensions/memory-lancedb/package.json +1 -1
  398. package/extensions/minimax-portal-auth/package.json +1 -1
  399. package/extensions/msteams/CHANGELOG.md +6 -0
  400. package/extensions/msteams/package.json +1 -1
  401. package/extensions/nextcloud-talk/package.json +1 -1
  402. package/extensions/nostr/CHANGELOG.md +6 -0
  403. package/extensions/nostr/package.json +1 -1
  404. package/extensions/open-prose/package.json +1 -1
  405. package/extensions/sat-mining/package.json +1 -1
  406. package/extensions/signal/package.json +1 -1
  407. package/extensions/synology-chat/package.json +1 -1
  408. package/extensions/tlon/package.json +1 -1
  409. package/extensions/twitch/CHANGELOG.md +6 -0
  410. package/extensions/twitch/package.json +1 -1
  411. package/extensions/voice-call/CHANGELOG.md +6 -0
  412. package/extensions/voice-call/package.json +1 -1
  413. package/extensions/zalo/CHANGELOG.md +6 -0
  414. package/extensions/zalo/package.json +1 -1
  415. package/extensions/zalouser/CHANGELOG.md +6 -0
  416. package/extensions/zalouser/package.json +1 -1
  417. package/package.json +2 -1
  418. package/dist/control-ui/assets/chat-model-ref-BZFblCeY.js +0 -2
  419. package/dist/plugin-sdk/ip-C70a-YlD.js +0 -181
  420. package/dist/plugin-sdk/tailscale-status-ClsquRGs.js +0 -104
  421. package/dist/plugin-sdk/wallet-status-f0HagNeO.js +0 -11947
  422. package/dist/plugin-sdk/ws-CocpWGhl.js +0 -114
  423. /package/dist/plugin-sdk/{blocks-input-Dcitfh7h.js → blocks-input-Bg-8S2pl.js} +0 -0
  424. /package/dist/plugin-sdk/{channel-activity-Cg1xRoc2.js → channel-activity-DBDMQ3yI.js} +0 -0
  425. /package/dist/plugin-sdk/{channel-core-BOkyXXLa.js → channel-core-CFRs8LPy.js} +0 -0
  426. /package/dist/plugin-sdk/{client-D2N7hqVu.js → client-pI228AVT.js} +0 -0
  427. /package/dist/plugin-sdk/{command-poll-backoff-NAePk3eL.js → command-poll-backoff-yJU83wEq.js} +0 -0
  428. /package/dist/plugin-sdk/{date-time-CE3Uer3C.js → date-time-uUevHscU.js} +0 -0
  429. /package/dist/plugin-sdk/{diagnostic-session-state-HO94DMou.js → diagnostic-session-state-DqgfGYqZ.js} +0 -0
  430. /package/dist/plugin-sdk/{draft-stream-loop-CKyHn8IX.js → draft-stream-loop-CrOPfV3F.js} +0 -0
  431. /package/dist/plugin-sdk/{fetch-Cu-ahkie.js → fetch-BtmoPIlf.js} +0 -0
  432. /package/dist/plugin-sdk/{gateway-registry-DFsoY6C0.js → gateway-registry-DZDsqicG.js} +0 -0
  433. /package/dist/plugin-sdk/{inbound-context-BFnIdcqI.js → inbound-context-DrAcXE0y.js} +0 -0
  434. /package/dist/plugin-sdk/{internal-qo16nNU1.js → internal-CG_nHo-2.js} +0 -0
  435. /package/dist/plugin-sdk/{memory-search-C3C0bD2H.js → memory-search-VFll-AIb.js} +0 -0
  436. /package/dist/plugin-sdk/{pairing-token-N_6Jbt1L.js → pairing-token-Cs3BRKc0.js} +0 -0
  437. /package/dist/plugin-sdk/{path-alias-guards-Dg3gU-MA.js → path-alias-guards-BJZD5JMJ.js} +0 -0
  438. /package/dist/plugin-sdk/{polls-DQrR-qT3.js → polls-DKQXVfJp.js} +0 -0
  439. /package/dist/plugin-sdk/{proxy-7xs_rsnV.js → proxy-DWpYcsvR.js} +0 -0
  440. /package/dist/plugin-sdk/{qmd-scope-D1sSG_Rx.js → qmd-scope-CdX34VCV.js} +0 -0
  441. /package/dist/plugin-sdk/{redact-identifier-Q3tkvxhm.js → redact-identifier-Lt7t3l7S.js} +0 -0
  442. /package/dist/plugin-sdk/{redact-sensitive-url-dPvnFFsK.js → redact-sensitive-url-g-ukZjwA.js} +0 -0
  443. /package/dist/plugin-sdk/{render-Bwu_WxwA.js → render-e7fENCYH.js} +0 -0
  444. /package/dist/plugin-sdk/{reply-prefix-Bqzm6DC1.js → reply-prefix-ClpxvL_w.js} +0 -0
  445. /package/dist/plugin-sdk/{reply-reference-BkbK_DWT.js → reply-reference-Bqk-7HXE.js} +0 -0
  446. /package/dist/plugin-sdk/{secure-random-Bl-AVLVb.js → secure-random-BIkG-k4s.js} +0 -0
  447. /package/dist/plugin-sdk/{shared-clhhbWN3.js → shared-CBgp_GBw.js} +0 -0
  448. /package/dist/plugin-sdk/{target-errors-C_SVKoEv.js → target-errors-Ckufe179.js} +0 -0
  449. /package/dist/plugin-sdk/{targets-BDvvnlph.js → targets-CoMJ1ry1.js} +0 -0
  450. /package/dist/plugin-sdk/{tokens-BvtlOzVP.js → tokens-BbnqfVuu.js} +0 -0
  451. /package/dist/plugin-sdk/{tool-loop-detection-CWphm1k_.js → tool-loop-detection-Bp8bPJLs.js} +0 -0
  452. /package/dist/plugin-sdk/{ui-e020ouhJ.js → ui-Be8cLHIS.js} +0 -0
  453. /package/dist/plugin-sdk/{with-timeout-BYrRAYFV.js → with-timeout-ckWB8rTo.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import { t as ChatType } from "./chat-type-CK5stkc4.js";
2
- import { An as GetReplyOptions, At as FasedAgentConfig, B as ChannelCapabilities, Ct as RuntimeEnv, Dn as MarkdownTableMode, E as ChannelPairingAdapter, F as ChannelAccountSnapshot, G as ChannelId, J as ChannelMessageActionAdapter, Jt as SlackSlashCommandConfig, Kt as TelegramGroupConfig, L as ChannelAgentPromptAdapter, N as BaseProbeResult, Nt as ModelProviderConfig, On as ReplyToMode, Ot as sendMessageDiscord, P as BaseTokenResolution, R as ChannelAgentTool, St as sendMessageIMessage, Tn as HumanDelayConfig, V as ChannelDirectoryEntry, _t as sendPollWhatsApp, bn as GroupToolPolicyConfig, bt as sendMessageSlack, c as writeConfigFile, dn as chunkMarkdownTextWithMode, f as ChannelCommandAdapter, fn as chunkText, ft as FinalizedMsgContext, gt as sendMessageWhatsApp, h as ChannelElevatedAdapter, hn as resolveTextChunkLimit, ht as ShouldHandleTextCommandsParams, jn as ReplyPayload, kt as sendPollDiscord, ln as chunkByNewline, mn as resolveChunkMode, mt as CommandNormalizeOptions, n as ChannelPlugin, o as WizardPrompter, ot as ChannelThreadingAdapter, p as ChannelConfigAdapter, pn as chunkTextWithMode, pt as MsgContext, q as ChannelMentionAdapter, s as loadConfig, sn as TtsAutoMode, un as chunkMarkdownText, v as ChannelGroupAdapter, vn as PollInput, vt as sendMessageTelegram, wn as GroupPolicy, xt as sendMessageSignal, yn as GroupToolPolicyBySenderConfig, yt as sendPollTelegram } from "./types.plugin-BiHPaDTF.js";
3
- import { C as readWebSelfId, H as resolveStateDir, M as LookupFn, P as SsrFPolicy, S as logoutWeb, _ as PushTestParams, a as GatewayClient, b as getWebAuthAgeMs, c as GatewayRequestHandlerOptions, i as OperatorScope, j as LogLevel, l as GatewayRequestHandlers, m as ChatInjectParams, n as AuthProfileStore, o as GatewayRequestContext, r as OAuthCredential, s as GatewayRequestHandler, t as AuthProfileCredential, v as WebLoginStartParams, w as webAuthExists, x as logWebSelfId, y as WebLoginWaitParams } from "./types-DKvBJHfH.js";
2
+ import { At as FasedAgentConfig, B as ChannelCapabilities, Ct as RuntimeEnv, E as ChannelPairingAdapter, En as HumanDelayConfig, F as ChannelAccountSnapshot, G as ChannelId, J as ChannelMessageActionAdapter, L as ChannelAgentPromptAdapter, Mn as ReplyPayload, N as BaseProbeResult, On as MarkdownTableMode, Ot as sendMessageDiscord, P as BaseTokenResolution, Pt as ModelProviderConfig, R as ChannelAgentTool, St as sendMessageIMessage, Tn as GroupPolicy, V as ChannelDirectoryEntry, Yt as SlackSlashCommandConfig, _t as sendPollWhatsApp, bn as GroupToolPolicyBySenderConfig, bt as sendMessageSlack, c as writeConfigFile, cn as TtsAutoMode, dn as chunkMarkdownText, f as ChannelCommandAdapter, fn as chunkMarkdownTextWithMode, ft as FinalizedMsgContext, gn as resolveTextChunkLimit, gt as sendMessageWhatsApp, h as ChannelElevatedAdapter, hn as resolveChunkMode, ht as ShouldHandleTextCommandsParams, jn as GetReplyOptions, kn as ReplyToMode, kt as sendPollDiscord, mn as chunkTextWithMode, mt as CommandNormalizeOptions, n as ChannelPlugin, o as WizardPrompter, ot as ChannelThreadingAdapter, p as ChannelConfigAdapter, pn as chunkText, pt as MsgContext, q as ChannelMentionAdapter, qt as TelegramGroupConfig, s as loadConfig, un as chunkByNewline, v as ChannelGroupAdapter, vt as sendMessageTelegram, xn as GroupToolPolicyConfig, xt as sendMessageSignal, yn as PollInput, yt as sendPollTelegram } from "./types.plugin-_fbu40Re.js";
3
+ import { C as readWebSelfId, H as resolveStateDir, M as LookupFn, P as SsrFPolicy, S as logoutWeb, _ as PushTestParams, a as GatewayClient, b as getWebAuthAgeMs, c as GatewayRequestHandlerOptions, i as OperatorScope, j as LogLevel, l as GatewayRequestHandlers, m as ChatInjectParams, n as AuthProfileStore, o as GatewayRequestContext, r as OAuthCredential, s as GatewayRequestHandler, t as AuthProfileCredential, v as WebLoginStartParams, w as webAuthExists, x as logWebSelfId, y as WebLoginWaitParams } from "./types-CLIvQaVg.js";
4
4
  import { WebClient } from "@slack/web-api";
5
5
  import { Skill } from "@mariozechner/pi-coding-agent";
6
6
  import { AgentMessage, AgentTool, AgentToolResult } from "@mariozechner/pi-agent-core";
@@ -1,4 +1,4 @@
1
- import { At as FasedAgentConfig, Bt as WalletRuntimeKind, Ct as RuntimeEnv, F as ChannelAccountSnapshot, Ft as ModelThinkingMode, G as ChannelId, Ht as WalletToolAccessMode, Mt as ModelProviderAuthMode, Ot as sendMessageDiscord, Pt as ModelThinkingLevel, St as sendMessageIMessage, Ut as CronConfig, Vt as WalletRuntimeMode, bt as sendMessageSlack, gt as sendMessageWhatsApp, jt as ModelCapabilityConfig, o as WizardPrompter, vt as sendMessageTelegram, xn as SecretRef, xt as sendMessageSignal, zt as WalletProviderId } from "./types.plugin-BiHPaDTF.js";
1
+ import { At as FasedAgentConfig, Bt as WalletProviderId, Ct as RuntimeEnv, F as ChannelAccountSnapshot, Ft as ModelThinkingLevel, G as ChannelId, Ht as WalletRuntimeMode, It as ModelThinkingMode, Mt as ModelCompatConfig, Nt as ModelProviderAuthMode, Ot as sendMessageDiscord, Sn as SecretRef, St as sendMessageIMessage, Ut as WalletToolAccessMode, Vt as WalletRuntimeKind, Wt as CronConfig, bt as sendMessageSlack, gt as sendMessageWhatsApp, jt as ModelCapabilityConfig, o as WizardPrompter, vt as sendMessageTelegram, xt as sendMessageSignal } from "./types.plugin-_fbu40Re.js";
2
2
  import { Api, Model, OAuthCredentials } from "@mariozechner/pi-ai";
3
3
  import * as _sinclair_typebox0 from "@sinclair/typebox";
4
4
  import { Static } from "@sinclair/typebox";
@@ -348,8 +348,23 @@ type ModelFeature = "text" | "vision" | "reasoning" | "tools" | "json" | "audio"
348
348
  type ModelCapabilityConfidence = "verified" | "declared" | "inferred" | "unknown";
349
349
  type ModelAvailabilitySource = "provider-api" | "runtime-catalog" | "configured" | "provider-plugin" | "reviewed-catalog" | "curated-recommendation";
350
350
  type ModelCapabilitySource = "provider-api" | "official-docs" | "runtime" | "configured" | "inferred" | "unknown";
351
+ type ModelPriceMetadata = {
352
+ input: number;
353
+ output: number;
354
+ cacheRead: number;
355
+ cacheWrite: number;
356
+ unit: "usd-per-million-tokens";
357
+ };
358
+ type ModelCredentialRouteMetadata = {
359
+ id: string;
360
+ label: string;
361
+ authMode: ModelProviderAuthMode;
362
+ };
351
363
  type ModelMetadata = {
364
+ ref: string;
352
365
  provider: string;
366
+ publicProviderId: string;
367
+ publicProviderLabel: string;
353
368
  model: string;
354
369
  label: string;
355
370
  contextWindow?: number;
@@ -368,6 +383,9 @@ type ModelMetadata = {
368
383
  availabilitySource: ModelAvailabilitySource;
369
384
  authRoute: string;
370
385
  authMode: ModelProviderAuthMode;
386
+ credentialRoute: ModelCredentialRouteMetadata;
387
+ credentialRoutes: ModelCredentialRouteMetadata[];
388
+ price?: ModelPriceMetadata;
371
389
  privateNetwork: boolean;
372
390
  privateNetworkAllowed: boolean;
373
391
  recommended?: boolean;
@@ -385,10 +403,17 @@ type ModelCatalogEntry = {
385
403
  reasoning?: boolean;
386
404
  input?: Array<"text" | "image">;
387
405
  capabilities?: ModelCapabilityConfig;
406
+ compat?: ModelCompatConfig;
388
407
  baseUrl?: string;
389
408
  api?: string;
390
409
  catalogSource?: ModelCatalogSource;
391
410
  metadata?: ModelMetadata;
411
+ cost?: {
412
+ input: number;
413
+ output: number;
414
+ cacheRead: number;
415
+ cacheWrite: number;
416
+ };
392
417
  };
393
418
  //#endregion
394
419
  //#region src/cli/deps.d.ts
@@ -1,4 +1,4 @@
1
- import { Pt as ModelThinkingLevel } from "./types.plugin-BiHPaDTF.js";
1
+ import { Ft as ModelThinkingLevel } from "./types.plugin-_fbu40Re.js";
2
2
  import { Skill } from "@mariozechner/pi-coding-agent";
3
3
 
4
4
  //#region src/auto-reply/thinking.d.ts
@@ -1208,7 +1208,7 @@ type AgentConfig = {
1208
1208
  model?: AgentModelConfig; /** Per-agent task model roles. Provider is inferred from model refs. */
1209
1209
  taskModels?: AgentDefaultsConfig["taskModels"]; /** Default thinking level when no /think directive is present. */
1210
1210
  thinkingDefault?: AgentDefaultsConfig["thinkingDefault"]; /** Legacy elevated/reasoning default. Prefer thinkingDefault for new configs. */
1211
- reasoningDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh"; /** Default fast-mode preference when no runtime override is present. */
1211
+ reasoningDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max" | "ultra"; /** Default fast-mode preference when no runtime override is present. */
1212
1212
  fastModeDefault?: boolean; /** Optional allowlist of skills for this agent (omit = all skills; empty = none). */
1213
1213
  skills?: string[];
1214
1214
  memorySearch?: MemorySearchConfig; /** Human-like delay between block replies for this agent. */
@@ -3084,13 +3084,15 @@ type MemoryQmdLimitsConfig = {
3084
3084
  //#region src/shared/model-thinking.d.ts
3085
3085
  declare const XHIGH_THINKING_LEVELS: readonly ["off", "minimal", "low", "medium", "high", "xhigh"];
3086
3086
  declare const MAX_THINKING_LEVELS: readonly ["off", "low", "medium", "high", "xhigh", "max"];
3087
- type ModelThinkingLevel = (typeof XHIGH_THINKING_LEVELS)[number] | (typeof MAX_THINKING_LEVELS)[number];
3087
+ declare const ULTRA_THINKING_LEVELS: readonly ["off", "low", "medium", "high", "xhigh", "max", "ultra"];
3088
+ type ModelThinkingLevel = (typeof XHIGH_THINKING_LEVELS)[number] | (typeof MAX_THINKING_LEVELS)[number] | (typeof ULTRA_THINKING_LEVELS)[number];
3088
3089
  type ModelThinkingMode = "openai-reasoning-effort" | "anthropic-thinking-budget" | "anthropic-adaptive" | "google-thinking-budget" | "xai-reasoning-effort" | "xai-multi-agent-effort" | "mistral-reasoning-effort" | "volcengine-reasoning-effort" | "byteplus-thinking-type" | "zai-binary" | "qwen-thinking" | "moonshot-thinking" | "generic-reasoning";
3089
3090
  //#endregion
3090
3091
  //#region src/config/types.models.d.ts
3091
3092
  declare const MODEL_APIS: readonly ["openai-completions", "openai-responses", "openai-codex-responses", "anthropic-messages", "google-generative-ai", "github-copilot", "ollama"];
3092
3093
  type ModelApi = (typeof MODEL_APIS)[number];
3093
3094
  type ModelCompatConfig = {
3095
+ responsesLite?: boolean;
3094
3096
  supportsStore?: boolean;
3095
3097
  supportsDeveloperRole?: boolean;
3096
3098
  supportsReasoningEffort?: boolean;
@@ -4606,8 +4608,8 @@ type AgentDefaultsConfig = {
4606
4608
  }; /** Vector memory search configuration (per-agent overrides supported). */
4607
4609
  memorySearch?: MemorySearchConfig; /** Optional default allowlist of skills for agents that do not define their own list. */
4608
4610
  skills?: string[]; /** Default thinking level when no /think directive is present. */
4609
- thinkingDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh"; /** Legacy elevated/reasoning default. Prefer thinkingDefault for new configs. */
4610
- reasoningDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh"; /** Default fast-mode preference when no runtime override is present. */
4611
+ thinkingDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max" | "ultra"; /** Legacy elevated/reasoning default. Prefer thinkingDefault for new configs. */
4612
+ reasoningDefault?: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max" | "ultra"; /** Default fast-mode preference when no runtime override is present. */
4611
4613
  fastModeDefault?: boolean; /** Default verbose level when no /verbose directive is present. */
4612
4614
  verboseDefault?: "off" | "on" | "full"; /** Default elevated level when no /elevated directive is present. */
4613
4615
  elevatedDefault?: "off" | "on" | "ask" | "full"; /** Default block streaming level when no override is present. */
@@ -4957,4 +4959,4 @@ type ChannelPlugin<ResolvedAccount = any, Probe = unknown, Audit = unknown> = {
4957
4959
  agentTools?: ChannelAgentToolFactory | ChannelAgentTool[];
4958
4960
  };
4959
4961
  //#endregion
4960
- export { ChannelPollContext as $, MSTeamsTeamConfig as $t, ChannelSecurityAdapter as A, GetReplyOptions as An, FasedAgentConfig as At, ChannelCapabilities as B, WalletRuntimeKind as Bt, ChannelLogoutResult as C, DmPolicy as Cn, RuntimeEnv as Ct, ChannelResolveKind as D, MarkdownTableMode as Dn, resolveIMessageAccount as Dt, ChannelPairingAdapter as E, MarkdownConfig as En, resolveDefaultIMessageAccountId as Et, ChannelAccountSnapshot as F, ModelThinkingMode as Ft, ChannelId as G, TelegramAccountConfig as Gt, ChannelDirectoryEntryKind as H, WalletToolAccessMode as Ht, ChannelAccountState as I, WalletAuthMode as It, ChannelMessageActionAdapter as J, SlackSlashCommandConfig as Jt, ChannelLogSink as K, TelegramGroupConfig as Kt, ChannelAgentPromptAdapter as L, WalletChain as Lt, ChannelStatusAdapter as M, CHANNEL_MESSAGE_ACTION_NAMES as Mn, ModelProviderAuthMode as Mt, BaseProbeResult as N, ModelProviderConfig as Nt, ChannelResolveResult as O, ReplyToMode as On, sendMessageDiscord as Ot, BaseTokenResolution as P, ModelThinkingLevel as Pt, ChannelOutboundTargetMode as Q, MSTeamsReplyStyle as Qt, ChannelAgentTool as R, WalletExecutionMode as Rt, ChannelLogoutContext as S, BlockStreamingCoalesceConfig as Sn, sendMessageIMessage as St, ChannelOutboundContext as T, HumanDelayConfig as Tn, listIMessageAccountIds as Tt, ChannelGroupContext as U, CronConfig as Ut, ChannelDirectoryEntry as V, WalletRuntimeMode as Vt, ChannelHeartbeatDeps as W, WhatsAppAccountConfig as Wt, ChannelMessagingAdapter as X, MSTeamsChannelConfig as Xt, ChannelMessageActionContext as Y, SignalAccountConfig as Yt, ChannelMeta as Z, MSTeamsConfig as Zt, ChannelGatewayContext as _, GatewayClientName as _n, sendPollWhatsApp as _t, PromptAccountId as a, DiscordAccountConfig as an, ChannelStreamingAdapter as at, ChannelLoginWithQrStartResult as b, GroupToolPolicyConfig as bn, sendMessageSlack as bt, writeConfigFile as c, ChunkMode as cn, ChannelThreadingToolContext as ct, ChannelAuthAdapter as d, chunkMarkdownTextWithMode as dn, OutboundDeliveryResult as dt, GoogleChatAccountConfig as en, ChannelPollResult as et, ChannelCommandAdapter as f, chunkText as fn, FinalizedMsgContext as ft, ChannelGatewayAdapter as g, GatewayClientMode as gn, sendMessageWhatsApp as gt, ChannelElevatedAdapter as h, resolveTextChunkLimit as hn, ShouldHandleTextCommandsParams as ht, ChannelOnboardingDmPolicy as i, GoogleChatGroupConfig as in, ChannelStatusIssue as it, ChannelSetupAdapter as j, ReplyPayload as jn, ModelCapabilityConfig as jt, ChannelResolverAdapter as k, SafeBinProfileFixture as kn, sendPollDiscord as kt, AgentDefaultsConfig as l, chunkByNewline as ln, ChannelToolSend as lt, ChannelDirectoryAdapter as m, resolveChunkMode as mn, CommandNormalizeOptions as mt, ChannelPlugin as n, GoogleChatConfig as nn, ChannelSecurityDmPolicy as nt, WizardPrompter as o, DmConfig as on, ChannelThreadingAdapter as ot, ChannelConfigAdapter as p, chunkTextWithMode as pn, MsgContext as pt, ChannelMentionAdapter as q, SlackAccountConfig as qt, ChannelOnboardingAdapter as r, GoogleChatDmConfig as rn, ChannelSetupInput as rt, loadConfig as s, TtsAutoMode as sn, ChannelThreadingContext as st, ChannelConfigSchema as t, GoogleChatActionConfig as tn, ChannelSecurityContext as tt, ChannelMessageActionName as u, chunkMarkdownText as un, getChatChannelMeta as ut, ChannelGroupAdapter as v, PollInput as vn, sendMessageTelegram as vt, ChannelOutboundAdapter as w, GroupPolicy as wn, ResolvedIMessageAccount as wt, ChannelLoginWithQrWaitResult as x, SecretRef as xn, sendMessageSignal as xt, ChannelHeartbeatAdapter as y, GroupToolPolicyBySenderConfig as yn, sendPollTelegram as yt, ChannelAgentToolFactory as z, WalletProviderId as zt };
4962
+ export { ChannelPollContext as $, MSTeamsReplyStyle as $t, ChannelSecurityAdapter as A, SafeBinProfileFixture as An, FasedAgentConfig as At, ChannelCapabilities as B, WalletProviderId as Bt, ChannelLogoutResult as C, BlockStreamingCoalesceConfig as Cn, RuntimeEnv as Ct, ChannelResolveKind as D, MarkdownConfig as Dn, resolveIMessageAccount as Dt, ChannelPairingAdapter as E, HumanDelayConfig as En, resolveDefaultIMessageAccountId as Et, ChannelAccountSnapshot as F, ModelThinkingLevel as Ft, ChannelId as G, WhatsAppAccountConfig as Gt, ChannelDirectoryEntryKind as H, WalletRuntimeMode as Ht, ChannelAccountState as I, ModelThinkingMode as It, ChannelMessageActionAdapter as J, SlackAccountConfig as Jt, ChannelLogSink as K, TelegramAccountConfig as Kt, ChannelAgentPromptAdapter as L, WalletAuthMode as Lt, ChannelStatusAdapter as M, ReplyPayload as Mn, ModelCompatConfig as Mt, BaseProbeResult as N, CHANNEL_MESSAGE_ACTION_NAMES as Nn, ModelProviderAuthMode as Nt, ChannelResolveResult as O, MarkdownTableMode as On, sendMessageDiscord as Ot, BaseTokenResolution as P, ModelProviderConfig as Pt, ChannelOutboundTargetMode as Q, MSTeamsConfig as Qt, ChannelAgentTool as R, WalletChain as Rt, ChannelLogoutContext as S, SecretRef as Sn, sendMessageIMessage as St, ChannelOutboundContext as T, GroupPolicy as Tn, listIMessageAccountIds as Tt, ChannelGroupContext as U, WalletToolAccessMode as Ut, ChannelDirectoryEntry as V, WalletRuntimeKind as Vt, ChannelHeartbeatDeps as W, CronConfig as Wt, ChannelMessagingAdapter as X, SignalAccountConfig as Xt, ChannelMessageActionContext as Y, SlackSlashCommandConfig as Yt, ChannelMeta as Z, MSTeamsChannelConfig as Zt, ChannelGatewayContext as _, GatewayClientMode as _n, sendPollWhatsApp as _t, PromptAccountId as a, GoogleChatGroupConfig as an, ChannelStreamingAdapter as at, ChannelLoginWithQrStartResult as b, GroupToolPolicyBySenderConfig as bn, sendMessageSlack as bt, writeConfigFile as c, TtsAutoMode as cn, ChannelThreadingToolContext as ct, ChannelAuthAdapter as d, chunkMarkdownText as dn, OutboundDeliveryResult as dt, MSTeamsTeamConfig as en, ChannelPollResult as et, ChannelCommandAdapter as f, chunkMarkdownTextWithMode as fn, FinalizedMsgContext as ft, ChannelGatewayAdapter as g, resolveTextChunkLimit as gn, sendMessageWhatsApp as gt, ChannelElevatedAdapter as h, resolveChunkMode as hn, ShouldHandleTextCommandsParams as ht, ChannelOnboardingDmPolicy as i, GoogleChatDmConfig as in, ChannelStatusIssue as it, ChannelSetupAdapter as j, GetReplyOptions as jn, ModelCapabilityConfig as jt, ChannelResolverAdapter as k, ReplyToMode as kn, sendPollDiscord as kt, AgentDefaultsConfig as l, ChunkMode as ln, ChannelToolSend as lt, ChannelDirectoryAdapter as m, chunkTextWithMode as mn, CommandNormalizeOptions as mt, ChannelPlugin as n, GoogleChatActionConfig as nn, ChannelSecurityDmPolicy as nt, WizardPrompter as o, DiscordAccountConfig as on, ChannelThreadingAdapter as ot, ChannelConfigAdapter as p, chunkText as pn, MsgContext as pt, ChannelMentionAdapter as q, TelegramGroupConfig as qt, ChannelOnboardingAdapter as r, GoogleChatConfig as rn, ChannelSetupInput as rt, loadConfig as s, DmConfig as sn, ChannelThreadingContext as st, ChannelConfigSchema as t, GoogleChatAccountConfig as tn, ChannelSecurityContext as tt, ChannelMessageActionName as u, chunkByNewline as un, getChatChannelMeta as ut, ChannelGroupAdapter as v, GatewayClientName as vn, sendMessageTelegram as vt, ChannelOutboundAdapter as w, DmPolicy as wn, ResolvedIMessageAccount as wt, ChannelLoginWithQrWaitResult as x, GroupToolPolicyConfig as xn, sendMessageSignal as xt, ChannelHeartbeatAdapter as y, PollInput as yn, sendPollTelegram as yt, ChannelAgentToolFactory as z, WalletExecutionMode as zt };
@@ -1,73 +1,69 @@
1
- import { Bt as formatDurationPrecise, Ht as enqueueSystemEvent, J as sleepWithAbort, K as buildPairingReply, L as resolveMentionGating, Mr as readStoreAllowFromForDmPolicy, Nr as resolveDmGroupAccessWithCommandGate, Ot as normalizeGroupActivation, Pr as resolveDmGroupAccessWithLists, X as buildHistoryContextFromEntries, Y as DEFAULT_GROUP_HISTORY_LIMIT, Zt as registerUnhandledRejectionHandler, dt as resolveInboundDebounceMs, fn as buildMentionRegexes, ft as formatInboundEnvelope, kt as parseActivationCommand, ln as hasControlCommand, mn as normalizeMentionText, mt as resolveEnvelopeFormatOptions, nt as recordPendingHistoryEntryIfEnabled, or as createDedupeCache, ot as shouldAckReactionForWhatsApp, q as computeBackoff, st as dispatchReplyWithBufferedBlockDispatcher, un as shouldComputeCommandAuthorized, ut as createInboundDebouncer, vt as getReplyFromConfig } from "./config-schema-CQ4EVcQG.js";
2
- import { C as recordSessionMetaFromInbound, S as readSessionUpdatedAt, _n as resolveChannelGroupRequireMention, bn as resolveGroupSessionKey, gn as resolveChannelGroupPolicy, w as updateLastRoute, x as loadSessionStore } from "./runtime-CgOkQe0w.js";
1
+ import { $ as dispatchReplyWithBufferedBlockDispatcher, At as registerUnhandledRejectionHandler, Bt as hasControlCommand, J as sleepWithAbort, Jt as normalizeGroupActivation, K as buildPairingReply, L as resolveMentionGating, Q as shouldAckReactionForWhatsApp, Vt as shouldComputeCommandAuthorized, Wt as enqueueSystemEvent, Yt as parseActivationCommand, bi as resolveDmGroupAccessWithCommandGate, bt as formatDurationPrecise, dn as DEFAULT_GROUP_HISTORY_LIMIT, fn as buildHistoryContextFromEntries, it as formatInboundEnvelope, nt as createInboundDebouncer, ot as resolveEnvelopeFormatOptions, q as computeBackoff, qr as createDedupeCache, rt as resolveInboundDebounceMs, ut as getReplyFromConfig, vn as recordPendingHistoryEntryIfEnabled, xi as resolveDmGroupAccessWithLists, xn as normalizeMentionText, yi as readStoreAllowFromForDmPolicy, yn as buildMentionRegexes } from "./config-schema-B9DKr6J5.js";
2
+ import { C as recordSessionMetaFromInbound, S as readSessionUpdatedAt, _n as resolveChannelGroupRequireMention, bn as resolveGroupSessionKey, gn as resolveChannelGroupPolicy, w as updateLastRoute, x as loadSessionStore } from "./runtime-Dy420wBu.js";
3
3
  import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-DBPNbQDQ.js";
4
4
  import { i as logVerbose, p as getChildLogger, s as shouldLogVerbose } from "./globals-B_jjtAje.js";
5
5
  import "./paths-BEmvSyOV.js";
6
6
  import { d as normalizeE164, l as isSelfChatMode, m as resolveJidToE164, n as clamp, u as jidToE164, x as toWhatsappJid, y as sleep } from "./utils-CYk9EKoq.js";
7
- import { kr as formatCliCommand, n as loadConfig } from "./config-CYDETqcF.js";
7
+ import { _a as formatCliCommand, n as loadConfig } from "./config-Bt5GhnA-.js";
8
8
  import "./agent-scope-BbgPlhtw.js";
9
9
  import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-HSJ2KQTc.js";
10
10
  import "./accounts-RHZyaB73.js";
11
11
  import "./accounts-CuqIKU8X.js";
12
12
  import "./logger-BbFvCoKk.js";
13
13
  import "./exec-DQ8j4Fm3.js";
14
- import { _ as webAuthExists, c as logWebSelfId, d as pickWebChannel, i as resolveWhatsAppAccount, o as WA_WEB_AUTH_DIR, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-CeRNo5Ae.js";
15
- import "./allow-list-BYeKk0Sy.js";
14
+ import { _ as webAuthExists, c as logWebSelfId, d as pickWebChannel, i as resolveWhatsAppAccount, o as WA_WEB_AUTH_DIR, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-DzWlKv1U.js";
15
+ import "./allow-list-DyAxs4yw.js";
16
16
  import "./redact-Bm8vu_ju.js";
17
17
  import "./github-copilot-token-CUK__1s1.js";
18
18
  import "./retry-DstNBhDW.js";
19
19
  import { l as resolveStorePath } from "./paths-CTZ2RS_E.js";
20
- import "./ip-C70a-YlD.js";
21
- import "./ssrf-BZG8Ztod.js";
22
- import "./fetch-guard-BuYrl6q2.js";
23
- import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-dPvnFFsK.js";
24
- import "./send-Cr-dj6S-.js";
25
- import { A as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, j as resolveOpenProviderRuntimeGroupPolicy } from "./helpers-BuEwju6y.js";
26
- import { D as formatLocationText, O as toLocationContext } from "./wsl-Biw7Mj39.js";
27
- import { a as upsertChannelPairingRequest } from "./pairing-store-T3IGoGZg.js";
28
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-CD76Byie.js";
29
- import "./tailscale-status-ClsquRGs.js";
30
- import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-Bqzm6DC1.js";
31
- import "./tokens-BvtlOzVP.js";
32
- import "./device-pairing-D2Yq-_U6.js";
33
- import "./pairing-token-N_6Jbt1L.js";
34
- import "./diagnostic-Dfn1iERm.js";
35
- import "./diagnostic-session-state-HO94DMou.js";
36
- import { t as redactIdentifier } from "./redact-identifier-Q3tkvxhm.js";
37
- import "./optional-runtime-dependency-CbYjAC2b.js";
38
- import "./image-ops-C66HPeAZ.js";
39
- import "./wallet-status-f0HagNeO.js";
40
- import "./pi-model-discovery-DvAG_Png.js";
41
- import "./runtime-dependency-DvdRNMvs.js";
42
- import "./ws-CocpWGhl.js";
43
- import "./path-alias-guards-Dg3gU-MA.js";
44
- import "./fs-safe-BG-VzVkL.js";
45
- import { n as resolveMarkdownTableMode } from "./markdown-tables-DmQ7oXOm.js";
46
- import { n as loadWebMedia, u as getAgentScopedMediaLocalRoots } from "./media-ByLQbEwJ.js";
47
- import "./send-eTxqFFsw.js";
48
- import { a as saveMediaBuffer } from "./outbound-attachment-DmZmUqFP.js";
49
- import "./fetch-Cu-ahkie.js";
50
- import "./thread-bindings.state-C0stmvNk.js";
51
- import "./memory-search-C3C0bD2H.js";
52
- import "./manager-Bvpq49BI.js";
53
- import "./query-expansion-Zr9qQixm.js";
54
- import "./common-CWvfeiX0.js";
55
- import "./commands-registry-DgS55tNj.js";
56
- import "./skill-commands-Rm5by9S8.js";
57
- import { t as finalizeInboundContext } from "./inbound-context-BFnIdcqI.js";
58
- import "./directory-live-DatqU-eS.js";
59
- import "./targets-D6lUomJc.js";
60
- import "./sandbox-paths-lj7_EVuA.js";
61
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DJN-SUSt.js";
62
- import "./render-Bwu_WxwA.js";
63
- import { t as convertMarkdownTables } from "./tables-DS5L7lCA.js";
64
- import { n as recordChannelActivity } from "./channel-activity-Cg1xRoc2.js";
65
- import { r as setActiveWebListener } from "./active-listener-BlIkS3iR.js";
66
- import "./shared-clhhbWN3.js";
67
- import "./whatsapp-heartbeat-CKgmwCGr.js";
68
- import { i as markdownToWhatsApp, n as sendMessageWhatsApp, r as sendReactionWhatsApp } from "./outbound-BuDafBBI.js";
69
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-C8nJmmVE.js";
70
- import { t as loginWeb } from "./login-Amr2DpKU.js";
20
+ import "./ssrf-fG4UHKBw.js";
21
+ import "./fetch-guard-CeG6u6ld.js";
22
+ import { n as redactSensitiveUrlLikeString } from "./redact-sensitive-url-g-ukZjwA.js";
23
+ import "./send-DPJIIYAs.js";
24
+ import { A as resolveDefaultGroupPolicy, M as warnMissingProviderGroupPolicyFallbackOnce, j as resolveOpenProviderRuntimeGroupPolicy } from "./helpers-CluGKuIV.js";
25
+ import { A as formatLocationText, j as toLocationContext } from "./wsl-B_ojyEtC.js";
26
+ import { a as upsertChannelPairingRequest } from "./pairing-store-B01mCSct.js";
27
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-B8EZkwiT.js";
28
+ import "./tailscale-status-DwpNdO3Z.js";
29
+ import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-ClpxvL_w.js";
30
+ import "./tokens-BbnqfVuu.js";
31
+ import "./pairing-token-Cs3BRKc0.js";
32
+ import "./diagnostic-DLL_zekv.js";
33
+ import "./diagnostic-session-state-DqgfGYqZ.js";
34
+ import { t as redactIdentifier } from "./redact-identifier-Lt7t3l7S.js";
35
+ import "./optional-runtime-dependency-DKmk9PZa.js";
36
+ import "./image-ops-CUaLtIFj.js";
37
+ import "./memory-search-VFll-AIb.js";
38
+ import "./manager-oHAvZCT3.js";
39
+ import "./query-expansion-CAI2kKLQ.js";
40
+ import "./common-CbfckC19.js";
41
+ import "./commands-registry-BfEa4tFA.js";
42
+ import "./runtime-dependency-CIw9t7-k.js";
43
+ import "./path-alias-guards-BJZD5JMJ.js";
44
+ import "./fs-safe-xBqok6yR.js";
45
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-Mkx7k92Y.js";
46
+ import { n as loadWebMedia, u as getAgentScopedMediaLocalRoots } from "./media-CA8sTmVE.js";
47
+ import "./send-J4JWKP62.js";
48
+ import { a as saveMediaBuffer } from "./outbound-attachment-DdVkqUzE.js";
49
+ import "./fetch-BtmoPIlf.js";
50
+ import "./thread-bindings.state-BgYWFjNF.js";
51
+ import "./skill-commands-B7wx9ax8.js";
52
+ import "./sandbox-paths-w64tYl0v.js";
53
+ import "./directory-live-CSuYxdwk.js";
54
+ import "./targets-QfP164Dh.js";
55
+ import "./pi-model-discovery-Buz0JC1Y.js";
56
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CkNIKKEW.js";
57
+ import { t as finalizeInboundContext } from "./inbound-context-DrAcXE0y.js";
58
+ import "./render-e7fENCYH.js";
59
+ import { t as convertMarkdownTables } from "./tables-CjlQJV4r.js";
60
+ import { n as recordChannelActivity } from "./channel-activity-DBDMQ3yI.js";
61
+ import { r as setActiveWebListener } from "./active-listener-x4MLhYUw.js";
62
+ import "./shared-CBgp_GBw.js";
63
+ import "./whatsapp-heartbeat-CiABSZ6G.js";
64
+ import { i as markdownToWhatsApp, n as sendMessageWhatsApp, r as sendReactionWhatsApp } from "./outbound-0oN9IfNw.js";
65
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-C_n2S5ub.js";
66
+ import { t as loginWeb } from "./login-DJuHYDiK.js";
71
67
  import { randomUUID } from "node:crypto";
72
68
  import { DisconnectReason, downloadMediaMessage, extractMessageContent, getContentType, isJidGroup, normalizeMessageContent } from "@whiskeysockets/baileys";
73
69
 
@@ -1,35 +1,34 @@
1
- import "./runtime-CgOkQe0w.js";
1
+ import "./runtime-Dy420wBu.js";
2
2
  import "./subsystem-DBPNbQDQ.js";
3
3
  import "./globals-B_jjtAje.js";
4
4
  import "./paths-BEmvSyOV.js";
5
5
  import "./utils-CYk9EKoq.js";
6
- import "./config-CYDETqcF.js";
6
+ import "./config-Bt5GhnA-.js";
7
7
  import "./agent-scope-BbgPlhtw.js";
8
8
  import "./accounts-RHZyaB73.js";
9
9
  import "./accounts-CuqIKU8X.js";
10
10
  import "./logger-BbFvCoKk.js";
11
11
  import "./exec-DQ8j4Fm3.js";
12
- import { i as resolveWhatsAppAccount } from "./accounts-CeRNo5Ae.js";
12
+ import { i as resolveWhatsAppAccount } from "./accounts-DzWlKv1U.js";
13
13
  import "./redact-Bm8vu_ju.js";
14
14
  import "./github-copilot-token-CUK__1s1.js";
15
15
  import "./retry-DstNBhDW.js";
16
16
  import "./paths-CTZ2RS_E.js";
17
- import "./ip-C70a-YlD.js";
18
- import "./ssrf-BZG8Ztod.js";
19
- import "./fetch-guard-BuYrl6q2.js";
20
- import "./chunk-CD76Byie.js";
21
- import "./optional-runtime-dependency-CbYjAC2b.js";
22
- import "./image-ops-C66HPeAZ.js";
23
- import "./path-alias-guards-Dg3gU-MA.js";
24
- import "./fs-safe-BG-VzVkL.js";
25
- import "./markdown-tables-DmQ7oXOm.js";
26
- import "./media-ByLQbEwJ.js";
27
- import { a as jsonResult, c as readReactionParams, d as readStringParam, n as createActionGate, t as ToolAuthorizationError } from "./common-CWvfeiX0.js";
28
- import "./render-Bwu_WxwA.js";
29
- import "./tables-DS5L7lCA.js";
30
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-CXCqUUPV.js";
31
- import { r as sendReactionWhatsApp } from "./outbound-BuDafBBI.js";
32
- import "./session-C8nJmmVE.js";
17
+ import "./ssrf-fG4UHKBw.js";
18
+ import "./fetch-guard-CeG6u6ld.js";
19
+ import "./chunk-B8EZkwiT.js";
20
+ import "./optional-runtime-dependency-DKmk9PZa.js";
21
+ import "./image-ops-CUaLtIFj.js";
22
+ import { a as jsonResult, c as readReactionParams, d as readStringParam, n as createActionGate, t as ToolAuthorizationError } from "./common-CbfckC19.js";
23
+ import "./path-alias-guards-BJZD5JMJ.js";
24
+ import "./fs-safe-xBqok6yR.js";
25
+ import "./markdown-tables-Mkx7k92Y.js";
26
+ import "./media-CA8sTmVE.js";
27
+ import "./render-e7fENCYH.js";
28
+ import "./tables-CjlQJV4r.js";
29
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BdH6LUoW.js";
30
+ import { r as sendReactionWhatsApp } from "./outbound-0oN9IfNw.js";
31
+ import "./session-C_n2S5ub.js";
33
32
 
34
33
  //#region src/agents/tools/whatsapp-target-auth.ts
35
34
  function resolveAuthorizedWhatsAppOutboundTarget(params) {
@@ -1,9 +1,9 @@
1
- import { x as loadSessionStore } from "./runtime-CgOkQe0w.js";
1
+ import { x as loadSessionStore } from "./runtime-Dy420wBu.js";
2
2
  import { f as normalizeChatChannelId } from "./subsystem-DBPNbQDQ.js";
3
3
  import { d as normalizeE164 } from "./utils-CYk9EKoq.js";
4
4
  import { f as DEFAULT_ACCOUNT_ID } from "./session-key-HSJ2KQTc.js";
5
5
  import { l as resolveStorePath } from "./paths-CTZ2RS_E.js";
6
- import { r as readChannelAllowFromStoreSync } from "./pairing-store-T3IGoGZg.js";
6
+ import { r as readChannelAllowFromStoreSync } from "./pairing-store-B01mCSct.js";
7
7
 
8
8
  //#region src/channels/plugins/whatsapp-heartbeat.ts
9
9
  function getSessionRecipients(cfg) {
@@ -1,9 +1,9 @@
1
1
  import { n as DEFAULT_ACCOUNT_ID, r as normalizeAccountId } from "./session-key--_1zVBRB.js";
2
- import { At as FasedAgentConfig, Cn as DmPolicy, F as ChannelAccountSnapshot, J as ChannelMessageActionAdapter, Wt as WhatsAppAccountConfig, it as ChannelStatusIssue, n as ChannelPlugin, r as ChannelOnboardingAdapter, u as ChannelMessageActionName, ut as getChatChannelMeta, wn as GroupPolicy } from "./types.plugin-BiHPaDTF.js";
3
- import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-DVTIpopt.js";
4
- import { D as normalizeE164 } from "./types-DKvBJHfH.js";
5
- import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-D0-UWGFJ.js";
6
- import { _ as buildTokenChannelStatusSummary, m as resolveWhatsAppGroupToolPolicy, p as resolveWhatsAppGroupRequireMention } from "./group-mentions-BxDgHCgj.js";
2
+ import { At as FasedAgentConfig, F as ChannelAccountSnapshot, Gt as WhatsAppAccountConfig, J as ChannelMessageActionAdapter, Tn as GroupPolicy, it as ChannelStatusIssue, n as ChannelPlugin, r as ChannelOnboardingAdapter, u as ChannelMessageActionName, ut as getChatChannelMeta, wn as DmPolicy } from "./types.plugin-_fbu40Re.js";
3
+ import { Bt as resolveDefaultGroupPolicy, Cn as readStringParam, Gt as listSlackDirectoryGroupsFromConfig, Jt as listTelegramDirectoryPeersFromConfig, Kt as listSlackDirectoryPeersFromConfig, Ut as listDiscordDirectoryGroupsFromConfig, Vt as resolveOpenProviderRuntimeGroupPolicy, Wt as listDiscordDirectoryPeersFromConfig, Xt as listWhatsAppDirectoryPeersFromConfig, Yt as listWhatsAppDirectoryGroupsFromConfig, _ as FasedAgentPluginApi, qt as listTelegramDirectoryGroupsFromConfig, t as PluginRuntime, yn as createActionGate, zt as resolveAllowlistProviderRuntimeGroupPolicy } from "./types-BYDL6dQj.js";
4
+ import { D as normalizeE164 } from "./types-CLIvQaVg.js";
5
+ import { a as buildChannelConfigSchema, c as emptyPluginConfigSchema, i as setAccountEnabledInConfigSection, n as formatPairingApproveHint, o as applyAccountNameToChannelSection, r as deleteAccountFromConfigSection, s as migrateBaseNameToDefaultAccount, t as PAIRING_APPROVED_MESSAGE } from "./pairing-message-BMkkS038.js";
6
+ import { _ as buildTokenChannelStatusSummary, m as resolveWhatsAppGroupToolPolicy, p as resolveWhatsAppGroupRequireMention } from "./group-mentions-BHRff6j8.js";
7
7
  import { z } from "zod";
8
8
 
9
9
  //#region src/config/zod-schema.providers-whatsapp.d.ts
@@ -1,30 +1,30 @@
1
- import { $t as resolveWhatsAppGroupToolPolicy, At as resolveWhatsAppMentionStripPatterns, Mt as normalizeWhatsAppAllowFromEntries, Nn as getChatChannelMeta, Nt as normalizeWhatsAppMessagingTarget, Qt as resolveWhatsAppGroupRequireMention, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, jt as looksLikeWhatsAppTargetId, kt as resolveWhatsAppGroupIntroHint, mt as listTelegramDirectoryGroupsFromConfig, pt as listSlackDirectoryPeersFromConfig, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-CgOkQe0w.js";
1
+ import { $t as resolveWhatsAppGroupToolPolicy, At as resolveWhatsAppMentionStripPatterns, Mt as normalizeWhatsAppAllowFromEntries, Nn as getChatChannelMeta, Nt as normalizeWhatsAppMessagingTarget, Qt as resolveWhatsAppGroupRequireMention, _t as listWhatsAppDirectoryPeersFromConfig, dt as listDiscordDirectoryPeersFromConfig, ft as listSlackDirectoryGroupsFromConfig, gt as listWhatsAppDirectoryGroupsFromConfig, ht as listTelegramDirectoryPeersFromConfig, jt as looksLikeWhatsAppTargetId, kt as resolveWhatsAppGroupIntroHint, mt as listTelegramDirectoryGroupsFromConfig, pt as listSlackDirectoryPeersFromConfig, ut as listDiscordDirectoryGroupsFromConfig } from "./runtime-Dy420wBu.js";
2
2
  import "./subsystem-DBPNbQDQ.js";
3
3
  import "./globals-B_jjtAje.js";
4
4
  import "./paths-BEmvSyOV.js";
5
5
  import { c as isRecord, d as normalizeE164, f as pathExists } from "./utils-CYk9EKoq.js";
6
- import { kr as formatCliCommand, l as WhatsAppConfigSchema } from "./config-CYDETqcF.js";
6
+ import { _a as formatCliCommand, l as WhatsAppConfigSchema } from "./config-Bt5GhnA-.js";
7
7
  import "./agent-scope-BbgPlhtw.js";
8
8
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
9
9
  import "./accounts-RHZyaB73.js";
10
10
  import "./accounts-CuqIKU8X.js";
11
11
  import "./logger-BbFvCoKk.js";
12
12
  import "./exec-DQ8j4Fm3.js";
13
- import { a as resolveWhatsAppAuthDir, i as resolveWhatsAppAccount, n as listWhatsAppAccountIds, r as resolveDefaultWhatsAppAccountId } from "./accounts-CeRNo5Ae.js";
13
+ import { a as resolveWhatsAppAuthDir, i as resolveWhatsAppAccount, n as listWhatsAppAccountIds, r as resolveDefaultWhatsAppAccountId } from "./accounts-DzWlKv1U.js";
14
14
  import "./redact-Bm8vu_ju.js";
15
15
  import "./github-copilot-token-CUK__1s1.js";
16
16
  import "./retry-DstNBhDW.js";
17
17
  import "./paths-CTZ2RS_E.js";
18
- import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-e4D4eBDA.js";
19
- import { A as resolveDefaultGroupPolicy, D as formatDocsLink, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, i as normalizeAllowFromEntries, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-BuEwju6y.js";
20
- import "./pairing-store-T3IGoGZg.js";
21
- import "./optional-runtime-dependency-CbYjAC2b.js";
22
- import "./image-ops-C66HPeAZ.js";
23
- import { d as readStringParam, n as createActionGate } from "./common-CWvfeiX0.js";
24
- import { n as asString, r as collectIssuesForEnabledAccounts } from "./shared-clhhbWN3.js";
25
- import "./channel-core-BOkyXXLa.js";
26
- import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-CXCqUUPV.js";
27
- import { t as resolveWhatsAppHeartbeatRecipients } from "./whatsapp-heartbeat-CKgmwCGr.js";
18
+ import { a as deleteAccountFromConfigSection, c as formatPairingApproveHint, n as applyAccountNameToChannelSection, o as setAccountEnabledInConfigSection, r as migrateBaseNameToDefaultAccount, s as buildChannelConfigSchema, t as PAIRING_APPROVED_MESSAGE, u as emptyPluginConfigSchema } from "./pairing-message-ClqhfCUk.js";
19
+ import { A as resolveDefaultGroupPolicy, D as formatDocsLink, g as resolveOnboardingAccountId, h as resolveAccountIdForConfigure, i as normalizeAllowFromEntries, j as resolveOpenProviderRuntimeGroupPolicy, k as resolveAllowlistProviderRuntimeGroupPolicy, w as buildTokenChannelStatusSummary, x as splitOnboardingEntries } from "./helpers-CluGKuIV.js";
20
+ import "./pairing-store-B01mCSct.js";
21
+ import "./optional-runtime-dependency-DKmk9PZa.js";
22
+ import "./image-ops-CUaLtIFj.js";
23
+ import { d as readStringParam, n as createActionGate } from "./common-CbfckC19.js";
24
+ import { n as asString, r as collectIssuesForEnabledAccounts } from "./shared-CBgp_GBw.js";
25
+ import "./channel-core-CFRs8LPy.js";
26
+ import { t as resolveWhatsAppOutboundTarget } from "./resolve-outbound-target-BdH6LUoW.js";
27
+ import { t as resolveWhatsAppHeartbeatRecipients } from "./whatsapp-heartbeat-CiABSZ6G.js";
28
28
  import path from "node:path";
29
29
 
30
30
  //#region src/config/merge-config.ts
@@ -293,7 +293,7 @@ const whatsappOnboardingAdapter = {
293
293
  message: linked ? "WhatsApp already linked. Re-link now?" : "Link WhatsApp now (QR)?",
294
294
  initialValue: !linked
295
295
  })) try {
296
- const { loginWeb } = await import("./login-Amr2DpKU.js").then((n) => n.n);
296
+ const { loginWeb } = await import("./login-DJuHYDiK.js").then((n) => n.n);
297
297
  await loginWeb(false, void 0, runtime, accountId);
298
298
  } catch (err) {
299
299
  runtime.error(`WhatsApp login failed: ${String(err)}`);
@@ -1,10 +1,10 @@
1
1
  import { t as createSubsystemLogger } from "./subsystem-DBPNbQDQ.js";
2
2
  import { c as expandHomePrefix } from "./paths-BEmvSyOV.js";
3
3
  import { t as CONFIG_DIR } from "./utils-CYk9EKoq.js";
4
- import { Ft as resolveTelegramPreviewStreamMode } from "./config-CYDETqcF.js";
4
+ import { Ft as resolveTelegramPreviewStreamMode } from "./config-Bt5GhnA-.js";
5
5
  import { p as normalizeAccountId } from "./session-key-HSJ2KQTc.js";
6
- import { n as readChannelAllowFromStore } from "./pairing-store-T3IGoGZg.js";
7
- import { h as normalizeMimeType, u as getFileExtension } from "./image-ops-C66HPeAZ.js";
6
+ import { n as readChannelAllowFromStore } from "./pairing-store-B01mCSct.js";
7
+ import { h as normalizeMimeType, u as getFileExtension } from "./image-ops-CUaLtIFj.js";
8
8
  import path from "node:path";
9
9
  import fs, { readFileSync } from "node:fs";
10
10
  import JSON5 from "json5";
@@ -69,55 +69,6 @@ function isVoiceCompatibleAudio(opts) {
69
69
  return isTelegramVoiceCompatibleAudio(opts);
70
70
  }
71
71
 
72
- //#endregion
73
- //#region src/cron/store.ts
74
- const DEFAULT_CRON_DIR = path.join(CONFIG_DIR, "cron");
75
- const DEFAULT_CRON_STORE_PATH = path.join(DEFAULT_CRON_DIR, "jobs.json");
76
- function resolveCronStorePath(storePath) {
77
- if (storePath?.trim()) {
78
- const raw = storePath.trim();
79
- if (raw.startsWith("~")) return path.resolve(expandHomePrefix(raw));
80
- return path.resolve(raw);
81
- }
82
- return DEFAULT_CRON_STORE_PATH;
83
- }
84
- async function loadCronStore(storePath) {
85
- try {
86
- const raw = await fs.promises.readFile(storePath, "utf-8");
87
- let parsed;
88
- try {
89
- parsed = JSON5.parse(raw);
90
- } catch (err) {
91
- throw new Error(`Failed to parse cron store at ${storePath}: ${String(err)}`, { cause: err });
92
- }
93
- const parsedRecord = parsed && typeof parsed === "object" && !Array.isArray(parsed) ? parsed : {};
94
- const jobs = Array.isArray(parsedRecord.jobs) ? parsedRecord.jobs : [];
95
- const trustedSources = Array.isArray(parsedRecord.trustedSources) ? parsedRecord.trustedSources.filter(Boolean) : [];
96
- return {
97
- version: 1,
98
- jobs: jobs.filter(Boolean),
99
- ...trustedSources.length > 0 ? { trustedSources } : {}
100
- };
101
- } catch (err) {
102
- if (err?.code === "ENOENT") return {
103
- version: 1,
104
- jobs: []
105
- };
106
- throw err;
107
- }
108
- }
109
- async function saveCronStore(storePath, store) {
110
- await fs.promises.mkdir(path.dirname(storePath), { recursive: true });
111
- const { randomBytes } = await import("node:crypto");
112
- const tmp = `${storePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
113
- const json = JSON.stringify(store, null, 2);
114
- await fs.promises.writeFile(tmp, json, "utf-8");
115
- await fs.promises.rename(tmp, storePath);
116
- try {
117
- await fs.promises.copyFile(storePath, `${storePath}.bak`);
118
- } catch {}
119
- }
120
-
121
72
  //#endregion
122
73
  //#region src/channels/location.ts
123
74
  function resolveLocation(location) {
@@ -517,6 +468,55 @@ function extractTelegramLocation(msg) {
517
468
  return null;
518
469
  }
519
470
 
471
+ //#endregion
472
+ //#region src/cron/store.ts
473
+ const DEFAULT_CRON_DIR = path.join(CONFIG_DIR, "cron");
474
+ const DEFAULT_CRON_STORE_PATH = path.join(DEFAULT_CRON_DIR, "jobs.json");
475
+ function resolveCronStorePath(storePath) {
476
+ if (storePath?.trim()) {
477
+ const raw = storePath.trim();
478
+ if (raw.startsWith("~")) return path.resolve(expandHomePrefix(raw));
479
+ return path.resolve(raw);
480
+ }
481
+ return DEFAULT_CRON_STORE_PATH;
482
+ }
483
+ async function loadCronStore(storePath) {
484
+ try {
485
+ const raw = await fs.promises.readFile(storePath, "utf-8");
486
+ let parsed;
487
+ try {
488
+ parsed = JSON5.parse(raw);
489
+ } catch (err) {
490
+ throw new Error(`Failed to parse cron store at ${storePath}: ${String(err)}`, { cause: err });
491
+ }
492
+ const parsedRecord = parsed && typeof parsed === "object" && !Array.isArray(parsed) ? parsed : {};
493
+ const jobs = Array.isArray(parsedRecord.jobs) ? parsedRecord.jobs : [];
494
+ const trustedSources = Array.isArray(parsedRecord.trustedSources) ? parsedRecord.trustedSources.filter(Boolean) : [];
495
+ return {
496
+ version: 1,
497
+ jobs: jobs.filter(Boolean),
498
+ ...trustedSources.length > 0 ? { trustedSources } : {}
499
+ };
500
+ } catch (err) {
501
+ if (err?.code === "ENOENT") return {
502
+ version: 1,
503
+ jobs: []
504
+ };
505
+ throw err;
506
+ }
507
+ }
508
+ async function saveCronStore(storePath, store) {
509
+ await fs.promises.mkdir(path.dirname(storePath), { recursive: true });
510
+ const { randomBytes } = await import("node:crypto");
511
+ const tmp = `${storePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
512
+ const json = JSON.stringify(store, null, 2);
513
+ await fs.promises.writeFile(tmp, json, "utf-8");
514
+ await fs.promises.rename(tmp, storePath);
515
+ try {
516
+ await fs.promises.copyFile(storePath, `${storePath}.bak`);
517
+ } catch {}
518
+ }
519
+
520
520
  //#endregion
521
521
  //#region src/infra/wsl.ts
522
522
  function isWSLEnv() {
@@ -551,4 +551,4 @@ function isWSL2Sync() {
551
551
  }
552
552
 
553
553
  //#endregion
554
- export { resolveCronStorePath as A, isSenderAllowed as C, formatLocationText as D, resolveSenderAllowMatch as E, isSenderIdAllowed as F, mergeDmAllowFromSources as I, resolveGroupAllowFromSources as L, isTelegramVoiceCompatibleAudio as M, isVoiceCompatibleAudio as N, toLocationContext as O, firstDefined as P, resolveTelegramThreadSpec as S, normalizeDmAllowFromWithStore as T, resolveTelegramForumThreadId as _, buildSenderLabel as a, resolveTelegramReplyId as b, buildTelegramGroupPeerId as c, buildTypingThreadParams as d, describeReplyTarget as f, normalizeForwardedContext as g, hasBotMention as h, buildGroupLabel as i, saveCronStore as j, loadCronStore as k, buildTelegramParentPeer as l, extractTelegramLocation as m, isWSLEnv as n, buildSenderName as o, expandTextLinks as p, isWSLSync as r, buildTelegramGroupFrom as s, isWSL2Sync as t, buildTelegramThreadParams as u, resolveTelegramGroupAllowFromContext as v, normalizeAllowFrom as w, resolveTelegramStreamMode as x, resolveTelegramMediaPlaceholder as y };
554
+ export { formatLocationText as A, resolveTelegramReplyId as C, normalizeAllowFrom as D, isSenderAllowed as E, isSenderIdAllowed as F, mergeDmAllowFromSources as I, resolveGroupAllowFromSources as L, isTelegramVoiceCompatibleAudio as M, isVoiceCompatibleAudio as N, normalizeDmAllowFromWithStore as O, firstDefined as P, resolveTelegramMediaPlaceholder as S, resolveTelegramThreadSpec as T, extractTelegramLocation as _, resolveCronStorePath as a, resolveTelegramForumThreadId as b, buildSenderLabel as c, buildTelegramGroupPeerId as d, buildTelegramParentPeer as f, expandTextLinks as g, describeReplyTarget as h, loadCronStore as i, toLocationContext as j, resolveSenderAllowMatch as k, buildSenderName as l, buildTypingThreadParams as m, isWSLEnv as n, saveCronStore as o, buildTelegramThreadParams as p, isWSLSync as r, buildGroupLabel as s, isWSL2Sync as t, buildTelegramGroupFrom as u, hasBotMention as v, resolveTelegramStreamMode as w, resolveTelegramGroupAllowFromContext as x, normalizeForwardedContext as y };
@@ -1,18 +1,18 @@
1
1
  import { resolveFasedAgentPackageRootSync } from "../infra/fased-root.js";
2
2
  import { fileURLToPath } from "node:url";
3
- import fs from "node:fs";
3
+ import syncFs from "node:fs";
4
4
  import path from "node:path";
5
5
 
6
6
  //#region src/plugins/bundled-dir.ts
7
7
  function looksLikeBundledPluginsDir(dir) {
8
8
  try {
9
- const entries = fs.readdirSync(dir, { withFileTypes: true });
9
+ const entries = syncFs.readdirSync(dir, { withFileTypes: true });
10
10
  for (const entry of entries) {
11
11
  if (!entry.isDirectory()) {
12
12
  continue;
13
13
  }
14
14
  const pluginRoot = path.join(dir, entry.name);
15
- if (fs.existsSync(path.join(pluginRoot, "fased.plugin.json"))) {
15
+ if (syncFs.existsSync(path.join(pluginRoot, "fased.plugin.json"))) {
16
16
  return true;
17
17
  }
18
18
  }