@qduc/term2 0.11.1 → 0.13.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/README.md +12 -5
- package/dist/agent.d.ts +24 -24
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +107 -31
- package/dist/agent.js.map +1 -1
- package/dist/app.d.ts +3 -1
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +359 -131
- package/dist/app.js.map +1 -1
- package/dist/cli.js +124 -49
- package/dist/cli.js.map +1 -1
- package/dist/commands/auto-approve-command.d.ts.map +1 -1
- package/dist/commands/auto-approve-command.js +12 -4
- package/dist/commands/auto-approve-command.js.map +1 -1
- package/dist/commands/copy-command.d.ts +3 -1
- package/dist/commands/copy-command.d.ts.map +1 -1
- package/dist/commands/copy-command.js +36 -9
- package/dist/commands/copy-command.js.map +1 -1
- package/dist/commands/mode-commands.js.map +1 -1
- package/dist/commands/retry-tool-command.d.ts +13 -0
- package/dist/commands/retry-tool-command.d.ts.map +1 -0
- package/dist/commands/retry-tool-command.js +20 -0
- package/dist/commands/retry-tool-command.js.map +1 -0
- package/dist/commands/rewind-command.d.ts +37 -0
- package/dist/commands/rewind-command.d.ts.map +1 -0
- package/dist/commands/rewind-command.js +97 -0
- package/dist/commands/rewind-command.js.map +1 -0
- package/dist/commands/sandbox-command.d.ts.map +1 -1
- package/dist/commands/sandbox-command.js +6 -1
- package/dist/commands/sandbox-command.js.map +1 -1
- package/dist/components/InputBox.d.ts +17 -32
- package/dist/components/InputBox.d.ts.map +1 -1
- package/dist/components/InputBox.js +182 -579
- package/dist/components/InputBox.js.map +1 -1
- package/dist/components/input/ApplicationInputSurface.d.ts +42 -0
- package/dist/components/input/ApplicationInputSurface.d.ts.map +1 -0
- package/dist/components/input/ApplicationInputSurface.js +82 -0
- package/dist/components/input/ApplicationInputSurface.js.map +1 -0
- package/dist/components/input/CopyMenuSession.d.ts +16 -0
- package/dist/components/input/CopyMenuSession.d.ts.map +1 -0
- package/dist/components/input/CopyMenuSession.js +49 -0
- package/dist/components/input/CopyMenuSession.js.map +1 -0
- package/dist/components/input/FirstRunSetupPrompt.d.ts +9 -0
- package/dist/components/input/FirstRunSetupPrompt.d.ts.map +1 -0
- package/dist/components/input/FirstRunSetupPrompt.js +20 -0
- package/dist/components/input/FirstRunSetupPrompt.js.map +1 -0
- package/dist/components/input/MenuStackHost.d.ts +12 -0
- package/dist/components/input/MenuStackHost.d.ts.map +1 -0
- package/dist/components/input/MenuStackHost.js +13 -0
- package/dist/components/input/MenuStackHost.js.map +1 -0
- package/dist/components/input/MenuSurface.d.ts +13 -0
- package/dist/components/input/MenuSurface.d.ts.map +1 -0
- package/dist/components/input/MenuSurface.js +87 -0
- package/dist/components/input/MenuSurface.js.map +1 -0
- package/dist/components/input/ModelMenuSession.d.ts +19 -0
- package/dist/components/input/ModelMenuSession.d.ts.map +1 -0
- package/dist/components/input/ModelMenuSession.js +154 -0
- package/dist/components/input/ModelMenuSession.js.map +1 -0
- package/dist/components/input/PathMenuSession.d.ts +16 -0
- package/dist/components/input/PathMenuSession.d.ts.map +1 -0
- package/dist/components/input/PathMenuSession.js +68 -0
- package/dist/components/input/PathMenuSession.js.map +1 -0
- package/dist/components/input/PendingQueueList.d.ts +20 -0
- package/dist/components/input/PendingQueueList.d.ts.map +1 -0
- package/dist/components/input/PendingQueueList.js +26 -0
- package/dist/components/input/PendingQueueList.js.map +1 -0
- package/dist/components/input/ProviderMenuSession.d.ts +16 -0
- package/dist/components/input/ProviderMenuSession.d.ts.map +1 -0
- package/dist/components/input/ProviderMenuSession.js +99 -0
- package/dist/components/input/ProviderMenuSession.js.map +1 -0
- package/dist/components/input/RewindMenuSession.d.ts +14 -0
- package/dist/components/input/RewindMenuSession.d.ts.map +1 -0
- package/dist/components/input/RewindMenuSession.js +77 -0
- package/dist/components/input/RewindMenuSession.js.map +1 -0
- package/dist/components/input/SettingsMenuSession.d.ts +17 -0
- package/dist/components/input/SettingsMenuSession.d.ts.map +1 -0
- package/dist/components/input/SettingsMenuSession.js +136 -0
- package/dist/components/input/SettingsMenuSession.js.map +1 -0
- package/dist/components/input/SettingsValueMenuSession.d.ts +19 -0
- package/dist/components/input/SettingsValueMenuSession.d.ts.map +1 -0
- package/dist/components/input/SettingsValueMenuSession.js +113 -0
- package/dist/components/input/SettingsValueMenuSession.js.map +1 -0
- package/dist/components/input/SkillsMenuSession.d.ts +19 -0
- package/dist/components/input/SkillsMenuSession.d.ts.map +1 -0
- package/dist/components/input/SkillsMenuSession.js +58 -0
- package/dist/components/input/SkillsMenuSession.js.map +1 -0
- package/dist/components/input/SlashMenuSession.d.ts +25 -0
- package/dist/components/input/SlashMenuSession.d.ts.map +1 -0
- package/dist/components/input/SlashMenuSession.js +69 -0
- package/dist/components/input/SlashMenuSession.js.map +1 -0
- package/dist/components/input/determine-active-menu.d.ts +2 -0
- package/dist/components/input/determine-active-menu.d.ts.map +1 -1
- package/dist/components/input/determine-active-menu.js +12 -4
- package/dist/components/input/determine-active-menu.js.map +1 -1
- package/dist/components/input/insertions.d.ts +0 -13
- package/dist/components/input/insertions.d.ts.map +1 -1
- package/dist/components/input/insertions.js +0 -26
- package/dist/components/input/insertions.js.map +1 -1
- package/dist/components/input/menu-controller.d.ts +52 -0
- package/dist/components/input/menu-controller.d.ts.map +1 -0
- package/dist/components/input/menu-controller.js +690 -0
- package/dist/components/input/menu-controller.js.map +1 -0
- package/dist/components/input/menu-editor.d.ts +9 -0
- package/dist/components/input/menu-editor.d.ts.map +1 -0
- package/dist/components/input/menu-editor.js +45 -0
- package/dist/components/input/menu-editor.js.map +1 -0
- package/dist/components/input/menu-registry.d.ts +20 -0
- package/dist/components/input/menu-registry.d.ts.map +1 -0
- package/dist/components/input/menu-registry.js +27 -0
- package/dist/components/input/menu-registry.js.map +1 -0
- package/dist/components/input/menu-types.d.ts +327 -0
- package/dist/components/input/menu-types.d.ts.map +1 -0
- package/dist/components/input/menu-types.js +2 -0
- package/dist/components/input/menu-types.js.map +1 -0
- package/dist/components/input/settings-intent-host.d.ts +22 -0
- package/dist/components/input/settings-intent-host.d.ts.map +1 -0
- package/dist/components/input/settings-intent-host.js +69 -0
- package/dist/components/input/settings-intent-host.js.map +1 -0
- package/dist/components/input/triggers.d.ts +3 -0
- package/dist/components/input/triggers.d.ts.map +1 -1
- package/dist/components/input/triggers.js +258 -0
- package/dist/components/input/triggers.js.map +1 -1
- package/dist/components/layout/BackgroundTaskManager.d.ts +16 -0
- package/dist/components/layout/BackgroundTaskManager.d.ts.map +1 -0
- package/dist/components/layout/BackgroundTaskManager.js +254 -0
- package/dist/components/layout/BackgroundTaskManager.js.map +1 -0
- package/dist/components/layout/BackgroundTasksPanel.d.ts +3 -2
- package/dist/components/layout/BackgroundTasksPanel.d.ts.map +1 -1
- package/dist/components/layout/BackgroundTasksPanel.js +80 -34
- package/dist/components/layout/BackgroundTasksPanel.js.map +1 -1
- package/dist/components/layout/Banner.js.map +1 -1
- package/dist/components/layout/BottomArea.d.ts +39 -21
- package/dist/components/layout/BottomArea.d.ts.map +1 -1
- package/dist/components/layout/BottomArea.js +77 -48
- package/dist/components/layout/BottomArea.js.map +1 -1
- package/dist/components/layout/StatusBar.d.ts +3 -1
- package/dist/components/layout/StatusBar.d.ts.map +1 -1
- package/dist/components/layout/StatusBar.js +100 -66
- package/dist/components/layout/StatusBar.js.map +1 -1
- package/dist/components/menu/CopyMenu.d.ts +9 -0
- package/dist/components/menu/CopyMenu.d.ts.map +1 -0
- package/dist/components/menu/CopyMenu.js +7 -0
- package/dist/components/menu/CopyMenu.js.map +1 -0
- package/dist/components/menu/ModelSelectionMenu.d.ts +1 -0
- package/dist/components/menu/ModelSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/ModelSelectionMenu.js +23 -6
- package/dist/components/menu/ModelSelectionMenu.js.map +1 -1
- package/dist/components/menu/ProviderSelectionMenu.d.ts +1 -0
- package/dist/components/menu/ProviderSelectionMenu.d.ts.map +1 -1
- package/dist/components/menu/ProviderSelectionMenu.js +12 -4
- package/dist/components/menu/ProviderSelectionMenu.js.map +1 -1
- package/dist/components/menu/RewindMenu.d.ts +18 -0
- package/dist/components/menu/RewindMenu.d.ts.map +1 -0
- package/dist/components/menu/RewindMenu.js +59 -0
- package/dist/components/menu/RewindMenu.js.map +1 -0
- package/dist/components/message/ChatMessage.d.ts +2 -1
- package/dist/components/message/ChatMessage.d.ts.map +1 -1
- package/dist/components/message/ChatMessage.js +1 -1
- package/dist/components/message/ChatMessage.js.map +1 -1
- package/dist/components/message/CommandMessage.d.ts.map +1 -1
- package/dist/components/message/CommandMessage.js +142 -17
- package/dist/components/message/CommandMessage.js.map +1 -1
- package/dist/components/message/MemoryRenderer.d.ts.map +1 -1
- package/dist/components/message/MemoryRenderer.js +16 -10
- package/dist/components/message/MemoryRenderer.js.map +1 -1
- package/dist/components/message/MessageList.d.ts +20 -3
- package/dist/components/message/MessageList.d.ts.map +1 -1
- package/dist/components/message/MessageList.js +1 -1
- package/dist/components/message/MessageList.js.map +1 -1
- package/dist/components/message/SubagentActivityMessage.d.ts +5 -1
- package/dist/components/message/SubagentActivityMessage.d.ts.map +1 -1
- package/dist/components/message/SubagentActivityMessage.js +12 -4
- package/dist/components/message/SubagentActivityMessage.js.map +1 -1
- package/dist/components/message/command-message-helpers.d.ts +37 -0
- package/dist/components/message/command-message-helpers.d.ts.map +1 -1
- package/dist/components/message/command-message-helpers.js +49 -8
- package/dist/components/message/command-message-helpers.js.map +1 -1
- package/dist/components/prompt/ApprovalPrompt.d.ts +1 -0
- package/dist/components/prompt/ApprovalPrompt.d.ts.map +1 -1
- package/dist/components/prompt/ApprovalPrompt.js +135 -83
- package/dist/components/prompt/ApprovalPrompt.js.map +1 -1
- package/dist/context/InputContext.d.ts +15 -8
- package/dist/context/InputContext.d.ts.map +1 -1
- package/dist/context/InputContext.js +94 -15
- package/dist/context/InputContext.js.map +1 -1
- package/dist/contracts/application-stream.d.ts +44 -0
- package/dist/contracts/application-stream.d.ts.map +1 -0
- package/dist/contracts/application-stream.js +2 -0
- package/dist/contracts/application-stream.js.map +1 -0
- package/dist/contracts/continuation-handle.d.ts +18 -0
- package/dist/contracts/continuation-handle.d.ts.map +1 -0
- package/dist/contracts/continuation-handle.js +22 -0
- package/dist/contracts/continuation-handle.js.map +1 -0
- package/dist/contracts/conversation-items.d.ts +47 -0
- package/dist/contracts/conversation-items.d.ts.map +1 -0
- package/dist/contracts/conversation-items.js +2 -0
- package/dist/contracts/conversation-items.js.map +1 -0
- package/dist/contracts/conversation.d.ts +44 -4
- package/dist/contracts/conversation.d.ts.map +1 -1
- package/dist/contracts/conversation.js +9 -0
- package/dist/contracts/conversation.js.map +1 -1
- package/dist/contracts/model-errors.d.ts +10 -0
- package/dist/contracts/model-errors.d.ts.map +1 -0
- package/dist/contracts/model-errors.js +15 -0
- package/dist/contracts/model-errors.js.map +1 -0
- package/dist/contracts/model-types.d.ts +16 -0
- package/dist/contracts/model-types.d.ts.map +1 -0
- package/dist/contracts/model-types.js +2 -0
- package/dist/contracts/model-types.js.map +1 -0
- package/dist/contracts/patch.d.ts +17 -0
- package/dist/contracts/patch.d.ts.map +1 -0
- package/dist/contracts/patch.js +2 -0
- package/dist/contracts/patch.js.map +1 -0
- package/dist/contracts/provider-input.d.ts +34 -0
- package/dist/contracts/provider-input.d.ts.map +1 -0
- package/dist/contracts/provider-input.js +2 -0
- package/dist/contracts/provider-input.js.map +1 -0
- package/dist/contracts/streamed-model-turn.d.ts +230 -0
- package/dist/contracts/streamed-model-turn.d.ts.map +1 -0
- package/dist/contracts/streamed-model-turn.js +2 -0
- package/dist/contracts/streamed-model-turn.js.map +1 -0
- package/dist/env-setup.js +1 -1
- package/dist/hooks/conversation-ui-reducer.d.ts +28 -4
- package/dist/hooks/conversation-ui-reducer.d.ts.map +1 -1
- package/dist/hooks/conversation-ui-reducer.js +46 -4
- package/dist/hooks/conversation-ui-reducer.js.map +1 -1
- package/dist/hooks/handoff-flow-reducer.d.ts +1 -36
- package/dist/hooks/handoff-flow-reducer.d.ts.map +1 -1
- package/dist/hooks/handoff-flow-reducer.js +3 -57
- package/dist/hooks/handoff-flow-reducer.js.map +1 -1
- package/dist/hooks/settings-completion-config.d.ts +1 -0
- package/dist/hooks/settings-completion-config.d.ts.map +1 -1
- package/dist/hooks/settings-completion-config.js +32 -6
- package/dist/hooks/settings-completion-config.js.map +1 -1
- package/dist/hooks/use-app-commands.d.ts +15 -11
- package/dist/hooks/use-app-commands.d.ts.map +1 -1
- package/dist/hooks/use-app-commands.js +91 -63
- package/dist/hooks/use-app-commands.js.map +1 -1
- package/dist/hooks/use-app-keyboard-shortcuts.d.ts +24 -1
- package/dist/hooks/use-app-keyboard-shortcuts.d.ts.map +1 -1
- package/dist/hooks/use-app-keyboard-shortcuts.js +145 -6
- package/dist/hooks/use-app-keyboard-shortcuts.js.map +1 -1
- package/dist/hooks/use-conversation.d.ts +34 -13
- package/dist/hooks/use-conversation.d.ts.map +1 -1
- package/dist/hooks/use-conversation.js +96 -20
- package/dist/hooks/use-conversation.js.map +1 -1
- package/dist/hooks/use-debounced-value.d.ts +13 -0
- package/dist/hooks/use-debounced-value.d.ts.map +1 -0
- package/dist/hooks/use-debounced-value.js +27 -0
- package/dist/hooks/use-debounced-value.js.map +1 -0
- package/dist/hooks/use-escape-key.d.ts +4 -32
- package/dist/hooks/use-escape-key.d.ts.map +1 -1
- package/dist/hooks/use-escape-key.js +27 -68
- package/dist/hooks/use-escape-key.js.map +1 -1
- package/dist/hooks/use-first-run-setup.d.ts +24 -0
- package/dist/hooks/use-first-run-setup.d.ts.map +1 -0
- package/dist/hooks/use-first-run-setup.js +114 -0
- package/dist/hooks/use-first-run-setup.js.map +1 -0
- package/dist/hooks/use-handoff-flow.d.ts +6 -6
- package/dist/hooks/use-handoff-flow.d.ts.map +1 -1
- package/dist/hooks/use-handoff-flow.js +110 -118
- package/dist/hooks/use-handoff-flow.js.map +1 -1
- package/dist/hooks/use-model-selection.d.ts +1 -0
- package/dist/hooks/use-model-selection.d.ts.map +1 -1
- package/dist/hooks/use-model-selection.js +93 -59
- package/dist/hooks/use-model-selection.js.map +1 -1
- package/dist/hooks/use-path-completion.d.ts.map +1 -1
- package/dist/hooks/use-path-completion.js +20 -11
- package/dist/hooks/use-path-completion.js.map +1 -1
- package/dist/hooks/use-provider-selection.d.ts +5 -1
- package/dist/hooks/use-provider-selection.d.ts.map +1 -1
- package/dist/hooks/use-provider-selection.js +55 -27
- package/dist/hooks/use-provider-selection.js.map +1 -1
- package/dist/hooks/use-rewind-selection.d.ts +30 -0
- package/dist/hooks/use-rewind-selection.d.ts.map +1 -0
- package/dist/hooks/{use-undo-selection.js → use-rewind-selection.js} +37 -28
- package/dist/hooks/use-rewind-selection.js.map +1 -0
- package/dist/hooks/use-runtime-settings.d.ts.map +1 -1
- package/dist/hooks/use-runtime-settings.js +4 -3
- package/dist/hooks/use-runtime-settings.js.map +1 -1
- package/dist/hooks/use-selection.d.ts +1 -0
- package/dist/hooks/use-selection.d.ts.map +1 -1
- package/dist/hooks/use-selection.js +1 -1
- package/dist/hooks/use-selection.js.map +1 -1
- package/dist/hooks/use-setting.d.ts +3 -2
- package/dist/hooks/use-setting.d.ts.map +1 -1
- package/dist/hooks/use-setting.js +1 -1
- package/dist/hooks/use-setting.js.map +1 -1
- package/dist/hooks/use-settings-completion.d.ts +1 -0
- package/dist/hooks/use-settings-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-completion.js +22 -15
- package/dist/hooks/use-settings-completion.js.map +1 -1
- package/dist/hooks/use-settings-value-completion.d.ts.map +1 -1
- package/dist/hooks/use-settings-value-completion.js +40 -28
- package/dist/hooks/use-settings-value-completion.js.map +1 -1
- package/dist/hooks/use-shell-mode.d.ts +3 -13
- package/dist/hooks/use-shell-mode.d.ts.map +1 -1
- package/dist/hooks/use-shell-mode.js +14 -53
- package/dist/hooks/use-shell-mode.js.map +1 -1
- package/dist/hooks/use-skill-selection.d.ts.map +1 -1
- package/dist/hooks/use-skill-selection.js +17 -11
- package/dist/hooks/use-skill-selection.js.map +1 -1
- package/dist/hooks/use-slash-commands.d.ts +0 -1
- package/dist/hooks/use-slash-commands.d.ts.map +1 -1
- package/dist/hooks/use-slash-commands.js +11 -18
- package/dist/hooks/use-slash-commands.js.map +1 -1
- package/dist/hooks/use-terminal-focus-notifier.js.map +1 -1
- package/dist/lib/agent-chat-service.d.ts +12 -8
- package/dist/lib/agent-chat-service.d.ts.map +1 -1
- package/dist/lib/agent-chat-service.js +88 -49
- package/dist/lib/agent-chat-service.js.map +1 -1
- package/dist/lib/agent-client.d.ts +98 -17
- package/dist/lib/agent-client.d.ts.map +1 -1
- package/dist/lib/agent-client.js +427 -37
- package/dist/lib/agent-client.js.map +1 -1
- package/dist/lib/agent-configuration.d.ts +36 -15
- package/dist/lib/agent-configuration.d.ts.map +1 -1
- package/dist/lib/agent-configuration.js +107 -9
- package/dist/lib/agent-configuration.js.map +1 -1
- package/dist/lib/agent-factory.d.ts +25 -4
- package/dist/lib/agent-factory.d.ts.map +1 -1
- package/dist/lib/agent-factory.js +143 -106
- package/dist/lib/agent-factory.js.map +1 -1
- package/dist/lib/chained-input-filter.d.ts +7 -1
- package/dist/lib/chained-input-filter.d.ts.map +1 -1
- package/dist/lib/chained-input-filter.js +46 -62
- package/dist/lib/chained-input-filter.js.map +1 -1
- package/dist/lib/continuation-projection-mode.d.ts +3 -0
- package/dist/lib/continuation-projection-mode.d.ts.map +1 -0
- package/dist/lib/continuation-projection-mode.js +2 -0
- package/dist/lib/continuation-projection-mode.js.map +1 -0
- package/dist/lib/editor-impl.d.ts +1 -1
- package/dist/lib/editor-impl.d.ts.map +1 -1
- package/dist/lib/editor-impl.js +1 -1
- package/dist/lib/editor-impl.js.map +1 -1
- package/dist/lib/harness-invariant-error.d.ts +22 -0
- package/dist/lib/harness-invariant-error.d.ts.map +1 -0
- package/dist/lib/harness-invariant-error.js +30 -0
- package/dist/lib/harness-invariant-error.js.map +1 -0
- package/dist/lib/input-owner.d.ts +67 -0
- package/dist/lib/input-owner.d.ts.map +1 -0
- package/dist/lib/input-owner.js +39 -0
- package/dist/lib/input-owner.js.map +1 -0
- package/dist/lib/openai-strict-tool-schema.d.ts +7 -4
- package/dist/lib/openai-strict-tool-schema.d.ts.map +1 -1
- package/dist/lib/openai-strict-tool-schema.js +8 -0
- package/dist/lib/openai-strict-tool-schema.js.map +1 -1
- package/dist/lib/subagent-bridge.d.ts +38 -4
- package/dist/lib/subagent-bridge.d.ts.map +1 -1
- package/dist/lib/subagent-bridge.js +96 -21
- package/dist/lib/subagent-bridge.js.map +1 -1
- package/dist/lib/tool-invoke.d.ts +18 -10
- package/dist/lib/tool-invoke.d.ts.map +1 -1
- package/dist/lib/tool-invoke.js +92 -44
- package/dist/lib/tool-invoke.js.map +1 -1
- package/dist/non-interactive.d.ts +14 -4
- package/dist/non-interactive.d.ts.map +1 -1
- package/dist/non-interactive.js +91 -84
- package/dist/non-interactive.js.map +1 -1
- package/dist/prompts/async-subagent-delegation.d.ts +1 -4
- package/dist/prompts/async-subagent-delegation.d.ts.map +1 -1
- package/dist/prompts/async-subagent-delegation.js +9 -47
- package/dist/prompts/async-subagent-delegation.js.map +1 -1
- package/dist/prompts/async-subagent-delegation.ts +9 -58
- package/dist/prompts/background-shell.d.ts +3 -0
- package/dist/prompts/background-shell.d.ts.map +1 -0
- package/dist/prompts/background-shell.js +11 -0
- package/dist/prompts/background-shell.js.map +1 -0
- package/dist/prompts/background-shell.ts +10 -0
- package/dist/prompts/memory.md +1 -1
- package/dist/prompts/orchestrator-prompt.test.ts +22 -0
- package/dist/prompts/orchestrator.md +7 -5
- package/dist/prompts/plan-mode-info.md +1 -1
- 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 +9 -7
- package/dist/prompts/prompt-constructor.js.map +1 -1
- package/dist/prompts/prompt-constructor.test.ts +25 -9
- package/dist/prompts/prompt-constructor.ts +13 -7
- package/dist/prompts/shell-auto-approval.d.ts +2 -2
- package/dist/prompts/shell-auto-approval.d.ts.map +1 -1
- package/dist/prompts/shell-auto-approval.js +20 -5
- package/dist/prompts/shell-auto-approval.js.map +1 -1
- package/dist/prompts/shell-auto-approval.ts +20 -5
- package/dist/prompts/steering-notice.d.ts +16 -0
- package/dist/prompts/steering-notice.d.ts.map +1 -0
- package/dist/prompts/steering-notice.js +24 -0
- package/dist/prompts/steering-notice.js.map +1 -0
- package/dist/prompts/steering-notice.ts +24 -0
- package/dist/prompts/subagent-delegation.d.ts +6 -5
- package/dist/prompts/subagent-delegation.d.ts.map +1 -1
- package/dist/prompts/subagent-delegation.js +36 -13
- package/dist/prompts/subagent-delegation.js.map +1 -1
- package/dist/prompts/subagent-delegation.test.ts +9 -2
- package/dist/prompts/subagent-delegation.ts +54 -14
- package/dist/prompts/subagents/explorer.md +24 -14
- package/dist/prompts/subagents/worker-prompt.test.ts +2 -2
- package/dist/prompts/subagents/worker.md +1 -1
- package/dist/prompts/worktree-hygiene.md +1 -0
- package/dist/providers/ai-sdk-anthropic.provider.d.ts +3 -3
- package/dist/providers/ai-sdk-anthropic.provider.d.ts.map +1 -1
- package/dist/providers/ai-sdk-anthropic.provider.js +8 -4
- package/dist/providers/ai-sdk-anthropic.provider.js.map +1 -1
- package/dist/providers/ai-sdk-google.provider.d.ts +5 -4
- package/dist/providers/ai-sdk-google.provider.d.ts.map +1 -1
- package/dist/providers/ai-sdk-google.provider.js +23 -3
- package/dist/providers/ai-sdk-google.provider.js.map +1 -1
- package/dist/providers/ai-sdk-message-normalizer.d.ts +3 -7
- package/dist/providers/ai-sdk-message-normalizer.d.ts.map +1 -1
- package/dist/providers/ai-sdk-message-normalizer.js +27 -11
- package/dist/providers/ai-sdk-message-normalizer.js.map +1 -1
- package/dist/providers/ai-sdk-openrouter.provider.d.ts +5 -4
- package/dist/providers/ai-sdk-openrouter.provider.d.ts.map +1 -1
- package/dist/providers/ai-sdk-openrouter.provider.js +25 -3
- package/dist/providers/ai-sdk-openrouter.provider.js.map +1 -1
- package/dist/providers/ai-sdk-provider-settings.d.ts +10 -0
- package/dist/providers/ai-sdk-provider-settings.d.ts.map +1 -0
- package/dist/providers/ai-sdk-provider-settings.js +37 -0
- package/dist/providers/ai-sdk-provider-settings.js.map +1 -0
- package/dist/providers/ai-sdk-streamed-model.d.ts +5 -0
- package/dist/providers/ai-sdk-streamed-model.d.ts.map +1 -0
- package/dist/providers/ai-sdk-streamed-model.js +338 -0
- package/dist/providers/ai-sdk-streamed-model.js.map +1 -0
- package/dist/providers/codex-auth.d.ts +6 -0
- package/dist/providers/codex-auth.d.ts.map +1 -0
- package/dist/providers/codex-auth.js +35 -0
- package/dist/providers/codex-auth.js.map +1 -0
- package/dist/providers/codex-responses-model.d.ts +39 -12
- package/dist/providers/codex-responses-model.d.ts.map +1 -1
- package/dist/providers/codex-responses-model.js +669 -159
- package/dist/providers/codex-responses-model.js.map +1 -1
- package/dist/providers/codex-turn-converter.d.ts +12 -0
- package/dist/providers/codex-turn-converter.d.ts.map +1 -0
- package/dist/providers/codex-turn-converter.js +168 -0
- package/dist/providers/codex-turn-converter.js.map +1 -0
- package/dist/providers/codex.provider.d.ts +23 -1
- package/dist/providers/codex.provider.d.ts.map +1 -1
- package/dist/providers/codex.provider.js +60 -55
- package/dist/providers/codex.provider.js.map +1 -1
- package/dist/providers/common/openai-compatible-message-contract.d.ts +8 -0
- package/dist/providers/common/openai-compatible-message-contract.d.ts.map +1 -0
- package/dist/providers/common/openai-compatible-message-contract.js +23 -0
- package/dist/providers/common/openai-compatible-message-contract.js.map +1 -0
- package/dist/providers/common/openai-compatible-messages.d.ts +0 -4
- package/dist/providers/common/openai-compatible-messages.d.ts.map +1 -1
- package/dist/providers/common/openai-compatible-messages.js +0 -288
- package/dist/providers/common/openai-compatible-messages.js.map +1 -1
- package/dist/providers/fetch/composer.d.ts.map +1 -1
- package/dist/providers/fetch/composer.js +1 -0
- package/dist/providers/fetch/composer.js.map +1 -1
- package/dist/providers/model-catalog/catalog.d.ts +64 -0
- package/dist/providers/model-catalog/catalog.d.ts.map +1 -0
- package/dist/providers/model-catalog/catalog.generated.d.ts +3010 -0
- package/dist/providers/model-catalog/catalog.generated.d.ts.map +1 -0
- package/dist/providers/model-catalog/catalog.generated.js +3004 -0
- package/dist/providers/model-catalog/catalog.generated.js.map +1 -0
- package/dist/providers/model-catalog/catalog.js +126 -0
- package/dist/providers/model-catalog/catalog.js.map +1 -0
- package/dist/providers/model-catalog/generate-catalog.d.ts +42 -0
- package/dist/providers/model-catalog/generate-catalog.d.ts.map +1 -0
- package/dist/providers/model-catalog/generate-catalog.js +96 -0
- package/dist/providers/model-catalog/generate-catalog.js.map +1 -0
- package/dist/providers/openai-chained-input-compatibility.d.ts +36 -0
- package/dist/providers/openai-chained-input-compatibility.d.ts.map +1 -0
- package/dist/providers/openai-chained-input-compatibility.js +60 -0
- package/dist/providers/openai-chained-input-compatibility.js.map +1 -0
- package/dist/providers/openai-chat-completions-model.d.ts +13 -0
- package/dist/providers/openai-chat-completions-model.d.ts.map +1 -0
- package/dist/providers/openai-chat-completions-model.js +441 -0
- package/dist/providers/openai-chat-completions-model.js.map +1 -0
- package/dist/providers/openai-compatible-lazy.d.ts +1 -1
- package/dist/providers/openai-compatible-lazy.d.ts.map +1 -1
- package/dist/providers/openai-compatible-lazy.js +25 -36
- package/dist/providers/openai-compatible-lazy.js.map +1 -1
- package/dist/providers/openai-compatible-middleware.d.ts +4 -1
- package/dist/providers/openai-compatible-middleware.d.ts.map +1 -1
- package/dist/providers/openai-compatible-middleware.js +16 -27
- package/dist/providers/openai-compatible-middleware.js.map +1 -1
- package/dist/providers/openai-compatible-response-normalizer.d.ts +12 -2
- package/dist/providers/openai-compatible-response-normalizer.d.ts.map +1 -1
- package/dist/providers/openai-compatible-response-normalizer.js +18 -18
- package/dist/providers/openai-compatible-response-normalizer.js.map +1 -1
- package/dist/providers/openai-compatible.provider.d.ts +8 -10
- package/dist/providers/openai-compatible.provider.d.ts.map +1 -1
- package/dist/providers/openai-compatible.provider.js +89 -78
- package/dist/providers/openai-compatible.provider.js.map +1 -1
- package/dist/providers/openai-request-prefix-binding.d.ts +28 -0
- package/dist/providers/openai-request-prefix-binding.d.ts.map +1 -0
- package/dist/providers/openai-request-prefix-binding.js +78 -0
- package/dist/providers/openai-request-prefix-binding.js.map +1 -0
- package/dist/providers/openai-responses-model.d.ts +43 -0
- package/dist/providers/openai-responses-model.d.ts.map +1 -0
- package/dist/providers/openai-responses-model.js +564 -0
- package/dist/providers/openai-responses-model.js.map +1 -0
- package/dist/providers/openai.provider.d.ts +11 -8
- package/dist/providers/openai.provider.d.ts.map +1 -1
- package/dist/providers/openai.provider.js +43 -91
- package/dist/providers/openai.provider.js.map +1 -1
- package/dist/providers/opencode-routing.d.ts +1 -1
- package/dist/providers/opencode-routing.d.ts.map +1 -1
- package/dist/providers/opencode-routing.js +4 -2
- package/dist/providers/opencode-routing.js.map +1 -1
- package/dist/providers/opencode-session.d.ts.map +1 -1
- package/dist/providers/opencode-session.js +28 -3
- package/dist/providers/opencode-session.js.map +1 -1
- package/dist/providers/openrouter.provider.d.ts.map +1 -1
- package/dist/providers/openrouter.provider.js +33 -33
- package/dist/providers/openrouter.provider.js.map +1 -1
- package/dist/providers/provider-request-capture.d.ts +35 -0
- package/dist/providers/provider-request-capture.d.ts.map +1 -0
- package/dist/providers/provider-request-capture.js +22 -0
- package/dist/providers/provider-request-capture.js.map +1 -0
- package/dist/providers/provider-service.d.ts +10 -7
- package/dist/providers/provider-service.d.ts.map +1 -1
- package/dist/providers/provider-service.js +33 -28
- package/dist/providers/provider-service.js.map +1 -1
- package/dist/providers/registry.d.ts +14 -9
- package/dist/providers/registry.d.ts.map +1 -1
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/retrying-model.d.ts +8 -6
- package/dist/providers/retrying-model.d.ts.map +1 -1
- package/dist/providers/retrying-model.js +7 -20
- package/dist/providers/retrying-model.js.map +1 -1
- package/dist/providers/web-search/exa.provider.js.map +1 -1
- package/dist/providers/web-search/registry.js.map +1 -1
- package/dist/providers/web-search/tavily.provider.js.map +1 -1
- package/dist/providers/websocket-receive-watchdog.d.ts.map +1 -1
- package/dist/providers/websocket-receive-watchdog.js +9 -1
- package/dist/providers/websocket-receive-watchdog.js.map +1 -1
- package/dist/scripts/eval-auto-approval/runner.js +2 -0
- package/dist/scripts/eval-auto-approval/runner.js.map +1 -1
- package/dist/services/agent-runtime/application-run-loop.d.ts +205 -0
- package/dist/services/agent-runtime/application-run-loop.d.ts.map +1 -0
- package/dist/services/agent-runtime/application-run-loop.js +1258 -0
- package/dist/services/agent-runtime/application-run-loop.js.map +1 -0
- package/dist/services/agent-runtime/compose-agent-runtime.d.ts +3 -0
- package/dist/services/agent-runtime/compose-agent-runtime.d.ts.map +1 -1
- package/dist/services/agent-runtime/compose-agent-runtime.js +4 -0
- package/dist/services/agent-runtime/compose-agent-runtime.js.map +1 -1
- package/dist/services/agent-runtime/generation-guard.d.ts +69 -0
- package/dist/services/agent-runtime/generation-guard.d.ts.map +1 -0
- package/dist/services/agent-runtime/generation-guard.js +270 -0
- package/dist/services/agent-runtime/generation-guard.js.map +1 -0
- package/dist/services/agent-runtime/model-resolver.d.ts.map +1 -1
- package/dist/services/agent-runtime/model-resolver.js +7 -6
- package/dist/services/agent-runtime/model-resolver.js.map +1 -1
- package/dist/services/agent-runtime/scope-resolver.d.ts.map +1 -1
- package/dist/services/agent-runtime/scope-resolver.js +2 -1
- package/dist/services/agent-runtime/scope-resolver.js.map +1 -1
- package/dist/services/agent-runtime/structured-output.d.ts.map +1 -1
- package/dist/services/agent-runtime/structured-output.js +1 -21
- package/dist/services/agent-runtime/structured-output.js.map +1 -1
- package/dist/services/agent-runtime/tool-invocation-context.d.ts +73 -0
- package/dist/services/agent-runtime/tool-invocation-context.d.ts.map +1 -0
- package/dist/services/agent-runtime/tool-invocation-context.js +66 -0
- package/dist/services/agent-runtime/tool-invocation-context.js.map +1 -0
- package/dist/services/agent-stream.d.ts +41 -2
- package/dist/services/agent-stream.d.ts.map +1 -1
- package/dist/services/agent-stream.js +47 -1
- package/dist/services/agent-stream.js.map +1 -1
- package/dist/services/approval/approval-decision-executor.d.ts +42 -0
- package/dist/services/approval/approval-decision-executor.d.ts.map +1 -0
- package/dist/services/approval/approval-decision-executor.js +210 -0
- package/dist/services/approval/approval-decision-executor.js.map +1 -0
- package/dist/services/approval/approval-decision-policy.d.ts.map +1 -1
- package/dist/services/approval/approval-decision-policy.js +0 -2
- package/dist/services/approval/approval-decision-policy.js.map +1 -1
- package/dist/services/approval/approval-flow-coordinator.d.ts +25 -8
- package/dist/services/approval/approval-flow-coordinator.d.ts.map +1 -1
- package/dist/services/approval/approval-flow-coordinator.js +34 -167
- package/dist/services/approval/approval-flow-coordinator.js.map +1 -1
- package/dist/services/approval/approval-replay.d.ts +52 -0
- package/dist/services/approval/approval-replay.d.ts.map +1 -0
- package/dist/services/approval/approval-replay.js +68 -0
- package/dist/services/approval/approval-replay.js.map +1 -0
- package/dist/services/approval/approval-state.d.ts +3 -6
- package/dist/services/approval/approval-state.d.ts.map +1 -1
- package/dist/services/approval/approval-state.js +0 -10
- package/dist/services/approval/approval-state.js.map +1 -1
- package/dist/services/approval/background-subagent-approval-controller.d.ts +25 -0
- package/dist/services/approval/background-subagent-approval-controller.d.ts.map +1 -0
- package/dist/services/approval/background-subagent-approval-controller.js +65 -0
- package/dist/services/approval/background-subagent-approval-controller.js.map +1 -0
- package/dist/services/approval/background-subagent-approval-queue.d.ts +137 -0
- package/dist/services/approval/background-subagent-approval-queue.d.ts.map +1 -0
- package/dist/services/approval/background-subagent-approval-queue.js +200 -0
- package/dist/services/approval/background-subagent-approval-queue.js.map +1 -0
- package/dist/services/approval/non-interactive-approval-policy.d.ts +33 -0
- package/dist/services/approval/non-interactive-approval-policy.d.ts.map +1 -0
- package/dist/services/approval/non-interactive-approval-policy.js +85 -0
- package/dist/services/approval/non-interactive-approval-policy.js.map +1 -0
- package/dist/services/approval/session-read-access.d.ts +10 -0
- package/dist/services/approval/session-read-access.d.ts.map +1 -1
- package/dist/services/approval/session-read-access.js +14 -1
- package/dist/services/approval/session-read-access.js.map +1 -1
- package/dist/services/approval/session-read-grant-target.d.ts +7 -0
- package/dist/services/approval/session-read-grant-target.d.ts.map +1 -0
- package/dist/services/approval/session-read-grant-target.js +36 -0
- package/dist/services/approval/session-read-grant-target.js.map +1 -0
- package/dist/services/approval/shell-auto-approval-evaluator.d.ts +11 -3
- package/dist/services/approval/shell-auto-approval-evaluator.d.ts.map +1 -1
- package/dist/services/approval/shell-auto-approval-evaluator.js +140 -46
- package/dist/services/approval/shell-auto-approval-evaluator.js.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.d.ts +14 -1
- package/dist/services/approval/shell-auto-approval-resolver.d.ts.map +1 -1
- package/dist/services/approval/shell-auto-approval-resolver.js +83 -7
- package/dist/services/approval/shell-auto-approval-resolver.js.map +1 -1
- package/dist/services/approval/shell-sandbox-approval.d.ts +22 -1
- package/dist/services/approval/shell-sandbox-approval.d.ts.map +1 -1
- package/dist/services/approval/shell-sandbox-approval.js +31 -4
- package/dist/services/approval/shell-sandbox-approval.js.map +1 -1
- package/dist/services/approval/tool-approval-batch-coordinator.d.ts +9 -0
- package/dist/services/approval/tool-approval-batch-coordinator.d.ts.map +1 -1
- package/dist/services/approval/tool-approval-batch-coordinator.js +22 -5
- package/dist/services/approval/tool-approval-batch-coordinator.js.map +1 -1
- package/dist/services/approval/tool-owner.d.ts +5 -2
- package/dist/services/approval/tool-owner.d.ts.map +1 -1
- package/dist/services/approval/tool-owner.js +0 -56
- package/dist/services/approval/tool-owner.js.map +1 -1
- package/dist/services/approval/tool-ownership-registry.d.ts +25 -0
- package/dist/services/approval/tool-ownership-registry.d.ts.map +1 -0
- package/dist/services/approval/tool-ownership-registry.js +63 -0
- package/dist/services/approval/tool-ownership-registry.js.map +1 -0
- package/dist/services/command-message-streaming.d.ts +8 -4
- package/dist/services/command-message-streaming.d.ts.map +1 -1
- package/dist/services/command-message-streaming.js +13 -52
- package/dist/services/command-message-streaming.js.map +1 -1
- package/dist/services/conversation/conversation-adapter-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-adapter-factory.js +1 -0
- package/dist/services/conversation/conversation-adapter-factory.js.map +1 -1
- package/dist/services/conversation/conversation-adapter.d.ts +112 -13
- package/dist/services/conversation/conversation-adapter.d.ts.map +1 -1
- package/dist/services/conversation/conversation-adapter.js +270 -47
- package/dist/services/conversation/conversation-adapter.js.map +1 -1
- package/dist/services/conversation/conversation-admission-workflow.d.ts +69 -0
- package/dist/services/conversation/conversation-admission-workflow.d.ts.map +1 -0
- package/dist/services/conversation/conversation-admission-workflow.js +112 -0
- package/dist/services/conversation/conversation-admission-workflow.js.map +1 -0
- package/dist/services/conversation/conversation-decoder.d.ts +14 -0
- package/dist/services/conversation/conversation-decoder.d.ts.map +1 -0
- package/dist/services/conversation/conversation-decoder.js +155 -0
- package/dist/services/conversation/conversation-decoder.js.map +1 -0
- package/dist/services/conversation/conversation-events.d.ts +80 -26
- package/dist/services/conversation/conversation-events.d.ts.map +1 -1
- package/dist/services/conversation/conversation-history-repair.d.ts.map +1 -1
- package/dist/services/conversation/conversation-history-repair.js +34 -37
- package/dist/services/conversation/conversation-history-repair.js.map +1 -1
- package/dist/services/conversation/conversation-message-projection.d.ts +27 -0
- package/dist/services/conversation/conversation-message-projection.d.ts.map +1 -0
- package/dist/services/conversation/conversation-message-projection.js +59 -0
- package/dist/services/conversation/conversation-message-projection.js.map +1 -0
- package/dist/services/conversation/conversation-orchestrator.d.ts +25 -14
- package/dist/services/conversation/conversation-orchestrator.d.ts.map +1 -1
- package/dist/services/conversation/conversation-orchestrator.js +471 -160
- package/dist/services/conversation/conversation-orchestrator.js.map +1 -1
- package/dist/services/conversation/conversation-orchestrator.types.d.ts +16 -11
- package/dist/services/conversation/conversation-orchestrator.types.d.ts.map +1 -1
- package/dist/services/conversation/conversation-persistence-types.d.ts +15 -38
- package/dist/services/conversation/conversation-persistence-types.d.ts.map +1 -1
- package/dist/services/conversation/conversation-persistence.d.ts +3 -10
- package/dist/services/conversation/conversation-persistence.d.ts.map +1 -1
- package/dist/services/conversation/conversation-persistence.js +66 -15
- package/dist/services/conversation/conversation-persistence.js.map +1 -1
- package/dist/services/conversation/conversation-replay.d.ts +7 -5
- package/dist/services/conversation/conversation-replay.d.ts.map +1 -1
- package/dist/services/conversation/conversation-replay.js +172 -66
- package/dist/services/conversation/conversation-replay.js.map +1 -1
- package/dist/services/conversation/conversation-result-builder.d.ts +16 -2
- package/dist/services/conversation/conversation-result-builder.d.ts.map +1 -1
- package/dist/services/conversation/conversation-result-builder.js +63 -15
- package/dist/services/conversation/conversation-result-builder.js.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.d.ts +18 -0
- package/dist/services/conversation/conversation-runtime-factory.d.ts.map +1 -1
- package/dist/services/conversation/conversation-runtime-factory.js.map +1 -1
- package/dist/services/conversation/conversation-service.d.ts +65 -12
- package/dist/services/conversation/conversation-service.d.ts.map +1 -1
- package/dist/services/conversation/conversation-service.js +129 -16
- package/dist/services/conversation/conversation-service.js.map +1 -1
- package/dist/services/conversation/conversation-state-projector.d.ts +3 -3
- package/dist/services/conversation/conversation-state-projector.d.ts.map +1 -1
- package/dist/services/conversation/conversation-state-projector.js +18 -0
- package/dist/services/conversation/conversation-state-projector.js.map +1 -1
- package/dist/services/conversation/conversation-store.d.ts +78 -12
- package/dist/services/conversation/conversation-store.d.ts.map +1 -1
- package/dist/services/conversation/conversation-store.js +228 -119
- package/dist/services/conversation/conversation-store.js.map +1 -1
- package/dist/services/conversation/conversation-turn-items.d.ts +8 -2
- package/dist/services/conversation/conversation-turn-items.d.ts.map +1 -1
- package/dist/services/conversation/conversation-turn-items.js +96 -275
- package/dist/services/conversation/conversation-turn-items.js.map +1 -1
- package/dist/services/conversation/journal-to-ledger.d.ts.map +1 -1
- package/dist/services/conversation/journal-to-ledger.js +4 -24
- package/dist/services/conversation/journal-to-ledger.js.map +1 -1
- package/dist/services/conversation/run-item-normalizer.d.ts +5 -0
- package/dist/services/conversation/run-item-normalizer.d.ts.map +1 -0
- package/dist/services/conversation/run-item-normalizer.js +245 -0
- package/dist/services/conversation/run-item-normalizer.js.map +1 -0
- package/dist/services/conversation/user-turn-item.d.ts +14 -0
- package/dist/services/conversation/user-turn-item.d.ts.map +1 -0
- package/dist/services/conversation/user-turn-item.js +27 -0
- package/dist/services/conversation/user-turn-item.js.map +1 -0
- package/dist/services/conversation-agent-client.d.ts +77 -6
- package/dist/services/conversation-agent-client.d.ts.map +1 -1
- package/dist/services/cost/model-cost.d.ts +158 -0
- package/dist/services/cost/model-cost.d.ts.map +1 -0
- package/dist/services/cost/model-cost.js +218 -0
- package/dist/services/cost/model-cost.js.map +1 -0
- package/dist/services/cost/pricing-overlay.d.ts +26 -0
- package/dist/services/cost/pricing-overlay.d.ts.map +1 -0
- package/dist/services/cost/pricing-overlay.js +39 -0
- package/dist/services/cost/pricing-overlay.js.map +1 -0
- package/dist/services/cost/pricing.d.ts +13 -0
- package/dist/services/cost/pricing.d.ts.map +1 -0
- package/dist/services/cost/pricing.js +82 -0
- package/dist/services/cost/pricing.js.map +1 -0
- package/dist/services/execution-context.d.ts +31 -0
- package/dist/services/execution-context.d.ts.map +1 -1
- package/dist/services/execution-context.js +59 -0
- package/dist/services/execution-context.js.map +1 -1
- package/dist/services/file-service.d.ts.map +1 -1
- package/dist/services/file-service.js +12 -3
- package/dist/services/file-service.js.map +1 -1
- package/dist/services/handoff/handoff-flow-reducer.d.ts +27 -0
- package/dist/services/handoff/handoff-flow-reducer.d.ts.map +1 -0
- package/dist/services/handoff/handoff-flow-reducer.js +26 -0
- package/dist/services/handoff/handoff-flow-reducer.js.map +1 -0
- package/dist/services/handoff/handoff-session.d.ts +35 -0
- package/dist/services/handoff/handoff-session.d.ts.map +1 -0
- package/dist/services/handoff/handoff-session.js +136 -0
- package/dist/services/handoff/handoff-session.js.map +1 -0
- package/dist/services/hooks/hook-contracts.d.ts +124 -0
- package/dist/services/hooks/hook-contracts.d.ts.map +1 -0
- package/dist/services/hooks/hook-contracts.js +92 -0
- package/dist/services/hooks/hook-contracts.js.map +1 -0
- package/dist/services/hooks/hook-discovery.d.ts +45 -0
- package/dist/services/hooks/hook-discovery.d.ts.map +1 -0
- package/dist/services/hooks/hook-discovery.js +255 -0
- package/dist/services/hooks/hook-discovery.js.map +1 -0
- package/dist/services/hooks/hook-editor-shim.d.ts +6 -0
- package/dist/services/hooks/hook-editor-shim.d.ts.map +1 -0
- package/dist/services/hooks/hook-editor-shim.js +190 -0
- package/dist/services/hooks/hook-editor-shim.js.map +1 -0
- package/dist/services/hooks/hook-event-factory.d.ts +19 -0
- package/dist/services/hooks/hook-event-factory.d.ts.map +1 -0
- package/dist/services/hooks/hook-event-factory.js +45 -0
- package/dist/services/hooks/hook-event-factory.js.map +1 -0
- package/dist/services/hooks/hook-module-loader.d.ts +38 -0
- package/dist/services/hooks/hook-module-loader.d.ts.map +1 -0
- package/dist/services/hooks/hook-module-loader.js +69 -0
- package/dist/services/hooks/hook-module-loader.js.map +1 -0
- package/dist/services/hooks/hook-registry.d.ts +47 -0
- package/dist/services/hooks/hook-registry.d.ts.map +1 -0
- package/dist/services/hooks/hook-registry.js +185 -0
- package/dist/services/hooks/hook-registry.js.map +1 -0
- package/dist/services/hooks/hook-service.d.ts +44 -0
- package/dist/services/hooks/hook-service.d.ts.map +1 -0
- package/dist/services/hooks/hook-service.js +138 -0
- package/dist/services/hooks/hook-service.js.map +1 -0
- package/dist/services/hooks/hook-tool-lifecycle.d.ts +6 -0
- package/dist/services/hooks/hook-tool-lifecycle.d.ts.map +1 -0
- package/dist/services/hooks/hook-tool-lifecycle.js +33 -0
- package/dist/services/hooks/hook-tool-lifecycle.js.map +1 -0
- package/dist/services/hooks/index.d.ts +2 -0
- package/dist/services/hooks/index.d.ts.map +1 -0
- package/dist/services/hooks/index.js +2 -0
- package/dist/services/hooks/index.js.map +1 -0
- package/dist/services/input-surge-guard.d.ts.map +1 -1
- package/dist/services/input-surge-guard.js +13 -34
- package/dist/services/input-surge-guard.js.map +1 -1
- package/dist/services/large-uncached-input-guard.d.ts +26 -1
- package/dist/services/large-uncached-input-guard.d.ts.map +1 -1
- package/dist/services/large-uncached-input-guard.js +73 -38
- package/dist/services/large-uncached-input-guard.js.map +1 -1
- package/dist/services/logging/assistant-turn-journal.d.ts +1 -1
- package/dist/services/logging/assistant-turn-journal.d.ts.map +1 -1
- package/dist/services/logging/assistant-turn-journal.js +21 -36
- package/dist/services/logging/assistant-turn-journal.js.map +1 -1
- package/dist/services/logging/conversation-log-events.d.ts +75 -7
- package/dist/services/logging/conversation-log-events.d.ts.map +1 -1
- package/dist/services/logging/conversation-log-events.js +9 -0
- package/dist/services/logging/conversation-log-events.js.map +1 -1
- package/dist/services/logging/conversation-log-writer.d.ts +9 -4
- package/dist/services/logging/conversation-log-writer.d.ts.map +1 -1
- package/dist/services/logging/conversation-log-writer.js +183 -56
- package/dist/services/logging/conversation-log-writer.js.map +1 -1
- package/dist/services/logging/conversation-logger.d.ts.map +1 -1
- package/dist/services/logging/conversation-logger.js +35 -1
- package/dist/services/logging/conversation-logger.js.map +1 -1
- package/dist/services/logging/logging-contract.d.ts.map +1 -1
- package/dist/services/logging/logging-contract.js +4 -0
- package/dist/services/logging/logging-contract.js.map +1 -1
- package/dist/services/logging/logging-service.d.ts.map +1 -1
- package/dist/services/logging/logging-service.js +6 -2
- package/dist/services/logging/logging-service.js.map +1 -1
- package/dist/services/logging/provider-traffic.d.ts +2 -1
- package/dist/services/logging/provider-traffic.d.ts.map +1 -1
- package/dist/services/logging/provider-traffic.js +81 -5
- package/dist/services/logging/provider-traffic.js.map +1 -1
- package/dist/services/memory/memory-capabilities.d.ts.map +1 -1
- package/dist/services/memory/memory-capabilities.js +13 -8
- package/dist/services/memory/memory-capabilities.js.map +1 -1
- package/dist/services/model-service.d.ts +10 -0
- package/dist/services/model-service.d.ts.map +1 -1
- package/dist/services/model-service.js +24 -1
- package/dist/services/model-service.js.map +1 -1
- package/dist/services/models/model-catalog-session.d.ts +26 -0
- package/dist/services/models/model-catalog-session.d.ts.map +1 -0
- package/dist/services/models/model-catalog-session.js +77 -0
- package/dist/services/models/model-catalog-session.js.map +1 -0
- package/dist/services/openai-candidate-observer.d.ts +18 -0
- package/dist/services/openai-candidate-observer.d.ts.map +1 -0
- package/dist/services/openai-candidate-observer.js +56 -0
- package/dist/services/openai-candidate-observer.js.map +1 -0
- package/dist/services/openai-root-checkpoint-lifecycle-observer.d.ts +20 -0
- package/dist/services/openai-root-checkpoint-lifecycle-observer.d.ts.map +1 -0
- package/dist/services/openai-root-checkpoint-lifecycle-observer.js +21 -0
- package/dist/services/openai-root-checkpoint-lifecycle-observer.js.map +1 -0
- package/dist/services/openai-root-provider-identity.d.ts +11 -0
- package/dist/services/openai-root-provider-identity.d.ts.map +1 -0
- package/dist/services/openai-root-provider-identity.js +16 -0
- package/dist/services/openai-root-provider-identity.js.map +1 -0
- package/dist/services/openai-root-selector-parity-observer.d.ts +53 -0
- package/dist/services/openai-root-selector-parity-observer.d.ts.map +1 -0
- package/dist/services/openai-root-selector-parity-observer.js +62 -0
- package/dist/services/openai-root-selector-parity-observer.js.map +1 -0
- package/dist/services/plan-mode-interceptor.js +2 -2
- package/dist/services/plan-mode-interceptor.js.map +1 -1
- package/dist/services/provider-continuity.d.ts +94 -0
- package/dist/services/provider-continuity.d.ts.map +1 -1
- package/dist/services/provider-continuity.js +203 -0
- package/dist/services/provider-continuity.js.map +1 -1
- package/dist/services/providers/provider-management-session.d.ts +12 -0
- package/dist/services/providers/provider-management-session.d.ts.map +1 -0
- package/dist/services/providers/provider-management-session.js +21 -0
- package/dist/services/providers/provider-management-session.js.map +1 -0
- package/dist/services/queue/queue-controller.d.ts +9 -14
- package/dist/services/queue/queue-controller.d.ts.map +1 -1
- package/dist/services/queue/queue-controller.js +75 -60
- package/dist/services/queue/queue-controller.js.map +1 -1
- package/dist/services/retry/conversation-retry-policy.js +3 -3
- package/dist/services/retry/conversation-retry-policy.js.map +1 -1
- package/dist/services/retry/recovery-executor.d.ts.map +1 -1
- package/dist/services/retry/recovery-executor.js +15 -8
- package/dist/services/retry/recovery-executor.js.map +1 -1
- package/dist/services/retry/recovery-policy.d.ts.map +1 -1
- package/dist/services/retry/recovery-policy.js +4 -1
- package/dist/services/retry/recovery-policy.js.map +1 -1
- package/dist/services/retry/retry-classifier.d.ts.map +1 -1
- package/dist/services/retry/retry-classifier.js +3 -1
- package/dist/services/retry/retry-classifier.js.map +1 -1
- package/dist/services/retry/retry-contracts.d.ts +3 -5
- package/dist/services/retry/retry-contracts.d.ts.map +1 -1
- package/dist/services/retry/retry-error-classification.d.ts +20 -0
- package/dist/services/retry/retry-error-classification.d.ts.map +1 -1
- package/dist/services/retry/retry-error-classification.js +82 -0
- package/dist/services/retry/retry-error-classification.js.map +1 -1
- package/dist/services/retry/retry-event-presenter.d.ts.map +1 -1
- package/dist/services/retry/retry-event-presenter.js +4 -1
- package/dist/services/retry/retry-event-presenter.js.map +1 -1
- package/dist/services/retry/upstream-retry-policy.js +3 -3
- package/dist/services/rtk-service.d.ts.map +1 -1
- package/dist/services/rtk-service.js +3 -15
- package/dist/services/rtk-service.js.map +1 -1
- package/dist/services/runtime-setting-router.d.ts +19 -0
- package/dist/services/runtime-setting-router.d.ts.map +1 -1
- package/dist/services/runtime-setting-router.js +33 -0
- package/dist/services/runtime-setting-router.js.map +1 -1
- package/dist/services/service-interfaces.d.ts +19 -2
- package/dist/services/service-interfaces.d.ts.map +1 -1
- package/dist/services/session/background-task-control.d.ts +128 -0
- package/dist/services/session/background-task-control.d.ts.map +1 -0
- package/dist/services/session/background-task-control.js +217 -0
- package/dist/services/session/background-task-control.js.map +1 -0
- package/dist/services/session/background-task-liveness.d.ts +24 -0
- package/dist/services/session/background-task-liveness.d.ts.map +1 -0
- package/dist/services/session/background-task-liveness.js +23 -0
- package/dist/services/session/background-task-liveness.js.map +1 -0
- package/dist/services/session/continuation-call-id-resolver.d.ts +16 -9
- package/dist/services/session/continuation-call-id-resolver.d.ts.map +1 -1
- package/dist/services/session/continuation-call-id-resolver.js +34 -48
- package/dist/services/session/continuation-call-id-resolver.js.map +1 -1
- package/dist/services/session/continuation-plan-applier.d.ts.map +1 -1
- package/dist/services/session/continuation-plan-applier.js +1 -3
- package/dist/services/session/continuation-plan-applier.js.map +1 -1
- package/dist/services/session/continuation-recovery-handler.d.ts.map +1 -1
- package/dist/services/session/continuation-recovery-handler.js +0 -2
- package/dist/services/session/continuation-recovery-handler.js.map +1 -1
- package/dist/services/session/continuation-state.d.ts +9 -5
- package/dist/services/session/continuation-state.d.ts.map +1 -1
- package/dist/services/session/continuation-state.js +1 -1
- package/dist/services/session/continuation-state.js.map +1 -1
- package/dist/services/session/live-run.d.ts +29 -0
- package/dist/services/session/live-run.d.ts.map +1 -0
- package/dist/services/session/live-run.js +111 -0
- package/dist/services/session/live-run.js.map +1 -0
- package/dist/services/session/nested-tool-compatibility-state.d.ts +20 -0
- package/dist/services/session/nested-tool-compatibility-state.d.ts.map +1 -0
- package/dist/services/session/nested-tool-compatibility-state.js +29 -0
- package/dist/services/session/nested-tool-compatibility-state.js.map +1 -0
- package/dist/services/session/pending-interaction-state.d.ts +60 -0
- package/dist/services/session/pending-interaction-state.d.ts.map +1 -0
- package/dist/services/session/pending-interaction-state.js +132 -0
- package/dist/services/session/pending-interaction-state.js.map +1 -0
- package/dist/services/session/post-execute-pause-capability.d.ts +17 -0
- package/dist/services/session/post-execute-pause-capability.d.ts.map +1 -0
- package/dist/services/session/post-execute-pause-capability.js +27 -0
- package/dist/services/session/post-execute-pause-capability.js.map +1 -0
- package/dist/services/session/post-execute-pause-policy.d.ts +20 -0
- package/dist/services/session/post-execute-pause-policy.d.ts.map +1 -0
- package/dist/services/session/post-execute-pause-policy.js +34 -0
- package/dist/services/session/post-execute-pause-policy.js.map +1 -0
- package/dist/services/session/post-execute-pending-registry.d.ts +63 -0
- package/dist/services/session/post-execute-pending-registry.d.ts.map +1 -0
- package/dist/services/session/post-execute-pending-registry.js +123 -0
- package/dist/services/session/post-execute-pending-registry.js.map +1 -0
- package/dist/services/session/session-access-state.d.ts +24 -0
- package/dist/services/session/session-access-state.d.ts.map +1 -0
- package/dist/services/session/session-access-state.js +92 -0
- package/dist/services/session/session-access-state.js.map +1 -0
- package/dist/services/session/session-client-factory.d.ts +71 -0
- package/dist/services/session/session-client-factory.d.ts.map +1 -0
- package/dist/services/session/session-client-factory.js +130 -0
- package/dist/services/session/session-client-factory.js.map +1 -0
- package/dist/services/session/session-composition.d.ts +58 -0
- package/dist/services/session/session-composition.d.ts.map +1 -1
- package/dist/services/session/session-composition.js +179 -13
- package/dist/services/session/session-composition.js.map +1 -1
- package/dist/services/session/session-input-planner.d.ts +22 -2
- package/dist/services/session/session-input-planner.d.ts.map +1 -1
- package/dist/services/session/session-input-planner.js +121 -10
- package/dist/services/session/session-input-planner.js.map +1 -1
- package/dist/services/session/session-lifecycle.d.ts +5 -0
- package/dist/services/session/session-lifecycle.d.ts.map +1 -1
- package/dist/services/session/session-lifecycle.js +16 -6
- package/dist/services/session/session-lifecycle.js.map +1 -1
- package/dist/services/session/session-manager.d.ts +11 -1
- package/dist/services/session/session-manager.d.ts.map +1 -1
- package/dist/services/session/session-manager.js +16 -3
- package/dist/services/session/session-manager.js.map +1 -1
- package/dist/services/session/session-stream-processor.d.ts +6 -0
- package/dist/services/session/session-stream-processor.d.ts.map +1 -1
- package/dist/services/session/session-stream-processor.js +177 -35
- package/dist/services/session/session-stream-processor.js.map +1 -1
- package/dist/services/session/session-tool-tracker.d.ts +16 -21
- package/dist/services/session/session-tool-tracker.d.ts.map +1 -1
- package/dist/services/session/session-tool-tracker.js +21 -52
- package/dist/services/session/session-tool-tracker.js.map +1 -1
- package/dist/services/session/terminal-result-collector.d.ts +8 -0
- package/dist/services/session/terminal-result-collector.d.ts.map +1 -1
- package/dist/services/session/terminal-result-collector.js +30 -4
- package/dist/services/session/terminal-result-collector.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 +8 -1
- package/dist/services/session/test-helpers/conversation-session-fixtures.js.map +1 -1
- package/dist/services/session/turn-attempt-factory.d.ts +2 -2
- package/dist/services/session/turn-attempt-factory.d.ts.map +1 -1
- package/dist/services/session/turn-attempt.d.ts +4 -2
- package/dist/services/session/turn-attempt.d.ts.map +1 -1
- package/dist/services/session/turn-attempt.js +5 -0
- package/dist/services/session/turn-attempt.js.map +1 -1
- package/dist/services/session/turn-coordinator.d.ts +32 -2
- package/dist/services/session/turn-coordinator.d.ts.map +1 -1
- package/dist/services/session/turn-coordinator.js +180 -9
- package/dist/services/session/turn-coordinator.js.map +1 -1
- package/dist/services/session/turn-status-machine.d.ts +21 -6
- package/dist/services/session/turn-status-machine.d.ts.map +1 -1
- package/dist/services/session/turn-status-machine.js +50 -13
- package/dist/services/session/turn-status-machine.js.map +1 -1
- package/dist/services/session/turn-workflow.d.ts +35 -0
- package/dist/services/session/turn-workflow.d.ts.map +1 -1
- package/dist/services/session/turn-workflow.js +377 -27
- package/dist/services/session/turn-workflow.js.map +1 -1
- package/dist/services/settings/ancillary-settings-migration.js +3 -3
- package/dist/services/settings/ancillary-settings-migration.js.map +1 -1
- package/dist/services/settings/custom-provider-normalization.d.ts +10 -0
- package/dist/services/settings/custom-provider-normalization.d.ts.map +1 -1
- package/dist/services/settings/custom-provider-normalization.js +35 -2
- package/dist/services/settings/custom-provider-normalization.js.map +1 -1
- package/dist/services/settings/settings-env.d.ts +3 -0
- package/dist/services/settings/settings-env.d.ts.map +1 -1
- package/dist/services/settings/settings-env.js +3 -3
- package/dist/services/settings/settings-env.js.map +1 -1
- package/dist/services/settings/settings-merger.d.ts +6 -5
- package/dist/services/settings/settings-merger.d.ts.map +1 -1
- package/dist/services/settings/settings-merger.js +9 -4
- package/dist/services/settings/settings-merger.js.map +1 -1
- package/dist/services/settings/settings-path.d.ts +6 -0
- package/dist/services/settings/settings-path.d.ts.map +1 -0
- package/dist/services/settings/settings-path.js +15 -0
- package/dist/services/settings/settings-path.js.map +1 -0
- package/dist/services/settings/settings-persistence.d.ts +17 -6
- package/dist/services/settings/settings-persistence.d.ts.map +1 -1
- package/dist/services/settings/settings-persistence.js +155 -28
- package/dist/services/settings/settings-persistence.js.map +1 -1
- package/dist/services/settings/settings-schema.d.ts +107 -5
- package/dist/services/settings/settings-schema.d.ts.map +1 -1
- package/dist/services/settings/settings-schema.js +91 -9
- package/dist/services/settings/settings-schema.js.map +1 -1
- package/dist/services/settings/settings-service.d.ts +42 -5
- package/dist/services/settings/settings-service.d.ts.map +1 -1
- package/dist/services/settings/settings-service.js +282 -12
- package/dist/services/settings/settings-service.js.map +1 -1
- package/dist/services/settings/settings-sources.d.ts.map +1 -1
- package/dist/services/settings/settings-sources.js +7 -0
- package/dist/services/settings/settings-sources.js.map +1 -1
- package/dist/services/shell/background-shell-output-store.d.ts +90 -0
- package/dist/services/shell/background-shell-output-store.d.ts.map +1 -0
- package/dist/services/shell/background-shell-output-store.js +207 -0
- package/dist/services/shell/background-shell-output-store.js.map +1 -0
- package/dist/services/shell/background-shell-registry.d.ts +128 -0
- package/dist/services/shell/background-shell-registry.d.ts.map +1 -0
- package/dist/services/shell/background-shell-registry.js +341 -0
- package/dist/services/shell/background-shell-registry.js.map +1 -0
- package/dist/services/shell/background-shell-watches.d.ts +141 -0
- package/dist/services/shell/background-shell-watches.d.ts.map +1 -0
- package/dist/services/shell/background-shell-watches.js +245 -0
- package/dist/services/shell/background-shell-watches.js.map +1 -0
- package/dist/services/shell/shell-interaction-session.d.ts +43 -0
- package/dist/services/shell/shell-interaction-session.d.ts.map +1 -0
- package/dist/services/shell/shell-interaction-session.js +113 -0
- package/dist/services/shell/shell-interaction-session.js.map +1 -0
- package/dist/services/stream-event-processor.d.ts +11 -12
- package/dist/services/stream-event-processor.d.ts.map +1 -1
- package/dist/services/stream-event-processor.js +119 -352
- package/dist/services/stream-event-processor.js.map +1 -1
- package/dist/services/stream-snapshot.d.ts +0 -1
- package/dist/services/stream-snapshot.d.ts.map +1 -1
- package/dist/services/stream-snapshot.js +0 -1
- package/dist/services/stream-snapshot.js.map +1 -1
- package/dist/services/subagents/codename-run-id.d.ts +43 -0
- package/dist/services/subagents/codename-run-id.d.ts.map +1 -0
- package/dist/services/subagents/codename-run-id.js +683 -0
- package/dist/services/subagents/codename-run-id.js.map +1 -0
- package/dist/services/subagents/execution-runner.d.ts +2 -0
- package/dist/services/subagents/execution-runner.d.ts.map +1 -1
- package/dist/services/subagents/execution-runner.js +60 -6
- package/dist/services/subagents/execution-runner.js.map +1 -1
- package/dist/services/subagents/foreground-subagent-lease.d.ts +77 -0
- package/dist/services/subagents/foreground-subagent-lease.d.ts.map +1 -0
- package/dist/services/subagents/foreground-subagent-lease.js +156 -0
- package/dist/services/subagents/foreground-subagent-lease.js.map +1 -0
- package/dist/services/subagents/mentor-runner.d.ts.map +1 -1
- package/dist/services/subagents/mentor-runner.js +50 -31
- package/dist/services/subagents/mentor-runner.js.map +1 -1
- package/dist/services/subagents/nested-runner.d.ts +47 -23
- package/dist/services/subagents/nested-runner.d.ts.map +1 -1
- package/dist/services/subagents/nested-runner.js +313 -66
- package/dist/services/subagents/nested-runner.js.map +1 -1
- package/dist/services/subagents/role-loader.d.ts +3 -3
- package/dist/services/subagents/role-loader.d.ts.map +1 -1
- package/dist/services/subagents/role-loader.js +6 -7
- package/dist/services/subagents/role-loader.js.map +1 -1
- package/dist/services/subagents/runtime.d.ts +10 -0
- package/dist/services/subagents/runtime.d.ts.map +1 -1
- package/dist/services/subagents/runtime.js +15 -1
- package/dist/services/subagents/runtime.js.map +1 -1
- package/dist/services/subagents/subagent-async-registry.d.ts +21 -2
- package/dist/services/subagents/subagent-async-registry.d.ts.map +1 -1
- package/dist/services/subagents/subagent-async-registry.js +193 -13
- package/dist/services/subagents/subagent-async-registry.js.map +1 -1
- package/dist/services/subagents/subagent-client-types.d.ts +2 -0
- package/dist/services/subagents/subagent-client-types.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.d.ts +26 -7
- package/dist/services/subagents/subagent-manager.d.ts.map +1 -1
- package/dist/services/subagents/subagent-manager.js +31 -1
- package/dist/services/subagents/subagent-manager.js.map +1 -1
- package/dist/services/subagents/subagent-notification-store.d.ts +91 -6
- package/dist/services/subagents/subagent-notification-store.d.ts.map +1 -1
- package/dist/services/subagents/subagent-notification-store.js +140 -10
- package/dist/services/subagents/subagent-notification-store.js.map +1 -1
- package/dist/services/subagents/subagent-session.d.ts +12 -7
- package/dist/services/subagents/subagent-session.d.ts.map +1 -1
- package/dist/services/subagents/subagent-session.js +13 -14
- package/dist/services/subagents/subagent-session.js.map +1 -1
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts +4 -5
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.d.ts.map +1 -1
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js +72 -70
- package/dist/services/subagents/test-helpers/subagent-manager-fixtures.js.map +1 -1
- package/dist/services/subagents/tool-policy.d.ts +21 -17
- package/dist/services/subagents/tool-policy.d.ts.map +1 -1
- package/dist/services/subagents/tool-policy.js +100 -60
- package/dist/services/subagents/tool-policy.js.map +1 -1
- package/dist/services/subagents/types.d.ts +37 -3
- package/dist/services/subagents/types.d.ts.map +1 -1
- package/dist/services/subagents/types.js +2 -2
- package/dist/services/subagents/types.js.map +1 -1
- package/dist/services/subagents/utils.d.ts +8 -1
- package/dist/services/subagents/utils.d.ts.map +1 -1
- package/dist/services/subagents/utils.js +46 -16
- package/dist/services/subagents/utils.js.map +1 -1
- package/dist/services/subagents/worker-worktree.d.ts +25 -0
- package/dist/services/subagents/worker-worktree.d.ts.map +1 -0
- package/dist/services/subagents/worker-worktree.js +74 -0
- package/dist/services/subagents/worker-worktree.js.map +1 -0
- package/dist/services/test-helpers/mock-stream.d.ts +3 -0
- package/dist/services/test-helpers/mock-stream.d.ts.map +1 -1
- package/dist/services/test-helpers/mock-stream.js +8 -0
- package/dist/services/test-helpers/mock-stream.js.map +1 -1
- package/dist/services/tool-execution-ledger.d.ts +2 -0
- package/dist/services/tool-execution-ledger.d.ts.map +1 -1
- package/dist/services/tool-execution-ledger.js +59 -81
- package/dist/services/tool-execution-ledger.js.map +1 -1
- package/dist/services/workspace/active-workspace-root.d.ts +5 -0
- package/dist/services/workspace/active-workspace-root.d.ts.map +1 -0
- package/dist/services/workspace/active-workspace-root.js +24 -0
- package/dist/services/workspace/active-workspace-root.js.map +1 -0
- package/dist/services/workspace/parse-worktree-list.d.ts +24 -0
- package/dist/services/workspace/parse-worktree-list.d.ts.map +1 -0
- package/dist/services/workspace/parse-worktree-list.js +59 -0
- package/dist/services/workspace/parse-worktree-list.js.map +1 -0
- package/dist/services/workspace/worktree-inventory.d.ts +10 -0
- package/dist/services/workspace/worktree-inventory.d.ts.map +1 -0
- package/dist/services/workspace/worktree-inventory.js +28 -0
- package/dist/services/workspace/worktree-inventory.js.map +1 -0
- package/dist/services/workspace/worktree-transition.d.ts +85 -0
- package/dist/services/workspace/worktree-transition.d.ts.map +1 -0
- package/dist/services/workspace/worktree-transition.js +70 -0
- package/dist/services/workspace/worktree-transition.js.map +1 -0
- 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 +5 -1
- package/dist/test-helpers/conversation-session-with-adapter.js.map +1 -1
- package/dist/test-helpers/ink-testing.d.ts.map +1 -1
- package/dist/test-helpers/ink-testing.js +2 -1
- package/dist/test-helpers/ink-testing.js.map +1 -1
- package/dist/tools/agent/activate-skill.d.ts +6 -1
- package/dist/tools/agent/activate-skill.d.ts.map +1 -1
- package/dist/tools/agent/activate-skill.js.map +1 -1
- package/dist/tools/agent/ask-mentor.d.ts +1 -1
- package/dist/tools/agent/ask-mentor.d.ts.map +1 -1
- package/dist/tools/agent/ask-mentor.js.map +1 -1
- package/dist/tools/agent/ask-orchestrator.d.ts +1 -1
- package/dist/tools/agent/ask-orchestrator.d.ts.map +1 -1
- package/dist/tools/agent/ask-user-constants.d.ts +6 -0
- package/dist/tools/agent/ask-user-constants.d.ts.map +1 -1
- package/dist/tools/agent/ask-user-constants.js +6 -0
- package/dist/tools/agent/ask-user-constants.js.map +1 -1
- package/dist/tools/agent/run-subagent-async.d.ts +6 -6
- package/dist/tools/agent/run-subagent-async.d.ts.map +1 -1
- package/dist/tools/agent/run-subagent-async.js +34 -55
- package/dist/tools/agent/run-subagent-async.js.map +1 -1
- package/dist/tools/agent/run-subagent.d.ts +30 -14
- package/dist/tools/agent/run-subagent.d.ts.map +1 -1
- package/dist/tools/agent/run-subagent.js +191 -68
- package/dist/tools/agent/run-subagent.js.map +1 -1
- package/dist/tools/file/apply-patch.d.ts +3 -1
- package/dist/tools/file/apply-patch.d.ts.map +1 -1
- package/dist/tools/file/apply-patch.js +34 -10
- package/dist/tools/file/apply-patch.js.map +1 -1
- package/dist/tools/file/code-context.d.ts +2 -2
- package/dist/tools/file/code-context.d.ts.map +1 -1
- package/dist/tools/file/code-context.js +1 -1
- package/dist/tools/file/code-context.js.map +1 -1
- package/dist/tools/file/create-file.d.ts +4 -2
- package/dist/tools/file/create-file.d.ts.map +1 -1
- package/dist/tools/file/create-file.js +10 -7
- package/dist/tools/file/create-file.js.map +1 -1
- package/dist/tools/file/edit-healing.d.ts.map +1 -1
- package/dist/tools/file/edit-healing.js +54 -35
- package/dist/tools/file/edit-healing.js.map +1 -1
- package/dist/tools/file/glob-target.d.ts +12 -0
- package/dist/tools/file/glob-target.d.ts.map +1 -0
- package/dist/tools/file/glob-target.js +22 -0
- package/dist/tools/file/glob-target.js.map +1 -0
- package/dist/tools/file/glob.d.ts +9 -2
- package/dist/tools/file/glob.d.ts.map +1 -1
- package/dist/tools/file/glob.js +12 -16
- package/dist/tools/file/glob.js.map +1 -1
- package/dist/tools/file/grep.d.ts +8 -1
- package/dist/tools/file/grep.d.ts.map +1 -1
- package/dist/tools/file/grep.js +60 -4
- package/dist/tools/file/grep.js.map +1 -1
- package/dist/tools/file/read-file.d.ts +7 -1
- package/dist/tools/file/read-file.d.ts.map +1 -1
- package/dist/tools/file/read-file.js +3 -4
- package/dist/tools/file/read-file.js.map +1 -1
- package/dist/tools/file/search-replace.d.ts +5 -3
- package/dist/tools/file/search-replace.d.ts.map +1 -1
- package/dist/tools/file/search-replace.js +29 -19
- package/dist/tools/file/search-replace.js.map +1 -1
- package/dist/tools/format-helpers.d.ts +4 -3
- package/dist/tools/format-helpers.d.ts.map +1 -1
- package/dist/tools/format-helpers.js +16 -17
- package/dist/tools/format-helpers.js.map +1 -1
- package/dist/tools/memory/memory-tools.d.ts.map +1 -1
- package/dist/tools/memory/memory-tools.js +61 -49
- package/dist/tools/memory/memory-tools.js.map +1 -1
- package/dist/tools/run-agent-workflow.d.ts +1 -1
- package/dist/tools/run-agent-workflow.d.ts.map +1 -1
- package/dist/tools/system/shell.d.ts +80 -3
- package/dist/tools/system/shell.d.ts.map +1 -1
- package/dist/tools/system/shell.js +657 -152
- package/dist/tools/system/shell.js.map +1 -1
- package/dist/tools/system/worktree.d.ts +22 -0
- package/dist/tools/system/worktree.d.ts.map +1 -0
- package/dist/tools/system/worktree.js +138 -0
- package/dist/tools/system/worktree.js.map +1 -0
- package/dist/tools/types.d.ts +102 -5
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js +4 -1
- package/dist/tools/types.js.map +1 -1
- package/dist/tools/utils.d.ts +18 -0
- package/dist/tools/utils.d.ts.map +1 -1
- package/dist/tools/utils.js +80 -1
- package/dist/tools/utils.js.map +1 -1
- package/dist/tools/web/web-fetch.d.ts +1 -1
- package/dist/tools/web/web-fetch.d.ts.map +1 -1
- package/dist/tools/web/web-fetch.js.map +1 -1
- package/dist/tools/web/web-search.d.ts +1 -1
- package/dist/tools/web/web-search.d.ts.map +1 -1
- package/dist/tools/web/web-search.js.map +1 -1
- package/dist/types/message.d.ts +2 -0
- package/dist/types/message.d.ts.map +1 -1
- package/dist/types/message.js.map +1 -1
- package/dist/utils/ai/model-settings.d.ts.map +1 -1
- package/dist/utils/ai/model-settings.js +0 -6
- package/dist/utils/ai/model-settings.js.map +1 -1
- package/dist/utils/ai/provider-credentials.d.ts +31 -2
- package/dist/utils/ai/provider-credentials.d.ts.map +1 -1
- package/dist/utils/ai/provider-credentials.js +119 -11
- package/dist/utils/ai/provider-credentials.js.map +1 -1
- package/dist/utils/ai/token-usage.d.ts +10 -5
- package/dist/utils/ai/token-usage.d.ts.map +1 -1
- package/dist/utils/ai/token-usage.js +48 -35
- package/dist/utils/ai/token-usage.js.map +1 -1
- package/dist/utils/apply-diff.d.ts +3 -0
- package/dist/utils/apply-diff.d.ts.map +1 -0
- package/dist/utils/apply-diff.js +192 -0
- package/dist/utils/apply-diff.js.map +1 -0
- package/dist/utils/conversation/conversation-event-handler.d.ts.map +1 -1
- package/dist/utils/conversation/conversation-event-handler.js +72 -16
- package/dist/utils/conversation/conversation-event-handler.js.map +1 -1
- package/dist/utils/conversation/conversation-utils.d.ts +5 -0
- package/dist/utils/conversation/conversation-utils.d.ts.map +1 -1
- package/dist/utils/conversation/conversation-utils.js +1 -0
- package/dist/utils/conversation/conversation-utils.js.map +1 -1
- package/dist/utils/conversation/message-utils.d.ts +14 -2
- package/dist/utils/conversation/message-utils.d.ts.map +1 -1
- package/dist/utils/conversation/message-utils.js +55 -35
- package/dist/utils/conversation/message-utils.js.map +1 -1
- package/dist/utils/conversation/rewind-items.d.ts +32 -0
- package/dist/utils/conversation/rewind-items.d.ts.map +1 -0
- package/dist/utils/conversation/rewind-items.js +33 -0
- package/dist/utils/conversation/rewind-items.js.map +1 -0
- package/dist/utils/copy-selections.d.ts +8 -0
- package/dist/utils/copy-selections.d.ts.map +1 -0
- package/dist/utils/copy-selections.js +42 -0
- package/dist/utils/copy-selections.js.map +1 -0
- package/dist/utils/inject-warning-into-tool-output.d.ts +10 -0
- package/dist/utils/inject-warning-into-tool-output.d.ts.map +1 -1
- package/dist/utils/inject-warning-into-tool-output.js +17 -0
- package/dist/utils/inject-warning-into-tool-output.js.map +1 -1
- package/dist/utils/settings-command.d.ts.map +1 -1
- package/dist/utils/settings-command.js +46 -4
- package/dist/utils/settings-command.js.map +1 -1
- package/dist/utils/shell/command-logger.js.map +1 -1
- package/dist/utils/shell/command-safety/find-helpers.d.ts +3 -2
- package/dist/utils/shell/command-safety/find-helpers.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/find-helpers.js +34 -17
- package/dist/utils/shell/command-safety/find-helpers.js.map +1 -1
- package/dist/utils/shell/command-safety/handlers/find-handler.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/handlers/find-handler.js +0 -2
- package/dist/utils/shell/command-safety/handlers/find-handler.js.map +1 -1
- package/dist/utils/shell/command-safety/handlers/git-handler.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/handlers/git-handler.js.map +1 -1
- package/dist/utils/shell/command-safety/handlers/sed-handler.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/handlers/sed-handler.js +14 -9
- package/dist/utils/shell/command-safety/handlers/sed-handler.js.map +1 -1
- package/dist/utils/shell/command-safety/handlers/types.d.ts +5 -4
- package/dist/utils/shell/command-safety/handlers/types.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/index.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/index.js +212 -88
- package/dist/utils/shell/command-safety/index.js.map +1 -1
- package/dist/utils/shell/command-safety/path-analysis.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/path-analysis.js +5 -1
- package/dist/utils/shell/command-safety/path-analysis.js.map +1 -1
- package/dist/utils/shell/command-safety/utils.d.ts +2 -1
- package/dist/utils/shell/command-safety/utils.d.ts.map +1 -1
- package/dist/utils/shell/command-safety/utils.js +5 -5
- package/dist/utils/shell/command-safety/utils.js.map +1 -1
- package/dist/utils/shell/execute-shell.d.ts +49 -3
- package/dist/utils/shell/execute-shell.d.ts.map +1 -1
- package/dist/utils/shell/execute-shell.js +245 -28
- package/dist/utils/shell/execute-shell.js.map +1 -1
- package/dist/utils/shell/sandbox/denied-read-stores.d.ts +1 -8
- package/dist/utils/shell/sandbox/denied-read-stores.d.ts.map +1 -1
- package/dist/utils/shell/sandbox/denied-read-stores.js +1 -8
- package/dist/utils/shell/sandbox/denied-read-stores.js.map +1 -1
- package/dist/utils/shell/sandbox/docker-host-control-grants.d.ts +36 -6
- package/dist/utils/shell/sandbox/docker-host-control-grants.d.ts.map +1 -1
- package/dist/utils/shell/sandbox/docker-host-control-grants.js +47 -17
- package/dist/utils/shell/sandbox/docker-host-control-grants.js.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-env.d.ts.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-env.js +2 -1
- package/dist/utils/shell/sandbox/sandbox-env.js.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.d.ts +21 -0
- package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.d.ts.map +1 -0
- package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.js +66 -0
- package/dist/utils/shell/sandbox/sandbox-network-approval-coordinator.js.map +1 -0
- package/dist/utils/shell/sandbox/sandbox-network-store.d.ts.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-network-store.js +3 -2
- package/dist/utils/shell/sandbox/sandbox-network-store.js.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-policy.d.ts.map +1 -1
- package/dist/utils/shell/sandbox/sandbox-policy.js +2 -1
- package/dist/utils/shell/sandbox/sandbox-policy.js.map +1 -1
- package/dist/utils/shell/shell-session.js.map +1 -1
- package/dist/utils/slash-command-dispatch.d.ts +21 -0
- package/dist/utils/slash-command-dispatch.d.ts.map +1 -0
- package/dist/utils/slash-command-dispatch.js +34 -0
- package/dist/utils/slash-command-dispatch.js.map +1 -0
- package/dist/utils/streaming/extract-command-messages.d.ts.map +1 -1
- package/dist/utils/streaming/extract-command-messages.js +29 -51
- package/dist/utils/streaming/extract-command-messages.js.map +1 -1
- package/dist/utils/value-suggestions.d.ts.map +1 -1
- package/dist/utils/value-suggestions.js +6 -8
- package/dist/utils/value-suggestions.js.map +1 -1
- package/package.json +21 -19
- package/dist/commands/retry-command.d.ts +0 -20
- package/dist/commands/retry-command.d.ts.map +0 -1
- package/dist/commands/retry-command.js +0 -39
- package/dist/commands/retry-command.js.map +0 -1
- package/dist/commands/undo-command.d.ts +0 -15
- package/dist/commands/undo-command.d.ts.map +0 -1
- package/dist/commands/undo-command.js +0 -28
- package/dist/commands/undo-command.js.map +0 -1
- package/dist/components/input/PopupManager.d.ts +0 -88
- package/dist/components/input/PopupManager.d.ts.map +0 -1
- package/dist/components/input/PopupManager.js +0 -21
- package/dist/components/input/PopupManager.js.map +0 -1
- package/dist/components/input/popup-key-navigation.d.ts +0 -18
- package/dist/components/input/popup-key-navigation.d.ts.map +0 -1
- package/dist/components/input/popup-key-navigation.js +0 -16
- package/dist/components/input/popup-key-navigation.js.map +0 -1
- package/dist/components/input/popup-props.d.ts +0 -24
- package/dist/components/input/popup-props.d.ts.map +0 -1
- package/dist/components/input/popup-props.js +0 -72
- package/dist/components/input/popup-props.js.map +0 -1
- package/dist/components/menu/UndoSelectionMenu.d.ts +0 -12
- package/dist/components/menu/UndoSelectionMenu.d.ts.map +0 -1
- package/dist/components/menu/UndoSelectionMenu.js +0 -19
- package/dist/components/menu/UndoSelectionMenu.js.map +0 -1
- package/dist/hooks/use-mode-handlers.d.ts +0 -79
- package/dist/hooks/use-mode-handlers.d.ts.map +0 -1
- package/dist/hooks/use-mode-handlers.js +0 -183
- package/dist/hooks/use-mode-handlers.js.map +0 -1
- package/dist/hooks/use-pending-turn-guards.d.ts +0 -43
- package/dist/hooks/use-pending-turn-guards.d.ts.map +0 -1
- package/dist/hooks/use-pending-turn-guards.js +0 -120
- package/dist/hooks/use-pending-turn-guards.js.map +0 -1
- package/dist/hooks/use-trigger-detection.d.ts +0 -49
- package/dist/hooks/use-trigger-detection.d.ts.map +0 -1
- package/dist/hooks/use-trigger-detection.js +0 -104
- package/dist/hooks/use-trigger-detection.js.map +0 -1
- package/dist/hooks/use-undo-selection.d.ts +0 -23
- package/dist/hooks/use-undo-selection.d.ts.map +0 -1
- package/dist/hooks/use-undo-selection.js.map +0 -1
- package/dist/lib/agent-run-orchestrator.d.ts +0 -38
- package/dist/lib/agent-run-orchestrator.d.ts.map +0 -1
- package/dist/lib/agent-run-orchestrator.js +0 -266
- package/dist/lib/agent-run-orchestrator.js.map +0 -1
- package/dist/lib/retry-executor.d.ts +0 -16
- package/dist/lib/retry-executor.d.ts.map +0 -1
- package/dist/lib/retry-executor.js +0 -53
- package/dist/lib/retry-executor.js.map +0 -1
- package/dist/lib/runner-manager.d.ts +0 -22
- package/dist/lib/runner-manager.d.ts.map +0 -1
- package/dist/lib/runner-manager.js +0 -56
- package/dist/lib/runner-manager.js.map +0 -1
- package/dist/prompts/shell-sandbox.md +0 -18
- package/dist/prompts/simple.md +0 -53
- package/dist/prompts/simple_prev.md +0 -33
- package/dist/prompts/simple_v2.md +0 -84
- package/dist/prompts/simple_v3.md +0 -267
- package/dist/prompts/subagents/researcher.md +0 -46
- package/dist/providers/ai-sdk-agents-adapter.d.ts +0 -7
- package/dist/providers/ai-sdk-agents-adapter.d.ts.map +0 -1
- package/dist/providers/ai-sdk-agents-adapter.js +0 -80
- package/dist/providers/ai-sdk-agents-adapter.js.map +0 -1
- package/dist/providers/fallback-responses-model.d.ts +0 -46
- package/dist/providers/fallback-responses-model.d.ts.map +0 -1
- package/dist/providers/fallback-responses-model.js +0 -296
- package/dist/providers/fallback-responses-model.js.map +0 -1
- package/dist/services/stream-event-parsing.d.ts +0 -4
- package/dist/services/stream-event-parsing.d.ts.map +0 -1
- package/dist/services/stream-event-parsing.js +0 -79
- package/dist/services/stream-event-parsing.js.map +0 -1
|
@@ -1,33 +1,50 @@
|
|
|
1
1
|
import { isCommandMessage, isUserMessage } from '../../types/message.js';
|
|
2
2
|
/**
|
|
3
|
-
* Get
|
|
4
|
-
* bot messages
|
|
3
|
+
* Get an assistant response by its 1-based position from newest to oldest.
|
|
4
|
+
* Contiguous bot messages are combined because streaming can represent one
|
|
5
|
+
* response as several UI messages. Returns null when that response does not
|
|
6
|
+
* exist.
|
|
5
7
|
*/
|
|
6
|
-
export function
|
|
7
|
-
|
|
8
|
-
for (let index = messages.length - 1; index >= 0; index--) {
|
|
9
|
-
const message = messages[index];
|
|
10
|
-
if (message?.sender === 'bot' && typeof message.text === 'string' && message.text.length > 0) {
|
|
11
|
-
lastBotIndex = index;
|
|
12
|
-
break;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
if (lastBotIndex === -1) {
|
|
8
|
+
export function getAssistantResponseText(messages, responseNumber = 1) {
|
|
9
|
+
if (!Number.isSafeInteger(responseNumber) || responseNumber < 1) {
|
|
16
10
|
return null;
|
|
17
11
|
}
|
|
18
|
-
|
|
19
|
-
for (let index =
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
12
|
+
let remaining = responseNumber;
|
|
13
|
+
for (let index = messages.length - 1; index >= 0;) {
|
|
14
|
+
while (index >= 0 && messages[index]?.sender !== 'bot') {
|
|
15
|
+
index--;
|
|
16
|
+
}
|
|
17
|
+
if (index < 0) {
|
|
18
|
+
return null;
|
|
19
|
+
}
|
|
20
|
+
const texts = [];
|
|
21
|
+
while (index >= 0) {
|
|
22
|
+
const message = messages[index];
|
|
23
|
+
if (message?.sender !== 'bot') {
|
|
24
|
+
break;
|
|
25
|
+
}
|
|
26
|
+
const text = message.text;
|
|
27
|
+
if (typeof text === 'string') {
|
|
28
|
+
texts.unshift(text);
|
|
24
29
|
}
|
|
30
|
+
index--;
|
|
25
31
|
}
|
|
26
|
-
|
|
27
|
-
|
|
32
|
+
const responseText = texts.join('').trim();
|
|
33
|
+
if (!responseText) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
remaining--;
|
|
37
|
+
if (remaining === 0) {
|
|
38
|
+
return responseText;
|
|
28
39
|
}
|
|
29
40
|
}
|
|
30
|
-
return
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Get the text content of the final assistant response.
|
|
45
|
+
*/
|
|
46
|
+
export function getLastFinalAssistantText(messages) {
|
|
47
|
+
return getAssistantResponseText(messages);
|
|
31
48
|
}
|
|
32
49
|
/**
|
|
33
50
|
* Remove trailing assistant-visible messages so a retry can replace the last
|
|
@@ -84,30 +101,33 @@ export function mergeCommandMessages(prev, newCommands) {
|
|
|
84
101
|
return [...cleaned, ...deduped];
|
|
85
102
|
}
|
|
86
103
|
/**
|
|
87
|
-
*
|
|
88
|
-
*
|
|
104
|
+
* List the indices of every user message that was not consumed for abort, in
|
|
105
|
+
* conversation order. Position N in the result is the UI index of user turn
|
|
106
|
+
* N+1, which is how a 1-based rewind turn number resolves to a message index.
|
|
89
107
|
*/
|
|
90
|
-
export function
|
|
91
|
-
|
|
108
|
+
export function listUndoableUserMessageIndices(messages) {
|
|
109
|
+
const indices = [];
|
|
110
|
+
for (let i = 0; i < messages.length; i++) {
|
|
92
111
|
const m = messages[i];
|
|
93
112
|
if (isUserMessage(m) && !m.consumedForAbort) {
|
|
94
|
-
|
|
113
|
+
indices.push(i);
|
|
95
114
|
}
|
|
96
115
|
}
|
|
97
|
-
return
|
|
116
|
+
return indices;
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Find the index of the last user message that was not consumed for abort.
|
|
120
|
+
* Returns -1 if no undoable user message exists.
|
|
121
|
+
*/
|
|
122
|
+
export function findLastUndoableUserMessage(messages) {
|
|
123
|
+
const indices = listUndoableUserMessageIndices(messages);
|
|
124
|
+
return indices.length > 0 ? indices[indices.length - 1] : -1;
|
|
98
125
|
}
|
|
99
126
|
/**
|
|
100
127
|
* Count how many undoable user turns exist at or after startIndex.
|
|
101
128
|
*/
|
|
102
129
|
export function countUndoableUserTurnsFrom(messages, startIndex) {
|
|
103
|
-
|
|
104
|
-
for (let i = startIndex; i < messages.length; i++) {
|
|
105
|
-
const m = messages[i];
|
|
106
|
-
if (isUserMessage(m) && !m.consumedForAbort) {
|
|
107
|
-
count++;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
return count;
|
|
130
|
+
return listUndoableUserMessageIndices(messages).filter((index) => index >= startIndex).length;
|
|
111
131
|
}
|
|
112
132
|
/**
|
|
113
133
|
* Return all undoable user messages with their UI indices and text.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message-utils.js","sourceRoot":"","sources":["../../../source/utils/conversation/message-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEzE
|
|
1
|
+
{"version":3,"file":"message-utils.js","sourceRoot":"","sources":["../../../source/utils/conversation/message-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { RewindTarget } from '../../services/conversation/conversation-store.js';
|
|
2
|
+
/**
|
|
3
|
+
* UI projection of one authoritative rewind target. `uiIndex` is deliberately
|
|
4
|
+
* a display-only boundary; the domain operation receives only `targetId`.
|
|
5
|
+
*/
|
|
6
|
+
export interface RewindItem {
|
|
7
|
+
targetId: RewindTarget['id'];
|
|
8
|
+
uiIndex: number;
|
|
9
|
+
turnNumber: number;
|
|
10
|
+
text: string;
|
|
11
|
+
imageCount: number;
|
|
12
|
+
discardedTurns: number;
|
|
13
|
+
discardedReplies: number;
|
|
14
|
+
discardedFiles: string[];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Join the rendered user messages with the store's discard statistics.
|
|
18
|
+
*
|
|
19
|
+
* Target identity and turn numbers come from the store. The UI contributes
|
|
20
|
+
* only the rendered-message boundary used to trim its projection *after* a
|
|
21
|
+
* domain rewind has succeeded.
|
|
22
|
+
*
|
|
23
|
+
* The two lists are aligned from the newest turn backwards: the store can be
|
|
24
|
+
* trimmed independently of the rendered transcript, and it is the recent turns
|
|
25
|
+
* whose costs a user is deciding about. A turn with no store counterpart is not
|
|
26
|
+
* selectable because the rewind operation could not resolve it authoritatively.
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildRewindItems(userMessages: readonly {
|
|
29
|
+
uiIndex: number;
|
|
30
|
+
text: string;
|
|
31
|
+
}[], storeTargets: readonly RewindTarget[]): RewindItem[];
|
|
32
|
+
//# sourceMappingURL=rewind-items.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rewind-items.d.ts","sourceRoot":"","sources":["../../../source/utils/conversation/rewind-items.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mDAAmD,CAAC;AAEtF;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,SAAS;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,EAC1D,YAAY,EAAE,SAAS,YAAY,EAAE,GACpC,UAAU,EAAE,CAoBd"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Join the rendered user messages with the store's discard statistics.
|
|
3
|
+
*
|
|
4
|
+
* Target identity and turn numbers come from the store. The UI contributes
|
|
5
|
+
* only the rendered-message boundary used to trim its projection *after* a
|
|
6
|
+
* domain rewind has succeeded.
|
|
7
|
+
*
|
|
8
|
+
* The two lists are aligned from the newest turn backwards: the store can be
|
|
9
|
+
* trimmed independently of the rendered transcript, and it is the recent turns
|
|
10
|
+
* whose costs a user is deciding about. A turn with no store counterpart is not
|
|
11
|
+
* selectable because the rewind operation could not resolve it authoritatively.
|
|
12
|
+
*/
|
|
13
|
+
export function buildRewindItems(userMessages, storeTargets) {
|
|
14
|
+
const offset = storeTargets.length - userMessages.length;
|
|
15
|
+
return userMessages.flatMap((message, position) => {
|
|
16
|
+
const stats = storeTargets[position + offset];
|
|
17
|
+
if (!stats)
|
|
18
|
+
return [];
|
|
19
|
+
return [
|
|
20
|
+
{
|
|
21
|
+
targetId: stats.id,
|
|
22
|
+
uiIndex: message.uiIndex,
|
|
23
|
+
turnNumber: stats.turnNumber,
|
|
24
|
+
text: message.text,
|
|
25
|
+
imageCount: stats.imageCount,
|
|
26
|
+
discardedTurns: stats.discardedTurns,
|
|
27
|
+
discardedReplies: stats.discardedReplies,
|
|
28
|
+
discardedFiles: stats.discardedFiles,
|
|
29
|
+
},
|
|
30
|
+
];
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=rewind-items.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rewind-items.js","sourceRoot":"","sources":["../../../source/utils/conversation/rewind-items.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAA0D,EAC1D,YAAqC;IAErC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC;IAEzD,OAAO,YAAY,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;QAChD,MAAM,KAAK,GAAG,YAAY,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,EAAE,CAAC;QAEtB,OAAO;YACL;gBACE,QAAQ,EAAE,KAAK,CAAC,EAAE;gBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;gBACxB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;gBACxC,cAAc,EAAE,KAAK,CAAC,cAAc;aACrC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export type CopySelection = Readonly<{
|
|
2
|
+
label: string;
|
|
3
|
+
text: string;
|
|
4
|
+
}>;
|
|
5
|
+
/** Extract fenced Markdown code blocks, excluding the fence and language hint. */
|
|
6
|
+
export declare function extractFencedCodeBlocks(text: string): string[];
|
|
7
|
+
export declare function buildCopySelections(response: string): CopySelection[];
|
|
8
|
+
//# sourceMappingURL=copy-selections.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-selections.d.ts","sourceRoot":"","sources":["../../source/utils/copy-selections.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,CAAC,CAAC;AAWH,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAgC9D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAQrE"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
const OPEN_FENCE_PATTERN = /^\s*(`{3,}|~{3,})([^\n]*)$/;
|
|
2
|
+
const CLOSE_FENCE_PATTERN = /^\s*([`~]{3,})\s*$/;
|
|
3
|
+
/** Extract fenced Markdown code blocks, excluding the fence and language hint. */
|
|
4
|
+
export function extractFencedCodeBlocks(text) {
|
|
5
|
+
const lines = text.split(/\r?\n/);
|
|
6
|
+
const blocks = [];
|
|
7
|
+
let openFence = null;
|
|
8
|
+
for (let index = 0; index < lines.length; index++) {
|
|
9
|
+
const line = lines[index] ?? '';
|
|
10
|
+
if (!openFence) {
|
|
11
|
+
const match = line.match(OPEN_FENCE_PATTERN);
|
|
12
|
+
if (!match)
|
|
13
|
+
continue;
|
|
14
|
+
const marker = match[1];
|
|
15
|
+
openFence = {
|
|
16
|
+
character: marker[0],
|
|
17
|
+
length: marker.length,
|
|
18
|
+
contentStart: index + 1,
|
|
19
|
+
};
|
|
20
|
+
continue;
|
|
21
|
+
}
|
|
22
|
+
const closeMatch = line.match(CLOSE_FENCE_PATTERN);
|
|
23
|
+
if (!closeMatch)
|
|
24
|
+
continue;
|
|
25
|
+
const marker = closeMatch[1];
|
|
26
|
+
if (marker[0] !== openFence.character || marker.length < openFence.length)
|
|
27
|
+
continue;
|
|
28
|
+
blocks.push(lines.slice(openFence.contentStart, index).join('\n'));
|
|
29
|
+
openFence = null;
|
|
30
|
+
}
|
|
31
|
+
return blocks;
|
|
32
|
+
}
|
|
33
|
+
export function buildCopySelections(response) {
|
|
34
|
+
return [
|
|
35
|
+
{ label: 'Full response', text: response },
|
|
36
|
+
...extractFencedCodeBlocks(response).map((text, index) => ({
|
|
37
|
+
label: `Code block #${index + 1}`,
|
|
38
|
+
text,
|
|
39
|
+
})),
|
|
40
|
+
];
|
|
41
|
+
}
|
|
42
|
+
//# sourceMappingURL=copy-selections.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-selections.js","sourceRoot":"","sources":["../../source/utils/copy-selections.ts"],"names":[],"mappings":"AAWA,MAAM,kBAAkB,GAAG,4BAA4B,CAAC;AACxD,MAAM,mBAAmB,GAAG,oBAAoB,CAAC;AAEjD,kFAAkF;AAClF,MAAM,UAAU,uBAAuB,CAAC,IAAY;IAClD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,SAAS,GAAqB,IAAI,CAAC;IAEvC,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAEhC,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK;gBAAE,SAAS;YAErB,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;YACzB,SAAS,GAAG;gBACV,SAAS,EAAE,MAAM,CAAC,CAAC,CAAc;gBACjC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,KAAK,GAAG,CAAC;aACxB,CAAC;YACF,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU;YAAE,SAAS;QAE1B,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAE,CAAC;QAC9B,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,SAAS,IAAI,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;YAAE,SAAS;QAEpF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACnE,SAAS,GAAG,IAAI,CAAC;IACnB,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,OAAO;QACL,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1C,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YACzD,KAAK,EAAE,eAAe,KAAK,GAAG,CAAC,EAAE;YACjC,IAAI;SACL,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -3,6 +3,16 @@ export interface TurnLimitContext {
|
|
|
3
3
|
turnCount?: number;
|
|
4
4
|
maxTurns?: number;
|
|
5
5
|
}
|
|
6
|
+
/**
|
|
7
|
+
* Reads the turn budget out of whatever context a tool was invoked with.
|
|
8
|
+
*
|
|
9
|
+
* Under `ApplicationRunLoop` the loop owns the count and exposes it as
|
|
10
|
+
* `toolContext.turn`; under the legacy orchestrator path the count is kept on
|
|
11
|
+
* the run's user context by a model-input filter. Tools serve both paths, so
|
|
12
|
+
* this resolves either shape and prefers the loop's, which is authoritative
|
|
13
|
+
* when present.
|
|
14
|
+
*/
|
|
15
|
+
export declare function resolveTurnLimitContext(toolContext: unknown): TurnLimitContext | undefined;
|
|
6
16
|
export declare function injectTurnLimitWarning(output: string, context: unknown): string;
|
|
7
17
|
export declare const injectWarningIntoToolOutput: (output: string, warning: string) => string;
|
|
8
18
|
//# sourceMappingURL=inject-warning-into-tool-output.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject-warning-into-tool-output.d.ts","sourceRoot":"","sources":["../../source/utils/inject-warning-into-tool-output.ts"],"names":[],"mappings":"AAEA,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAS/E;AAED,eAAO,MAAM,2BAA2B,WAAY,MAAM,WAAW,MAAM,KAAG,MA8E7E,CAAC"}
|
|
1
|
+
{"version":3,"file":"inject-warning-into-tool-output.d.ts","sourceRoot":"","sources":["../../source/utils/inject-warning-into-tool-output.ts"],"names":[],"mappings":"AAEA,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAI/D;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,OAAO,GAAG,gBAAgB,GAAG,SAAS,CAO1F;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAS/E;AAED,eAAO,MAAM,2BAA2B,WAAY,MAAM,WAAW,MAAM,KAAG,MA8E7E,CAAC"}
|
|
@@ -4,6 +4,23 @@ export function buildTurnLimitWarning(turnsLeft) {
|
|
|
4
4
|
|
|
5
5
|
[Warning: You are approaching the maximum turn limit. You have ${turnsLeft} turns left. Please prepare to wrap up your work and provide a situation update message describing what has been completed and what remains to be done.]`;
|
|
6
6
|
}
|
|
7
|
+
/**
|
|
8
|
+
* Reads the turn budget out of whatever context a tool was invoked with.
|
|
9
|
+
*
|
|
10
|
+
* Under `ApplicationRunLoop` the loop owns the count and exposes it as
|
|
11
|
+
* `toolContext.turn`; under the legacy orchestrator path the count is kept on
|
|
12
|
+
* the run's user context by a model-input filter. Tools serve both paths, so
|
|
13
|
+
* this resolves either shape and prefers the loop's, which is authoritative
|
|
14
|
+
* when present.
|
|
15
|
+
*/
|
|
16
|
+
export function resolveTurnLimitContext(toolContext) {
|
|
17
|
+
const candidate = toolContext;
|
|
18
|
+
const turn = candidate?.turn;
|
|
19
|
+
if (turn && typeof turn.count === 'number' && typeof turn.max === 'number') {
|
|
20
|
+
return { turnCount: turn.count, maxTurns: turn.max };
|
|
21
|
+
}
|
|
22
|
+
return candidate?.context;
|
|
23
|
+
}
|
|
7
24
|
export function injectTurnLimitWarning(output, context) {
|
|
8
25
|
const limitContext = context;
|
|
9
26
|
if (limitContext && typeof limitContext.turnCount === 'number' && typeof limitContext.maxTurns === 'number') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"inject-warning-into-tool-output.js","sourceRoot":"","sources":["../../source/utils/inject-warning-into-tool-output.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"inject-warning-into-tool-output.js","sourceRoot":"","sources":["../../source/utils/inject-warning-into-tool-output.ts"],"names":[],"mappings":"AAAA,MAAM,wBAAwB,GAAG,CAAC,CAAC;AAEnC,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,OAAO;;iEAEwD,SAAS,0JAA0J,CAAC;AACrO,CAAC;AAOD;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAAoB;IAC1D,MAAM,SAAS,GAAG,WAAkG,CAAC;IACrH,MAAM,IAAI,GAAG,SAAS,EAAE,IAAI,CAAC;IAC7B,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC3E,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IACvD,CAAC;IACD,OAAO,SAAS,EAAE,OAAO,CAAC;AAC5B,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,MAAc,EAAE,OAAgB;IACrE,MAAM,YAAY,GAAG,OAAuC,CAAC;IAC7D,IAAI,YAAY,IAAI,OAAO,YAAY,CAAC,SAAS,KAAK,QAAQ,IAAI,OAAO,YAAY,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;QAC5G,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,GAAG,YAAY,CAAC,SAAS,CAAC;QACjE,IAAI,SAAS,IAAI,CAAC,IAAI,SAAS,IAAI,wBAAwB,EAAE,CAAC;YAC5D,OAAO,2BAA2B,CAAC,MAAM,EAAE,qBAAqB,CAAC,SAAS,CAAC,CAAC,CAAC;QAC/E,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,MAAc,EAAE,OAAe,EAAU,EAAE;IACrF,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,MAA2B,EAAW,EAAE;QAC7D,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,CAAC;YACtE,IAAI,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACtC,MAAM,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC;gBACzB,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,CAAC,GAAY,EAAW,EAAE;QAC9C,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,OAAO,GAAG,GAAG,OAAO,CAAC;QAClD,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,MAAM,GAAG,GAA0B,CAAC;YAC1C,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAClC,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAElC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC;QAC1C,CAAC;QAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,GAAG,GAAG,MAA6B,CAAC;YAE1C,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC9B,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;oBACtC,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;oBACrC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;wBAC3G,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAChD,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;oBACtD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;gBACtD,CAAC;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;YAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;oBAClC,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;oBACjC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;wBAC3G,MAAM,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;oBAC5C,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;gBACD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAChC,CAAC;YAED,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/B,CAAC;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QAC7B,CAAC;QAED,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,GAAG,OAAO,CAAC;IAC1B,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-command.d.ts","sourceRoot":"","sources":["../../source/utils/settings-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAMrG,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,
|
|
1
|
+
{"version":3,"file":"settings-command.d.ts","sourceRoot":"","sources":["../../source/utils/settings-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,KAAK,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,0CAA0C,CAAC;AAMrG,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAqBlD;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,MAAM,CAmI3E;AAED,UAAU,yBAAyB;IACjC,eAAe,EAAE,eAAe,CAAC;IACjC,gBAAgB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,mBAAmB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACxD,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,qBAAqB,CAAC,EACpC,eAAe,EACf,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,GACb,EAAE,yBAAyB,GAAG,YAAY,CAsI1C"}
|
|
@@ -13,6 +13,15 @@ export function parseSettingValue(raw) {
|
|
|
13
13
|
if (!Number.isNaN(asNumber) && value !== '') {
|
|
14
14
|
return asNumber;
|
|
15
15
|
}
|
|
16
|
+
if ((value.startsWith('[') && value.endsWith(']')) || (value.startsWith('{') && value.endsWith('}'))) {
|
|
17
|
+
try {
|
|
18
|
+
return JSON.parse(value);
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
// Preserve the original text so the settings schema can report a useful
|
|
22
|
+
// validation error to the caller.
|
|
23
|
+
}
|
|
24
|
+
}
|
|
16
25
|
return value;
|
|
17
26
|
}
|
|
18
27
|
export function formatSettingsSummary(settings) {
|
|
@@ -63,6 +72,16 @@ export function formatSettingsSummary(settings) {
|
|
|
63
72
|
value: settings.agent.useFlexServiceTier.value,
|
|
64
73
|
source: settings.agent.useFlexServiceTier.source,
|
|
65
74
|
},
|
|
75
|
+
{
|
|
76
|
+
key: SETTING_KEYS.AGENT_CONTEXT_COMPACTION_ENABLED,
|
|
77
|
+
value: settings.agent.contextCompaction.enabled.value,
|
|
78
|
+
source: settings.agent.contextCompaction.enabled.source,
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
key: SETTING_KEYS.AGENT_CONTEXT_COMPACTION_COMPACT_THRESHOLD,
|
|
82
|
+
value: settings.agent.contextCompaction.compactThreshold.value,
|
|
83
|
+
source: settings.agent.contextCompaction.compactThreshold.source,
|
|
84
|
+
},
|
|
66
85
|
// agent.provider is hidden - it can only be changed in a new conversation via model menu
|
|
67
86
|
{
|
|
68
87
|
key: SETTING_KEYS.AGENT_MAX_TURNS,
|
|
@@ -89,6 +108,11 @@ export function formatSettingsSummary(settings) {
|
|
|
89
108
|
value: settings.shell.timeout.value,
|
|
90
109
|
source: settings.shell.timeout.source,
|
|
91
110
|
},
|
|
111
|
+
{
|
|
112
|
+
key: SETTING_KEYS.SHELL_BACKGROUND_TIMEOUT,
|
|
113
|
+
value: settings.shell.backgroundTimeout.value,
|
|
114
|
+
source: settings.shell.backgroundTimeout.source,
|
|
115
|
+
},
|
|
92
116
|
{
|
|
93
117
|
key: SETTING_KEYS.SHELL_MAX_OUTPUT_LINES,
|
|
94
118
|
value: settings.shell.maxOutputLines.value,
|
|
@@ -146,7 +170,7 @@ export function createSettingsCommand({ settingsService, addSystemMessage, apply
|
|
|
146
170
|
const parts = trimmedArgs.split(/\s+/).filter(Boolean);
|
|
147
171
|
if (parts.length === 1) {
|
|
148
172
|
const key = parts[0];
|
|
149
|
-
const value = settingsService.
|
|
173
|
+
const value = settingsService.getDynamic(key);
|
|
150
174
|
const source = settingsService.getSource(key);
|
|
151
175
|
addSystemMessage(`${key}: ${value} (${source})`);
|
|
152
176
|
return true;
|
|
@@ -156,7 +180,7 @@ export function createSettingsCommand({ settingsService, addSystemMessage, apply
|
|
|
156
180
|
settingsService.reset(keyToReset);
|
|
157
181
|
addSystemMessage(`Reset ${keyToReset} to default`);
|
|
158
182
|
// Apply runtime effects if applicable after reset
|
|
159
|
-
const resetValue = settingsService.
|
|
183
|
+
const resetValue = settingsService.getDynamic(keyToReset);
|
|
160
184
|
if (applyRuntimeSetting && settingsService.isRuntimeModifiable(keyToReset)) {
|
|
161
185
|
applyRuntimeSetting(keyToReset, resetValue);
|
|
162
186
|
}
|
|
@@ -181,7 +205,7 @@ export function createSettingsCommand({ settingsService, addSystemMessage, apply
|
|
|
181
205
|
}
|
|
182
206
|
// Update provider setting
|
|
183
207
|
const providerKey = modelSettingConfig.providerKey;
|
|
184
|
-
settingsService.
|
|
208
|
+
settingsService.setDynamic(providerKey, provider);
|
|
185
209
|
// Apply runtime provider change
|
|
186
210
|
if (applyRuntimeSetting) {
|
|
187
211
|
applyRuntimeSetting(providerKey, provider);
|
|
@@ -212,11 +236,29 @@ export function createSettingsCommand({ settingsService, addSystemMessage, apply
|
|
|
212
236
|
return true;
|
|
213
237
|
}
|
|
214
238
|
}
|
|
239
|
+
if (key === SETTING_KEYS.AGENT_CONTEXT_COMPACTION_COMPACT_THRESHOLD) {
|
|
240
|
+
if (typeof parsedValue !== 'number' || !Number.isInteger(parsedValue) || parsedValue < 1000) {
|
|
241
|
+
addSystemMessage(`Error: ${SETTING_KEYS.AGENT_CONTEXT_COMPACTION_COMPACT_THRESHOLD} must be a whole number greater than or equal to 1000`);
|
|
242
|
+
return true;
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
// Trust roots are persisted startup configuration rather than a
|
|
246
|
+
// runtime behavior toggle. Keep the write behind the settings service's
|
|
247
|
+
// schema validation so roots cannot be stored as arbitrary values.
|
|
248
|
+
if (key === SETTING_KEYS.HOOKS_TRUSTED_PROJECT_ROOTS) {
|
|
249
|
+
if (!Array.isArray(parsedValue) || parsedValue.some((root) => typeof root !== 'string')) {
|
|
250
|
+
addSystemMessage(`Error: ${key} must be a JSON array of paths`);
|
|
251
|
+
return true;
|
|
252
|
+
}
|
|
253
|
+
settingsService.setPersistentDynamic(key, parsedValue);
|
|
254
|
+
addSystemMessage(`Set ${key} to ${JSON.stringify(parsedValue)}`);
|
|
255
|
+
return true;
|
|
256
|
+
}
|
|
215
257
|
if (!settingsService.isRuntimeModifiable(key)) {
|
|
216
258
|
addSystemMessage(`Cannot modify '${key}' at runtime. Restart required.`);
|
|
217
259
|
return true;
|
|
218
260
|
}
|
|
219
|
-
settingsService.
|
|
261
|
+
settingsService.setDynamic(key, parsedValue);
|
|
220
262
|
if (applyRuntimeSetting) {
|
|
221
263
|
applyRuntimeSetting(key, parsedValue);
|
|
222
264
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"settings-command.js","sourceRoot":"","sources":["../../source/utils/settings-command.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"settings-command.js","sourceRoot":"","sources":["../../source/utils/settings-command.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-logger.js","sourceRoot":"","sources":["../../../source/utils/shell/command-logger.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,eAAiC,EACjC,OAAe,EACf,WAAoB,EACpB,QAAiB;IAEjB,IAAI,CAAC,eAAe,CAAC,GAAG,
|
|
1
|
+
{"version":3,"file":"command-logger.js","sourceRoot":"","sources":["../../../source/utils/shell/command-logger.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,eAAiC,EACjC,OAAe,EACf,WAAoB,EACpB,QAAiB;IAEjB,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAChD,OAAO;IACT,CAAC;IACD,IAAI,eAAe,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,CAAC;QACzD,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,OAAO,GAAG;QACd,SAAS;QACT,OAAO,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,sBAAsB;QAC1D,WAAW;QACX,QAAQ;QACR,GAAG,EAAE,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,YAAY;KAChE,CAAC;IACF,OAAO,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;AAC9D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,eAAiC,EAAE,OAAe;IACnF,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC,EAAE,CAAC;QAChD,OAAO;IACT,CAAC;IACD,IAAI,eAAe,CAAC,GAAG,CAAC,+BAA+B,CAAC,EAAE,CAAC;QACzD,OAAO;IACT,CAAC;IAED,OAAO,CAAC,KAAK,CAAC,qBAAqB,OAAO,EAAE,CAAC,CAAC;AAChD,CAAC"}
|
|
@@ -1,14 +1,15 @@
|
|
|
1
|
+
import type { Word, Redirect } from 'unbash';
|
|
1
2
|
/**
|
|
2
3
|
* Check if a find command has dangerous execution flags (-exec, -execdir, -ok, -okdir, -delete)
|
|
3
4
|
*/
|
|
4
|
-
export declare function hasFindDangerousExecution(args:
|
|
5
|
+
export declare function hasFindDangerousExecution(args: (Word | Redirect)[]): {
|
|
5
6
|
dangerous: boolean;
|
|
6
7
|
reason?: string;
|
|
7
8
|
};
|
|
8
9
|
/**
|
|
9
10
|
* Check for suspicious find flags that warrant YELLOW classification
|
|
10
11
|
*/
|
|
11
|
-
export declare function hasFindSuspiciousFlags(args:
|
|
12
|
+
export declare function hasFindSuspiciousFlags(args: (Word | Redirect)[]): {
|
|
12
13
|
suspicious: boolean;
|
|
13
14
|
reason?: string;
|
|
14
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"find-helpers.d.ts","sourceRoot":"","sources":["../../../../source/utils/shell/command-safety/find-helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"find-helpers.d.ts","sourceRoot":"","sources":["../../../../source/utils/shell/command-safety/find-helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAO7C;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC,EAAE,GAAG;IACpE,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CA6EA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,CAAC,IAAI,GAAG,QAAQ,CAAC,EAAE,GAAG;IACjE,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAoEA"}
|
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
import { extractWordText } from './utils.js';
|
|
2
|
+
function isRedirect(arg) {
|
|
3
|
+
return typeof arg === 'object' && arg !== null && 'operator' in arg;
|
|
4
|
+
}
|
|
2
5
|
/**
|
|
3
6
|
* Check if a find command has dangerous execution flags (-exec, -execdir, -ok, -okdir, -delete)
|
|
4
7
|
*/
|
|
5
8
|
export function hasFindDangerousExecution(args) {
|
|
6
9
|
for (let i = 0; i < args.length; i++) {
|
|
7
|
-
const
|
|
10
|
+
const arg = args[i];
|
|
11
|
+
if (!arg || isRedirect(arg))
|
|
12
|
+
continue;
|
|
13
|
+
const argText = extractWordText(arg);
|
|
8
14
|
if (!argText)
|
|
9
15
|
continue;
|
|
10
16
|
// Check for -delete flag
|
|
@@ -19,7 +25,10 @@ export function hasFindDangerousExecution(args) {
|
|
|
19
25
|
// Find the terminator (; or +)
|
|
20
26
|
let terminatorIndex = -1;
|
|
21
27
|
for (let j = i + 1; j < args.length; j++) {
|
|
22
|
-
const
|
|
28
|
+
const termArg = args[j];
|
|
29
|
+
if (!termArg || isRedirect(termArg))
|
|
30
|
+
continue;
|
|
31
|
+
const term = extractWordText(termArg);
|
|
23
32
|
if (term === ';' || term === '+' || term === '\\;' || term === '\\+') {
|
|
24
33
|
terminatorIndex = j;
|
|
25
34
|
break;
|
|
@@ -31,10 +40,12 @@ export function hasFindDangerousExecution(args) {
|
|
|
31
40
|
const execArgs = args.slice(i + 1, terminatorIndex);
|
|
32
41
|
// Check for redirects (which indicate shell operations). These are suspicious,
|
|
33
42
|
// but not necessarily destructive without knowing the surrounding task.
|
|
34
|
-
const hasRedirect = execArgs.some((a) => a
|
|
43
|
+
const hasRedirect = execArgs.some((a) => isRedirect(a));
|
|
35
44
|
if (hasRedirect)
|
|
36
45
|
continue;
|
|
37
|
-
const execCommand = execArgs
|
|
46
|
+
const execCommand = execArgs
|
|
47
|
+
.map((a) => (isRedirect(a) ? undefined : extractWordText(a)))
|
|
48
|
+
.filter((s) => Boolean(s));
|
|
38
49
|
if (execCommand.length === 0)
|
|
39
50
|
continue;
|
|
40
51
|
const cmdName = execCommand[0];
|
|
@@ -71,7 +82,10 @@ export function hasFindDangerousExecution(args) {
|
|
|
71
82
|
* Check for suspicious find flags that warrant YELLOW classification
|
|
72
83
|
*/
|
|
73
84
|
export function hasFindSuspiciousFlags(args) {
|
|
74
|
-
for (
|
|
85
|
+
for (let i = 0; i < args.length; i++) {
|
|
86
|
+
const arg = args[i];
|
|
87
|
+
if (!arg || isRedirect(arg))
|
|
88
|
+
continue;
|
|
75
89
|
const argText = extractWordText(arg);
|
|
76
90
|
if (!argText)
|
|
77
91
|
continue;
|
|
@@ -92,19 +106,22 @@ export function hasFindSuspiciousFlags(args) {
|
|
|
92
106
|
// SUID/SGID permission searches
|
|
93
107
|
if (argText === '-perm') {
|
|
94
108
|
// Check the next argument for dangerous permission patterns
|
|
95
|
-
const nextIdx =
|
|
109
|
+
const nextIdx = i + 1;
|
|
96
110
|
if (nextIdx < args.length) {
|
|
97
|
-
const
|
|
98
|
-
if (
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
111
|
+
const nextArg = args[nextIdx];
|
|
112
|
+
if (nextArg && !isRedirect(nextArg)) {
|
|
113
|
+
const permValue = extractWordText(nextArg);
|
|
114
|
+
if (permValue) {
|
|
115
|
+
// Numeric SUID/SGID patterns (e.g., -4000, /6000)
|
|
116
|
+
const hasNumericSuid = /[-/]?[2467]000/.test(permValue);
|
|
117
|
+
// Symbolic SUID/SGID patterns (e.g., -u+s, /g+s, +s)
|
|
118
|
+
const hasSymbolicSuid = /[ug]?\+s/.test(permValue);
|
|
119
|
+
if (hasNumericSuid || hasSymbolicSuid) {
|
|
120
|
+
return {
|
|
121
|
+
suspicious: true,
|
|
122
|
+
reason: `find -perm ${permValue} (SUID/SGID search)`,
|
|
123
|
+
};
|
|
124
|
+
}
|
|
108
125
|
}
|
|
109
126
|
}
|
|
110
127
|
}
|