@fased/fased 0.1.53 → 0.1.55

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 (179) hide show
  1. package/dist/agents/authenticated-model-catalog.js +27 -0
  2. package/dist/agents/current-model-catalog.js +30 -10
  3. package/dist/agents/model-catalog-normalized.js +1 -0
  4. package/dist/agents/model-catalog-source.js +4 -4
  5. package/dist/agents/model-forward-compat.js +19 -1
  6. package/dist/agents/model-metadata.js +37 -8
  7. package/dist/agents/pi-embedded-runner/agent-messages.js +15 -0
  8. package/dist/agents/pi-embedded-runner/compact.js +2 -1
  9. package/dist/agents/pi-embedded-runner/extra-params.js +25 -0
  10. package/dist/agents/pi-embedded-runner/model.js +2 -7
  11. package/dist/agents/pi-embedded-runner/run/attempt.js +4 -5
  12. package/dist/agents/pi-embedded-runner/utils.js +1 -1
  13. package/dist/brand.js +1 -1
  14. package/dist/build-info.json +3 -3
  15. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  16. package/dist/cli/program/register.agent.js +17 -0
  17. package/dist/cli/providers-cli.js +3 -2
  18. package/dist/commands/agents.commands.models.js +63 -0
  19. package/dist/commands/agents.js +1 -0
  20. package/dist/commands/auth-choice.apply.api-providers.js +3 -8
  21. package/dist/commands/auth-choice.apply.openai.js +13 -7
  22. package/dist/commands/auth-choice.model-check.js +1 -2
  23. package/dist/commands/configure.gateway-auth.js +14 -16
  24. package/dist/commands/model-picker.js +25 -7
  25. package/dist/commands/models/list.registry.js +13 -18
  26. package/dist/commands/onboard-auth.config-core.js +1 -1
  27. package/dist/commands/onboard-auth.config-litellm.js +21 -21
  28. package/dist/commands/onboard-auth.credentials.js +0 -1
  29. package/dist/commands/onboard-auth.js +0 -1
  30. package/dist/commands/openai-codex-model-default.js +26 -4
  31. package/dist/config/defaults.js +1 -1
  32. package/dist/config/zod-schema.agent-defaults.js +4 -2
  33. package/dist/config/zod-schema.agent-runtime.js +4 -2
  34. package/dist/config/zod-schema.core.js +4 -2
  35. package/dist/control-ui/assets/{app-WIDYwhr-.js → app-D2RaTXoV.js} +1788 -1755
  36. package/dist/control-ui/assets/chat-model-ref-BZFblCeY.js +2 -0
  37. package/dist/control-ui/assets/{index-K3ysLeTN.js → index-D2nC6I-9.js} +3 -3
  38. package/dist/control-ui/assets/{providers-rQMhp1fb.js → providers-CyjiG5Jw.js} +4 -4
  39. package/dist/control-ui/index.html +1 -1
  40. package/dist/control-ui/version.json +1 -0
  41. package/dist/cron/isolated-agent/run.js +9 -3
  42. package/dist/cron/normalize.js +10 -0
  43. package/dist/gateway/control-ui.js +2 -0
  44. package/dist/gateway/protocol/schema/agents-models-skills.js +6 -2
  45. package/dist/gateway/protocol/schema/cron.js +7 -0
  46. package/dist/gateway/server-methods/models.js +8 -9
  47. package/dist/gateway/server-model-catalog.js +3 -0
  48. package/dist/infra/update-runner.js +31 -3
  49. package/dist/light-update-status.js +10 -10
  50. package/dist/memory/inventory.js +19 -2
  51. package/dist/plugin-sdk/{accounts-BZrfqJmO.js → accounts-CeRNo5Ae.js} +1 -1
  52. package/dist/plugin-sdk/{actions-7_zTh8zC.js → actions-OMRHtXPj.js} +2 -2
  53. package/dist/plugin-sdk/{active-listener-D8NVRD8J.js → active-listener-BlIkS3iR.js} +1 -1
  54. package/dist/plugin-sdk/{audio-preflight-BrVWUkoP.js → audio-preflight-B2n3a2Tj.js} +26 -26
  55. package/dist/plugin-sdk/{audit-2iRlVyQF.js → audit-Ppg6dR_b.js} +1 -1
  56. package/dist/plugin-sdk/{channel-access-BCf1rJsn.js → channel-access-af8dWWRv.js} +1 -1
  57. package/dist/plugin-sdk/{channel-access-configure-B-Z51Qsd.js → channel-access-configure-B6IAGlE0.js} +1 -1
  58. package/dist/plugin-sdk/channel-plugin-common.d.ts +3 -3
  59. package/dist/plugin-sdk/channel-plugin-common.js +4 -4
  60. package/dist/plugin-sdk/{chunk-BREC9ijl.js → chunk-CD76Byie.js} +1 -1
  61. package/dist/plugin-sdk/{chunk-items-BLRCltGL.js → chunk-items-Bu19zrYH.js} +1 -1
  62. package/dist/plugin-sdk/command-status.d.ts +2 -2
  63. package/dist/plugin-sdk/command-status.js +26 -26
  64. package/dist/plugin-sdk/{commands-registry-D3-bFLsz.js → commands-registry-DgS55tNj.js} +2 -2
  65. package/dist/plugin-sdk/{common-BlqMqEqn.js → common-CWvfeiX0.js} +1 -1
  66. package/dist/plugin-sdk/{config-442EDe7Z.js → config-CYDETqcF.js} +130 -134
  67. package/dist/plugin-sdk/{config-schema-DV0zctd2.js → config-schema-CQ4EVcQG.js} +164 -78
  68. package/dist/plugin-sdk/device-pair.d.ts +1 -1
  69. package/dist/plugin-sdk/discord.d.ts +5 -5
  70. package/dist/plugin-sdk/discord.js +19 -19
  71. package/dist/plugin-sdk/{group-mentions-DLOOve8d.d.ts → group-mentions-BxDgHCgj.d.ts} +1 -1
  72. package/dist/plugin-sdk/{handle-action-pNaP87Dr.js → handle-action-B75UVKxF.js} +13 -13
  73. package/dist/plugin-sdk/{helpers-B994qqVW.js → helpers-BuEwju6y.js} +1 -1
  74. package/dist/plugin-sdk/{image-ops-Doq8nZQw.js → image-ops-C66HPeAZ.js} +1 -1
  75. package/dist/plugin-sdk/index.d.ts +8 -8
  76. package/dist/plugin-sdk/index.js +28 -28
  77. package/dist/plugin-sdk/{login-CK2zTIJA.js → login-Amr2DpKU.js} +3 -3
  78. package/dist/plugin-sdk/{login-qr-u8Mn1mCp.js → login-qr-DMQNEi9m.js} +3 -3
  79. package/dist/plugin-sdk/{manager-CeJNf2bH.js → manager-Bvpq49BI.js} +2 -2
  80. package/dist/plugin-sdk/{markdown-tables-DeZztrY6.js → markdown-tables-DmQ7oXOm.js} +1 -1
  81. package/dist/plugin-sdk/{media-CgUAEfhs.js → media-ByLQbEwJ.js} +2 -2
  82. package/dist/plugin-sdk/{monitor-CEtMJuFX.js → monitor-K_u6daGa.js} +30 -30
  83. package/dist/plugin-sdk/{monitor-D-APtCpn.js → monitor-S_7LrvSj.js} +31 -31
  84. package/dist/plugin-sdk/{openresponses-http-g1Iz0xB2.js → openresponses-http-BrDJUZXR.js} +26 -26
  85. package/dist/plugin-sdk/{optional-runtime-dependency-D0BdXz1C.js → optional-runtime-dependency-CbYjAC2b.js} +1 -1
  86. package/dist/plugin-sdk/{outbound-DXGuFrdx.js → outbound-BuDafBBI.js} +6 -6
  87. package/dist/plugin-sdk/{outbound-attachment-oxhGO33g.js → outbound-attachment-DmZmUqFP.js} +2 -2
  88. package/dist/plugin-sdk/{pairing-message-D3WPVg_j.d.ts → pairing-message-D0-UWGFJ.d.ts} +2 -2
  89. package/dist/plugin-sdk/{pairing-message-C29ixrvn.js → pairing-message-e4D4eBDA.js} +1 -1
  90. package/dist/plugin-sdk/{pairing-store-1kcsOWRs.js → pairing-store-T3IGoGZg.js} +2 -2
  91. package/dist/plugin-sdk/{pi-model-discovery-l-xqaEd0.js → pi-model-discovery-DvAG_Png.js} +1 -1
  92. package/dist/plugin-sdk/{pi-model-discovery-runtime-CibV8F8G.js → pi-model-discovery-runtime-NjkUgjIf.js} +2 -2
  93. package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +2 -2
  94. package/dist/plugin-sdk/{pw-ai-9qEBW5-k.js → pw-ai-D7eW43DL.js} +3 -3
  95. package/dist/plugin-sdk/{replies-BX3L8fX7.js → replies-BMIPmEoP.js} +2 -2
  96. package/dist/plugin-sdk/{resolve-outbound-target-D0AK10E7.js → resolve-outbound-target-CXCqUUPV.js} +1 -1
  97. package/dist/plugin-sdk/{resolve-route-UO6XLYH3.js → resolve-route-DJN-SUSt.js} +1 -1
  98. package/dist/plugin-sdk/{retry-policy-C5N8JiHL.js → retry-policy-CY1qY6d7.js} +1 -1
  99. package/dist/plugin-sdk/{runtime-Dnzwux3G.js → runtime-CgOkQe0w.js} +3 -3
  100. package/dist/plugin-sdk/{runtime-dependency-BDDpVKBO.js → runtime-dependency-DvdRNMvs.js} +2 -2
  101. package/dist/plugin-sdk/sat-runtime.d.ts +3 -3
  102. package/dist/plugin-sdk/sat-runtime.js +5 -5
  103. package/dist/plugin-sdk/{send-bcKv8F5E.js → send-2ITqny2W.js} +8 -8
  104. package/dist/plugin-sdk/{send-DGEgo_6f.js → send-BAz22RZr.js} +5 -5
  105. package/dist/plugin-sdk/{send-DcsYRH2f.js → send-BG3RWyil.js} +7 -7
  106. package/dist/plugin-sdk/{send-D5rgCP1r.js → send-Cr-dj6S-.js} +6 -6
  107. package/dist/plugin-sdk/{send-B4XLsTL0.js → send-eTxqFFsw.js} +6 -6
  108. package/dist/plugin-sdk/{session-BoGNOlwv.js → session-C8nJmmVE.js} +2 -2
  109. package/dist/plugin-sdk/{skill-commands-Be8s4TGQ.js → skill-commands-Rm5by9S8.js} +2 -2
  110. package/dist/plugin-sdk/{slack-actions-TNnAXiUx.js → slack-actions-BNIALJTA.js} +11 -11
  111. package/dist/plugin-sdk/{slack-74qForpW.js → slack-xvIVvyEM.js} +38 -38
  112. package/dist/plugin-sdk/slack.d.ts +5 -5
  113. package/dist/plugin-sdk/slack.js +9 -9
  114. package/dist/plugin-sdk/{sticker-cache-CrYayLff.js → sticker-cache-D3oDiu2u.js} +3 -3
  115. package/dist/plugin-sdk/{tables-Ch4js2qy.js → tables-DS5L7lCA.js} +1 -1
  116. package/dist/plugin-sdk/{targets-BGfRUJPE.js → targets-D6lUomJc.js} +1 -1
  117. package/dist/plugin-sdk/{telegram-actions-BGy4AEvF.js → telegram-actions-MSFkDn0m.js} +29 -29
  118. package/dist/plugin-sdk/telegram.d.ts +5 -5
  119. package/dist/plugin-sdk/telegram.js +8 -8
  120. package/dist/plugin-sdk/{thread-bindings.lifecycle-_uQ2EF17.js → thread-bindings.lifecycle-Ry6Vcgw3.js} +3 -3
  121. package/dist/plugin-sdk/{thread-bindings.state-DUg0s_1X.js → thread-bindings.state-C0stmvNk.js} +2 -2
  122. package/dist/plugin-sdk/{tmp-fased-dir-BrbXGSkl.d.ts → tmp-fased-dir-D91GExk4.d.ts} +2 -2
  123. package/dist/plugin-sdk/{types-CBCtqtMn.d.ts → types-BzadOItY.d.ts} +1 -1
  124. package/dist/plugin-sdk/{types-DlKIHIqA.d.ts → types-DKvBJHfH.d.ts} +16 -6
  125. package/dist/plugin-sdk/{types-BJdDoTQF.d.ts → types-DVTIpopt.d.ts} +2 -2
  126. package/dist/plugin-sdk/{types.plugin-CvUiB3Kh.d.ts → types.plugin-BiHPaDTF.d.ts} +2 -1
  127. package/dist/plugin-sdk/{wallet-status-M6aK3abH.js → wallet-status-f0HagNeO.js} +31 -13
  128. package/dist/plugin-sdk/{web-r1KFR44s.js → web-DRNJxHXA.js} +31 -31
  129. package/dist/plugin-sdk/{whatsapp-actions-CID_tqAX.js → whatsapp-actions-BDXZF2R5.js} +13 -13
  130. package/dist/plugin-sdk/{whatsapp-heartbeat-Bk-aZVMa.js → whatsapp-heartbeat-CKgmwCGr.js} +2 -2
  131. package/dist/plugin-sdk/whatsapp.d.ts +5 -5
  132. package/dist/plugin-sdk/whatsapp.js +12 -12
  133. package/dist/plugin-sdk/{wsl-C_STtED7.js → wsl-Biw7Mj39.js} +3 -3
  134. package/dist/providers/huggingface-models.js +0 -30
  135. package/dist/providers/litellm-models.js +1 -1
  136. package/dist/providers/opencode-zen-shared.js +0 -1
  137. package/dist/providers/refresh.js +221 -62
  138. package/dist/providers/registry.js +31 -7
  139. package/dist/providers/runtime-model-catalog.js +181 -0
  140. package/dist/providers/vercel-ai-gateway-models.js +0 -35
  141. package/dist/shared/model-thinking.js +44 -2
  142. package/dist/wizard/onboarding.js +24 -6
  143. package/extensions/acpx/package.json +1 -1
  144. package/extensions/bluebubbles/package.json +1 -1
  145. package/extensions/copilot-proxy/package.json +1 -1
  146. package/extensions/diagnostics-otel/package.json +1 -1
  147. package/extensions/fased-federation/package.json +1 -1
  148. package/extensions/google-gemini-cli-auth/package.json +1 -1
  149. package/extensions/imessage/package.json +1 -1
  150. package/extensions/irc/package.json +1 -1
  151. package/extensions/line/package.json +1 -1
  152. package/extensions/llm-task/package.json +1 -1
  153. package/extensions/lobster/package.json +1 -1
  154. package/extensions/matrix/CHANGELOG.md +12 -0
  155. package/extensions/matrix/package.json +1 -1
  156. package/extensions/mattermost/package.json +1 -1
  157. package/extensions/memory-core/package.json +2 -2
  158. package/extensions/memory-lancedb/package.json +1 -1
  159. package/extensions/minimax-portal-auth/package.json +1 -1
  160. package/extensions/msteams/CHANGELOG.md +12 -0
  161. package/extensions/msteams/package.json +1 -1
  162. package/extensions/nextcloud-talk/package.json +1 -1
  163. package/extensions/nostr/CHANGELOG.md +12 -0
  164. package/extensions/nostr/package.json +1 -1
  165. package/extensions/open-prose/package.json +1 -1
  166. package/extensions/sat-mining/package.json +1 -1
  167. package/extensions/signal/package.json +1 -1
  168. package/extensions/synology-chat/package.json +1 -1
  169. package/extensions/tlon/package.json +1 -1
  170. package/extensions/twitch/CHANGELOG.md +12 -0
  171. package/extensions/twitch/package.json +1 -1
  172. package/extensions/voice-call/CHANGELOG.md +12 -0
  173. package/extensions/voice-call/package.json +1 -1
  174. package/extensions/zalo/CHANGELOG.md +12 -0
  175. package/extensions/zalo/package.json +1 -1
  176. package/extensions/zalouser/CHANGELOG.md +12 -0
  177. package/extensions/zalouser/package.json +1 -1
  178. package/package.json +1 -1
  179. package/dist/control-ui/assets/chat-model-ref-NT82zapt.js +0 -2
@@ -2028,6 +2028,14 @@ const BASE_THINKING_LEVELS = [
2028
2028
  "high"
2029
2029
  ];
2030
2030
  const XHIGH_THINKING_LEVELS = [...BASE_THINKING_LEVELS, "xhigh"];
2031
+ const MAX_THINKING_LEVELS = [
2032
+ "off",
2033
+ "low",
2034
+ "medium",
2035
+ "high",
2036
+ "xhigh",
2037
+ "max"
2038
+ ];
2031
2039
  const XHIGH_MODEL_REFS = [
2032
2040
  "openai/gpt-5.6",
2033
2041
  "openai/gpt-5.6-terra",
@@ -2036,6 +2044,9 @@ const XHIGH_MODEL_REFS = [
2036
2044
  "openai/gpt-5.4",
2037
2045
  "openai/gpt-5.4-mini",
2038
2046
  "openai/gpt-5.4-nano",
2047
+ "openai-codex/gpt-5.6-sol",
2048
+ "openai-codex/gpt-5.6-terra",
2049
+ "openai-codex/gpt-5.6-luna",
2039
2050
  "openai-codex/gpt-5.5",
2040
2051
  "openai-codex/gpt-5.4",
2041
2052
  "openai-codex/gpt-5.4-mini",
@@ -2047,6 +2058,21 @@ const XHIGH_MODEL_REFS = [
2047
2058
  ];
2048
2059
  const XHIGH_MODEL_SET = new Set(XHIGH_MODEL_REFS.map((entry) => entry.toLowerCase()));
2049
2060
  const XHIGH_MODEL_IDS = new Set(XHIGH_MODEL_REFS.map((entry) => entry.split("/")[1]?.toLowerCase()).filter((entry) => Boolean(entry)));
2061
+ const MAX_MODEL_REFS = new Set([
2062
+ "openai/gpt-5.6",
2063
+ "openai/gpt-5.6-sol",
2064
+ "openai/gpt-5.6-terra",
2065
+ "openai/gpt-5.6-luna",
2066
+ "openai-codex/gpt-5.6-sol",
2067
+ "openai-codex/gpt-5.6-terra",
2068
+ "openai-codex/gpt-5.6-luna"
2069
+ ].map((entry) => entry.toLowerCase()));
2070
+ const MAX_MODEL_IDS = new Set([
2071
+ "gpt-5.6",
2072
+ "gpt-5.6-sol",
2073
+ "gpt-5.6-terra",
2074
+ "gpt-5.6-luna"
2075
+ ]);
2050
2076
  function normalizeProviderId$2(provider) {
2051
2077
  if (!provider) return "";
2052
2078
  const normalized = provider.trim().toLowerCase();
@@ -2061,6 +2087,7 @@ function normalizeThinkLevel(raw) {
2061
2087
  const key = raw.trim().toLowerCase();
2062
2088
  const collapsed = key.replace(/[\s_-]+/g, "");
2063
2089
  if (collapsed === "xhigh" || collapsed === "extrahigh") return "xhigh";
2090
+ if (key === "max") return "max";
2064
2091
  if (key === "off") return "off";
2065
2092
  if ([
2066
2093
  "on",
@@ -2088,11 +2115,17 @@ function normalizeThinkLevel(raw) {
2088
2115
  "ultrathink",
2089
2116
  "think-hard",
2090
2117
  "thinkhardest",
2091
- "highest",
2092
- "max"
2118
+ "highest"
2093
2119
  ].includes(key)) return "high";
2094
2120
  if (key === "think") return "minimal";
2095
2121
  }
2122
+ function supportsMaxThinking(provider, model) {
2123
+ const modelKey = model?.trim().toLowerCase();
2124
+ if (!modelKey) return false;
2125
+ const providerKey = provider?.trim().toLowerCase();
2126
+ if (providerKey) return MAX_MODEL_REFS.has(`${providerKey}/${modelKey}`);
2127
+ return MAX_MODEL_IDS.has(modelKey);
2128
+ }
2096
2129
  function supportsXHighThinking(provider, model) {
2097
2130
  const modelKey = model?.trim().toLowerCase();
2098
2131
  if (!modelKey) return false;
@@ -2112,6 +2145,7 @@ function normalizeThinkingLevels(values) {
2112
2145
  return levels;
2113
2146
  }
2114
2147
  function listGenericThinkingLevels(provider, model) {
2148
+ if (supportsMaxThinking(provider, model)) return [...MAX_THINKING_LEVELS];
2115
2149
  return supportsXHighThinking(provider, model) ? [...XHIGH_THINKING_LEVELS] : [...BASE_THINKING_LEVELS];
2116
2150
  }
2117
2151
  function isAnthropicAdaptiveModel(model) {
@@ -2597,21 +2631,6 @@ const HUGGINGFACE_MODEL_CATALOG = [
2597
2631
  },
2598
2632
  capabilities: HUGGINGFACE_TOOL_JSON_CAPABILITY
2599
2633
  },
2600
- {
2601
- id: "Qwen/Qwen3-Coder-Next-FP8",
2602
- name: "Qwen3 Coder Next FP8",
2603
- reasoning: false,
2604
- input: ["text"],
2605
- contextWindow: 262144,
2606
- maxTokens: 8192,
2607
- cost: {
2608
- input: .5,
2609
- output: 1.2,
2610
- cacheRead: 0,
2611
- cacheWrite: 0
2612
- },
2613
- capabilities: HUGGINGFACE_TOOL_JSON_CAPABILITY
2614
- },
2615
2634
  {
2616
2635
  id: "google/gemma-3n-E4B-it",
2617
2636
  name: "Gemma 3N E4B Instruct",
@@ -2627,21 +2646,6 @@ const HUGGINGFACE_MODEL_CATALOG = [
2627
2646
  },
2628
2647
  capabilities: HUGGINGFACE_JSON_ONLY_CAPABILITY
2629
2648
  },
2630
- {
2631
- id: "EssentialAI/rnj-1-instruct",
2632
- name: "Rnj-1 Instruct",
2633
- reasoning: false,
2634
- input: ["text"],
2635
- contextWindow: 32768,
2636
- maxTokens: 8192,
2637
- cost: {
2638
- input: .15,
2639
- output: .15,
2640
- cacheRead: 0,
2641
- cacheWrite: 0
2642
- },
2643
- capabilities: HUGGINGFACE_TOOL_JSON_CAPABILITY
2644
- },
2645
2649
  {
2646
2650
  id: "inclusionAI/Ling-2.6-1T",
2647
2651
  name: "Ling 2.6 1T",
@@ -2684,50 +2688,6 @@ function buildHuggingfaceModelCapabilityOverrides(routeId = "huggingface") {
2684
2688
  return Object.fromEntries(HUGGINGFACE_MODEL_CATALOG.map((model) => [`${routeId}/${model.id}`.toLowerCase(), capabilityForModel(model)]));
2685
2689
  }
2686
2690
 
2687
- //#endregion
2688
- //#region src/providers/litellm-models.ts
2689
- const LITELLM_BASE_URL = "http://localhost:4000/v1";
2690
- const LITELLM_DEFAULT_MODEL_ID = "default";
2691
- const LITELLM_DEFAULT_MODEL_REF = `litellm/${LITELLM_DEFAULT_MODEL_ID}`;
2692
- const LITELLM_DEFAULT_COST = {
2693
- input: 0,
2694
- output: 0,
2695
- cacheRead: 0,
2696
- cacheWrite: 0
2697
- };
2698
- const LITELLM_MODEL_CATALOG = [{
2699
- id: LITELLM_DEFAULT_MODEL_ID,
2700
- name: "LiteLLM proxy default",
2701
- reasoning: false,
2702
- input: ["text"],
2703
- contextWindow: 128e3,
2704
- maxTokens: 8192,
2705
- cost: LITELLM_DEFAULT_COST,
2706
- capabilities: {}
2707
- }];
2708
- const LITELLM_MODEL_IDS = LITELLM_MODEL_CATALOG.map((model) => model.id);
2709
- const LITELLM_MODEL_REFS = LITELLM_MODEL_IDS.map((id) => `litellm/${id}`);
2710
- function buildLitellmModelDefinition(model) {
2711
- return {
2712
- id: model.id,
2713
- name: model.name,
2714
- api: "openai-completions",
2715
- reasoning: model.reasoning,
2716
- input: [...model.input],
2717
- cost: { ...model.cost },
2718
- contextWindow: model.contextWindow,
2719
- maxTokens: model.maxTokens,
2720
- compat: {
2721
- supportsUsageInStreaming: false,
2722
- supportsReasoningEffort: false
2723
- },
2724
- capabilities: model.capabilities ? { ...model.capabilities } : void 0
2725
- };
2726
- }
2727
- function buildLitellmModelCapabilityOverrides(routeId = "litellm") {
2728
- return Object.fromEntries(LITELLM_MODEL_CATALOG.map((model) => [`${routeId}/${model.id}`.toLowerCase(), model.capabilities ? { ...model.capabilities } : {}]));
2729
- }
2730
-
2731
2691
  //#endregion
2732
2692
  //#region src/providers/opencode-zen-shared.ts
2733
2693
  const OPENCODE_ZEN_MODEL_IDS = [
@@ -2743,7 +2703,6 @@ const OPENCODE_ZEN_MODEL_IDS = [
2743
2703
  "gemini-3.5-flash",
2744
2704
  "gemini-3.1-pro",
2745
2705
  "gemini-3-flash",
2746
- "qwen3.7-plus",
2747
2706
  "minimax-m2.7",
2748
2707
  "glm-5.2",
2749
2708
  "kimi-k2.6"
@@ -3993,19 +3952,6 @@ const VERCEL_AI_GATEWAY_MODEL_CATALOG = [
3993
3952
  "implicit-caching"
3994
3953
  ]
3995
3954
  },
3996
- {
3997
- id: "google/gemini-3-flash-preview",
3998
- contextWindow: 1e6,
3999
- maxTokens: 65e3,
4000
- tags: [
4001
- "reasoning",
4002
- "tool-use",
4003
- "file-input",
4004
- "vision",
4005
- "web-search",
4006
- "implicit-caching"
4007
- ]
4008
- },
4009
3955
  {
4010
3956
  id: "google/gemini-3.1-flash-lite",
4011
3957
  contextWindow: 1e6,
@@ -4048,28 +3994,6 @@ const VERCEL_AI_GATEWAY_MODEL_CATALOG = [
4048
3994
  "vision"
4049
3995
  ]
4050
3996
  },
4051
- {
4052
- id: "mistral/mistral-small-2603",
4053
- contextWindow: 256e3,
4054
- maxTokens: 256e3,
4055
- tags: [
4056
- "reasoning",
4057
- "tool-use",
4058
- "vision"
4059
- ]
4060
- },
4061
- {
4062
- id: "mistral/mistral-large-2512",
4063
- contextWindow: 256e3,
4064
- maxTokens: 256e3,
4065
- tags: ["vision"]
4066
- },
4067
- {
4068
- id: "mistral/devstral-2512",
4069
- contextWindow: 256e3,
4070
- maxTokens: 256e3,
4071
- tags: ["tool-use"]
4072
- },
4073
3997
  {
4074
3998
  id: "minimax/minimax-m2.7",
4075
3999
  contextWindow: 204800,
@@ -4318,6 +4242,29 @@ function buildXiaomiModelCapabilityOverrides(routeId = "xiaomi") {
4318
4242
  return Object.fromEntries(XIAOMI_MODEL_CATALOG$1.map((model) => [`${routeId}/${model.id}`, model.capabilities ? { ...model.capabilities } : {}]));
4319
4243
  }
4320
4244
 
4245
+ //#endregion
4246
+ //#region src/providers/litellm-models.ts
4247
+ const LITELLM_DEFAULT_MODEL_ID = "default";
4248
+ const LITELLM_DEFAULT_MODEL_REF = `litellm/${LITELLM_DEFAULT_MODEL_ID}`;
4249
+ const LITELLM_DEFAULT_COST = {
4250
+ input: 0,
4251
+ output: 0,
4252
+ cacheRead: 0,
4253
+ cacheWrite: 0
4254
+ };
4255
+ const LITELLM_MODEL_CATALOG = [{
4256
+ id: LITELLM_DEFAULT_MODEL_ID,
4257
+ name: "LiteLLM proxy default",
4258
+ reasoning: false,
4259
+ input: ["text"],
4260
+ contextWindow: 128e3,
4261
+ maxTokens: 8192,
4262
+ cost: LITELLM_DEFAULT_COST,
4263
+ capabilities: {}
4264
+ }];
4265
+ const LITELLM_MODEL_IDS = LITELLM_MODEL_CATALOG.map((model) => model.id);
4266
+ const LITELLM_MODEL_REFS = LITELLM_MODEL_IDS.map((id) => `litellm/${id}`);
4267
+
4321
4268
  //#endregion
4322
4269
  //#region src/providers/registry.ts
4323
4270
  const PROVIDER_BRAND_ORDER = [
@@ -4422,7 +4369,18 @@ const OPENAI_API_MODEL_IDS = [
4422
4369
  "gpt-5.6-luna",
4423
4370
  "gpt-5.5"
4424
4371
  ];
4425
- const OPENAI_SIGN_IN_MODEL_IDS = ["gpt-5.5"];
4372
+ const OPENAI_SIGN_IN_MODEL_IDS = [
4373
+ "gpt-5.6-sol",
4374
+ "gpt-5.6-terra",
4375
+ "gpt-5.6-luna",
4376
+ "gpt-5.5"
4377
+ ];
4378
+ const OPENAI_SIGN_IN_LEGACY_RUNTIME_MODEL_IDS = [
4379
+ "gpt-5.3-codex",
4380
+ "gpt-5.3-codex-spark",
4381
+ "gpt-5.4",
4382
+ "gpt-5.4-mini"
4383
+ ];
4426
4384
  const OPENAI_API_MODEL_REFS = OPENAI_API_MODEL_IDS.map((id) => `${OPENAI_API_ROUTE_ID}/${id}`);
4427
4385
  const OPENAI_SIGN_IN_MODEL_REFS = OPENAI_SIGN_IN_MODEL_IDS.map((id) => `${OPENAI_CODEX_ROUTE_ID}/${id}`);
4428
4386
  const ANTHROPIC_MODEL_IDS = [
@@ -4528,7 +4486,6 @@ const BYTEPLUS_CODING_MODEL_IDS = [
4528
4486
  ];
4529
4487
  const BYTEPLUS_CODING_MODEL_REFS = BYTEPLUS_CODING_MODEL_IDS.flatMap((id) => [`${BYTEPLUS_CODING_ROUTE_ID}/${id}`, `${BYTEPLUS_PLAN_ROUTE_ID}/${id}`]);
4530
4488
  const OPENROUTER_MODEL_IDS = [
4531
- "openrouter/owl-alpha",
4532
4489
  "openai/gpt-5.6-sol",
4533
4490
  "openai/gpt-5.6-terra",
4534
4491
  "openai/gpt-5.6-luna",
@@ -4721,7 +4678,6 @@ const SYNTHETIC_MODEL_CAPABILITY_OVERRIDES = buildSyntheticModelCapabilityOverri
4721
4678
  const TOGETHER_MODEL_CAPABILITY_OVERRIDES = buildTogetherModelCapabilityOverrides(TOGETHER_ROUTE_ID);
4722
4679
  const HUGGINGFACE_MODEL_CAPABILITY_OVERRIDES = buildHuggingfaceModelCapabilityOverrides(HUGGINGFACE_ROUTE_ID);
4723
4680
  const VENICE_MODEL_CAPABILITY_OVERRIDES = buildVeniceModelCapabilityOverrides(VENICE_ROUTE_ID);
4724
- const LITELLM_MODEL_CAPABILITY_OVERRIDES = buildLitellmModelCapabilityOverrides(LITELLM_ROUTE_ID);
4725
4681
  const CLOUDFLARE_AI_GATEWAY_MODEL_CAPABILITY_OVERRIDES = buildCloudflareAiGatewayModelCapabilityOverrides(CLOUDFLARE_AI_GATEWAY_ROUTE_ID);
4726
4682
  const CUSTOM_PROVIDER_MODEL_REFS = [];
4727
4683
  function parseModelRef$1(ref) {
@@ -5726,12 +5682,12 @@ const LITELLM_PROVIDER_MANIFEST = {
5726
5682
  hint: "LiteLLM Proxy virtual key or master key plus /v1 base URL"
5727
5683
  }],
5728
5684
  models: {
5729
- recommended: [...LITELLM_MODEL_REFS],
5685
+ recommended: [],
5730
5686
  dynamic: true,
5731
5687
  operatorCatalog: true,
5732
5688
  routeRules: { [LITELLM_ROUTE_ID]: [`${LITELLM_ROUTE_ID}/*`] }
5733
5689
  },
5734
- modelCapabilities: LITELLM_MODEL_CAPABILITY_OVERRIDES
5690
+ modelCapabilities: {}
5735
5691
  };
5736
5692
  const CLOUDFLARE_AI_GATEWAY_PROVIDER_MANIFEST = {
5737
5693
  id: CLOUDFLARE_AI_GATEWAY_PROVIDER_BRAND_ID,
@@ -5814,6 +5770,7 @@ const PROVIDER_MANIFEST_BY_ROUTE = new Map(PROVIDER_REGISTRY.flatMap((entry) =>
5814
5770
  const STANDARD_PROVIDER_MODEL_REFS = new Set(PROVIDER_REGISTRY.flatMap((entry) => entry.models.recommended.map((ref) => ref.toLowerCase())));
5815
5771
  const PROVIDER_MODEL_CAPABILITY_BY_REF = new Map(PROVIDER_REGISTRY.flatMap((entry) => Object.entries(entry.modelCapabilities ?? {}).map(([ref, capability]) => [ref.toLowerCase(), capability])));
5816
5772
  const OPENAI_SIGN_IN_MODEL_ID_SET = new Set(OPENAI_SIGN_IN_MODEL_IDS);
5773
+ const OPENAI_SIGN_IN_RUNTIME_MODEL_ID_SET = new Set([...OPENAI_SIGN_IN_MODEL_IDS, ...OPENAI_SIGN_IN_LEGACY_RUNTIME_MODEL_IDS]);
5817
5774
  function listProviderBrandManifests() {
5818
5775
  return [...PROVIDER_REGISTRY];
5819
5776
  }
@@ -5821,6 +5778,9 @@ function getProviderBrandManifestForRoute(route) {
5821
5778
  return PROVIDER_MANIFEST_BY_ROUTE.get(route.trim().toLowerCase());
5822
5779
  }
5823
5780
  function isOpenAISignInRuntimeModelSupported(id) {
5781
+ return OPENAI_SIGN_IN_RUNTIME_MODEL_ID_SET.has(id.trim().toLowerCase());
5782
+ }
5783
+ function isOpenAISignInCatalogModel(id) {
5824
5784
  return OPENAI_SIGN_IN_MODEL_ID_SET.has(id.trim().toLowerCase());
5825
5785
  }
5826
5786
  function lookupProviderManifestModelCapability(provider, model) {
@@ -5841,6 +5801,14 @@ function isStandardProviderModelRef(ref) {
5841
5801
  if (manifest.models.operatorCatalog) return true;
5842
5802
  return STANDARD_PROVIDER_MODEL_REFS.has(value.toLowerCase());
5843
5803
  }
5804
+ function providerModelRecommendationRank(provider, model) {
5805
+ const manifest = getProviderBrandManifestForRoute(provider);
5806
+ if (!manifest) return;
5807
+ const normalizedProvider = provider.trim().toLowerCase();
5808
+ const normalizedRef = `${normalizedProvider}/${model.trim().toLowerCase()}`;
5809
+ const index = manifest.models.recommended.filter((ref) => ref.trim().toLowerCase().startsWith(`${normalizedProvider}/`)).findIndex((ref) => ref.trim().toLowerCase() === normalizedRef);
5810
+ return index >= 0 ? index + 1 : void 0;
5811
+ }
5844
5812
  function isStandardProviderCatalogEntry(entry) {
5845
5813
  const provider = entry.provider.trim();
5846
5814
  const id = entry.id.trim();
@@ -10402,6 +10370,7 @@ async function discoverHuggingfaceModels(apiKey) {
10402
10370
  //#region src/agents/model-catalog-normalized.ts
10403
10371
  const SOURCE_AUTHORITY = {
10404
10372
  configured: 500,
10373
+ "provider-api": 450,
10405
10374
  runtime: 400,
10406
10375
  manifest: 300,
10407
10376
  "provider-index": 200,
@@ -11139,6 +11108,33 @@ const OPENAI_MODELS = [
11139
11108
  })
11140
11109
  ];
11141
11110
  const OPENAI_CODEX_MODELS = [
11111
+ model({
11112
+ id: "gpt-5.6-sol",
11113
+ name: "GPT-5.6 Sol",
11114
+ reasoning: true,
11115
+ input: ["text", "image"],
11116
+ contextWindow: 105e4,
11117
+ maxTokens: 128e3,
11118
+ api: "openai-codex-responses"
11119
+ }),
11120
+ model({
11121
+ id: "gpt-5.6-terra",
11122
+ name: "GPT-5.6 Terra",
11123
+ reasoning: true,
11124
+ input: ["text", "image"],
11125
+ contextWindow: 105e4,
11126
+ maxTokens: 128e3,
11127
+ api: "openai-codex-responses"
11128
+ }),
11129
+ model({
11130
+ id: "gpt-5.6-luna",
11131
+ name: "GPT-5.6 Luna",
11132
+ reasoning: true,
11133
+ input: ["text", "image"],
11134
+ contextWindow: 105e4,
11135
+ maxTokens: 128e3,
11136
+ api: "openai-codex-responses"
11137
+ }),
11142
11138
  model({
11143
11139
  id: "gpt-5.5",
11144
11140
  name: "GPT-5.5 Codex",
@@ -11841,22 +11837,16 @@ const CURRENT_MODEL_PROVIDER_CATALOG = {
11841
11837
  models: CLOUDFLARE_AI_GATEWAY_MODEL_CATALOG.map((entry) => buildCloudflareAiGatewayModelDefinition({ id: entry.id }))
11842
11838
  },
11843
11839
  litellm: {
11844
- baseUrl: LITELLM_BASE_URL,
11840
+ baseUrl: "http://localhost:4000/v1",
11845
11841
  api: "openai-completions",
11846
11842
  request: { allowPrivateNetwork: true },
11847
- models: LITELLM_MODEL_CATALOG.map(buildLitellmModelDefinition)
11843
+ models: []
11848
11844
  },
11849
11845
  vllm: {
11850
11846
  baseUrl: "http://127.0.0.1:8000/v1",
11851
11847
  api: "openai-completions",
11852
11848
  request: { allowPrivateNetwork: true },
11853
- models: [model({
11854
- id: "local",
11855
- name: "Local model",
11856
- input: ["text", "image"],
11857
- contextWindow: 128e3,
11858
- maxTokens: 8192
11859
- })]
11849
+ models: []
11860
11850
  },
11861
11851
  "github-copilot": {
11862
11852
  baseUrl: "https://api.individual.githubcopilot.com",
@@ -13736,7 +13726,7 @@ let defaultWarnState = { warned: false };
13736
13726
  const DEFAULT_MODEL_ALIASES = {
13737
13727
  opus: "anthropic/claude-opus-4-8",
13738
13728
  sonnet: "anthropic/claude-sonnet-5",
13739
- gpt: "openai/gpt-5.5",
13729
+ gpt: "openai/gpt-5.6",
13740
13730
  "gpt-mini": "openai/gpt-5.4-mini",
13741
13731
  gemini: "google/gemini-3.5-flash",
13742
13732
  "gemini-flash": "google/gemini-3-flash-preview",
@@ -18104,7 +18094,8 @@ const ModelCapabilitySchema = z.object({
18104
18094
  z.literal("low"),
18105
18095
  z.literal("medium"),
18106
18096
  z.literal("high"),
18107
- z.literal("xhigh")
18097
+ z.literal("xhigh"),
18098
+ z.literal("max")
18108
18099
  ])).optional(),
18109
18100
  defaultThinkingLevel: z.union([
18110
18101
  z.literal("off"),
@@ -18112,7 +18103,8 @@ const ModelCapabilitySchema = z.object({
18112
18103
  z.literal("low"),
18113
18104
  z.literal("medium"),
18114
18105
  z.literal("high"),
18115
- z.literal("xhigh")
18106
+ z.literal("xhigh"),
18107
+ z.literal("max")
18116
18108
  ]).optional(),
18117
18109
  thinkingMode: z.union([
18118
18110
  z.literal("openai-reasoning-effort"),
@@ -19027,7 +19019,8 @@ const AgentEntrySchema = z.object({
19027
19019
  z.literal("low"),
19028
19020
  z.literal("medium"),
19029
19021
  z.literal("high"),
19030
- z.literal("xhigh")
19022
+ z.literal("xhigh"),
19023
+ z.literal("max")
19031
19024
  ]).optional(),
19032
19025
  reasoningDefault: z.union([
19033
19026
  z.literal("off"),
@@ -19035,7 +19028,8 @@ const AgentEntrySchema = z.object({
19035
19028
  z.literal("low"),
19036
19029
  z.literal("medium"),
19037
19030
  z.literal("high"),
19038
- z.literal("xhigh")
19031
+ z.literal("xhigh"),
19032
+ z.literal("max")
19039
19033
  ]).optional(),
19040
19034
  fastModeDefault: z.boolean().optional(),
19041
19035
  skills: z.array(z.string()).optional(),
@@ -19185,7 +19179,8 @@ const AgentDefaultsSchema = z.object({
19185
19179
  z.literal("low"),
19186
19180
  z.literal("medium"),
19187
19181
  z.literal("high"),
19188
- z.literal("xhigh")
19182
+ z.literal("xhigh"),
19183
+ z.literal("max")
19189
19184
  ]).optional(),
19190
19185
  reasoningDefault: z.union([
19191
19186
  z.literal("off"),
@@ -19193,7 +19188,8 @@ const AgentDefaultsSchema = z.object({
19193
19188
  z.literal("low"),
19194
19189
  z.literal("medium"),
19195
19190
  z.literal("high"),
19196
- z.literal("xhigh")
19191
+ z.literal("xhigh"),
19192
+ z.literal("max")
19197
19193
  ]).optional(),
19198
19194
  fastModeDefault: z.boolean().optional(),
19199
19195
  verboseDefault: z.union([
@@ -23409,4 +23405,4 @@ async function writeConfigFile(cfg, options = {}) {
23409
23405
  }
23410
23406
 
23411
23407
  //#endregion
23412
- export { resetConfigOverrides as $, lookupProviderManifestModelCapability as $n, resolveSubagentSpawnModelSelection as $t, GroupPolicySchema as A, ensureAuthProfileStore as An, isPluginRuntimeSessionReadAllowed as Ar, isSafeExecutableValue as At, MODEL_APIS as B, loadPluginManifestRegistry as Bn, buildModelAliasIndex as Bt, resolveIMessageAttachmentRoots as C, markAuthProfileUsed as Cn, sanitizeHostExecEnv as Cr, unwrapKnownDispatchWrapperInvocation as Ct, BlockStreamingCoalesceSchema as D, listProfilesForProvider as Dn, isTruthyEnvValue as Dr, normalizeSafeBinProfileFixtures as Dt, ToolPolicySchema as E, dedupeProfileIds as En, resolveCliName as Er, SAFE_BIN_PROFILES as Et, TtsConfigSchema as F, withFileLock as Fn, resolveTelegramPreviewStreamMode as Ft, isAvatarDataUrl as G, isPrivateNetworkBaseUrl as Gn, normalizeModelRef as Gt, parseDurationMs as H, isPathInside as Hn, inferUniqueProviderFromConfiguredModels as Ht, TtsModeSchema as I, resolveProcessScopedMap as In, DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH as It, isSupportedLocalAvatarExtension as J, coerceSecretRef as Jn, resolveConfiguredModelRef as Jt, isAvatarHttpUrl as K, normalizeSecretInput as Kn, normalizeProviderId as Kt, TtsProviderSchema as L, isPidAlive as Ln, resolveAgentMaxConcurrent as Lt, MarkdownTableModeSchema as M, resolveFasedAgentAgentDir as Mn, resolveEffectiveEnableState as Mr, resolveDiscordPreviewStreamMode as Mt, ReplyRuntimeConfigSchemaShape as N, resolveFasedAgentDir as Nn, resolveMemorySlotDecision as Nr, resolveSlackNativeStreaming as Nt, DmConfigSchema as O, listProvidersWithStoredCredentials as On, parseBooleanValue as Or, resolveSafeBinProfiles as Ot, TtsAutoSchema as P, acquireFileLock as Pn, resolvePluginAdminRpcActionGrant as Pr, resolveSlackStreamingMode as Pt, getConfigOverrides as Q, listProviderBrandManifests as Qn, resolveReasoningDefault as Qt, normalizeAllowFrom as R, findNormalizedProviderValue$1 as Rn, buildAllowedModelSet as Rt, mergeInboundPathRoots as S, markAuthProfileFailure as Sn, isDangerousHostInheritedEnvVarName as Sr, isShellWrapperExecutable as St, normalizeScpRemoteHost as T, resolveApiKeyForProfile as Tn, formatCliCommand as Tr, splitShellArgs as Tt, parseByteSize as U, safeStatSync as Un, isCliProvider as Ut, getBlockedNetworkModeReason as V, discoverFasedAgentPlugins as Vn, findNormalizedProviderValue as Vt, AVATAR_MAX_BYTES as W, resolveAuthProfileDisplayLabel as Wn, modelKey as Wt, resolveAvatarMime as X, isOpenAISignInRuntimeModelSupported as Xn, resolveExplicitConfiguredModelRef as Xt, isWorkspaceRelativeAvatarPath as Y, splitTrailingAuthProfile as Yn, resolveDefaultModelForAgent as Yt, validateJsonSchemaValue as Z, isStandardProviderCatalogEntry as Zn, resolveModelRefFromString as Zt, TELEGRAM_COMMAND_NAME_PATTERN as _, normalizeProviderCatalogRows as _n, extractArchive as _r, matchAllowlist as _t, readConfigFileSnapshotForWrite as a, getApiKeyForModel as an, supportsXHighThinking as ar, unsetConfigValueAtPath as at, DEFAULT_IMESSAGE_ATTACHMENT_ROOTS as b, getSoonestCooldownExpiry as bn, isDangerousHostEnvOverrideVarName as br, extractShellWrapperInlineCommand as bt, validateConfigObjectWithPlugins as c, resolveApiKeyForProvider as cn, DEFAULT_PROVIDER as cr, isTrustedSafeBinPath as ct, GoogleChatConfigSchema as d, CURRENT_MODEL_PROVIDER_CATALOG as dn, getPackageManifestMetadata as dr, validateSafeBinArgv as dt, resolveThinkingDefault as en, formatThinkingLevels as er, setConfigOverride as et, IMessageConfigSchema as f, listCurrentModelCatalogRows as fn, MANIFEST_KEY as fr, analyzeShellCommand as ft, TelegramConfigSchema as g, normalizeModelCatalogProviderId as gn, isErrno as gr, DEFAULT_SAFE_BINS as gt, SlackConfigSchema as h, normalizeModelCatalogModelId as hn, formatUncaughtError as hr, splitCommandChain as ht, readConfigFileSnapshot as i, resolveImplicitProviders as in, resolveModelThinkingCapability as ir, setConfigValueAtPath as it, MarkdownConfigSchema as j, resolveAuthStorePathForDisplay as jn, normalizePluginsConfig as jr, mapStreamingModeToSlackLegacyDraftStreamMode as jt, DmPolicySchema as k, markAuthProfileGood as kn, applyTestPluginDefaults as kr, applyMergePatch as kt, WhatsAppConfigSchema as l, resolveEnvApiKey as ln, VERSION as lr, listWritableExplicitTrustedSafeBinDirs as lt, SignalConfigSchema as m, mergeModelCatalogRowsByAuthority as mn, formatErrorMessage as mr, isWindowsPlatform as mt, loadConfig as n, normalizeProviders as nn, listThinkingLevels as nr, getConfigValueAtPath as nt, resolveConfigSnapshotHash as o, getCustomProviderApiKey as on, DEFAULT_CONTEXT_TOKENS as or, ensurePluginAllowlisted as ot, MSTeamsConfigSchema as p, buildModelCatalogMergeKey as pn, extractErrorCode as pr, buildEnforcedShellCommand as pt, isPathWithinRoot as q, assertSecretInputResolved as qn, parseModelRef as qt, parseConfigJson5 as r, resolveImplicitCopilotProvider as rn, normalizeThinkLevel as rr, parseConfigPath as rt, writeConfigFile as s, requireApiKey as sn, DEFAULT_MODEL as sr, getTrustedSafeBinDirs as st, createConfigIO as t, normalizeGoogleModelId as tn, formatXHighModelHint as tr, unsetConfigOverride as tt, DiscordConfigSchema as u, resolveModelAuthMode as un, resolvePluginInstallDir as ur, normalizeTrustedSafeBinDirs as ut, normalizeTelegramCommandName as v, auth_profiles_exports as vn, getShellPathFromLoginShell as vr, resolveAllowlistCandidatePath as vt, resolveIMessageRemoteAttachmentRoots as w, resolveProfilesUnavailableReason as wn, resolveOwnerDisplaySetting as wr, unwrapKnownShellMultiplexerInvocation as wt, isInboundPathAllowed as x, isProfileInCooldown as xn, isDangerousHostEnvVarName as xr, isDispatchWrapperExecutable as xt, resolveTelegramCustomCommands as y, resolveAuthProfileOrder as yn, resolveShellEnvFallbackTimeoutMs as yr, resolveCommandResolutionFromArgv as yt, requireOpenAllowFrom as z, normalizeProviderId$1 as zn, buildConfiguredAllowlistKeys as zt };
23408
+ export { resetConfigOverrides as $, isOpenAISignInRuntimeModelSupported as $n, resolveSubagentSpawnModelSelection as $t, GroupPolicySchema as A, markAuthProfileGood as An, resolveCliName as Ar, isSafeExecutableValue as At, MODEL_APIS as B, normalizeProviderId$1 as Bn, buildModelAliasIndex as Bt, resolveIMessageAttachmentRoots as C, markAuthProfileFailure as Cn, resolveShellEnvFallbackTimeoutMs as Cr, unwrapKnownDispatchWrapperInvocation as Ct, BlockStreamingCoalesceSchema as D, dedupeProfileIds as Dn, sanitizeHostExecEnv as Dr, normalizeSafeBinProfileFixtures as Dt, ToolPolicySchema as E, resolveApiKeyForProfile as En, isDangerousHostInheritedEnvVarName as Er, SAFE_BIN_PROFILES as Et, TtsConfigSchema as F, acquireFileLock as Fn, normalizePluginsConfig as Fr, resolveTelegramPreviewStreamMode as Ft, isAvatarDataUrl as G, resolveAuthProfileDisplayLabel as Gn, normalizeModelRef as Gt, parseDurationMs as H, discoverFasedAgentPlugins as Hn, inferUniqueProviderFromConfiguredModels as Ht, TtsModeSchema as I, withFileLock as In, resolveEffectiveEnableState as Ir, DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH as It, isSupportedLocalAvatarExtension as J, assertSecretInputResolved as Jn, resolveConfiguredModelRef as Jt, isAvatarHttpUrl as K, isPrivateNetworkBaseUrl as Kn, normalizeProviderId as Kt, TtsProviderSchema as L, resolveProcessScopedMap as Ln, resolveMemorySlotDecision as Lr, resolveAgentMaxConcurrent as Lt, MarkdownTableModeSchema as M, resolveAuthStorePathForDisplay as Mn, parseBooleanValue as Mr, resolveDiscordPreviewStreamMode as Mt, ReplyRuntimeConfigSchemaShape as N, resolveFasedAgentAgentDir as Nn, applyTestPluginDefaults as Nr, resolveSlackNativeStreaming as Nt, DmConfigSchema as O, listProfilesForProvider as On, resolveOwnerDisplaySetting as Or, resolveSafeBinProfiles as Ot, TtsAutoSchema as P, resolveFasedAgentDir as Pn, isPluginRuntimeSessionReadAllowed as Pr, resolveSlackStreamingMode as Pt, getConfigOverrides as Q, isOpenAISignInCatalogModel as Qn, resolveReasoningDefault as Qt, normalizeAllowFrom as R, isPidAlive as Rn, resolvePluginAdminRpcActionGrant as Rr, buildAllowedModelSet as Rt, mergeInboundPathRoots as S, isProfileInCooldown as Sn, getShellPathFromLoginShell as Sr, isShellWrapperExecutable as St, normalizeScpRemoteHost as T, resolveProfilesUnavailableReason as Tn, isDangerousHostEnvVarName as Tr, splitShellArgs as Tt, parseByteSize as U, isPathInside as Un, isCliProvider as Ut, getBlockedNetworkModeReason as V, loadPluginManifestRegistry as Vn, findNormalizedProviderValue as Vt, AVATAR_MAX_BYTES as W, safeStatSync as Wn, modelKey as Wt, resolveAvatarMime as X, splitTrailingAuthProfile as Xn, resolveExplicitConfiguredModelRef as Xt, isWorkspaceRelativeAvatarPath as Y, coerceSecretRef as Yn, resolveDefaultModelForAgent as Yt, validateJsonSchemaValue as Z, getProviderBrandManifestForRoute as Zn, resolveModelRefFromString as Zt, TELEGRAM_COMMAND_NAME_PATTERN as _, normalizeModelCatalogProviderId as _n, extractErrorCode as _r, matchAllowlist as _t, readConfigFileSnapshotForWrite as a, getApiKeyForModel as an, formatXHighModelHint as ar, unsetConfigValueAtPath as at, DEFAULT_IMESSAGE_ATTACHMENT_ROOTS as b, resolveAuthProfileOrder as bn, isErrno as br, extractShellWrapperInlineCommand as bt, validateConfigObjectWithPlugins as c, resolveApiKeyForProvider as cn, resolveModelThinkingCapability as cr, isTrustedSafeBinPath as ct, GoogleChatConfigSchema as d, CURRENT_MODEL_PROVIDER_CATALOG as dn, DEFAULT_MODEL as dr, validateSafeBinArgv as dt, resolveThinkingDefault as en, isStandardProviderCatalogEntry as er, setConfigOverride as et, IMessageConfigSchema as f, cloneCurrentModelProvider as fn, DEFAULT_PROVIDER as fr, analyzeShellCommand as ft, TelegramConfigSchema as g, normalizeModelCatalogModelId as gn, MANIFEST_KEY as gr, DEFAULT_SAFE_BINS as gt, SlackConfigSchema as h, mergeModelCatalogRowsByAuthority as hn, getPackageManifestMetadata as hr, splitCommandChain as ht, readConfigFileSnapshot as i, resolveImplicitProviders as in, formatThinkingLevels as ir, setConfigValueAtPath as it, MarkdownConfigSchema as j, ensureAuthProfileStore as jn, isTruthyEnvValue as jr, mapStreamingModeToSlackLegacyDraftStreamMode as jt, DmPolicySchema as k, listProvidersWithStoredCredentials as kn, formatCliCommand as kr, applyMergePatch as kt, WhatsAppConfigSchema as l, resolveEnvApiKey as ln, supportsXHighThinking as lr, listWritableExplicitTrustedSafeBinDirs as lt, SignalConfigSchema as m, buildModelCatalogMergeKey as mn, resolvePluginInstallDir as mr, isWindowsPlatform as mt, loadConfig as n, normalizeProviders as nn, lookupProviderManifestModelCapability as nr, getConfigValueAtPath as nt, resolveConfigSnapshotHash as o, getCustomProviderApiKey as on, listThinkingLevels as or, ensurePluginAllowlisted as ot, MSTeamsConfigSchema as p, listCurrentModelCatalogRows as pn, VERSION as pr, buildEnforcedShellCommand as pt, isPathWithinRoot as q, normalizeSecretInput as qn, parseModelRef as qt, parseConfigJson5 as r, resolveImplicitCopilotProvider as rn, providerModelRecommendationRank as rr, parseConfigPath as rt, writeConfigFile as s, requireApiKey as sn, normalizeThinkLevel as sr, getTrustedSafeBinDirs as st, createConfigIO as t, normalizeGoogleModelId as tn, listProviderBrandManifests as tr, unsetConfigOverride as tt, DiscordConfigSchema as u, resolveModelAuthMode as un, DEFAULT_CONTEXT_TOKENS as ur, normalizeTrustedSafeBinDirs as ut, normalizeTelegramCommandName as v, normalizeProviderCatalogRows as vn, formatErrorMessage as vr, resolveAllowlistCandidatePath as vt, resolveIMessageRemoteAttachmentRoots as w, markAuthProfileUsed as wn, isDangerousHostEnvOverrideVarName as wr, unwrapKnownShellMultiplexerInvocation as wt, isInboundPathAllowed as x, getSoonestCooldownExpiry as xn, extractArchive as xr, isDispatchWrapperExecutable as xt, resolveTelegramCustomCommands as y, auth_profiles_exports as yn, formatUncaughtError as yr, resolveCommandResolutionFromArgv as yt, requireOpenAllowFrom as z, findNormalizedProviderValue$1 as zn, buildConfiguredAllowlistKeys as zt };