@fased/fased 0.1.55 → 0.1.57
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.
- package/config/capability-catalog.json +12 -0
- package/dist/agents/authenticated-model-catalog.js +3 -2
- package/dist/agents/bash-tools.exec-host-node.js +1 -1
- package/dist/agents/bash-tools.exec.js +1 -1
- package/dist/agents/copilot-dynamic-headers.js +37 -0
- package/dist/agents/current-model-catalog.js +6 -3
- package/dist/agents/model-catalog-snapshot.js +124 -0
- package/dist/agents/model-catalog-source.js +2 -2
- package/dist/agents/model-catalog.js +1 -1
- package/dist/agents/model-metadata.js +34 -6
- package/dist/agents/openai-codex-app-server.js +524 -0
- package/dist/agents/openai-codex-runtime-component.js +39 -0
- package/dist/agents/pi-embedded-runner/compact.js +3 -3
- package/dist/agents/pi-embedded-runner/extra-params.js +170 -94
- package/dist/agents/pi-embedded-runner/model.js +62 -1
- package/dist/agents/pi-embedded-runner/moonshot-stream-wrappers.js +46 -0
- package/dist/agents/pi-embedded-runner/openai-stream-wrappers.js +221 -0
- package/dist/agents/pi-embedded-runner/run/attempt.js +6 -4
- package/dist/agents/pi-embedded-runner/run.js +5 -2
- package/dist/agents/pi-embedded-runner/utils.js +1 -1
- package/dist/agents/pi-embedded-runner.js +1 -1
- package/dist/agents/pi-tools.js +2 -2
- package/dist/agents/tools/discord-actions-messaging.js +1 -1
- package/dist/agents/tools/message-tool.js +1 -1
- package/dist/agents/tools/session-status-tool.js +3 -3
- package/dist/agents/tools/slack-actions.js +1 -1
- package/dist/agents/tools/tts-tool.js +1 -1
- package/dist/auto-reply/reply/commands-models.js +1 -1
- package/dist/auto-reply/reply/directive-handling.impl.js +4 -1
- package/dist/auto-reply/reply/dispatch-acp.js +1 -1
- package/dist/auto-reply/reply/dispatch-from-config.js +1 -1
- package/dist/auto-reply/reply/get-reply-run.js +20 -2
- package/dist/auto-reply/reply/model-selection.js +1 -1
- package/dist/auto-reply/reply/session-reset-model.js +1 -1
- package/dist/auto-reply/status.js +1 -1
- package/dist/auto-reply/thinking.js +1 -1
- package/dist/brand.js +1 -1
- package/dist/browser/cdp.helpers.js +2 -2
- package/dist/browser/chrome.js +2 -2
- package/dist/browser/extension-relay.js +7 -7
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/capabilities/install.js +43 -0
- package/dist/cli/components-cli.js +9 -31
- package/dist/cli/cron-cli/register.cron-add.js +1 -1
- package/dist/cli/hooks-cli.js +1 -1
- package/dist/cli/plugins-cli.js +3 -3
- package/dist/cli/program/register.agent.js +1 -1
- package/dist/cli/update-cli/update-command.js +50 -12
- package/dist/commands/agent.js +22 -3
- package/dist/commands/auth-choice.apply.openai.js +9 -0
- package/dist/commands/auth-choice.apply.plugin-provider.js +1 -1
- package/dist/commands/doctor-config-flow.js +1 -1
- package/dist/commands/hosted-dashboard-probe.js +3 -3
- package/dist/commands/model-picker.js +4 -3
- package/dist/commands/models/list.probe.js +1 -1
- package/dist/commands/models/list.registry.js +3 -2
- package/dist/commands/models/list.status-command.js +2 -2
- package/dist/commands/onboard-channels.js +1 -1
- package/dist/commands/onboarding/plugin-install.js +2 -2
- package/dist/commands/openai-codex-model-default.js +3 -2
- package/dist/config/zod-schema.agent-defaults.js +4 -2
- package/dist/config/zod-schema.agent-runtime.js +4 -2
- package/dist/config/zod-schema.core.js +4 -2
- package/dist/control-ui/assets/{app-D2RaTXoV.js → app-DltSyY4Y.js} +1723 -1716
- package/dist/control-ui/assets/chat-model-ref-Djkv93yn.js +2 -0
- package/dist/control-ui/assets/{index-D2nC6I-9.js → index-D5JlBp7f.js} +3 -3
- package/dist/control-ui/assets/{providers-CyjiG5Jw.js → providers-Cc89iMdx.js} +3 -3
- package/dist/control-ui/index.html +1 -1
- package/dist/control-ui/version.json +1 -1
- package/dist/cron/isolated-agent/run.js +6 -2
- package/dist/cron/service/jobs.js +11 -1
- package/dist/discord/monitor/gateway-plugin.js +2 -2
- package/dist/discord/voice/manager.js +1 -1
- package/dist/gateway/client.js +4 -4
- package/dist/gateway/protocol/schema/agents-models-skills.js +106 -5
- package/dist/gateway/server-methods/hooks.js +1 -1
- package/dist/gateway/server-methods/models.js +15 -7
- package/dist/gateway/server-methods/plugins-marketplace.js +3 -3
- package/dist/gateway/server-methods/services.js +1 -1
- package/dist/gateway/server-methods/sessions.js +1 -1
- package/dist/gateway/server-methods/tts.js +2 -2
- package/dist/gateway/server-model-catalog.js +1 -1
- package/dist/gateway/sessions-patch.js +27 -24
- package/dist/light-update-status.js +11 -11
- package/dist/plugin-sdk/{accounts-CeRNo5Ae.js → accounts-CmMwe9Dt.js} +1 -1
- package/dist/plugin-sdk/{actions-OMRHtXPj.js → actions-DYViFQiX.js} +4 -4
- package/dist/plugin-sdk/{active-listener-BlIkS3iR.js → active-listener-DVbpcisf.js} +1 -1
- package/dist/plugin-sdk/{agent-scope-BbgPlhtw.js → agent-scope-CCjfjKoO.js} +1 -1
- package/dist/plugin-sdk/{allow-list-BYeKk0Sy.js → allow-list-DyAxs4yw.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-B2n3a2Tj.js → audio-preflight-D-Mfay8i.js} +44 -48
- package/dist/plugin-sdk/{audit-Ppg6dR_b.js → audit-JImYFOzJ.js} +1 -1
- package/dist/plugin-sdk/{channel-access-configure-B6IAGlE0.js → channel-access-configure-B_qYjml8.js} +1 -1
- package/dist/plugin-sdk/{channel-access-af8dWWRv.js → channel-access-cxCK2mci.js} +1 -1
- package/dist/plugin-sdk/{channel-adapters.discord-IOZP8Cv5.js → channel-adapters.discord-BS4S4Svh.js} +1 -1
- package/dist/plugin-sdk/channel-plugin-common.d.ts +3 -3
- package/dist/plugin-sdk/channel-plugin-common.js +5 -5
- package/dist/plugin-sdk/{chunk-CD76Byie.js → chunk-CF8nvZNj.js} +1 -1
- package/dist/plugin-sdk/{chunk-items-Bu19zrYH.js → chunk-items-yLFoO571.js} +1 -1
- package/dist/plugin-sdk/command-status.d.ts +2 -2
- package/dist/plugin-sdk/command-status.js +44 -48
- package/dist/plugin-sdk/{commands-registry-DgS55tNj.js → commands-registry-CK4KmMG0.js} +2 -2
- package/dist/plugin-sdk/{common-CWvfeiX0.js → common-Cky4hpqr.js} +1 -1
- package/dist/plugin-sdk/{config-CYDETqcF.js → config-Dbxj_jUP.js} +1153 -17
- package/dist/plugin-sdk/{config-schema-CQ4EVcQG.js → config-schema-aKPMn6ML.js} +96084 -81132
- package/dist/plugin-sdk/device-pair.d.ts +1 -1
- package/dist/plugin-sdk/device-pair.js +2 -3
- package/dist/plugin-sdk/{diagnostic-Dfn1iERm.js → diagnostic-DLL_zekv.js} +3 -3
- package/dist/plugin-sdk/{directory-live-DatqU-eS.js → directory-live-CSuYxdwk.js} +1 -1
- package/dist/plugin-sdk/{directory-live-ClwN5KKq.js → directory-live-Dw7ZgC9_.js} +1 -1
- package/dist/plugin-sdk/discord.d.ts +6 -6
- package/dist/plugin-sdk/discord.js +32 -33
- package/dist/plugin-sdk/{draft-stream-controls-D4Tb_iS_.js → draft-stream-controls-BqchW1vi.js} +1 -1
- package/dist/plugin-sdk/{fetch-guard-BuYrl6q2.js → fetch-guard-CeG6u6ld.js} +1 -1
- package/dist/plugin-sdk/{filesystem-manager-B9DDPgfU.js → filesystem-manager-ZoHU8oA7.js} +3 -3
- package/dist/plugin-sdk/{fs-safe-BG-VzVkL.js → fs-safe-g4g7GT02.js} +2 -2
- package/dist/plugin-sdk/{group-mentions-BxDgHCgj.d.ts → group-mentions-BHRff6j8.d.ts} +1 -1
- package/dist/plugin-sdk/{guilds-BeT3iHHJ.js → guilds-CDhRIX57.js} +1 -1
- package/dist/plugin-sdk/{handle-action-B75UVKxF.js → handle-action-BSNDD2Vc.js} +25 -26
- package/dist/plugin-sdk/{helpers-BuEwju6y.js → helpers-CDo2XBSr.js} +1 -1
- package/dist/plugin-sdk/{image-ops-C66HPeAZ.js → image-ops-DbeBxbn4.js} +1 -1
- package/dist/plugin-sdk/index.d.ts +18 -18
- package/dist/plugin-sdk/index.js +48 -52
- package/dist/plugin-sdk/{login-Amr2DpKU.js → login-CWXvFTd8.js} +3 -3
- package/dist/plugin-sdk/{login-qr-DMQNEi9m.js → login-qr-CJB2zjmM.js} +4 -4
- package/dist/plugin-sdk/{manager-Bvpq49BI.js → manager-CbiFFLKS.js} +8 -8
- package/dist/plugin-sdk/{markdown-tables-DmQ7oXOm.js → markdown-tables-Bskt9r8i.js} +1 -1
- package/dist/plugin-sdk/{media-ByLQbEwJ.js → media-B3aAg5rh.js} +5 -5
- package/dist/plugin-sdk/{memory-search-C3C0bD2H.js → memory-search-DTjIMw8J.js} +1 -1
- package/dist/plugin-sdk/{monitor-K_u6daGa.js → monitor-BJs6z7AT.js} +52 -56
- package/dist/plugin-sdk/{monitor-S_7LrvSj.js → monitor-BYGbTI5V.js} +62 -66
- package/dist/plugin-sdk/{openresponses-http-BrDJUZXR.js → openresponses-http-BGCl2dS2.js} +44 -48
- package/dist/plugin-sdk/{optional-runtime-dependency-CbYjAC2b.js → optional-runtime-dependency-BlTVkcAg.js} +1 -1
- package/dist/plugin-sdk/{outbound-BuDafBBI.js → outbound-CIemga5_.js} +9 -9
- package/dist/plugin-sdk/{outbound-attachment-DmZmUqFP.js → outbound-attachment-2RckWqrk.js} +2 -2
- package/dist/plugin-sdk/{pairing-message-D0-UWGFJ.d.ts → pairing-message-C403mq4K.d.ts} +2 -2
- package/dist/plugin-sdk/{pairing-message-e4D4eBDA.js → pairing-message-r-VQfhFB.js} +1 -1
- package/dist/plugin-sdk/{pairing-store-T3IGoGZg.js → pairing-store-uPnLfGgB.js} +2 -2
- package/dist/plugin-sdk/{path-alias-guards-Dg3gU-MA.js → path-alias-guards-DjgDArrp.js} +1 -1
- package/dist/plugin-sdk/{pi-model-discovery-DvAG_Png.js → pi-model-discovery-BpEilAym.js} +1 -1
- package/dist/plugin-sdk/{pi-model-discovery-runtime-NjkUgjIf.js → pi-model-discovery-runtime-DwNdFaz-.js} +3 -3
- package/dist/plugin-sdk/{probe-Dlk0Jxpw.js → probe-BFroeK3g.js} +1 -1
- package/dist/plugin-sdk/{probe-Cyb-DGA3.js → probe-CJb5uR8B.js} +2 -2
- package/dist/plugin-sdk/{probe-D8JAILir.js → probe-l_whvGLY.js} +1 -1
- package/dist/plugin-sdk/provider-web-search-config-contract.d.ts +2 -2
- package/dist/plugin-sdk/{pw-ai-D7eW43DL.js → pw-ai-H7UgunQQ.js} +7 -9
- package/dist/plugin-sdk/{qmd-manager-DCUE21Kj.js → qmd-manager-DSyx77KY.js} +4 -4
- package/dist/plugin-sdk/{query-expansion-Zr9qQixm.js → query-expansion-CAI2kKLQ.js} +1 -1
- package/dist/plugin-sdk/{replies-BMIPmEoP.js → replies-CKMwkH4G.js} +4 -4
- package/dist/plugin-sdk/{reply-prefix-Bqzm6DC1.js → reply-prefix-CeVw7Mn2.js} +1 -1
- package/dist/plugin-sdk/{resolve-channels-ChWKWtA9.js → resolve-channels-87LZrFk_.js} +2 -2
- package/dist/plugin-sdk/{resolve-channels-zEnvugag.js → resolve-channels-_-nV-EK2.js} +1 -1
- package/dist/plugin-sdk/{resolve-outbound-target-CXCqUUPV.js → resolve-outbound-target-B68fSoGi.js} +2 -2
- package/dist/plugin-sdk/{resolve-route-DJN-SUSt.js → resolve-route-B8fOfihG.js} +2 -2
- package/dist/plugin-sdk/{resolve-users-BTvjQuui.js → resolve-users-DN9VQBwv.js} +1 -1
- package/dist/plugin-sdk/{resolve-users-CTzoruIZ.js → resolve-users-V6dHh_2B.js} +2 -2
- package/dist/plugin-sdk/{retry-policy-CY1qY6d7.js → retry-policy-B6GQldxB.js} +1 -1
- package/dist/plugin-sdk/{runtime-dependency-DvdRNMvs.js → runtime-dependency-DlqVSsSs.js} +124 -16
- package/dist/plugin-sdk/{runtime-CgOkQe0w.js → runtime-nVJl3PlS.js} +4 -4
- package/dist/plugin-sdk/{sandbox-paths-lj7_EVuA.js → sandbox-paths-Dx2lUqCu.js} +2 -2
- package/dist/plugin-sdk/sat-runtime.d.ts +3 -3
- package/dist/plugin-sdk/sat-runtime.js +45 -11
- package/dist/plugin-sdk/{send-2ITqny2W.js → send-BCJ4hi3t.js} +10 -10
- package/dist/plugin-sdk/{send-Cr-dj6S-.js → send-BHokB4TR.js} +6 -6
- package/dist/plugin-sdk/{send-BAz22RZr.js → send-CPK_HlYW.js} +9 -9
- package/dist/plugin-sdk/{send-eTxqFFsw.js → send-D3DQOg2a.js} +8 -8
- package/dist/plugin-sdk/{send-BG3RWyil.js → send-hSu1HWms.js} +13 -13
- package/dist/plugin-sdk/{session-C8nJmmVE.js → session-DQ4Dr-mf.js} +3 -3
- package/dist/plugin-sdk/{skill-commands-Rm5by9S8.js → skill-commands-CmdoKLh_.js} +103 -103
- package/dist/plugin-sdk/{slack-xvIVvyEM.js → slack-B70NHpMF.js} +65 -69
- package/dist/plugin-sdk/{slack-actions-BNIALJTA.js → slack-actions-fSmP981b.js} +21 -22
- package/dist/plugin-sdk/slack.d.ts +6 -6
- package/dist/plugin-sdk/slack.js +14 -14
- package/dist/plugin-sdk/{ssrf-BZG8Ztod.js → ssrf-fG4UHKBw.js} +180 -2
- package/dist/plugin-sdk/{sticker-cache-D3oDiu2u.js → sticker-cache-B4dG2sKU.js} +3 -3
- package/dist/plugin-sdk/{tables-DS5L7lCA.js → tables-EX4Hy-a-.js} +2 -2
- package/dist/plugin-sdk/{device-pairing-D2Yq-_U6.js → tailscale-status-DwpNdO3Z.js} +104 -2
- package/dist/plugin-sdk/{targets-D6lUomJc.js → targets-BeGUCGWK.js} +2 -2
- package/dist/plugin-sdk/{telegram-actions-MSFkDn0m.js → telegram-actions-CM8SJgc9.js} +49 -53
- package/dist/plugin-sdk/telegram.d.ts +6 -6
- package/dist/plugin-sdk/telegram.js +12 -12
- package/dist/plugin-sdk/{thread-bindings.lifecycle-Ry6Vcgw3.js → thread-bindings.lifecycle-tHK_1mvp.js} +3 -3
- package/dist/plugin-sdk/{thread-bindings.state-C0stmvNk.js → thread-bindings.state-D7xG1GHu.js} +2 -2
- package/dist/plugin-sdk/{tmp-fased-dir-D91GExk4.d.ts → tmp-fased-dir-Ouj58axY.d.ts} +2 -2
- package/dist/plugin-sdk/{types-DVTIpopt.d.ts → types-B4hj6HgR.d.ts} +2 -2
- package/dist/plugin-sdk/{types-BzadOItY.d.ts → types-DyhXnYUr.d.ts} +1 -1
- package/dist/plugin-sdk/{types-DKvBJHfH.d.ts → types-dWZFX1fk.d.ts} +28 -3
- package/dist/plugin-sdk/{types.plugin-BiHPaDTF.d.ts → types.plugin-_fbu40Re.d.ts} +7 -5
- package/dist/plugin-sdk/{web-DRNJxHXA.js → web-BFolfZ3i.js} +53 -57
- package/dist/plugin-sdk/{whatsapp-actions-BDXZF2R5.js → whatsapp-actions-CYmleHCz.js} +19 -20
- package/dist/plugin-sdk/{whatsapp-heartbeat-CKgmwCGr.js → whatsapp-heartbeat-BEwm4GK3.js} +2 -2
- package/dist/plugin-sdk/whatsapp.d.ts +11 -11
- package/dist/plugin-sdk/whatsapp.js +15 -15
- package/dist/plugin-sdk/{wsl-Biw7Mj39.js → wsl-BtMDzMv5.js} +53 -53
- package/dist/plugin-sdk/{zod-schema.providers-core-CIzCjXH9.d.ts → zod-schema.providers-core-FaYR6KdD.d.ts} +61 -61
- package/dist/plugins/lifecycle.js +1 -1
- package/dist/plugins/manifest-registry.js +26 -0
- package/dist/plugins/manifest.js +2 -0
- package/dist/plugins/marketplace.js +1 -1
- package/dist/plugins/runtime/index.js +1 -1
- package/dist/plugins/update.js +1 -1
- package/dist/providers/github-copilot-model-discovery.js +51 -0
- package/dist/providers/openai-codex-model-discovery.js +176 -0
- package/dist/providers/refresh.js +116 -34
- package/dist/providers/registry.js +2 -2
- package/dist/providers/runtime-model-catalog.js +97 -28
- package/dist/shared/model-thinking.js +13 -2
- package/dist/telegram/bot-message-context.js +1 -1
- package/dist/wizard/onboarding.finalize.js +1 -1
- package/extensions/acpx/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/fased-federation/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +12 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +2 -2
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +12 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +12 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/sat-mining/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +12 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +12 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +12 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +12 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +2 -1
- package/dist/control-ui/assets/chat-model-ref-BZFblCeY.js +0 -2
- package/dist/plugin-sdk/ip-C70a-YlD.js +0 -181
- package/dist/plugin-sdk/tailscale-status-ClsquRGs.js +0 -104
- package/dist/plugin-sdk/wallet-status-f0HagNeO.js +0 -11947
- package/dist/plugin-sdk/ws-CocpWGhl.js +0 -114
- /package/dist/plugin-sdk/{blocks-input-Dcitfh7h.js → blocks-input-Bg-8S2pl.js} +0 -0
- /package/dist/plugin-sdk/{channel-activity-Cg1xRoc2.js → channel-activity-DBDMQ3yI.js} +0 -0
- /package/dist/plugin-sdk/{channel-core-BOkyXXLa.js → channel-core-CFRs8LPy.js} +0 -0
- /package/dist/plugin-sdk/{client-D2N7hqVu.js → client-pI228AVT.js} +0 -0
- /package/dist/plugin-sdk/{command-poll-backoff-NAePk3eL.js → command-poll-backoff-yJU83wEq.js} +0 -0
- /package/dist/plugin-sdk/{date-time-CE3Uer3C.js → date-time-uUevHscU.js} +0 -0
- /package/dist/plugin-sdk/{diagnostic-session-state-HO94DMou.js → diagnostic-session-state-DqgfGYqZ.js} +0 -0
- /package/dist/plugin-sdk/{draft-stream-loop-CKyHn8IX.js → draft-stream-loop-CrOPfV3F.js} +0 -0
- /package/dist/plugin-sdk/{fetch-Cu-ahkie.js → fetch-BtmoPIlf.js} +0 -0
- /package/dist/plugin-sdk/{gateway-registry-DFsoY6C0.js → gateway-registry-DZDsqicG.js} +0 -0
- /package/dist/plugin-sdk/{inbound-context-BFnIdcqI.js → inbound-context-DrAcXE0y.js} +0 -0
- /package/dist/plugin-sdk/{internal-qo16nNU1.js → internal-CG_nHo-2.js} +0 -0
- /package/dist/plugin-sdk/{pairing-token-N_6Jbt1L.js → pairing-token-Cs3BRKc0.js} +0 -0
- /package/dist/plugin-sdk/{polls-DQrR-qT3.js → polls-DKQXVfJp.js} +0 -0
- /package/dist/plugin-sdk/{proxy-7xs_rsnV.js → proxy-DWpYcsvR.js} +0 -0
- /package/dist/plugin-sdk/{qmd-scope-D1sSG_Rx.js → qmd-scope-CdX34VCV.js} +0 -0
- /package/dist/plugin-sdk/{redact-identifier-Q3tkvxhm.js → redact-identifier-Lt7t3l7S.js} +0 -0
- /package/dist/plugin-sdk/{redact-sensitive-url-dPvnFFsK.js → redact-sensitive-url-g-ukZjwA.js} +0 -0
- /package/dist/plugin-sdk/{render-Bwu_WxwA.js → render-e7fENCYH.js} +0 -0
- /package/dist/plugin-sdk/{reply-reference-BkbK_DWT.js → reply-reference-Bqk-7HXE.js} +0 -0
- /package/dist/plugin-sdk/{secure-random-Bl-AVLVb.js → secure-random-BIkG-k4s.js} +0 -0
- /package/dist/plugin-sdk/{shared-clhhbWN3.js → shared-CBgp_GBw.js} +0 -0
- /package/dist/plugin-sdk/{target-errors-C_SVKoEv.js → target-errors-Ckufe179.js} +0 -0
- /package/dist/plugin-sdk/{targets-BDvvnlph.js → targets-CoMJ1ry1.js} +0 -0
- /package/dist/plugin-sdk/{tokens-BvtlOzVP.js → tokens-BbnqfVuu.js} +0 -0
- /package/dist/plugin-sdk/{tool-loop-detection-CWphm1k_.js → tool-loop-detection-Bp8bPJLs.js} +0 -0
- /package/dist/plugin-sdk/{ui-e020ouhJ.js → ui-Be8cLHIS.js} +0 -0
- /package/dist/plugin-sdk/{with-timeout-BYrRAYFV.js → with-timeout-ckWB8rTo.js} +0 -0
|
@@ -147,6 +147,18 @@
|
|
|
147
147
|
"surface": "Services > Browser",
|
|
148
148
|
"description": "Chrome, Chromium, Brave, Edge, remote CDP, or the extension relay."
|
|
149
149
|
},
|
|
150
|
+
{
|
|
151
|
+
"id": "openai-runtime",
|
|
152
|
+
"label": "OpenAI Sign-In Runtime",
|
|
153
|
+
"category": "provider",
|
|
154
|
+
"delivery": "npm-addon",
|
|
155
|
+
"packageName": "@fased/openai-runtime",
|
|
156
|
+
"pluginId": "openai-runtime",
|
|
157
|
+
"restartRequired": false,
|
|
158
|
+
"docsPath": "/providers/openai",
|
|
159
|
+
"surface": "Agent > Models",
|
|
160
|
+
"description": "Official Codex app-server runtime for ChatGPT sign-in model discovery and execution."
|
|
161
|
+
},
|
|
150
162
|
{
|
|
151
163
|
"id": "ollama",
|
|
152
164
|
"label": "Ollama",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { buildCredentialScopedAllowedModelSet } from "./model-catalog-access.js";
|
|
2
1
|
import { applyRuntimeProviderModelDiscovery, filterCatalogToAuthoritativeAvailability } from "../providers/runtime-model-catalog.js";
|
|
2
|
+
import { buildCredentialScopedAllowedModelSet } from "./model-catalog-access.js";
|
|
3
3
|
|
|
4
4
|
//#region src/agents/authenticated-model-catalog.ts
|
|
5
5
|
async function resolveAuthenticatedModelCatalog(params) {
|
|
@@ -13,7 +13,8 @@ async function resolveAuthenticatedModelCatalog(params) {
|
|
|
13
13
|
cfg: params.cfg,
|
|
14
14
|
store: params.store,
|
|
15
15
|
routes: initialScope.usableProviders,
|
|
16
|
-
catalog: initialScope.usableCatalog
|
|
16
|
+
catalog: initialScope.usableCatalog,
|
|
17
|
+
agentDir: params.agentDir
|
|
17
18
|
}), params.store);
|
|
18
19
|
return buildCredentialScopedAllowedModelSet({
|
|
19
20
|
cfg: params.cfg,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { logInfo } from "../logger.js";
|
|
2
|
-
import { evaluateShellAllowlist } from "../infra/exec-approvals-allowlist.js";
|
|
3
2
|
import { callGatewayTool } from "./tools/gateway.js";
|
|
3
|
+
import { evaluateShellAllowlist } from "../infra/exec-approvals-allowlist.js";
|
|
4
4
|
import { requiresExecApproval, resolveExecApprovalsFromFile } from "../infra/exec-approvals.js";
|
|
5
5
|
import { detectCommandObfuscation } from "../infra/exec-obfuscation-detect.js";
|
|
6
6
|
import { DEFAULT_APPROVAL_TIMEOUT_MS, createApprovalSlug, emitExecSystemEvent } from "./bash-tools.exec-runtime.js";
|
|
@@ -2,8 +2,8 @@ import { parseAgentSessionKey } from "../sessions/session-key-utils.js";
|
|
|
2
2
|
import { resolveAgentIdFromSessionKey } from "../routing/session-key.js";
|
|
3
3
|
import { logInfo } from "../logger.js";
|
|
4
4
|
import { getShellPathFromLoginShell, resolveShellEnvFallbackTimeoutMs } from "../infra/shell-env.js";
|
|
5
|
-
import { resolveExecSafeBinRuntimePolicy } from "../infra/exec-safe-bin-runtime-policy.js";
|
|
6
5
|
import { SafeOpenError, readFileWithinRoot } from "../infra/fs-safe.js";
|
|
6
|
+
import { resolveExecSafeBinRuntimePolicy } from "../infra/exec-safe-bin-runtime-policy.js";
|
|
7
7
|
import { maxAsk, minSecurity } from "../infra/exec-approvals.js";
|
|
8
8
|
import { markBackgrounded } from "./bash-process-registry.js";
|
|
9
9
|
import { applyPathPrepend, normalizePathPrepend } from "../infra/path-prepend.js";
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
//#region src/agents/copilot-dynamic-headers.ts
|
|
2
|
+
const COPILOT_EDITOR_VERSION = "vscode/1.96.2";
|
|
3
|
+
const COPILOT_USER_AGENT = "GitHubCopilotChat/0.26.7";
|
|
4
|
+
const COPILOT_GITHUB_API_VERSION = "2025-04-01";
|
|
5
|
+
function inferCopilotInitiator(messages) {
|
|
6
|
+
const last = messages[messages.length - 1];
|
|
7
|
+
return last && last.role !== "user" ? "agent" : "user";
|
|
8
|
+
}
|
|
9
|
+
function hasCopilotVisionInput(messages) {
|
|
10
|
+
return messages.some((message) => {
|
|
11
|
+
if (message.role === "user" && Array.isArray(message.content)) {
|
|
12
|
+
return message.content.some((item) => item.type === "image");
|
|
13
|
+
}
|
|
14
|
+
if (message.role === "toolResult" && Array.isArray(message.content)) {
|
|
15
|
+
return message.content.some((item) => item.type === "image");
|
|
16
|
+
}
|
|
17
|
+
return false;
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function buildCopilotIdeHeaders(params = {}) {
|
|
21
|
+
return {
|
|
22
|
+
"Editor-Version": COPILOT_EDITOR_VERSION,
|
|
23
|
+
"User-Agent": COPILOT_USER_AGENT,
|
|
24
|
+
...params.includeApiVersion ? { "X-Github-Api-Version": COPILOT_GITHUB_API_VERSION } : {}
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
function buildCopilotDynamicHeaders(params) {
|
|
28
|
+
return {
|
|
29
|
+
...buildCopilotIdeHeaders(),
|
|
30
|
+
"X-Initiator": inferCopilotInitiator(params.messages),
|
|
31
|
+
"Openai-Intent": "conversation-edits",
|
|
32
|
+
...params.hasImages ? { "Copilot-Vision-Request": "true" } : {}
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
//#endregion
|
|
37
|
+
export { buildCopilotIdeHeaders };
|
|
@@ -153,7 +153,8 @@ const OPENAI_CODEX_MODELS = [
|
|
|
153
153
|
input: ["text", "image"],
|
|
154
154
|
contextWindow: 105e4,
|
|
155
155
|
maxTokens: 128e3,
|
|
156
|
-
api: "openai-codex-responses"
|
|
156
|
+
api: "openai-codex-responses",
|
|
157
|
+
compat: { responsesLite: true }
|
|
157
158
|
}),
|
|
158
159
|
model({
|
|
159
160
|
id: "gpt-5.6-terra",
|
|
@@ -162,7 +163,8 @@ const OPENAI_CODEX_MODELS = [
|
|
|
162
163
|
input: ["text", "image"],
|
|
163
164
|
contextWindow: 105e4,
|
|
164
165
|
maxTokens: 128e3,
|
|
165
|
-
api: "openai-codex-responses"
|
|
166
|
+
api: "openai-codex-responses",
|
|
167
|
+
compat: { responsesLite: true }
|
|
166
168
|
}),
|
|
167
169
|
model({
|
|
168
170
|
id: "gpt-5.6-luna",
|
|
@@ -171,7 +173,8 @@ const OPENAI_CODEX_MODELS = [
|
|
|
171
173
|
input: ["text", "image"],
|
|
172
174
|
contextWindow: 105e4,
|
|
173
175
|
maxTokens: 128e3,
|
|
174
|
-
api: "openai-codex-responses"
|
|
176
|
+
api: "openai-codex-responses",
|
|
177
|
+
compat: { responsesLite: true }
|
|
175
178
|
}),
|
|
176
179
|
model({
|
|
177
180
|
id: "gpt-5.5",
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { resolveAgentModelFallbackValues } from "../config/model-input.js";
|
|
2
|
+
import { resolveAgentEffectiveModelPrimary, resolveAgentModelFallbacksOverride } from "./agent-scope.js";
|
|
3
|
+
import { deriveModelMetadata } from "./model-metadata.js";
|
|
4
|
+
import { resolveAuthenticatedModelCatalog } from "./authenticated-model-catalog.js";
|
|
5
|
+
import { resolveTaskModelRole } from "../cron/task-model-roles.js";
|
|
6
|
+
|
|
7
|
+
//#region src/agents/model-catalog-snapshot.ts
|
|
8
|
+
const TASK_ROLES = [
|
|
9
|
+
"cheapCheck",
|
|
10
|
+
"strong",
|
|
11
|
+
"escalation",
|
|
12
|
+
"coding",
|
|
13
|
+
"summarizer"
|
|
14
|
+
];
|
|
15
|
+
function normalizeRef(value) {
|
|
16
|
+
const trimmed = value?.trim();
|
|
17
|
+
return trimmed || undefined;
|
|
18
|
+
}
|
|
19
|
+
function collectAssignments(params) {
|
|
20
|
+
const assignments = [];
|
|
21
|
+
const add = (role, ref) => {
|
|
22
|
+
const normalized = normalizeRef(ref);
|
|
23
|
+
if (normalized && !assignments.some((entry) => entry.role === role && entry.ref === normalized)) {
|
|
24
|
+
assignments.push({
|
|
25
|
+
role,
|
|
26
|
+
ref: normalized
|
|
27
|
+
});
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
add("primary", resolveAgentEffectiveModelPrimary(params.cfg, params.agentId));
|
|
31
|
+
const fallbacks = resolveAgentModelFallbacksOverride(params.cfg, params.agentId) ?? resolveAgentModelFallbackValues(params.cfg.agents?.defaults?.model);
|
|
32
|
+
for (const fallback of fallbacks) {
|
|
33
|
+
add("fallback", fallback);
|
|
34
|
+
}
|
|
35
|
+
for (const role of TASK_ROLES) {
|
|
36
|
+
add(role, resolveTaskModelRole({
|
|
37
|
+
cfg: params.cfg,
|
|
38
|
+
agentId: params.agentId,
|
|
39
|
+
role
|
|
40
|
+
})?.model);
|
|
41
|
+
}
|
|
42
|
+
return assignments;
|
|
43
|
+
}
|
|
44
|
+
function modelRef(model) {
|
|
45
|
+
return `${model.provider}/${model.id}`;
|
|
46
|
+
}
|
|
47
|
+
function buildProviderSummaries(models) {
|
|
48
|
+
const summaries = new Map();
|
|
49
|
+
for (const model of models) {
|
|
50
|
+
const providerId = model.metadata.publicProviderId;
|
|
51
|
+
const existing = summaries.get(providerId) ?? {
|
|
52
|
+
id: providerId,
|
|
53
|
+
label: model.metadata.publicProviderLabel,
|
|
54
|
+
routes: [],
|
|
55
|
+
credentialRoutes: [],
|
|
56
|
+
available: 0,
|
|
57
|
+
recommended: 0,
|
|
58
|
+
assigned: 0
|
|
59
|
+
};
|
|
60
|
+
if (!existing.routes.includes(model.provider)) {
|
|
61
|
+
existing.routes.push(model.provider);
|
|
62
|
+
}
|
|
63
|
+
for (const route of model.metadata.credentialRoutes) {
|
|
64
|
+
if (!existing.credentialRoutes.some((entry) => entry.id === route.id)) {
|
|
65
|
+
existing.credentialRoutes.push(route);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
existing.available += 1;
|
|
69
|
+
existing.recommended += model.recommended ? 1 : 0;
|
|
70
|
+
existing.assigned += model.assignedRoles.length > 0 ? 1 : 0;
|
|
71
|
+
summaries.set(providerId, existing);
|
|
72
|
+
}
|
|
73
|
+
return [...summaries.values()].map((summary) => ({
|
|
74
|
+
...summary,
|
|
75
|
+
routes: summary.routes.toSorted(),
|
|
76
|
+
credentialRoutes: summary.credentialRoutes.toSorted((left, right) => left.label.localeCompare(right.label))
|
|
77
|
+
})).toSorted((left, right) => left.label.localeCompare(right.label));
|
|
78
|
+
}
|
|
79
|
+
async function resolveCanonicalModelCatalogSnapshot(params) {
|
|
80
|
+
const authenticated = await resolveAuthenticatedModelCatalog({
|
|
81
|
+
cfg: params.cfg,
|
|
82
|
+
store: params.store,
|
|
83
|
+
catalog: params.catalog,
|
|
84
|
+
defaultProvider: params.defaultProvider,
|
|
85
|
+
agentDir: params.agentDir
|
|
86
|
+
});
|
|
87
|
+
const configuredAssignments = collectAssignments({
|
|
88
|
+
cfg: params.cfg,
|
|
89
|
+
agentId: params.agentId
|
|
90
|
+
});
|
|
91
|
+
const assignmentsByRef = new Map();
|
|
92
|
+
for (const assignment of configuredAssignments) {
|
|
93
|
+
assignmentsByRef.set(assignment.ref, [...assignmentsByRef.get(assignment.ref) ?? [], assignment.role]);
|
|
94
|
+
}
|
|
95
|
+
const availableRefs = new Set(authenticated.usableCatalog.map(modelRef));
|
|
96
|
+
const runnableRefs = new Set(authenticated.allowedCatalog.map(modelRef));
|
|
97
|
+
const models = authenticated.usableCatalog.map((model) => {
|
|
98
|
+
const metadata = model.metadata ?? deriveModelMetadata({
|
|
99
|
+
model,
|
|
100
|
+
cfg: params.cfg
|
|
101
|
+
});
|
|
102
|
+
return {
|
|
103
|
+
...model,
|
|
104
|
+
metadata,
|
|
105
|
+
available: true,
|
|
106
|
+
runnable: runnableRefs.size === 0 || runnableRefs.has(modelRef(model)),
|
|
107
|
+
recommended: metadata.recommended === true,
|
|
108
|
+
assignedRoles: assignmentsByRef.get(modelRef(model)) ?? []
|
|
109
|
+
};
|
|
110
|
+
}).toSorted((left, right) => left.metadata.publicProviderLabel.localeCompare(right.metadata.publicProviderLabel) || Number(right.recommended) - Number(left.recommended) || (left.metadata.recommendationRank ?? Number.MAX_SAFE_INTEGER) - (right.metadata.recommendationRank ?? Number.MAX_SAFE_INTEGER) || left.name.localeCompare(right.name));
|
|
111
|
+
return {
|
|
112
|
+
generatedAt: new Date().toISOString(),
|
|
113
|
+
agentId: params.agentId,
|
|
114
|
+
models,
|
|
115
|
+
providers: buildProviderSummaries(models),
|
|
116
|
+
assignments: configuredAssignments.map((assignment) => ({
|
|
117
|
+
...assignment,
|
|
118
|
+
available: availableRefs.has(assignment.ref)
|
|
119
|
+
}))
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
//#endregion
|
|
124
|
+
export { resolveCanonicalModelCatalogSnapshot };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { isOpenAISignInRuntimeModelSupported, isStandardProviderCatalogEntry, listProviderBrandManifests } from "../providers/registry.js";
|
|
2
2
|
import { MODEL_APIS } from "../config/types.models.js";
|
|
3
3
|
import { buildModelCatalogMergeKey, mergeModelCatalogRowsByAuthority, normalizeModelCatalogModelId, normalizeModelCatalogProviderId, normalizeProviderCatalogRows } from "./model-catalog-normalized.js";
|
|
4
4
|
import { CURRENT_MODEL_PROVIDER_CATALOG, listCurrentModelCatalogRows } from "./current-model-catalog.js";
|
|
@@ -28,7 +28,7 @@ function isSupportedRuntimeCatalogModel(provider, id) {
|
|
|
28
28
|
if (provider !== "openai-codex") {
|
|
29
29
|
return true;
|
|
30
30
|
}
|
|
31
|
-
return
|
|
31
|
+
return isOpenAISignInRuntimeModelSupported(id);
|
|
32
32
|
}
|
|
33
33
|
function configuredProviderCatalogRows(cfg) {
|
|
34
34
|
return Object.entries(cfg.models?.providers ?? {}).flatMap(([provider, providerConfig]) => normalizeProviderCatalogRows({
|
|
@@ -4,8 +4,8 @@ import { loadConfig } from "../config/io.js";
|
|
|
4
4
|
import "../config/config.js";
|
|
5
5
|
import { normalizeModelCatalogProviderId } from "./model-catalog-normalized.js";
|
|
6
6
|
import { ensureFasedAgentModelsJson } from "./models-config.js";
|
|
7
|
-
import { augmentModelCatalogWithProviderPlugins } from "../plugins/provider-runtime.runtime.js";
|
|
8
7
|
import { deriveModelMetadata } from "./model-metadata.js";
|
|
8
|
+
import { augmentModelCatalogWithProviderPlugins } from "../plugins/provider-runtime.runtime.js";
|
|
9
9
|
import { buildFasedModelCatalogEntries } from "./model-catalog-source.js";
|
|
10
10
|
import { __setProviderExtensionCatalogEntriesForTest, loadProviderExtensionCatalogIndex } from "./provider-extension-catalog-index.js";
|
|
11
11
|
|
|
@@ -73,6 +73,12 @@ function deriveModelMetadata(params) {
|
|
|
73
73
|
const provider = params.model.provider.trim();
|
|
74
74
|
const modelId = params.model.id.trim();
|
|
75
75
|
const providerConfig = params.providerConfig ?? resolveProviderConfig(params.cfg, provider);
|
|
76
|
+
const providerManifest = getProviderBrandManifestForRoute(provider);
|
|
77
|
+
const credentialMethod = providerManifest?.methods.find((entry) => [
|
|
78
|
+
entry.route,
|
|
79
|
+
entry.statusRoute,
|
|
80
|
+
entry.configProviderId
|
|
81
|
+
].map((value) => value?.trim().toLowerCase()).includes(provider.toLowerCase()));
|
|
76
82
|
const baseUrl = params.model.baseUrl ?? providerConfig?.baseUrl ?? "";
|
|
77
83
|
const api = params.model.api ?? providerConfig?.api;
|
|
78
84
|
const refreshed = lookupRefreshedModelCapability(provider, modelId);
|
|
@@ -103,8 +109,24 @@ function deriveModelMetadata(params) {
|
|
|
103
109
|
addFeature(features, "video", capabilities?.video === true);
|
|
104
110
|
addFeature(features, "speech", capabilities?.speech === true);
|
|
105
111
|
const privateNetwork = baseUrl ? isPrivateNetworkBaseUrl(baseUrl) : false;
|
|
112
|
+
const authMode = resolveAuthMode({
|
|
113
|
+
provider,
|
|
114
|
+
providerConfig
|
|
115
|
+
});
|
|
116
|
+
const credentialRoutes = params.credentialRoutes?.length ? params.credentialRoutes : [{
|
|
117
|
+
id: credentialMethod?.id ?? provider,
|
|
118
|
+
label: credentialMethod?.label ?? providerManifest?.label ?? provider,
|
|
119
|
+
authMode
|
|
120
|
+
}];
|
|
121
|
+
const credentialRoute = credentialRoutes[0];
|
|
122
|
+
const configuredCost = providerConfig?.models?.find((entry) => entry.id.trim().toLowerCase() === modelId.toLowerCase())?.cost;
|
|
123
|
+
const cost = params.model.cost ?? configuredCost;
|
|
124
|
+
const recommendationRank = providerModelRecommendationRank(provider, modelId);
|
|
106
125
|
return {
|
|
126
|
+
ref: `${provider}/${modelId}`,
|
|
107
127
|
provider,
|
|
128
|
+
publicProviderId: providerManifest?.id ?? provider,
|
|
129
|
+
publicProviderLabel: providerManifest?.label ?? provider,
|
|
108
130
|
model: modelId,
|
|
109
131
|
label: params.model.name?.trim() || modelId,
|
|
110
132
|
contextWindow: typeof refreshed?.contextWindow === "number" && refreshed.contextWindow > 0 ? refreshed.contextWindow : typeof params.model.contextWindow === "number" && params.model.contextWindow > 0 ? params.model.contextWindow : undefined,
|
|
@@ -124,14 +146,20 @@ function deriveModelMetadata(params) {
|
|
|
124
146
|
retrievedAt: refreshed?.refreshedAt ?? CURATED_CATALOG_REVIEWED_AT,
|
|
125
147
|
availabilitySource: availabilitySourceForCatalogSource(params.model.catalogSource),
|
|
126
148
|
authRoute: provider,
|
|
127
|
-
authMode:
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
149
|
+
authMode: credentialRoute.authMode,
|
|
150
|
+
credentialRoute,
|
|
151
|
+
credentialRoutes,
|
|
152
|
+
...cost ? { price: {
|
|
153
|
+
input: cost.input,
|
|
154
|
+
output: cost.output,
|
|
155
|
+
cacheRead: cost.cacheRead,
|
|
156
|
+
cacheWrite: cost.cacheWrite,
|
|
157
|
+
unit: "usd-per-million-tokens"
|
|
158
|
+
} } : {},
|
|
131
159
|
privateNetwork,
|
|
132
160
|
privateNetworkAllowed: privateNetwork ? providerConfig?.request?.allowPrivateNetwork === true : false,
|
|
133
|
-
...params.recommended ? { recommended: true } : {},
|
|
134
|
-
...
|
|
161
|
+
...params.recommended || recommendationRank !== undefined ? { recommended: true } : {},
|
|
162
|
+
...recommendationRank !== undefined ? { recommendationRank } : {},
|
|
135
163
|
...params.default ? { default: true } : {}
|
|
136
164
|
};
|
|
137
165
|
}
|