@qduc/term2 0.21.0 → 0.22.0
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/dist/agent.d.ts +2 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +32 -10
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +83 -6
- package/dist/app.js.map +1 -1
- package/dist/cli.js +84 -2
- package/dist/cli.js.map +1 -1
- package/dist/components/InputBox.js +2 -3
- package/dist/components/InputBox.js.map +1 -1
- package/dist/components/common/MenuContainer.d.ts +5 -0
- package/dist/components/common/MenuContainer.d.ts.map +1 -1
- package/dist/components/common/MenuContainer.js +13 -3
- package/dist/components/common/MenuContainer.js.map +1 -1
- package/dist/components/input/MenuSurface.d.ts.map +1 -1
- package/dist/components/input/MenuSurface.js +12 -2
- package/dist/components/input/MenuSurface.js.map +1 -1
- package/dist/components/input/ModelMenuSession.d.ts.map +1 -1
- package/dist/components/input/ModelMenuSession.js +67 -16
- package/dist/components/input/ModelMenuSession.js.map +1 -1
- package/dist/components/input/SettingsMenuSession.d.ts.map +1 -1
- package/dist/components/input/SettingsMenuSession.js +56 -17
- package/dist/components/input/SettingsMenuSession.js.map +1 -1
- package/dist/components/input/SettingsValueMenuSession.d.ts.map +1 -1
- package/dist/components/input/SettingsValueMenuSession.js +33 -3
- package/dist/components/input/SettingsValueMenuSession.js.map +1 -1
- package/dist/components/input/menu-types.d.ts +1 -1
- package/dist/components/input/menu-types.d.ts.map +1 -1
- package/dist/components/input/triggers.js +2 -2
- package/dist/components/input/triggers.js.map +1 -1
- package/dist/components/layout/BackgroundTasksPanel.d.ts +0 -1
- package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
- package/dist/components/layout/BackgroundTasksPanel.js +4 -112
- package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
- package/dist/components/menu/ModelSelectionMenu.d.ts +10 -0
- package/dist/components/menu/ModelSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/ModelSelectionMenu.js +85 -16
- package/dist/components/menu/ModelSelectionMenu.js.map +1 -1
- package/dist/components/menu/ProfileSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/ProfileSelectionMenu.js +5 -4
- package/dist/components/menu/ProfileSelectionMenu.js.map +1 -1
- package/dist/components/menu/ResumeSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/ResumeSelectionMenu.js +3 -5
- package/dist/components/menu/ResumeSelectionMenu.js.map +1 -1
- package/dist/components/menu/SettingsSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/SettingsSelectionMenu.js +4 -32
- package/dist/components/menu/SettingsSelectionMenu.js.map +1 -1
- package/dist/components/menu/SettingsValueSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/SettingsValueSelectionMenu.js +12 -5
- package/dist/components/menu/SettingsValueSelectionMenu.js.map +1 -1
- package/dist/components/menu/SkillSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/SkillSelectionMenu.js +3 -6
- package/dist/components/menu/SkillSelectionMenu.js.map +1 -1
- package/dist/components/menu/SlashCommandMenu.d.ts +8 -0
- package/dist/components/menu/SlashCommandMenu.d.ts.map +1 -1
- package/dist/components/menu/SlashCommandMenu.js +16 -6
- package/dist/components/menu/SlashCommandMenu.js.map +1 -1
- package/dist/components/menu/StandaloneModelPickerApp.d.ts +40 -0
- package/dist/components/menu/StandaloneModelPickerApp.d.ts.map +1 -0
- package/dist/components/menu/StandaloneModelPickerApp.js +106 -0
- package/dist/components/menu/StandaloneModelPickerApp.js.map +1 -0
- package/dist/components/menu/settings-value-formatter.d.ts +11 -0
- package/dist/components/menu/settings-value-formatter.d.ts.map +1 -0
- package/dist/components/menu/settings-value-formatter.js +214 -0
- package/dist/components/menu/settings-value-formatter.js.map +1 -0
- package/dist/components/message/CommandMessage.d.ts.map +1 -1
- package/dist/components/message/CommandMessage.js +22 -17
- package/dist/components/message/CommandMessage.js.map +1 -1
- package/dist/components/message/MessageList.d.ts.map +1 -1
- package/dist/components/message/MessageList.js +13 -2
- package/dist/components/message/MessageList.js.map +1 -1
- package/dist/components/message/RunCodeRenderer.d.ts +16 -0
- package/dist/components/message/RunCodeRenderer.d.ts.map +1 -0
- package/dist/components/message/RunCodeRenderer.js +25 -0
- package/dist/components/message/RunCodeRenderer.js.map +1 -0
- package/dist/components/message/command-message-helpers.d.ts +30 -0
- package/dist/components/message/command-message-helpers.d.ts.map +1 -1
- package/dist/components/message/command-message-helpers.js +85 -0
- package/dist/components/message/command-message-helpers.js.map +1 -1
- package/dist/components/prompt/ApprovalPrompt.d.ts.map +1 -1
- package/dist/components/prompt/ApprovalPrompt.js +12 -21
- package/dist/components/prompt/ApprovalPrompt.js.map +1 -1
- package/dist/components/theme.d.ts +1 -0
- package/dist/components/theme.d.ts.map +1 -1
- package/dist/components/theme.js +1 -0
- package/dist/components/theme.js.map +1 -1
- package/dist/contracts/streamed-model-turn.d.ts +6 -0
- package/dist/contracts/streamed-model-turn.d.ts.map +1 -1
- package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -1
- package/dist/hooks/conversation-ui-reducer.js +5 -2
- package/dist/hooks/conversation-ui-reducer.js.map +1 -1
- package/dist/hooks/settings-completion-config.d.ts +1 -1
- package/dist/hooks/settings-completion-config.d.ts.map +1 -1
- package/dist/hooks/settings-completion-config.js +4 -122
- package/dist/hooks/settings-completion-config.js.map +1 -1
- package/dist/hooks/settings-completion-logic.d.ts +1 -1
- package/dist/hooks/settings-completion-logic.d.ts.map +1 -1
- package/dist/hooks/settings-completion-logic.js.map +1 -1
- package/dist/hooks/use-app-keyboard-shortcuts.d.ts.map +1 -1
- package/dist/hooks/use-app-keyboard-shortcuts.js +33 -20
- package/dist/hooks/use-app-keyboard-shortcuts.js.map +1 -1
- package/dist/hooks/use-conversation.d.ts +3 -0
- package/dist/hooks/use-conversation.d.ts.map +1 -1
- package/dist/hooks/use-conversation.js +107 -16
- package/dist/hooks/use-conversation.js.map +1 -1
- package/dist/hooks/use-model-selection.d.ts +33 -4
- package/dist/hooks/use-model-selection.d.ts.map +1 -1
- package/dist/hooks/use-model-selection.js +204 -114
- package/dist/hooks/use-model-selection.js.map +1 -1
- package/dist/hooks/use-settings-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-completion.js +1 -6
- package/dist/hooks/use-settings-completion.js.map +1 -1
- package/dist/hooks/use-settings-value-completion.d.ts +1 -8
- package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-value-completion.js +10 -100
- package/dist/hooks/use-settings-value-completion.js.map +1 -1
- package/dist/hooks/use-standalone-model-picker.d.ts +64 -0
- package/dist/hooks/use-standalone-model-picker.d.ts.map +1 -0
- package/dist/hooks/use-standalone-model-picker.js +310 -0
- package/dist/hooks/use-standalone-model-picker.js.map +1 -0
- package/dist/lib/agent-client.d.ts +17 -1
- package/dist/lib/agent-client.d.ts.map +1 -1
- package/dist/lib/agent-client.js +173 -53
- package/dist/lib/agent-client.js.map +1 -1
- package/dist/lib/agent-configuration.d.ts +12 -3
- package/dist/lib/agent-configuration.d.ts.map +1 -1
- package/dist/lib/agent-configuration.js +26 -7
- package/dist/lib/agent-configuration.js.map +1 -1
- package/dist/lib/agent-factory.d.ts +3 -0
- package/dist/lib/agent-factory.d.ts.map +1 -1
- package/dist/lib/agent-factory.js +49 -7
- package/dist/lib/agent-factory.js.map +1 -1
- package/dist/lib/ask-user-answer-store.d.ts +1 -0
- package/dist/lib/ask-user-answer-store.d.ts.map +1 -1
- package/dist/lib/ask-user-answer-store.js +3 -0
- package/dist/lib/ask-user-answer-store.js.map +1 -1
- package/dist/lib/tool-invoke.d.ts +1 -0
- package/dist/lib/tool-invoke.d.ts.map +1 -1
- package/dist/lib/tool-invoke.js +1 -0
- package/dist/lib/tool-invoke.js.map +1 -1
- package/dist/non-interactive.d.ts +23 -0
- package/dist/non-interactive.d.ts.map +1 -1
- package/dist/non-interactive.js +225 -31
- package/dist/non-interactive.js.map +1 -1
- package/dist/prompts/background-shell.d.ts.map +1 -1
- package/dist/prompts/background-shell.js +4 -2
- package/dist/prompts/background-shell.js.map +1 -1
- package/dist/prompts/background-shell.ts +4 -2
- package/dist/prompts/codex.md +1 -3
- package/dist/prompts/fragments/gpt-6-astra.md +13 -0
- package/dist/prompts/gpt-5-modern.md +1 -3
- package/dist/prompts/gpt-5.4-mini.md +0 -2
- package/dist/prompts/gpt-5.5.md +0 -2
- package/dist/prompts/gpt-5.6.md +0 -1
- package/dist/prompts/lite.md +1 -6
- package/dist/prompts/memory.md +2 -2
- package/dist/prompts/orchestrator.md +4 -4
- package/dist/prompts/prompt-constructor.d.ts +2 -0
- package/dist/prompts/prompt-constructor.d.ts.map +1 -1
- package/dist/prompts/prompt-constructor.js +4 -2
- package/dist/prompts/prompt-constructor.js.map +1 -1
- package/dist/prompts/prompt-constructor.test.ts +178 -5
- package/dist/prompts/prompt-constructor.ts +7 -1
- package/dist/prompts/prompt-profiles.d.ts.map +1 -1
- package/dist/prompts/prompt-profiles.js +6 -0
- package/dist/prompts/prompt-profiles.js.map +1 -1
- package/dist/prompts/prompt-profiles.test.ts +6 -4
- package/dist/prompts/prompt-profiles.ts +6 -0
- package/dist/prompts/session-browser.md +4 -2
- package/dist/prompts/shell-auto-approval.d.ts +1 -1
- package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
- package/dist/prompts/shell-auto-approval.js +2 -2
- package/dist/prompts/shell-auto-approval.ts +2 -2
- package/dist/prompts/subagent-delegation.js +3 -3
- package/dist/prompts/subagent-delegation.js.map +1 -1
- package/dist/prompts/subagent-delegation.test.ts +3 -3
- package/dist/prompts/subagent-delegation.ts +3 -3
- package/dist/prompts/subagents/librarian.md +4 -4
- package/dist/prompts/subagents/worker-prompt.test.ts +7 -0
- package/dist/prompts/tool-surface-guidance.d.ts +4 -0
- package/dist/prompts/tool-surface-guidance.d.ts.map +1 -0
- package/dist/prompts/tool-surface-guidance.js +19 -0
- package/dist/prompts/tool-surface-guidance.js.map +1 -0
- package/dist/prompts/tool-surface-guidance.ts +20 -0
- package/dist/providers/codex-compact.d.ts +2 -0
- package/dist/providers/codex-compact.d.ts.map +1 -1
- package/dist/providers/codex-compact.js +14 -0
- package/dist/providers/codex-compact.js.map +1 -1
- package/dist/providers/codex-responses-model.d.ts +23 -3
- package/dist/providers/codex-responses-model.d.ts.map +1 -1
- package/dist/providers/codex-responses-model.js +121 -33
- package/dist/providers/codex-responses-model.js.map +1 -1
- package/dist/providers/codex.provider.d.ts +2 -0
- package/dist/providers/codex.provider.d.ts.map +1 -1
- package/dist/providers/codex.provider.js +3 -2
- package/dist/providers/codex.provider.js.map +1 -1
- package/dist/providers/grok.provider.d.ts.map +1 -1
- package/dist/providers/grok.provider.js +5 -2
- package/dist/providers/grok.provider.js.map +1 -1
- package/dist/providers/model-catalog/catalog.generated.d.ts +453 -309
- package/dist/providers/model-catalog/catalog.generated.d.ts.map +1 -1
- package/dist/providers/model-catalog/catalog.generated.js +453 -309
- package/dist/providers/model-catalog/catalog.generated.js.map +1 -1
- package/dist/providers/opencode-session.d.ts.map +1 -1
- package/dist/providers/opencode-session.js +5 -0
- package/dist/providers/opencode-session.js.map +1 -1
- package/dist/providers/openrouter.provider.js +8 -1
- package/dist/providers/openrouter.provider.js.map +1 -1
- package/dist/providers/responses-websocket-sessions.d.ts +10 -0
- package/dist/providers/responses-websocket-sessions.d.ts.map +1 -1
- package/dist/providers/responses-websocket-sessions.js +9 -4
- package/dist/providers/responses-websocket-sessions.js.map +1 -1
- package/dist/providers/retrying-model.d.ts +2 -1
- package/dist/providers/retrying-model.d.ts.map +1 -1
- package/dist/providers/retrying-model.js +3 -0
- package/dist/providers/retrying-model.js.map +1 -1
- package/dist/services/agent-runtime/application-run-loop.d.ts +8 -1
- package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -1
- package/dist/services/agent-runtime/application-run-loop.js +30 -6
- package/dist/services/agent-runtime/application-run-loop.js.map +1 -1
- package/dist/services/agent-runtime/context-compaction/index.d.ts +2 -0
- package/dist/services/agent-runtime/context-compaction/index.d.ts.map +1 -1
- package/dist/services/agent-runtime/context-compaction/index.js +30 -4
- package/dist/services/agent-runtime/context-compaction/index.js.map +1 -1
- package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts +3 -0
- package/dist/services/agent-runtime/context-compaction/local-context-compactor.d.ts.map +1 -1
- package/dist/services/agent-runtime/context-compaction/local-context-compactor.js +15 -9
- package/dist/services/agent-runtime/context-compaction/local-context-compactor.js.map +1 -1
- package/dist/services/agent-runtime/tool-invocation-context.d.ts +12 -0
- package/dist/services/agent-runtime/tool-invocation-context.d.ts.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-evaluator.d.ts +7 -1
- package/dist/services/agent-runtime/workflow/workflow-evaluator.d.ts.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-evaluator.js +78 -183
- package/dist/services/agent-runtime/workflow/workflow-evaluator.js.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-sandbox.d.ts +4 -3
- package/dist/services/agent-runtime/workflow/workflow-sandbox.d.ts.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-sandbox.js +9 -7
- package/dist/services/agent-runtime/workflow/workflow-sandbox.js.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-types.d.ts +1 -1
- package/dist/services/agent-runtime/workflow/workflow-types.d.ts.map +1 -1
- package/dist/services/agent-runtime/workflow/workflow-types.js.map +1 -1
- package/dist/services/approval/approval-decision-executor.d.ts +2 -1
- package/dist/services/approval/approval-decision-executor.d.ts.map +1 -1
- package/dist/services/approval/approval-decision-executor.js +22 -116
- package/dist/services/approval/approval-decision-executor.js.map +1 -1
- package/dist/services/approval/approval-descriptor.d.ts +10 -0
- package/dist/services/approval/approval-descriptor.d.ts.map +1 -0
- package/dist/services/approval/approval-descriptor.js +23 -0
- package/dist/services/approval/approval-descriptor.js.map +1 -0
- package/dist/services/approval/approval-flow-coordinator.d.ts +2 -1
- package/dist/services/approval/approval-flow-coordinator.d.ts.map +1 -1
- package/dist/services/approval/approval-flow-coordinator.js +2 -1
- package/dist/services/approval/approval-flow-coordinator.js.map +1 -1
- package/dist/services/approval/approval-grant-executor.d.ts +25 -0
- package/dist/services/approval/approval-grant-executor.d.ts.map +1 -0
- package/dist/services/approval/approval-grant-executor.js +125 -0
- package/dist/services/approval/approval-grant-executor.js.map +1 -0
- package/dist/services/approval/background-subagent-approval-controller.d.ts +2 -1
- package/dist/services/approval/background-subagent-approval-controller.d.ts.map +1 -1
- package/dist/services/approval/background-subagent-approval-controller.js.map +1 -1
- package/dist/services/approval/nested-approval-owner.d.ts +52 -0
- package/dist/services/approval/nested-approval-owner.d.ts.map +1 -0
- package/dist/services/approval/nested-approval-owner.js +194 -0
- package/dist/services/approval/nested-approval-owner.js.map +1 -0
- package/dist/services/approval/non-interactive-approval-policy.js +1 -1
- package/dist/services/approval/non-interactive-approval-policy.js.map +1 -1
- package/dist/services/approval/shell-auto-approval-evaluator.d.ts.map +1 -1
- package/dist/services/approval/shell-auto-approval-evaluator.js +2 -4
- package/dist/services/approval/shell-auto-approval-evaluator.js.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.js +4 -0
- package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
- package/dist/services/approval/tool-approval-batch-coordinator.d.ts +10 -3
- package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
- package/dist/services/approval/tool-approval-batch-coordinator.js +16 -5
- package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
- package/dist/services/approval/tool-approval-policy-registry.d.ts +13 -0
- package/dist/services/approval/tool-approval-policy-registry.d.ts.map +1 -1
- package/dist/services/approval/tool-approval-policy-registry.js +16 -1
- package/dist/services/approval/tool-approval-policy-registry.js.map +1 -1
- package/dist/services/conversation/conversation-adapter-factory.d.ts +3 -1
- package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-adapter-factory.js +3 -3
- package/dist/services/conversation/conversation-adapter-factory.js.map +1 -1
- package/dist/services/conversation/conversation-adapter.d.ts +3 -2
- package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
- package/dist/services/conversation/conversation-adapter.js +32 -23
- package/dist/services/conversation/conversation-adapter.js.map +1 -1
- package/dist/services/conversation/conversation-orchestrator.d.ts +11 -0
- package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
- package/dist/services/conversation/conversation-orchestrator.js +65 -42
- package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
- package/dist/services/conversation/conversation-persistence.d.ts +6 -1
- package/dist/services/conversation/conversation-persistence.d.ts.map +1 -1
- package/dist/services/conversation/conversation-persistence.js +68 -19
- package/dist/services/conversation/conversation-persistence.js.map +1 -1
- package/dist/services/conversation/conversation-result-builder.d.ts +3 -0
- package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
- package/dist/services/conversation/conversation-result-builder.js +27 -23
- package/dist/services/conversation/conversation-result-builder.js.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.d.ts +5 -0
- package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.js +1 -0
- package/dist/services/conversation/conversation-runtime-factory.js.map +1 -1
- package/dist/services/conversation/conversation-service.d.ts +11 -1
- package/dist/services/conversation/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation/conversation-service.js +68 -17
- package/dist/services/conversation/conversation-service.js.map +1 -1
- package/dist/services/conversation/session-browser.d.ts +34 -27
- package/dist/services/conversation/session-browser.d.ts.map +1 -1
- package/dist/services/conversation/session-browser.js +221 -60
- package/dist/services/conversation/session-browser.js.map +1 -1
- package/dist/services/conversation/session-index/session-index-database.d.ts +138 -0
- package/dist/services/conversation/session-index/session-index-database.d.ts.map +1 -0
- package/dist/services/conversation/session-index/session-index-database.js +684 -0
- package/dist/services/conversation/session-index/session-index-database.js.map +1 -0
- package/dist/services/conversation/session-index/session-index-schema.d.ts +35 -0
- package/dist/services/conversation/session-index/session-index-schema.d.ts.map +1 -0
- package/dist/services/conversation/session-index/session-index-schema.js +156 -0
- package/dist/services/conversation/session-index/session-index-schema.js.map +1 -0
- package/dist/services/conversation/session-index/session-index-service.d.ts +30 -0
- package/dist/services/conversation/session-index/session-index-service.d.ts.map +1 -0
- package/dist/services/conversation/session-index/session-index-service.js +234 -0
- package/dist/services/conversation/session-index/session-index-service.js.map +1 -0
- package/dist/services/conversation/session-index/session-index-worker-client.d.ts +36 -0
- package/dist/services/conversation/session-index/session-index-worker-client.d.ts.map +1 -0
- package/dist/services/conversation/session-index/session-index-worker-client.js +143 -0
- package/dist/services/conversation/session-index/session-index-worker-client.js.map +1 -0
- package/dist/services/conversation/session-index/session-index-worker.d.ts +56 -0
- package/dist/services/conversation/session-index/session-index-worker.d.ts.map +1 -0
- package/dist/services/conversation/session-index/session-index-worker.js +96 -0
- package/dist/services/conversation/session-index/session-index-worker.js.map +1 -0
- package/dist/services/conversation/session-search-helpers.d.ts +4 -0
- package/dist/services/conversation/session-search-helpers.d.ts.map +1 -0
- package/dist/services/conversation/session-search-helpers.js +13 -0
- package/dist/services/conversation/session-search-helpers.js.map +1 -0
- package/dist/services/conversation-agent-client.d.ts +8 -0
- package/dist/services/conversation-agent-client.d.ts.map +1 -1
- package/dist/services/execution-context.js +2 -2
- package/dist/services/execution-context.js.map +1 -1
- package/dist/services/hooks/hook-event-factory.d.ts +2 -1
- package/dist/services/hooks/hook-event-factory.d.ts.map +1 -1
- package/dist/services/hooks/hook-event-factory.js +2 -1
- package/dist/services/hooks/hook-event-factory.js.map +1 -1
- package/dist/services/logging/conversation-log-writer.d.ts.map +1 -1
- package/dist/services/logging/conversation-log-writer.js +50 -26
- package/dist/services/logging/conversation-log-writer.js.map +1 -1
- package/dist/services/logging/logging-service.d.ts.map +1 -1
- package/dist/services/logging/logging-service.js +1 -0
- package/dist/services/logging/logging-service.js.map +1 -1
- package/dist/services/logging/provider-traffic.d.ts +22 -2
- package/dist/services/logging/provider-traffic.d.ts.map +1 -1
- package/dist/services/logging/provider-traffic.js +147 -12
- package/dist/services/logging/provider-traffic.js.map +1 -1
- package/dist/services/model-service.d.ts +42 -0
- package/dist/services/model-service.d.ts.map +1 -1
- package/dist/services/model-service.js +161 -26
- package/dist/services/model-service.js.map +1 -1
- package/dist/services/models/model-catalog-session.d.ts.map +1 -1
- package/dist/services/models/model-catalog-session.js +11 -7
- package/dist/services/models/model-catalog-session.js.map +1 -1
- package/dist/services/models/model-favorites.d.ts +56 -0
- package/dist/services/models/model-favorites.d.ts.map +1 -0
- package/dist/services/models/model-favorites.js +93 -0
- package/dist/services/models/model-favorites.js.map +1 -0
- package/dist/services/models/model-listing.d.ts +40 -0
- package/dist/services/models/model-listing.d.ts.map +1 -1
- package/dist/services/models/model-listing.js +35 -2
- package/dist/services/models/model-listing.js.map +1 -1
- package/dist/services/models/model-nicknames.d.ts +113 -0
- package/dist/services/models/model-nicknames.d.ts.map +1 -0
- package/dist/services/models/model-nicknames.js +182 -0
- package/dist/services/models/model-nicknames.js.map +1 -0
- package/dist/services/models/model-picker-host.d.ts +72 -0
- package/dist/services/models/model-picker-host.d.ts.map +1 -0
- package/dist/services/models/model-picker-host.js +83 -0
- package/dist/services/models/model-picker-host.js.map +1 -0
- package/dist/services/models/model-resolution.d.ts +35 -3
- package/dist/services/models/model-resolution.d.ts.map +1 -1
- package/dist/services/models/model-resolution.js +276 -47
- package/dist/services/models/model-resolution.js.map +1 -1
- package/dist/services/models/reasoning-effort.d.ts +20 -0
- package/dist/services/models/reasoning-effort.d.ts.map +1 -0
- package/dist/services/models/reasoning-effort.js +28 -0
- package/dist/services/models/reasoning-effort.js.map +1 -0
- package/dist/services/models/unified-model-catalog.d.ts +4 -0
- package/dist/services/models/unified-model-catalog.d.ts.map +1 -0
- package/dist/services/models/unified-model-catalog.js +54 -0
- package/dist/services/models/unified-model-catalog.js.map +1 -0
- package/dist/services/retry/provider-failure-classification.d.ts +16 -0
- package/dist/services/retry/provider-failure-classification.d.ts.map +1 -1
- package/dist/services/retry/provider-failure-classification.js +45 -0
- package/dist/services/retry/provider-failure-classification.js.map +1 -1
- package/dist/services/retry/retry-recovery-budget.d.ts +26 -1
- package/dist/services/retry/retry-recovery-budget.d.ts.map +1 -1
- package/dist/services/retry/retry-recovery-budget.js +33 -1
- package/dist/services/retry/retry-recovery-budget.js.map +1 -1
- package/dist/services/sandboxed-code-host/host-types.d.ts +135 -0
- package/dist/services/sandboxed-code-host/host-types.d.ts.map +1 -0
- package/dist/services/sandboxed-code-host/host-types.js +6 -0
- package/dist/services/sandboxed-code-host/host-types.js.map +1 -0
- package/dist/services/sandboxed-code-host/host-worker.d.ts +9 -0
- package/dist/services/sandboxed-code-host/host-worker.d.ts.map +1 -0
- package/dist/services/sandboxed-code-host/host-worker.js +351 -0
- package/dist/services/sandboxed-code-host/host-worker.js.map +1 -0
- package/dist/services/sandboxed-code-host/sandbox.d.ts +16 -0
- package/dist/services/sandboxed-code-host/sandbox.d.ts.map +1 -0
- package/dist/services/sandboxed-code-host/sandbox.js +21 -0
- package/dist/services/sandboxed-code-host/sandbox.js.map +1 -0
- package/dist/services/sandboxed-code-host/sandboxed-code-host.d.ts +17 -0
- package/dist/services/sandboxed-code-host/sandboxed-code-host.d.ts.map +1 -0
- package/dist/services/sandboxed-code-host/sandboxed-code-host.js +347 -0
- package/dist/services/sandboxed-code-host/sandboxed-code-host.js.map +1 -0
- package/dist/services/service-interfaces.d.ts +32 -0
- package/dist/services/service-interfaces.d.ts.map +1 -1
- package/dist/services/session/background-task-control.d.ts +3 -1
- package/dist/services/session/background-task-control.d.ts.map +1 -1
- package/dist/services/session/background-task-control.js +4 -0
- package/dist/services/session/background-task-control.js.map +1 -1
- package/dist/services/session/continuation-plan-applier.d.ts +2 -1
- package/dist/services/session/continuation-plan-applier.d.ts.map +1 -1
- package/dist/services/session/continuation-plan-applier.js.map +1 -1
- package/dist/services/session/continuation-recovery-handler.d.ts +2 -1
- package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -1
- package/dist/services/session/continuation-recovery-handler.js +49 -5
- package/dist/services/session/continuation-recovery-handler.js.map +1 -1
- package/dist/services/session/initial-input-preparer.d.ts +2 -1
- package/dist/services/session/initial-input-preparer.d.ts.map +1 -1
- package/dist/services/session/initial-input-preparer.js +2 -1
- package/dist/services/session/initial-input-preparer.js.map +1 -1
- package/dist/services/session/initial-turn-recovery-handler.d.ts +2 -1
- package/dist/services/session/initial-turn-recovery-handler.d.ts.map +1 -1
- package/dist/services/session/initial-turn-recovery-handler.js +51 -16
- package/dist/services/session/initial-turn-recovery-handler.js.map +1 -1
- package/dist/services/session/post-execute-pending-registry.d.ts +2 -1
- package/dist/services/session/post-execute-pending-registry.d.ts.map +1 -1
- package/dist/services/session/post-execute-pending-registry.js +3 -2
- package/dist/services/session/post-execute-pending-registry.js.map +1 -1
- package/dist/services/session/session-client-factory.d.ts +4 -0
- package/dist/services/session/session-client-factory.d.ts.map +1 -1
- package/dist/services/session/session-client-factory.js +12 -4
- package/dist/services/session/session-client-factory.js.map +1 -1
- package/dist/services/session/session-composition.d.ts +26 -2
- package/dist/services/session/session-composition.d.ts.map +1 -1
- package/dist/services/session/session-composition.js +97 -18
- package/dist/services/session/session-composition.js.map +1 -1
- package/dist/services/session/session-continuity-reset.d.ts +2 -1
- package/dist/services/session/session-continuity-reset.d.ts.map +1 -1
- package/dist/services/session/session-continuity-reset.js +5 -2
- package/dist/services/session/session-continuity-reset.js.map +1 -1
- package/dist/services/session/session-identity.d.ts +20 -0
- package/dist/services/session/session-identity.d.ts.map +1 -0
- package/dist/services/session/session-identity.js +43 -0
- package/dist/services/session/session-identity.js.map +1 -0
- package/dist/services/session/session-lifecycle.d.ts +5 -1
- package/dist/services/session/session-lifecycle.d.ts.map +1 -1
- package/dist/services/session/session-lifecycle.js +5 -1
- package/dist/services/session/session-lifecycle.js.map +1 -1
- package/dist/services/session/session-stream-processor.d.ts +2 -1
- package/dist/services/session/session-stream-processor.d.ts.map +1 -1
- package/dist/services/session/session-stream-processor.js +5 -4
- package/dist/services/session/session-stream-processor.js.map +1 -1
- package/dist/services/session/test-helpers/conversation-session-fixtures.d.ts.map +1 -1
- package/dist/services/session/test-helpers/conversation-session-fixtures.js +14 -9
- package/dist/services/session/test-helpers/conversation-session-fixtures.js.map +1 -1
- package/dist/services/session/turn-coordinator.d.ts +2 -1
- package/dist/services/session/turn-coordinator.d.ts.map +1 -1
- package/dist/services/session/turn-coordinator.js +3 -0
- package/dist/services/session/turn-coordinator.js.map +1 -1
- package/dist/services/session/turn-workflow.d.ts +4 -1
- package/dist/services/session/turn-workflow.d.ts.map +1 -1
- package/dist/services/session/turn-workflow.js +58 -21
- package/dist/services/session/turn-workflow.js.map +1 -1
- package/dist/services/session-rollover/session-rollover-brief.d.ts +8 -1
- package/dist/services/session-rollover/session-rollover-brief.d.ts.map +1 -1
- package/dist/services/session-rollover/session-rollover-brief.js +14 -1
- package/dist/services/session-rollover/session-rollover-brief.js.map +1 -1
- package/dist/services/settings/setting-schema-utils.d.ts +2 -0
- package/dist/services/settings/setting-schema-utils.d.ts.map +1 -1
- package/dist/services/settings/setting-schema-utils.js +15 -27
- package/dist/services/settings/setting-schema-utils.js.map +1 -1
- package/dist/services/settings/settings-schema.d.ts +8 -0
- package/dist/services/settings/settings-schema.d.ts.map +1 -1
- package/dist/services/settings/settings-schema.js +23 -6
- package/dist/services/settings/settings-schema.js.map +1 -1
- package/dist/services/settings/settings-sources.d.ts +207 -0
- package/dist/services/settings/settings-sources.d.ts.map +1 -1
- package/dist/services/settings/settings-sources.js +48 -1
- package/dist/services/settings/settings-sources.js.map +1 -1
- package/dist/services/settings/settings-ui-metadata.d.ts +27 -0
- package/dist/services/settings/settings-ui-metadata.d.ts.map +1 -0
- package/dist/services/settings/settings-ui-metadata.js +283 -0
- package/dist/services/settings/settings-ui-metadata.js.map +1 -0
- package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts +10 -0
- package/dist/services/settings/test-helpers/settings-consumer-inventory.d.ts.map +1 -1
- package/dist/services/settings/test-helpers/settings-consumer-inventory.js +46 -0
- package/dist/services/settings/test-helpers/settings-consumer-inventory.js.map +1 -1
- package/dist/services/subagents/execution-runner.d.ts.map +1 -1
- package/dist/services/subagents/execution-runner.js +8 -0
- package/dist/services/subagents/execution-runner.js.map +1 -1
- package/dist/services/subagents/role-loader.d.ts.map +1 -1
- package/dist/services/subagents/role-loader.js +4 -0
- package/dist/services/subagents/role-loader.js.map +1 -1
- package/dist/services/subagents/subagent-client-types.d.ts +7 -0
- package/dist/services/subagents/subagent-client-types.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.js +4 -1
- package/dist/services/subagents/subagent-manager.js.map +1 -1
- package/dist/services/subagents/subagent-notification-store.d.ts +2 -0
- package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
- package/dist/services/subagents/subagent-notification-store.js +4 -0
- package/dist/services/subagents/subagent-notification-store.js.map +1 -1
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts.map +1 -1
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js +2 -1
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js.map +1 -1
- package/dist/services/subagents/tool-policy.d.ts +8 -0
- package/dist/services/subagents/tool-policy.d.ts.map +1 -1
- package/dist/services/subagents/tool-policy.js +289 -41
- package/dist/services/subagents/tool-policy.js.map +1 -1
- package/dist/services/subagents/types.d.ts +2 -1
- package/dist/services/subagents/types.d.ts.map +1 -1
- package/dist/services/subagents/types.js.map +1 -1
- package/dist/test-helpers/conversation-session-with-adapter.d.ts +1 -1
- package/dist/test-helpers/conversation-session-with-adapter.d.ts.map +1 -1
- package/dist/test-helpers/conversation-session-with-adapter.js +6 -1
- package/dist/test-helpers/conversation-session-with-adapter.js.map +1 -1
- package/dist/test-helpers/vitest-cache-isolation.d.ts +2 -0
- package/dist/test-helpers/vitest-cache-isolation.d.ts.map +1 -0
- package/dist/test-helpers/vitest-cache-isolation.js +17 -0
- package/dist/test-helpers/vitest-cache-isolation.js.map +1 -0
- package/dist/tools/agent/activate-skill.d.ts.map +1 -1
- package/dist/tools/agent/activate-skill.js +1 -0
- package/dist/tools/agent/activate-skill.js.map +1 -1
- package/dist/tools/agent/configure-task-check-in.d.ts.map +1 -1
- package/dist/tools/agent/configure-task-check-in.js +1 -0
- package/dist/tools/agent/configure-task-check-in.js.map +1 -1
- package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
- package/dist/tools/agent/run-subagent-async.js +16 -12
- package/dist/tools/agent/run-subagent-async.js.map +1 -1
- package/dist/tools/file/apply-patch.d.ts.map +1 -1
- package/dist/tools/file/apply-patch.js +9 -11
- package/dist/tools/file/apply-patch.js.map +1 -1
- package/dist/tools/file/code-context.d.ts.map +1 -1
- package/dist/tools/file/code-context.js +40 -5
- package/dist/tools/file/code-context.js.map +1 -1
- package/dist/tools/file/create-file.d.ts.map +1 -1
- package/dist/tools/file/create-file.js +13 -8
- package/dist/tools/file/create-file.js.map +1 -1
- package/dist/tools/file/glob.d.ts.map +1 -1
- package/dist/tools/file/glob.js +49 -11
- package/dist/tools/file/glob.js.map +1 -1
- package/dist/tools/file/grep.d.ts.map +1 -1
- package/dist/tools/file/grep.js +32 -8
- package/dist/tools/file/grep.js.map +1 -1
- package/dist/tools/file/read-file.d.ts.map +1 -1
- package/dist/tools/file/read-file.js +109 -6
- package/dist/tools/file/read-file.js.map +1 -1
- package/dist/tools/file/search-replace.js +4 -4
- package/dist/tools/file/search-replace.js.map +1 -1
- package/dist/tools/file/upstream-apply-patch.d.ts.map +1 -1
- package/dist/tools/file/upstream-apply-patch.js +4 -1
- package/dist/tools/file/upstream-apply-patch.js.map +1 -1
- package/dist/tools/memory/memory-tools.d.ts.map +1 -1
- package/dist/tools/memory/memory-tools.js +19 -1
- package/dist/tools/memory/memory-tools.js.map +1 -1
- package/dist/tools/session-browser/session-browser-tools.d.ts.map +1 -1
- package/dist/tools/session-browser/session-browser-tools.js +24 -8
- package/dist/tools/session-browser/session-browser-tools.js.map +1 -1
- package/dist/tools/session-rollover/session-rollover-tool.d.ts.map +1 -1
- package/dist/tools/session-rollover/session-rollover-tool.js +8 -2
- package/dist/tools/session-rollover/session-rollover-tool.js.map +1 -1
- package/dist/tools/system/run-code/index.d.ts +2 -0
- package/dist/tools/system/run-code/index.d.ts.map +1 -0
- package/dist/tools/system/run-code/index.js +2 -0
- package/dist/tools/system/run-code/index.js.map +1 -0
- package/dist/tools/system/run-code/run-code-telemetry.d.ts +92 -0
- package/dist/tools/system/run-code/run-code-telemetry.d.ts.map +1 -0
- package/dist/tools/system/run-code/run-code-telemetry.js +189 -0
- package/dist/tools/system/run-code/run-code-telemetry.js.map +1 -0
- package/dist/tools/system/run-code/run-code.d.ts +98 -0
- package/dist/tools/system/run-code/run-code.d.ts.map +1 -0
- package/dist/tools/system/run-code/run-code.js +1078 -0
- package/dist/tools/system/run-code/run-code.js.map +1 -0
- package/dist/tools/system/run-code/tools-header.d.ts +25 -0
- package/dist/tools/system/run-code/tools-header.d.ts.map +1 -0
- package/dist/tools/system/run-code/tools-header.js +136 -0
- package/dist/tools/system/run-code/tools-header.js.map +1 -0
- package/dist/tools/system/shell.d.ts.map +1 -1
- package/dist/tools/system/shell.js +58 -9
- package/dist/tools/system/shell.js.map +1 -1
- package/dist/tools/system/worktree.js +2 -2
- package/dist/tools/system/worktree.js.map +1 -1
- package/dist/tools/types.d.ts +24 -0
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js.map +1 -1
- package/dist/tools/utils.d.ts +10 -0
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +13 -0
- package/dist/tools/utils.js.map +1 -1
- package/dist/tools/web/web-fetch.d.ts.map +1 -1
- package/dist/tools/web/web-fetch.js +14 -6
- package/dist/tools/web/web-fetch.js.map +1 -1
- package/dist/tools/web/web-search.d.ts.map +1 -1
- package/dist/tools/web/web-search.js +2 -1
- package/dist/tools/web/web-search.js.map +1 -1
- package/dist/utils/ai/model-settings.d.ts.map +1 -1
- package/dist/utils/ai/model-settings.js +0 -47
- package/dist/utils/ai/model-settings.js.map +1 -1
- package/dist/utils/conversation/apply-conversation-result.d.ts.map +1 -1
- package/dist/utils/conversation/apply-conversation-result.js +13 -0
- package/dist/utils/conversation/apply-conversation-result.js.map +1 -1
- package/dist/utils/conversation/conversation-utils.d.ts.map +1 -1
- package/dist/utils/conversation/conversation-utils.js +14 -0
- package/dist/utils/conversation/conversation-utils.js.map +1 -1
- package/dist/utils/output/bound-tool-result.d.ts +23 -0
- package/dist/utils/output/bound-tool-result.d.ts.map +1 -1
- package/dist/utils/output/bound-tool-result.js +27 -0
- package/dist/utils/output/bound-tool-result.js.map +1 -1
- package/dist/utils/settings-command.d.ts +8 -0
- package/dist/utils/settings-command.d.ts.map +1 -1
- package/dist/utils/settings-command.js +45 -30
- package/dist/utils/settings-command.js.map +1 -1
- package/dist/utils/shell/execute-shell.d.ts +18 -0
- package/dist/utils/shell/execute-shell.d.ts.map +1 -1
- package/dist/utils/shell/execute-shell.js +48 -6
- package/dist/utils/shell/execute-shell.js.map +1 -1
- package/dist/utils/shell/shell-output.d.ts +7 -1
- package/dist/utils/shell/shell-output.d.ts.map +1 -1
- package/dist/utils/shell/shell-output.js +37 -7
- package/dist/utils/shell/shell-output.js.map +1 -1
- package/dist/utils/streaming/streaming-session-factory.d.ts +9 -0
- package/dist/utils/streaming/streaming-session-factory.d.ts.map +1 -1
- package/dist/utils/streaming/streaming-session-factory.js +1 -1
- package/dist/utils/streaming/streaming-session-factory.js.map +1 -1
- package/dist/utils/tool-args-display.d.ts +21 -0
- package/dist/utils/tool-args-display.d.ts.map +1 -0
- package/dist/utils/tool-args-display.js +34 -0
- package/dist/utils/tool-args-display.js.map +1 -0
- package/dist/utils/value-suggestions.d.ts +4 -10
- package/dist/utils/value-suggestions.d.ts.map +1 -1
- package/dist/utils/value-suggestions.js +77 -144
- package/dist/utils/value-suggestions.js.map +1 -1
- package/dist/utils/worker-bootstrap.d.ts +3 -0
- package/dist/utils/worker-bootstrap.d.ts.map +1 -0
- package/dist/utils/worker-bootstrap.js +7 -0
- package/dist/utils/worker-bootstrap.js.map +1 -0
- package/dist/utils/worker-cwd-preload.cjs +23 -0
- package/dist/utils/worker-cwd-preload.cjs.map +1 -0
- package/dist/utils/worker-cwd-preload.d.cts +2 -0
- package/dist/utils/worker-cwd-preload.d.cts.map +1 -0
- package/package.json +5 -2
- package/dist/services/agent-runtime/workflow/workflow-worker.d.ts +0 -4
- package/dist/services/agent-runtime/workflow/workflow-worker.d.ts.map +0 -1
- package/dist/services/agent-runtime/workflow/workflow-worker.js +0 -55
- package/dist/services/agent-runtime/workflow/workflow-worker.js.map +0 -1
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { createInterface } from 'node:readline';
|
|
2
2
|
import { getProvider, getProviderIds } from '../../providers/index.js';
|
|
3
|
-
import {
|
|
3
|
+
import { getModelCacheFilePath, matchTier, peekCachedModels, rankModelMatch, } from '../model-service.js';
|
|
4
4
|
import { scoreSubsequence } from '../../utils/subsequence-filter.js';
|
|
5
|
-
import {
|
|
5
|
+
import { collectProviderModelsConcurrently, loadProviderModelGroup } from './model-listing.js';
|
|
6
|
+
import { orderedProviderIds } from './model-catalog-session.js';
|
|
6
7
|
import { HARNESS_IDLE_ENV } from '../../lib/harness-input-idle.js';
|
|
7
|
-
|
|
8
|
+
import { getFavoriteModelInfos } from './model-favorites.js';
|
|
9
|
+
import { findNicknameMatch } from './model-nicknames.js';
|
|
10
|
+
import { stripReasoningEffortSuffix } from './reasoning-effort.js';
|
|
11
|
+
// Re-exported for the existing importers of this module; the definitions live
|
|
12
|
+
// in reasoning-effort.ts so model-nicknames can share them without a cycle.
|
|
13
|
+
export { VALID_REASONING_EFFORTS } from './reasoning-effort.js';
|
|
8
14
|
/**
|
|
9
15
|
* Parse a raw `--model` flag string, separating optional thinking suffix
|
|
10
16
|
* (":<thinking>") and optional provider prefix ("<provider>/<id>").
|
|
@@ -12,16 +18,7 @@ export const VALID_REASONING_EFFORTS = ['default', 'none', 'minimal', 'low', 'me
|
|
|
12
18
|
export function parseModelFlag(rawModelFlag, options) {
|
|
13
19
|
const trimmed = rawModelFlag.trim();
|
|
14
20
|
// 1. Extract thinking suffix (e.g. :high, :low, :medium)
|
|
15
|
-
|
|
16
|
-
let reasoningEffort;
|
|
17
|
-
const colonIdx = trimmed.lastIndexOf(':');
|
|
18
|
-
if (colonIdx !== -1) {
|
|
19
|
-
const potentialEffort = trimmed.slice(colonIdx + 1).toLowerCase();
|
|
20
|
-
if (VALID_REASONING_EFFORTS.includes(potentialEffort)) {
|
|
21
|
-
reasoningEffort = potentialEffort;
|
|
22
|
-
withoutThinking = trimmed.slice(0, colonIdx).trim();
|
|
23
|
-
}
|
|
24
|
-
}
|
|
21
|
+
const { value: withoutThinking, reasoningEffort } = stripReasoningEffortSuffix(trimmed);
|
|
25
22
|
const rawPattern = withoutThinking;
|
|
26
23
|
// 2. Extract provider prefix
|
|
27
24
|
if (options?.providerFlag) {
|
|
@@ -97,33 +94,46 @@ export function matchModels(groups, parsed) {
|
|
|
97
94
|
if (exactMatches.length > 0) {
|
|
98
95
|
return { exact: true, matches: exactMatches };
|
|
99
96
|
}
|
|
100
|
-
|
|
101
|
-
const fuzzyMatches = [];
|
|
97
|
+
const ranked = [];
|
|
102
98
|
const trimmed = parsed.pattern.trim();
|
|
103
|
-
|
|
99
|
+
groups.forEach((group, groupIndex) => {
|
|
104
100
|
if (parsed.provider) {
|
|
105
|
-
if (group.provider.toLowerCase()
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
101
|
+
if (group.provider.toLowerCase() !== parsed.provider.toLowerCase()) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
for (const model of group.models) {
|
|
105
|
+
const rank = rankModelMatch(model, trimmed);
|
|
106
|
+
if (rank) {
|
|
107
|
+
ranked.push({ match: { provider: group.provider, model }, tier: rank.tier, score: rank.score, groupIndex });
|
|
109
108
|
}
|
|
110
109
|
}
|
|
111
|
-
|
|
110
|
+
return;
|
|
112
111
|
}
|
|
113
|
-
// No provider specified:
|
|
114
|
-
|
|
112
|
+
// No provider specified: a provider-name match pulls in the whole group,
|
|
113
|
+
// ranked by how well the provider name itself matched.
|
|
114
|
+
const providerScore = scoreSubsequence(trimmed, group.provider);
|
|
115
|
+
if (providerScore !== -Infinity) {
|
|
116
|
+
const tier = matchTier(trimmed, group.provider);
|
|
115
117
|
for (const model of group.models) {
|
|
116
|
-
|
|
118
|
+
ranked.push({ match: { provider: group.provider, model }, tier, score: providerScore, groupIndex });
|
|
117
119
|
}
|
|
120
|
+
return;
|
|
118
121
|
}
|
|
119
|
-
|
|
120
|
-
const
|
|
121
|
-
|
|
122
|
-
|
|
122
|
+
for (const model of group.models) {
|
|
123
|
+
const rank = rankModelMatch(model, trimmed);
|
|
124
|
+
if (rank) {
|
|
125
|
+
ranked.push({ match: { provider: group.provider, model }, tier: rank.tier, score: rank.score, groupIndex });
|
|
123
126
|
}
|
|
124
127
|
}
|
|
125
|
-
}
|
|
126
|
-
|
|
128
|
+
});
|
|
129
|
+
ranked.sort((a, b) => {
|
|
130
|
+
if (a.tier !== b.tier)
|
|
131
|
+
return a.tier - b.tier;
|
|
132
|
+
if (a.score !== b.score)
|
|
133
|
+
return b.score - a.score;
|
|
134
|
+
return a.groupIndex - b.groupIndex;
|
|
135
|
+
});
|
|
136
|
+
return { exact: false, matches: ranked.map((r) => r.match) };
|
|
127
137
|
}
|
|
128
138
|
/**
|
|
129
139
|
* Format matching models as a numbered list grouped by provider,
|
|
@@ -199,6 +209,19 @@ export async function promptForDisambiguation(matches, groups, pattern, prompter
|
|
|
199
209
|
rl.close();
|
|
200
210
|
}
|
|
201
211
|
}
|
|
212
|
+
/** Groups flat ModelInfo rows by provider, preserving first-seen provider order. */
|
|
213
|
+
function groupModelInfosByProvider(models) {
|
|
214
|
+
const order = [];
|
|
215
|
+
const byProvider = new Map();
|
|
216
|
+
for (const model of models) {
|
|
217
|
+
if (!byProvider.has(model.provider)) {
|
|
218
|
+
byProvider.set(model.provider, []);
|
|
219
|
+
order.push(model.provider);
|
|
220
|
+
}
|
|
221
|
+
byProvider.get(model.provider).push(model);
|
|
222
|
+
}
|
|
223
|
+
return order.map((provider) => ({ provider, models: byProvider.get(provider) }));
|
|
224
|
+
}
|
|
202
225
|
/**
|
|
203
226
|
* Resolves `--model <pattern>` against the model catalog with exact match
|
|
204
227
|
* precedence, partial/fuzzy matching, and interactive disambiguation when needed.
|
|
@@ -210,7 +233,7 @@ export async function resolveModelFlag(deps) {
|
|
|
210
233
|
knownProviders,
|
|
211
234
|
});
|
|
212
235
|
// Isolated black-box provider harnesses replay wire turns and do not mock catalog endpoints
|
|
213
|
-
if (process.env[HARNESS_IDLE_ENV] && deps.prompter === undefined) {
|
|
236
|
+
if (process.env[HARNESS_IDLE_ENV] && deps.prompter === undefined && deps.interactivePicker === undefined) {
|
|
214
237
|
return {
|
|
215
238
|
status: 'passthrough',
|
|
216
239
|
modelId: parsed.rawPattern,
|
|
@@ -218,23 +241,168 @@ export async function resolveModelFlag(deps) {
|
|
|
218
241
|
reasoningEffort: parsed.reasoningEffort,
|
|
219
242
|
};
|
|
220
243
|
}
|
|
221
|
-
//
|
|
222
|
-
//
|
|
223
|
-
//
|
|
224
|
-
//
|
|
225
|
-
|
|
226
|
-
|
|
244
|
+
// Explicit --provider is the user deliberately scoping the search (it also
|
|
245
|
+
// sets agent.provider for the session), so it narrows PERMANENTLY: a miss
|
|
246
|
+
// there errors out rather than silently resolving to a provider the user
|
|
247
|
+
// didn't name. A provider-style prefix parsed out of the flag itself (e.g.
|
|
248
|
+
// the `anthropic/` in `anthropic/claude-3.5-sonnet` on an aggregator) is a
|
|
249
|
+
// different thing — it's just the best first guess, and the full id may
|
|
250
|
+
// turn out to be a literal model id on some other provider, so a miss
|
|
251
|
+
// there widens to the rest of the candidate space instead of giving up.
|
|
252
|
+
const explicitProvider = Boolean(deps.providerFlag && parsed.provider);
|
|
253
|
+
// Nicknames resolve first — before favorites and before any provider
|
|
254
|
+
// catalog loads: reading `agent.modelNicknames` is a settings read, not a
|
|
255
|
+
// fetch, so an exact hit costs zero network work. Precedence is exact
|
|
256
|
+
// nickname > favorite > exact real model id: favorites already shadowed
|
|
257
|
+
// exact real ids before nicknames existed (the favorites fast path below is
|
|
258
|
+
// unchanged), so the nickname check slots in directly in front of it. A
|
|
259
|
+
// real id shadowed by a nickname stays reachable as `provider/id`; a
|
|
260
|
+
// nickname equal to a registered provider id is rejected at creation and
|
|
261
|
+
// excluded at lookup, so `-m openai` can never be hijacked by a nickname.
|
|
262
|
+
// A nickname whose target has vanished from a warm cache does not hard-fail:
|
|
263
|
+
// like a vanished favorite, it falls through to the full search with a
|
|
264
|
+
// warning instead of resolving to a model the provider will reject.
|
|
265
|
+
const nicknameHit = findNicknameMatch(deps.settingsService, parsed.pattern, {
|
|
266
|
+
providerScope: parsed.provider,
|
|
267
|
+
knownProviders,
|
|
268
|
+
});
|
|
269
|
+
let nicknameVanishedWarning;
|
|
270
|
+
if (nicknameHit) {
|
|
271
|
+
const warmCache = peekCachedModels(nicknameHit.provider);
|
|
272
|
+
const vanished = warmCache !== undefined && !warmCache.some((m) => m.id === nicknameHit.modelId);
|
|
273
|
+
if (!vanished) {
|
|
274
|
+
return {
|
|
275
|
+
status: 'resolved',
|
|
276
|
+
modelId: nicknameHit.modelId,
|
|
277
|
+
provider: nicknameHit.provider,
|
|
278
|
+
// An inline `-m op:low` suffix overrides the effort stored on the
|
|
279
|
+
// nickname target (`op -> ...:high`).
|
|
280
|
+
reasoningEffort: parsed.reasoningEffort ?? nicknameHit.reasoningEffort,
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
nicknameVanishedWarning = `warning: nicknamed model "${nicknameHit.modelId}" is no longer in ${nicknameHit.provider}'s cached catalog; falling back to full search.`;
|
|
284
|
+
}
|
|
285
|
+
// Favorites resolve BEFORE any provider catalog loads: reading
|
|
286
|
+
// `agent.favoriteModels` is a settings read, not a fetch, so a hit here
|
|
287
|
+
// costs zero network work. Only favorites for the explicitly-scoped
|
|
288
|
+
// provider are eligible when --provider narrows permanently, mirroring the
|
|
289
|
+
// catalog path below; a slash-prefix guess (not --provider) doesn't narrow
|
|
290
|
+
// the same way, since the full raw pattern might still be a literal id
|
|
291
|
+
// favorited under a different provider.
|
|
292
|
+
const allFavorites = getFavoriteModelInfos(deps.settingsService);
|
|
293
|
+
const eligibleFavorites = explicitProvider
|
|
294
|
+
? allFavorites.filter((m) => m.provider.toLowerCase() === parsed.provider.toLowerCase())
|
|
295
|
+
: allFavorites;
|
|
296
|
+
let favoriteVanishedWarning;
|
|
297
|
+
if (eligibleFavorites.length > 0) {
|
|
298
|
+
const favoriteGroups = groupModelInfosByProvider(eligibleFavorites);
|
|
299
|
+
const favoriteMatch = matchModels(favoriteGroups, parsed);
|
|
300
|
+
// Only an UNAMBIGUOUS favorite hit short-circuits; zero or multiple
|
|
301
|
+
// matches fall through to the full catalog-backed search below (multiple
|
|
302
|
+
// favorite matches get the normal, complete disambiguation prompt rather
|
|
303
|
+
// than a guess restricted to favorites).
|
|
304
|
+
if (favoriteMatch.matches.length === 1) {
|
|
305
|
+
const hit = favoriteMatch.matches[0];
|
|
306
|
+
// Read-only peek at whatever's already warm for that provider (memory
|
|
307
|
+
// or non-expired disk cache) — never a fetch. If the cache is warm and
|
|
308
|
+
// no longer lists this id, the favorite has gone stale (removed
|
|
309
|
+
// upstream); fall back to the full search instead of resolving to a
|
|
310
|
+
// model the provider will reject. A cold/absent cache can't disprove
|
|
311
|
+
// the favorite, so it's trusted as-is — that's the latency win.
|
|
312
|
+
const warmCache = peekCachedModels(hit.provider);
|
|
313
|
+
const vanished = warmCache !== undefined && !warmCache.some((m) => m.id === hit.model.id);
|
|
314
|
+
if (!vanished) {
|
|
315
|
+
return {
|
|
316
|
+
status: 'resolved',
|
|
317
|
+
modelId: hit.model.id,
|
|
318
|
+
provider: hit.provider,
|
|
319
|
+
reasoningEffort: parsed.reasoningEffort,
|
|
320
|
+
};
|
|
321
|
+
}
|
|
322
|
+
favoriteVanishedWarning = `warning: favorite model "${hit.model.id}" is no longer in ${hit.provider}'s cached catalog; falling back to full search.`;
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
const loaderDeps = {
|
|
227
326
|
settingsService: deps.settingsService,
|
|
228
327
|
loggingService: deps.loggingService,
|
|
229
328
|
fetcher: deps.fetcher,
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
329
|
+
};
|
|
330
|
+
// Full candidate space, in provider-priority order. `deps.providerIds`, when
|
|
331
|
+
// supplied, replaces this entirely (tests use it to pin the universe of
|
|
332
|
+
// providers without touching credential lookups).
|
|
333
|
+
const fullOrder = deps.providerIds ?? orderedProviderIds(deps.settingsService, knownProviders);
|
|
334
|
+
let order;
|
|
335
|
+
if (explicitProvider) {
|
|
336
|
+
// Deliberately ignores `fullOrder`/`deps.providerIds` beyond this one id:
|
|
337
|
+
// even a test-supplied candidate space listing other providers must not
|
|
338
|
+
// leak into the load when the user explicitly scoped to one provider.
|
|
339
|
+
order = [parsed.provider];
|
|
340
|
+
}
|
|
341
|
+
else if (parsed.provider) {
|
|
342
|
+
const rest = fullOrder.filter((id) => id.toLowerCase() !== parsed.provider.toLowerCase());
|
|
343
|
+
order = [parsed.provider, ...rest];
|
|
344
|
+
}
|
|
345
|
+
else {
|
|
346
|
+
order = fullOrder;
|
|
347
|
+
}
|
|
348
|
+
// Walk lazily: load just the first (highest-priority) provider and stop
|
|
349
|
+
// there if it already produced an exact match — `--model gpt-5.4` should
|
|
350
|
+
// never touch a provider's catalog it didn't need. Only when that first
|
|
351
|
+
// load comes up empty of exact matches do we widen, and we do that widen
|
|
352
|
+
// concurrently since a fuzzy/cross-provider sweep needs every remaining
|
|
353
|
+
// catalog anyway and gains nothing from doing it one at a time. Explicit
|
|
354
|
+
// --provider never reaches this widen branch at all (see above).
|
|
355
|
+
let groups = [];
|
|
356
|
+
if (order.length > 0) {
|
|
357
|
+
const [firstId, ...restIds] = order;
|
|
358
|
+
const firstGroup = await loadProviderModelGroup(loaderDeps, firstId);
|
|
359
|
+
groups = [firstGroup];
|
|
360
|
+
if (!explicitProvider && restIds.length > 0) {
|
|
361
|
+
const probe = matchModels(groups, parsed);
|
|
362
|
+
const hasEarlyExactMatch = probe.exact && probe.matches.length > 0;
|
|
363
|
+
if (!hasEarlyExactMatch) {
|
|
364
|
+
const restGroups = await collectProviderModelsConcurrently(loaderDeps, restIds);
|
|
365
|
+
groups = [firstGroup, ...restGroups];
|
|
366
|
+
}
|
|
367
|
+
else {
|
|
368
|
+
// The first provider already resolved an exact match, so a full
|
|
369
|
+
// network load of the rest would only be there to rule out a
|
|
370
|
+
// same-id collision — not worth giving back the latency win early
|
|
371
|
+
// exit was built for. Instead, peek whatever's ALREADY warm (memory
|
|
372
|
+
// cache, or a non-expired disk cache) for the providers we chose not
|
|
373
|
+
// to load: read-only, no fetch, costs nothing when cold. If one of
|
|
374
|
+
// them already has this exact id, fold it in so the normal
|
|
375
|
+
// multiple-matches path asks the user instead of silently picking
|
|
376
|
+
// the first provider tried. Accepted residual limitation: a
|
|
377
|
+
// collision sitting on a provider whose cache is cold or expired
|
|
378
|
+
// goes undetected — that's intentional, not a bug, since ruling it
|
|
379
|
+
// out would require the network fetch this path exists to avoid.
|
|
380
|
+
const peekedGroups = [];
|
|
381
|
+
for (const id of restIds) {
|
|
382
|
+
const models = peekCachedModels(id);
|
|
383
|
+
if (models && models.length > 0) {
|
|
384
|
+
const label = getProvider(id)?.label;
|
|
385
|
+
peekedGroups.push({ provider: id, ...(label ? { label } : {}), models });
|
|
386
|
+
}
|
|
387
|
+
}
|
|
388
|
+
if (peekedGroups.length > 0) {
|
|
389
|
+
groups = [firstGroup, ...peekedGroups];
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
// Only providers we actually attempted to load can have failed; a provider
|
|
395
|
+
// skipped entirely by the early-exit/narrow-first strategy above must not
|
|
396
|
+
// appear here; do not let the laziness optimization hide a real outage on a
|
|
397
|
+
// provider that was loaded.
|
|
398
|
+
const warnings = [
|
|
399
|
+
...(nicknameVanishedWarning ? [nicknameVanishedWarning] : []),
|
|
400
|
+
...(favoriteVanishedWarning ? [favoriteVanishedWarning] : []),
|
|
401
|
+
...groups.filter((group) => group.error !== undefined).map((group) => `warning: ${group.provider}: ${group.error}`),
|
|
402
|
+
];
|
|
234
403
|
const totalLoadedModels = groups.reduce((acc, g) => acc + g.models.length, 0);
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
if (totalLoadedModels === 0 && hasFetchErrors) {
|
|
404
|
+
// If providers yielded 0 models, pass through rather than blocking startup
|
|
405
|
+
if (totalLoadedModels === 0) {
|
|
238
406
|
return {
|
|
239
407
|
status: 'passthrough',
|
|
240
408
|
// Fail open with the flag as typed, matching pre-resolution behavior.
|
|
@@ -246,10 +414,10 @@ export async function resolveModelFlag(deps) {
|
|
|
246
414
|
}
|
|
247
415
|
const { matches } = matchModels(groups, parsed);
|
|
248
416
|
if (matches.length === 0) {
|
|
249
|
-
// If the target provider failed to fetch its catalog, allow passthrough
|
|
417
|
+
// If the target provider failed to fetch its catalog or yielded 0 models, allow passthrough
|
|
250
418
|
if (parsed.provider) {
|
|
251
419
|
const targetGroup = groups.find((g) => g.provider.toLowerCase() === parsed.provider.toLowerCase());
|
|
252
|
-
if (targetGroup?.error) {
|
|
420
|
+
if (targetGroup?.error || targetGroup?.models.length === 0) {
|
|
253
421
|
return {
|
|
254
422
|
status: 'passthrough',
|
|
255
423
|
modelId: parsed.rawPattern,
|
|
@@ -258,6 +426,48 @@ export async function resolveModelFlag(deps) {
|
|
|
258
426
|
...(warnings.length > 0 ? { warnings } : {}),
|
|
259
427
|
};
|
|
260
428
|
}
|
|
429
|
+
if (targetGroup) {
|
|
430
|
+
const cacheFilePath = getModelCacheFilePath(targetGroup.provider);
|
|
431
|
+
if (deps.interactivePicker) {
|
|
432
|
+
const picked = await deps.interactivePicker({
|
|
433
|
+
initialQuery: parsed.pattern,
|
|
434
|
+
lockProvider: explicitProvider ? parsed.provider : undefined,
|
|
435
|
+
bannerLines: [
|
|
436
|
+
`No models match "${deps.modelFlag}".`,
|
|
437
|
+
`The cached catalog for ${targetGroup.provider} may be stale — delete ${cacheFilePath} to refetch.`,
|
|
438
|
+
],
|
|
439
|
+
});
|
|
440
|
+
if (!picked)
|
|
441
|
+
return { status: 'cancelled', error: 'Cancelled.' };
|
|
442
|
+
return {
|
|
443
|
+
status: 'resolved',
|
|
444
|
+
modelId: picked.modelId,
|
|
445
|
+
provider: picked.provider,
|
|
446
|
+
reasoningEffort: parsed.reasoningEffort,
|
|
447
|
+
...(warnings.length > 0 ? { warnings } : {}),
|
|
448
|
+
};
|
|
449
|
+
}
|
|
450
|
+
return {
|
|
451
|
+
status: 'no_match',
|
|
452
|
+
error: `Error: No models match "${deps.modelFlag}". The cached catalog for ${targetGroup.provider} may be stale — delete ${cacheFilePath} to refetch.`,
|
|
453
|
+
};
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
if (deps.interactivePicker) {
|
|
457
|
+
const picked = await deps.interactivePicker({
|
|
458
|
+
initialQuery: parsed.pattern,
|
|
459
|
+
lockProvider: explicitProvider ? parsed.provider : undefined,
|
|
460
|
+
bannerLines: [`No models match "${deps.modelFlag}".`],
|
|
461
|
+
});
|
|
462
|
+
if (!picked)
|
|
463
|
+
return { status: 'cancelled', error: 'Cancelled.' };
|
|
464
|
+
return {
|
|
465
|
+
status: 'resolved',
|
|
466
|
+
modelId: picked.modelId,
|
|
467
|
+
provider: picked.provider,
|
|
468
|
+
reasoningEffort: parsed.reasoningEffort,
|
|
469
|
+
...(warnings.length > 0 ? { warnings } : {}),
|
|
470
|
+
};
|
|
261
471
|
}
|
|
262
472
|
return {
|
|
263
473
|
status: 'no_match',
|
|
@@ -273,7 +483,26 @@ export async function resolveModelFlag(deps) {
|
|
|
273
483
|
...(warnings.length > 0 ? { warnings } : {}),
|
|
274
484
|
};
|
|
275
485
|
}
|
|
276
|
-
// Ambiguous match: disambiguate
|
|
486
|
+
// Ambiguous match: disambiguate. The interactive picker, when available,
|
|
487
|
+
// replaces the readline prompt entirely and browses the FULL catalog
|
|
488
|
+
// (seeded with the typed pattern) rather than only the ambiguous subset,
|
|
489
|
+
// since it lets the user keep narrowing past what --model alone matched.
|
|
490
|
+
if (deps.interactivePicker) {
|
|
491
|
+
const picked = await deps.interactivePicker({
|
|
492
|
+
initialQuery: parsed.pattern,
|
|
493
|
+
initialProvider: matches[0].provider,
|
|
494
|
+
lockProvider: explicitProvider ? parsed.provider : undefined,
|
|
495
|
+
});
|
|
496
|
+
if (!picked)
|
|
497
|
+
return { status: 'cancelled', error: 'Cancelled.' };
|
|
498
|
+
return {
|
|
499
|
+
status: 'resolved',
|
|
500
|
+
modelId: picked.modelId,
|
|
501
|
+
provider: picked.provider,
|
|
502
|
+
reasoningEffort: parsed.reasoningEffort,
|
|
503
|
+
...(warnings.length > 0 ? { warnings } : {}),
|
|
504
|
+
};
|
|
505
|
+
}
|
|
277
506
|
const selected = await promptForDisambiguation(matches, groups, deps.modelFlag, deps.prompter, deps.streams);
|
|
278
507
|
if (!selected) {
|
|
279
508
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-resolution.js","sourceRoot":"","sources":["../../../source/services/models/model-resolution.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model-resolution.js","sourceRoot":"","sources":["../../../source/services/models/model-resolution.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The reasoning-effort vocabulary and the ":<effort>" suffix rule shared by
|
|
3
|
+
* --model flag parsing and nickname-target parsing. Kept in its own module so
|
|
4
|
+
* model-nicknames can reuse the exact same suffix semantics without importing
|
|
5
|
+
* model-resolution (which imports model-nicknames for the resolution fast
|
|
6
|
+
* path).
|
|
7
|
+
*/
|
|
8
|
+
export declare const VALID_REASONING_EFFORTS: readonly ['default', 'none', 'minimal', 'low', 'medium', 'high', 'xhigh'];
|
|
9
|
+
export type ModelSettingsReasoningEffort = (typeof VALID_REASONING_EFFORTS)[number];
|
|
10
|
+
/**
|
|
11
|
+
* Splits a trailing ":<effort>" suffix off a raw model-flag string or
|
|
12
|
+
* nickname-target string. Only a recognized effort is stripped; any other
|
|
13
|
+
* colon suffix (e.g. ":batch") stays part of the id, matching the
|
|
14
|
+
* fail-open behavior of --model parsing.
|
|
15
|
+
*/
|
|
16
|
+
export declare function stripReasoningEffortSuffix(trimmed: string): {
|
|
17
|
+
value: string;
|
|
18
|
+
reasoningEffort?: ModelSettingsReasoningEffort;
|
|
19
|
+
};
|
|
20
|
+
//# sourceMappingURL=reasoning-effort.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reasoning-effort.d.ts","sourceRoot":"","sources":["../../../source/services/models/reasoning-effort.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,YAAI,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAEjH,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpF;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG;IAC3D,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,4BAA4B,CAAC;CAChD,CAYA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The reasoning-effort vocabulary and the ":<effort>" suffix rule shared by
|
|
3
|
+
* --model flag parsing and nickname-target parsing. Kept in its own module so
|
|
4
|
+
* model-nicknames can reuse the exact same suffix semantics without importing
|
|
5
|
+
* model-resolution (which imports model-nicknames for the resolution fast
|
|
6
|
+
* path).
|
|
7
|
+
*/
|
|
8
|
+
export const VALID_REASONING_EFFORTS = ['default', 'none', 'minimal', 'low', 'medium', 'high', 'xhigh'];
|
|
9
|
+
/**
|
|
10
|
+
* Splits a trailing ":<effort>" suffix off a raw model-flag string or
|
|
11
|
+
* nickname-target string. Only a recognized effort is stripped; any other
|
|
12
|
+
* colon suffix (e.g. ":batch") stays part of the id, matching the
|
|
13
|
+
* fail-open behavior of --model parsing.
|
|
14
|
+
*/
|
|
15
|
+
export function stripReasoningEffortSuffix(trimmed) {
|
|
16
|
+
const colonIdx = trimmed.lastIndexOf(':');
|
|
17
|
+
if (colonIdx !== -1) {
|
|
18
|
+
const potentialEffort = trimmed.slice(colonIdx + 1).toLowerCase();
|
|
19
|
+
if (VALID_REASONING_EFFORTS.includes(potentialEffort)) {
|
|
20
|
+
return {
|
|
21
|
+
value: trimmed.slice(0, colonIdx).trim(),
|
|
22
|
+
reasoningEffort: potentialEffort,
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
return { value: trimmed, reasoningEffort: undefined };
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=reasoning-effort.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reasoning-effort.js","sourceRoot":"","sources":["../../../source/services/models/reasoning-effort.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAU,CAAC;AAIjH;;;;;GAKG;AACH,MAAM,UAAU,0BAA0B,CAAC,OAAe;IAIxD,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1C,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;QACpB,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAClE,IAAK,uBAA6C,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC7E,OAAO;gBACL,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,IAAI,EAAE;gBACxC,eAAe,EAAE,eAA+C;aACjE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { type ModelInfo } from '../model-service.js';
|
|
2
|
+
export declare function mergeUnifiedModels(providerIds: readonly string[], catalogs: ReadonlyMap<string, readonly ModelInfo[]>, favorites: readonly ModelInfo[]): ModelInfo[];
|
|
3
|
+
export declare function filterUnifiedModels(models: readonly ModelInfo[], modelQuery: string, providerQuery?: string): ModelInfo[];
|
|
4
|
+
//# sourceMappingURL=unified-model-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unified-model-catalog.d.ts","sourceRoot":"","sources":["../../../source/services/models/unified-model-catalog.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAGnE,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,QAAQ,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,SAAS,EAAE,CAAC,EACnD,SAAS,EAAE,SAAS,SAAS,EAAE,GAC9B,SAAS,EAAE,CAyBb;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,SAAS,SAAS,EAAE,EAC5B,UAAU,EAAE,MAAM,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,SAAS,EAAE,CAqBb"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { getProvider } from '../../providers/index.js';
|
|
2
|
+
import { isSubsequenceMatch } from '../../utils/subsequence-filter.js';
|
|
3
|
+
import { filterModels } from '../model-service.js';
|
|
4
|
+
import { serializeFavorite } from './model-favorites.js';
|
|
5
|
+
export function mergeUnifiedModels(providerIds, catalogs, favorites) {
|
|
6
|
+
const catalogByKey = new Map();
|
|
7
|
+
for (const providerId of providerIds) {
|
|
8
|
+
for (const model of catalogs.get(providerId) ?? []) {
|
|
9
|
+
catalogByKey.set(serializeFavorite(model.provider, model.id), model);
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
const seen = new Set();
|
|
13
|
+
const merged = [];
|
|
14
|
+
for (const favorite of favorites) {
|
|
15
|
+
const key = serializeFavorite(favorite.provider, favorite.id);
|
|
16
|
+
if (seen.has(key))
|
|
17
|
+
continue;
|
|
18
|
+
seen.add(key);
|
|
19
|
+
merged.push(catalogByKey.get(key) ?? favorite);
|
|
20
|
+
}
|
|
21
|
+
for (const providerId of providerIds) {
|
|
22
|
+
for (const model of catalogs.get(providerId) ?? []) {
|
|
23
|
+
const key = serializeFavorite(model.provider, model.id);
|
|
24
|
+
if (seen.has(key))
|
|
25
|
+
continue;
|
|
26
|
+
seen.add(key);
|
|
27
|
+
merged.push(model);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return merged;
|
|
31
|
+
}
|
|
32
|
+
export function filterUnifiedModels(models, modelQuery, providerQuery) {
|
|
33
|
+
const providerNeedle = providerQuery?.trim();
|
|
34
|
+
const providerFiltered = providerNeedle
|
|
35
|
+
? models.filter((model) => {
|
|
36
|
+
const label = getProvider(model.provider)?.label ?? model.provider;
|
|
37
|
+
return isSubsequenceMatch(providerNeedle, model.provider) || isSubsequenceMatch(providerNeedle, label);
|
|
38
|
+
})
|
|
39
|
+
: models;
|
|
40
|
+
const trimmed = modelQuery.trim();
|
|
41
|
+
if (!trimmed)
|
|
42
|
+
return [...providerFiltered];
|
|
43
|
+
const modelMatches = new Set(filterModels([...providerFiltered], trimmed));
|
|
44
|
+
return providerFiltered.filter((model) => {
|
|
45
|
+
if (modelMatches.has(model))
|
|
46
|
+
return true;
|
|
47
|
+
const label = getProvider(model.provider)?.label ?? model.provider;
|
|
48
|
+
return (isSubsequenceMatch(trimmed, model.provider) ||
|
|
49
|
+
isSubsequenceMatch(trimmed, label) ||
|
|
50
|
+
isSubsequenceMatch(trimmed, `${model.provider}/${model.id}`) ||
|
|
51
|
+
isSubsequenceMatch(trimmed, `${label}/${model.id}`));
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=unified-model-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unified-model-catalog.js","sourceRoot":"","sources":["../../../source/services/models/unified-model-catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,4 +9,20 @@ export type ProviderFailureClassification = {
|
|
|
9
9
|
};
|
|
10
10
|
/** One sanitized, shared interpretation of an upstream failure. */
|
|
11
11
|
export declare function classifyProviderFailure(error: unknown): ProviderFailureClassification;
|
|
12
|
+
/**
|
|
13
|
+
* Cancellation classification is intentionally stricter at logging/UI
|
|
14
|
+
* boundaries than at retry policy boundaries. A provider error can mention
|
|
15
|
+
* "abort" while still being a real failure (for example, a failure that races
|
|
16
|
+
* a user stop), so those boundaries require an explicit abort marker as well
|
|
17
|
+
* as the shared typed classification.
|
|
18
|
+
*/
|
|
19
|
+
export declare function isClassifiedCancellation(error: unknown): boolean;
|
|
20
|
+
/**
|
|
21
|
+
* Returns true only when an error tree contains an explicit cancellation and
|
|
22
|
+
* no concrete provider or transport failure. `classifyProviderFailure` keeps
|
|
23
|
+
* its broad abort-like precedence for retry policy; this stricter predicate is
|
|
24
|
+
* for boundaries where hiding a real failure would be worse than showing an
|
|
25
|
+
* abort from the same race.
|
|
26
|
+
*/
|
|
27
|
+
export declare function hasExplicitCancellationMarker(error: unknown): boolean;
|
|
12
28
|
//# sourceMappingURL=provider-failure-classification.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-failure-classification.d.ts","sourceRoot":"","sources":["../../../source/services/retry/provider-failure-classification.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,GAAG,gBAAgB,GAAG,WAAW,GAAG,SAAS,CAAC;AAErH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,mBAAmB,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,mEAAmE;AACnE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,6BAA6B,CA8BrF"}
|
|
1
|
+
{"version":3,"file":"provider-failure-classification.d.ts","sourceRoot":"","sources":["../../../source/services/retry/provider-failure-classification.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,UAAU,GAAG,YAAY,GAAG,gBAAgB,GAAG,WAAW,GAAG,SAAS,CAAC;AAErH,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,mBAAmB,CAAC;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,mEAAmE;AACnE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,6BAA6B,CA8BrF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAEhE;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAGrE"}
|