@bastani/atomic 0.9.18-alpha.4 → 0.9.18-alpha.6
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/CHANGELOG.md +115 -0
- package/README.md +3 -3
- package/dist/builtin/intercom/CHANGELOG.md +41 -0
- package/dist/builtin/intercom/README.md +18 -3
- package/dist/builtin/intercom/broker/broker.ts +670 -127
- package/dist/builtin/intercom/broker/client.ts +149 -35
- package/dist/builtin/intercom/broker/delivered-message-cache.ts +497 -37
- package/dist/builtin/intercom/broker/framing.ts +4 -2
- package/dist/builtin/intercom/broker/paths.ts +10 -0
- package/dist/builtin/intercom/broker/pending-send-registry.ts +1 -2
- package/dist/builtin/intercom/broker/send-handler.ts +311 -52
- package/dist/builtin/intercom/broker/send-signature.ts +4 -2
- package/dist/builtin/intercom/broker/socket-writes.ts +103 -0
- package/dist/builtin/intercom/broker/spawn.ts +9 -4
- package/dist/builtin/intercom/index.bundle.mjs +1419 -213
- package/dist/builtin/intercom/package.json +2 -2
- package/dist/builtin/intercom/recoverable-disconnect.ts +52 -0
- package/dist/builtin/intercom/retry-policy.ts +8 -0
- package/dist/builtin/intercom/skills/intercom/SKILL.md +17 -9
- package/dist/builtin/intercom/types.ts +25 -8
- package/dist/builtin/intercom/workflow-stage-path-matching.ts +90 -0
- package/dist/builtin/intercom/workflow-stage-target.ts +57 -0
- package/dist/builtin/mcp/index.bundle.mjs +427 -126
- package/dist/builtin/mcp/package.json +2 -2
- package/dist/builtin/subagents/CHANGELOG.md +19 -0
- package/dist/builtin/subagents/README.md +3 -3
- package/dist/builtin/subagents/agents/code-simplifier.md +2 -2
- package/dist/builtin/subagents/agents/codebase-analyzer.md +2 -2
- package/dist/builtin/subagents/agents/codebase-locator.md +2 -2
- package/dist/builtin/subagents/agents/codebase-online-researcher.md +11 -11
- package/dist/builtin/subagents/agents/codebase-pattern-finder.md +2 -2
- package/dist/builtin/subagents/agents/codebase-research-analyzer.md +2 -2
- package/dist/builtin/subagents/agents/codebase-research-locator.md +2 -2
- package/dist/builtin/subagents/agents/debugger.md +3 -3
- package/dist/builtin/subagents/agents/worker.md +2 -2
- package/dist/builtin/subagents/package.json +3 -3
- package/dist/builtin/subagents/skills/qlty/SKILL.md +29 -101
- package/dist/builtin/subagents/skills/qlty/references/manual-configuration.md +52 -0
- package/dist/builtin/subagents/skills/subagent/SKILL.md +11 -11
- package/dist/builtin/subagents/src/extension/index.bundle.mjs +49 -132
- package/dist/builtin/web-access/package.json +2 -2
- package/dist/builtin/workflows/CHANGELOG.md +44 -0
- package/dist/builtin/workflows/README.md +7 -7
- package/dist/builtin/workflows/builtin/adversarial-verification.js +2 -2
- package/dist/builtin/workflows/builtin/{chunk-szz1ajz9.js → chunk-42s7sw0b.js} +9 -2
- package/dist/builtin/workflows/builtin/{chunk-2dqb5s2q.js → chunk-79fjkcvh.js} +1 -1
- package/dist/builtin/workflows/builtin/{chunk-n58a7v26.js → chunk-b0v2xab1.js} +181 -10
- package/dist/builtin/workflows/builtin/{chunk-fghhy2a5.js → chunk-ed4jfn5t.js} +23 -5
- package/dist/builtin/workflows/builtin/{chunk-h3r2vkzc.js → chunk-hqpe2cyx.js} +60 -21
- package/dist/builtin/workflows/builtin/{chunk-hzzn6adg.js → chunk-k3w87x8y.js} +1 -1
- package/dist/builtin/workflows/builtin/{chunk-82ha8p41.js → chunk-n8h4yyew.js} +1 -1
- package/dist/builtin/workflows/builtin/{chunk-qwzvgxnq.js → chunk-reqr3sr3.js} +1 -1
- package/dist/builtin/workflows/builtin/{chunk-c53y8bdh.js → chunk-wgccch41.js} +1 -1
- package/dist/builtin/workflows/builtin/{chunk-0x6e303p.js → chunk-zbekjqew.js} +20 -7
- package/dist/builtin/workflows/builtin/{chunk-29wrp38a.js → chunk-ze5x3d1r.js} +1 -1
- package/dist/builtin/workflows/builtin/classify-and-act.js +2 -2
- package/dist/builtin/workflows/builtin/fan-out-and-synthesize.js +2 -2
- package/dist/builtin/workflows/builtin/generate-and-filter.js +2 -2
- package/dist/builtin/workflows/builtin/goal.js +3 -3
- package/dist/builtin/workflows/builtin/index.js +11 -11
- package/dist/builtin/workflows/builtin/loop-until-done.js +2 -2
- package/dist/builtin/workflows/builtin/open-claude-design.js +2 -2
- package/dist/builtin/workflows/builtin/ralph.js +3 -3
- package/dist/builtin/workflows/builtin/steering-context.js +1 -1
- package/dist/builtin/workflows/builtin/tournament.js +2 -2
- package/dist/builtin/workflows/package.json +2 -2
- package/dist/builtin/workflows/skills/prompt-engineer/SKILL.md +39 -52
- package/dist/builtin/workflows/skills/prompt-engineer/references/advanced_patterns.md +9 -37
- package/dist/builtin/workflows/skills/prompt-engineer/references/claude_fable_5.md +49 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/claude_fable_5_1.md +57 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/claude_opus_4_8.md +57 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/claude_opus_5.md +47 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/claude_sonnet_5.md +57 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/gpt_5_5.md +60 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/gpt_5_6.md +58 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/gpt_6_astra.md +58 -0
- package/dist/builtin/workflows/skills/prompt-engineer/references/quality_improvement.md +18 -4
- package/dist/builtin/workflows/src/extension/index.bundle.mjs +3194 -737
- package/dist/builtin/workflows/src/index.js +899 -436
- package/dist/builtin/workflows/src/shared/authoring-contract-stage.d.ts +0 -10
- package/dist/cli/list-models.d.ts.map +1 -1
- package/dist/cli/list-models.js +4 -0
- package/dist/cli/list-models.js.map +1 -1
- package/dist/client/index.d.ts +1 -2
- package/dist/client/index.d.ts.map +1 -1
- package/dist/client/index.js +1 -2
- package/dist/client/index.js.map +1 -1
- package/dist/config.d.ts +0 -9
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +0 -45
- package/dist/config.js.map +1 -1
- package/dist/core/agent-session-compaction.d.ts.map +1 -1
- package/dist/core/agent-session-compaction.js +8 -6
- package/dist/core/agent-session-compaction.js.map +1 -1
- package/dist/core/agent-session-methods.d.ts +1 -0
- package/dist/core/agent-session-methods.d.ts.map +1 -1
- package/dist/core/agent-session-methods.js.map +1 -1
- package/dist/core/agent-session-models.d.ts.map +1 -1
- package/dist/core/agent-session-models.js +3 -4
- package/dist/core/agent-session-models.js.map +1 -1
- package/dist/core/agent-session-queue-pause.d.ts.map +1 -1
- package/dist/core/agent-session-queue-pause.js +6 -0
- package/dist/core/agent-session-queue-pause.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +15 -7
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-tool-hooks.js +1 -1
- package/dist/core/agent-session-tool-hooks.js.map +1 -1
- package/dist/core/agent-session-tree.d.ts.map +1 -1
- package/dist/core/agent-session-tree.js +8 -0
- package/dist/core/agent-session-tree.js.map +1 -1
- package/dist/core/agent-session.d.ts +2 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +2 -0
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/anthropic-thinking-guard.d.ts.map +1 -1
- package/dist/core/anthropic-thinking-guard.js +71 -5
- package/dist/core/anthropic-thinking-guard.js.map +1 -1
- package/dist/core/compaction/branch-summarization.d.ts +2 -2
- package/dist/core/compaction/branch-summarization.d.ts.map +1 -1
- package/dist/core/compaction/branch-summarization.js +4 -4
- package/dist/core/compaction/branch-summarization.js.map +1 -1
- package/dist/core/extensions/api-types.d.ts +8 -2
- package/dist/core/extensions/api-types.d.ts.map +1 -1
- package/dist/core/extensions/api-types.js.map +1 -1
- package/dist/core/extensions/context-types.d.ts +12 -0
- package/dist/core/extensions/context-types.d.ts.map +1 -1
- package/dist/core/extensions/context-types.js.map +1 -1
- package/dist/core/extensions/provider-types.d.ts +2 -2
- package/dist/core/extensions/provider-types.d.ts.map +1 -1
- package/dist/core/extensions/provider-types.js.map +1 -1
- package/dist/core/extensions/runner-shortcuts.d.ts.map +1 -1
- package/dist/core/extensions/runner-shortcuts.js +0 -1
- package/dist/core/extensions/runner-shortcuts.js.map +1 -1
- package/dist/core/fast-model-routing-transport.d.ts +12 -0
- package/dist/core/fast-model-routing-transport.d.ts.map +1 -0
- package/dist/core/{codex-fast-mode-transport.js → fast-model-routing-transport.js} +29 -29
- package/dist/core/fast-model-routing-transport.js.map +1 -0
- package/dist/core/fast-model-routing.d.ts +57 -0
- package/dist/core/fast-model-routing.d.ts.map +1 -0
- package/dist/core/fast-model-routing.js +201 -0
- package/dist/core/fast-model-routing.js.map +1 -0
- package/dist/core/fast-model-variants.d.ts +98 -0
- package/dist/core/fast-model-variants.d.ts.map +1 -0
- package/dist/core/fast-model-variants.js +148 -0
- package/dist/core/fast-model-variants.js.map +1 -0
- package/dist/core/http-dispatcher.d.ts.map +1 -1
- package/dist/core/http-dispatcher.js +4 -2
- package/dist/core/http-dispatcher.js.map +1 -1
- package/dist/core/keybindings.d.ts +0 -10
- package/dist/core/keybindings.d.ts.map +1 -1
- package/dist/core/keybindings.js +0 -8
- package/dist/core/keybindings.js.map +1 -1
- package/dist/core/messages.d.ts +1 -1
- package/dist/core/messages.d.ts.map +1 -1
- package/dist/core/messages.js.map +1 -1
- package/dist/core/model-config.d.ts +24 -4
- package/dist/core/model-config.d.ts.map +1 -1
- package/dist/core/model-config.js +6 -2
- package/dist/core/model-config.js.map +1 -1
- package/dist/core/model-resolver-initial.js +1 -1
- package/dist/core/model-resolver-initial.js.map +1 -1
- package/dist/core/model-runtime-streaming.d.ts +14 -1
- package/dist/core/model-runtime-streaming.d.ts.map +1 -1
- package/dist/core/model-runtime-streaming.js +25 -3
- package/dist/core/model-runtime-streaming.js.map +1 -1
- package/dist/core/model-runtime.d.ts +39 -2
- package/dist/core/model-runtime.d.ts.map +1 -1
- package/dist/core/model-runtime.js +91 -7
- package/dist/core/model-runtime.js.map +1 -1
- package/dist/core/provider-composer-internal.d.ts +1 -1
- package/dist/core/provider-composer-internal.d.ts.map +1 -1
- package/dist/core/provider-composer-internal.js +8 -2
- package/dist/core/provider-composer-internal.js.map +1 -1
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +21 -18
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/session-manager-archive.d.ts.map +1 -1
- package/dist/core/session-manager-archive.js +25 -2
- package/dist/core/session-manager-archive.js.map +1 -1
- package/dist/core/settings-manager-core.d.ts +0 -2
- package/dist/core/settings-manager-core.d.ts.map +1 -1
- package/dist/core/settings-manager-core.js +2 -9
- package/dist/core/settings-manager-core.js.map +1 -1
- package/dist/core/settings-manager-internals.d.ts +0 -1
- package/dist/core/settings-manager-internals.d.ts.map +1 -1
- package/dist/core/settings-manager-internals.js.map +1 -1
- package/dist/core/settings-manager-ui-accessors.d.ts +0 -8
- package/dist/core/settings-manager-ui-accessors.d.ts.map +1 -1
- package/dist/core/settings-manager-ui-accessors.js +0 -53
- package/dist/core/settings-manager-ui-accessors.js.map +1 -1
- package/dist/core/settings-manager.d.ts +1 -1
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-types.d.ts +0 -5
- package/dist/core/settings-types.d.ts.map +1 -1
- package/dist/core/settings-types.js.map +1 -1
- package/dist/core/skills.d.ts +1 -1
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +4 -2
- package/dist/core/skills.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +0 -1
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/system-prompt.js +7 -7
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +10 -7
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.d.ts +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +153 -8
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js +9 -8
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +4 -3
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/hashline.d.ts +2 -2
- package/dist/core/tools/hashline.d.ts.map +1 -1
- package/dist/core/tools/hashline.js +40 -10
- package/dist/core/tools/hashline.js.map +1 -1
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +2 -2
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +12 -11
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/search.d.ts.map +1 -1
- package/dist/core/tools/search.js +20 -19
- package/dist/core/tools/search.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +22 -21
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/workflow-stage-admission.d.ts +6 -0
- package/dist/core/workflow-stage-admission.d.ts.map +1 -1
- package/dist/core/workflow-stage-admission.js +14 -0
- package/dist/core/workflow-stage-admission.js.map +1 -1
- package/dist/index-extensions.d.ts +1 -1
- package/dist/index-extensions.d.ts.map +1 -1
- package/dist/index-extensions.js.map +1 -1
- package/dist/index.d.ts +5 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -5
- package/dist/index.js.map +1 -1
- package/dist/modes/interactive/components/atomic-working-status.d.ts +4 -0
- package/dist/modes/interactive/components/atomic-working-status.d.ts.map +1 -1
- package/dist/modes/interactive/components/atomic-working-status.js +26 -1
- package/dist/modes/interactive/components/atomic-working-status.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts +7 -0
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js +43 -0
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +0 -6
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -2
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +0 -1
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +12 -25
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.d.ts +2 -5
- package/dist/modes/interactive/components/scoped-models-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/scoped-models-selector.js +16 -34
- package/dist/modes/interactive/components/scoped-models-selector.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-items.js +10 -5
- package/dist/modes/interactive/components/settings-selector-items.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.d.ts +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector-submenus.js +10 -7
- package/dist/modes/interactive/components/settings-selector-submenus.js.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.d.ts +1 -2
- package/dist/modes/interactive/components/thinking-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/thinking-selector.js +6 -13
- package/dist/modes/interactive/components/thinking-selector.js.map +1 -1
- package/dist/modes/interactive/components/transcript-follow-indicator.js +3 -3
- package/dist/modes/interactive/components/transcript-follow-indicator.js.map +1 -1
- package/dist/modes/interactive/components/trust-selector.js +2 -2
- package/dist/modes/interactive/components/trust-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-agent-events.js +8 -8
- package/dist/modes/interactive/interactive-agent-events.js.map +1 -1
- package/dist/modes/interactive/interactive-autocomplete.js +5 -16
- package/dist/modes/interactive/interactive-autocomplete.js.map +1 -1
- package/dist/modes/interactive/interactive-bash-compact.js +2 -9
- package/dist/modes/interactive/interactive-bash-compact.js.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-deferred-startup.js +3 -0
- package/dist/modes/interactive/interactive-deferred-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-editor-actions.js +2 -2
- package/dist/modes/interactive/interactive-editor-actions.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-custom-ui.js +1 -0
- package/dist/modes/interactive/interactive-extension-custom-ui.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-dialogs.js +7 -0
- package/dist/modes/interactive/interactive-extension-dialogs.js.map +1 -1
- package/dist/modes/interactive/interactive-extension-runtime.js +20 -10
- package/dist/modes/interactive/interactive-extension-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-hotkeys-debug.js +1 -5
- package/dist/modes/interactive/interactive-hotkeys-debug.js.map +1 -1
- package/dist/modes/interactive/interactive-initial-session-binding.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-initial-session-binding.js +3 -0
- package/dist/modes/interactive/interactive-initial-session-binding.js.map +1 -1
- package/dist/modes/interactive/interactive-input-handling.js +0 -8
- package/dist/modes/interactive/interactive-input-handling.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.d.ts +5 -1
- package/dist/modes/interactive/interactive-mode-base.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-base.js +15 -9
- package/dist/modes/interactive/interactive-mode-base.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.d.ts +1 -3
- package/dist/modes/interactive/interactive-mode-deps.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-deps.js +1 -3
- package/dist/modes/interactive/interactive-mode-deps.js.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.d.ts +9 -12
- package/dist/modes/interactive/interactive-mode-surface.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode-surface.js.map +1 -1
- package/dist/modes/interactive/interactive-model-routing.js +10 -13
- package/dist/modes/interactive/interactive-model-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-render-chat.js +29 -0
- package/dist/modes/interactive/interactive-render-chat.js.map +1 -1
- package/dist/modes/interactive/interactive-selectors.js +2 -32
- package/dist/modes/interactive/interactive-selectors.js.map +1 -1
- package/dist/modes/interactive/interactive-session-routing.js +1 -5
- package/dist/modes/interactive/interactive-session-routing.js.map +1 -1
- package/dist/modes/interactive/interactive-session-runtime.js +1 -5
- package/dist/modes/interactive/interactive-session-runtime.js.map +1 -1
- package/dist/modes/interactive/interactive-slash-commands.js +6 -13
- package/dist/modes/interactive/interactive-slash-commands.js.map +1 -1
- package/dist/modes/interactive/interactive-startup.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-startup.js +19 -13
- package/dist/modes/interactive/interactive-startup.js.map +1 -1
- package/dist/modes/interactive/interactive-tui.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-tui.js +27 -3
- package/dist/modes/interactive/interactive-tui.js.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.d.ts.map +1 -1
- package/dist/modes/interactive-engine/engine-custom-ui.js +1 -0
- package/dist/modes/interactive-engine/engine-custom-ui.js.map +1 -1
- package/dist/modes/interactive-engine/isolated-runtime.d.ts.map +1 -1
- package/dist/modes/interactive-engine/isolated-runtime.js +4 -1
- package/dist/modes/interactive-engine/isolated-runtime.js.map +1 -1
- package/dist/utils/child-process.d.ts.map +1 -1
- package/dist/utils/child-process.js +13 -6
- package/dist/utils/child-process.js.map +1 -1
- package/dist/utils/exif-orientation.d.ts.map +1 -1
- package/dist/utils/exif-orientation.js +2 -3
- package/dist/utils/exif-orientation.js.map +1 -1
- package/dist/utils/tools-manager.d.ts +1 -0
- package/dist/utils/tools-manager.d.ts.map +1 -1
- package/dist/utils/tools-manager.js +33 -18
- package/dist/utils/tools-manager.js.map +1 -1
- package/docs/compaction.md +2 -0
- package/docs/custom-provider.md +4 -1
- package/docs/docs.json +14 -2
- package/docs/extensions.md +11 -4
- package/docs/intercom.md +33 -8
- package/docs/keybindings.md +8 -6
- package/docs/models/evals.md +394 -0
- package/docs/models/model-selection.md +60 -25
- package/docs/models/pareto-efficiency.md +33 -15
- package/docs/models.md +80 -1
- package/docs/packages.md +2 -2
- package/docs/providers.md +44 -20
- package/docs/quickstart.md +8 -6
- package/docs/rpc.md +3 -3
- package/docs/sdk.md +2 -16
- package/docs/settings.md +19 -22
- package/docs/skills.md +4 -2
- package/docs/subagents.md +9 -3
- package/docs/terminal-setup.md +15 -0
- package/docs/tools/edit.md +373 -0
- package/docs/tools.md +3 -7
- package/docs/tui.md +2 -1
- package/docs/usage.md +3 -5
- package/docs/workflows/api-reference.md +1395 -0
- package/docs/workflows/authoring.md +678 -0
- package/docs/workflows/builtins.md +245 -0
- package/docs/workflows/operations.md +811 -0
- package/docs/workflows/reliable-design.md +2099 -0
- package/docs/workflows/verification.md +62 -0
- package/docs/workflows.md +15 -5183
- package/npm-shrinkwrap.json +584 -69
- package/package.json +7 -7
- package/dist/client/remote-session.d.ts +0 -64
- package/dist/client/remote-session.d.ts.map +0 -1
- package/dist/client/remote-session.js +0 -351
- package/dist/client/remote-session.js.map +0 -1
- package/dist/client/transcript.d.ts +0 -12
- package/dist/client/transcript.d.ts.map +0 -1
- package/dist/client/transcript.js +0 -98
- package/dist/client/transcript.js.map +0 -1
- package/dist/core/codex-fast-mode-transport.d.ts +0 -12
- package/dist/core/codex-fast-mode-transport.d.ts.map +0 -1
- package/dist/core/codex-fast-mode-transport.js.map +0 -1
- package/dist/core/codex-fast-mode.d.ts +0 -53
- package/dist/core/codex-fast-mode.d.ts.map +0 -1
- package/dist/core/codex-fast-mode.js +0 -249
- package/dist/core/codex-fast-mode.js.map +0 -1
- package/dist/modes/interactive/components/fast-mode-selector.d.ts +0 -27
- package/dist/modes/interactive/components/fast-mode-selector.d.ts.map +0 -1
- package/dist/modes/interactive/components/fast-mode-selector.js +0 -107
- package/dist/modes/interactive/components/fast-mode-selector.js.map +0 -1
- package/dist/server/create-harness.d.ts +0 -53
- package/dist/server/create-harness.d.ts.map +0 -1
- package/dist/server/create-harness.js +0 -360
- package/dist/server/create-harness.js.map +0 -1
- package/docs/models/artificial-analysis-index.md +0 -83
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-base.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-base.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Shared state and constructor wiring for interactive mode.\n * Responsibility-specific behavior is installed by sibling modules.\n */\nimport {\n\tisKeyRelease,\n\tisViewportTUI,\n\ttype ScrollView,\n\tsetCapabilityOverrides,\n\ttype TuiInputListener,\n} from \"@earendil-works/pi-tui\";\n\nimport type { AgentSessionQueuePauseControl } from \"../../core/agent-session-methods.ts\";\nimport type { MarkdownTransformer } from \"../../core/extensions/types.ts\";\nimport type { FullscreenExitOutput, MermaidRenderingMode } from \"../../core/settings-manager.ts\";\nimport type { EarlyInputSnapshot } from \"../../main-early-input.ts\";\nimport { readClipboardText } from \"../../utils/clipboard.ts\";\nimport { renderEngineDiagnostic } from \"../interactive-engine/engine-diagnostic-view.ts\";\nimport { attachInteractiveEngineHost } from \"../interactive-engine/extension-ui-bridge.ts\";\nimport type { RemoteToolExecutionComponent } from \"../interactive-engine/remote-renderer.ts\";\nimport { KeybindingsReloadCoordinator } from \"../rpc/rpc-keybindings-reload.ts\";\nimport type { AtomicWorkingLoader } from \"./components/atomic-working-status.ts\";\nimport { createMermaidMarkdownTransformer } from \"./components/mermaid.ts\";\nimport type { TranscriptOverlayReserve } from \"./components/reserved-bottom-overlay.ts\";\nimport {\n\ttype AgentSession,\n\ttype AgentSessionRuntime,\n\ttype AssistantMessage,\n\ttype AssistantMessageComponent,\n\ttype AutocompleteProvider,\n\ttype AutocompleteProviderFactory,\n\ttype BashExecutionComponent,\n\ttype Component,\n\tContainer,\n\ttype CountdownTimer,\n\tCustomEditor,\n\ttype EditorComponent,\n\ttype EditorFactory,\n\ttype ExtensionEditorComponent,\n\ttype ExtensionInputComponent,\n\ttype ExtensionSelectorComponent,\n\tFooterComponent,\n\tFooterDataProvider,\n\tgetEditorTheme,\n\ttype HostCustomUiStateListener,\n\tInteractiveThemeController,\n\tKeybindingsManager,\n\ttype Loader,\n\ttype LoaderIndicatorOptions,\n\ttype Spacer,\n\tsetKeybindings,\n\tsetRegisteredThemes,\n\ttype Text,\n\ttype ToolExecutionComponent,\n\ttype TUI,\n\ttheme,\n\tUsageMeterComponent,\n\tVERSION,\n} from \"./interactive-mode-deps.ts\";\nimport type {} from \"./interactive-mode-surface.ts\";\nimport type { CompactionQueuedMessage, InteractiveModeOptions } from \"./interactive-mode-types.ts\";\nimport { StartupChatContainer } from \"./interactive-startup-chat-container.ts\";\nimport type { InteractiveSubmission } from \"./interactive-submission.ts\";\nimport {\n\tcreateInteractiveTui,\n\tcreateInteractiveTuiReference,\n\thandleFocusedOverlayInternalUiAction,\n\ttype InteractiveTui,\n\ttype InternalUiActionResult,\n} from \"./interactive-tui.ts\";\n\n/** Move the transcript and nothing else: what a reserving overlay may release. */\nconst FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS = [\n\t\"tui.altScreen.pageUp\",\n\t\"tui.altScreen.pageDown\",\n\t\"tui.altScreen.halfPageUp\",\n\t\"tui.altScreen.halfPageDown\",\n\t\"tui.altScreen.lineUp\",\n\t\"tui.altScreen.lineDown\",\n\t\"tui.altScreen.previousPrompt\",\n\t\"tui.altScreen.nextPrompt\",\n\t\"tui.altScreen.top\",\n\t\"tui.altScreen.bottom\",\n] as const;\n\nconst FULLSCREEN_VIEWPORT_ACTIONS = FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS;\n\nexport function isFullscreenViewportAction(data: string, keybindings: KeybindingsManager): boolean {\n\treturn FULLSCREEN_VIEWPORT_ACTIONS.some((action) => keybindings.matches(data, action));\n}\n\n/**\n * Whether a key scrolls the transcript. A reserving overlay — the\n * `ask_user_question` dialog, an extension component with\n * `reserveTranscriptRows` — declines these so the strip above it still pages\n * and jumps (#2378), and keeps everything else.\n */\nexport function isFullscreenTranscriptScrollAction(data: string, keybindings: KeybindingsManager): boolean {\n\treturn FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS.some((action) => keybindings.matches(data, action));\n}\n\n/**\n * Decide whether the fullscreen viewport should run before the focused\n * component. `isMouseInput` is classified by pi-tui's own mouse predicate in\n * `AtomicTuiAltScreen`, so this policy does not duplicate terminal grammars.\n * Mouse deferral is limited to actual overlays so inline components do not\n * disable pi-tui's application-owned transcript selection path.\n *\n * **Who owns viewport keys while an overlay is focused.** pi-tui 0.84.2 added\n * `shouldDeferViewportInputToOverlay()` (upstream #7894) and answers \"the\n * overlay\". Atomic answers \"the overlay first, the transcript with whatever it\n * declines\" (#2378 / PR #2381): the actions in `FULLSCREEN_VIEWPORT_ACTIONS`\n * and wheel reports are offered to the focused overlay, and\n * `AtomicTuiAltScreen` replays what it does not consume into pi-tui's viewport\n * listener. Atomic's answer stands, because a mounted dialog that keeps its\n * selection keys must not also freeze the transcript behind it.\n *\n * **The list covers every `tui.altScreen.*` scroll action pi-tui defines.**\n * An action a focused overlay declines still reaches the transcript, so the\n * shortcut is never simply lost.\n *\n * **A focused overlay with no `handleInput` is still an overlay.** The handler\n * is optional — `ExtensionCustomComponent` marks it `handleInput?` and\n * `docs/tui.md` documents it as optional — and a component that cannot answer\n * declines by definition. Answering \"the viewport owns it\" for that shape\n * would hand the key to pi-tui, whose native deferral then drops it because an\n * overlay holds focus, so the transcript would freeze behind a component that\n * never asked for the key. A handler-less overlay therefore takes the same\n * route as one that returns `false`: nothing to offer, then replay. Only a\n * focused component that is *not* an overlay keeps the shortcut, because\n * pi-tui defers nothing to it.\n */\nexport function shouldHandleFullscreenViewportInput(\n\tfocused: Component | null,\n\teditor: Component,\n\tdata: string,\n\tisMouseInput: boolean,\n\tfocusedIsOverlay: boolean,\n\tkeybindings: KeybindingsManager,\n\t_focusedIsViewportSearch = false,\n): boolean {\n\tif (focused === editor || !focused) return true;\n\tif (!focused.handleInput && !focusedIsOverlay) return true;\n\tif (isMouseInput) return !focusedIsOverlay;\n\tif (focusedIsOverlay && keybindings.matches(data, \"app.thinking.toggle\")) return false;\n\treturn !isFullscreenViewportAction(data, keybindings);\n}\n\nfunction isCommandLikeStartupInput(text: string): boolean {\n\tconst trimmed = text.trimStart();\n\treturn trimmed.startsWith(\"/\") || trimmed.startsWith(\"!\");\n}\n\nexport function seedStartupInput(\n\tpendingUserInputs: InteractiveSubmission[],\n\teditor: { setText(text: string): void },\n\tstartupInput: EarlyInputSnapshot | undefined,\n\tstartupReplayInputs: string[] = [],\n\tsetStartupDraftText?: (text: string) => void,\n\tsetStartupReplayActiveInput?: (text: string) => void,\n): void {\n\tif (!startupInput) return;\n\tlet commandReplayStarted = false;\n\tfor (const submission of startupInput.submissions) {\n\t\tif (commandReplayStarted) {\n\t\t\tstartupReplayInputs.push(submission);\n\t\t} else if (isCommandLikeStartupInput(submission)) {\n\t\t\tconst commandText = submission.trim();\n\t\t\tcommandReplayStarted = true;\n\t\t\teditor.setText(commandText);\n\t\t\tsetStartupReplayActiveInput?.(commandText);\n\t\t} else {\n\t\t\tpendingUserInputs.push({ text: submission, draft: submission });\n\t\t}\n\t}\n\tif (startupInput.text.length === 0) return;\n\tif (commandReplayStarted) {\n\t\tsetStartupDraftText?.(startupInput.text);\n\t} else {\n\t\teditor.setText(startupInput.text);\n\t}\n}\n\nexport interface InteractiveTuiInputSubscription {\n\thandler: TuiInputListener;\n\tunsubscribe: () => void;\n}\n\nexport class InteractiveModeBase {\n\truntimeHost: AgentSessionRuntime;\n\n\tui: TUI;\n\tprivate renderer: InteractiveTui;\n\n\tprivate readonly shouldHandleViewportInput = (\n\t\tdata: string,\n\t\tisMouseInput: boolean,\n\t\tfocusedIsOverlay: boolean,\n\t\tfocusedIsViewportSearch: boolean,\n\t): boolean => {\n\t\treturn shouldHandleFullscreenViewportInput(\n\t\t\tthis.renderer.getFocusedComponent(),\n\t\t\tthis.editor,\n\t\t\tdata,\n\t\t\tisMouseInput,\n\t\t\tfocusedIsOverlay,\n\t\t\tthis.keybindings,\n\t\t\tfocusedIsViewportSearch,\n\t\t);\n\t};\n\tprivate readonly onOverlayUnhandledInput = (data: string): boolean => this.handleOverlayUnhandledInput(data);\n\tprivate readonly onOverlayInternalUiAction = (url: string): InternalUiActionResult =>\n\t\thandleFocusedOverlayInternalUiAction(this.renderer, url);\n\n\t/** Dispatch the host thinking action after a focused workflow overlay declines input. */\n\thandleOverlayUnhandledInput(data: string): boolean {\n\t\tif (isKeyRelease(data) || !this.keybindings.matches(data, \"app.thinking.toggle\")) return false;\n\t\t// Reuse the default editor's action dispatcher even while a workflow\n\t\t// overlay owns focus. This keeps the host binding and its user remap as\n\t\t// the source of truth instead of calling the implementation directly.\n\t\treturn this.defaultEditor.handleInput(data);\n\t}\n\n\tsetFullscreenCopyOnSelect(enabled: boolean): void {\n\t\tif (this.renderer.mode === \"fullscreen\") this.renderer.setCopyOnSelect(enabled);\n\t}\n\n\tgetFullscreenCopyOnSelect(): boolean | undefined {\n\t\treturn this.renderer.mode === \"fullscreen\" ? this.renderer.getCopyOnSelect() : undefined;\n\t}\n\n\tasync copyActiveFullscreenSelection(): Promise<boolean | undefined> {\n\t\tif (this.renderer.mode !== \"fullscreen\" || !this.renderer.hasActiveSelection()) return undefined;\n\t\treturn this.renderer.copyActiveSelectionToClipboard();\n\t}\n\n\tprivate readonly onRightClickPaste = (): void => {\n\t\tvoid this.handleRightClickPaste();\n\t};\n\n\tchatContainer: Container;\n\tdocumentContainer: Container;\n\n\ttranscriptScrollView: ScrollView | undefined;\n\n\tfullscreenLayoutRoot: Component | undefined;\n\n\tresourceDisclosureContainer: Container;\n\tstartupNoticesContainer: Container;\n\tpendingMessagesContainer: Container;\n\n\tstatusContainer: Container;\n\n\tdefaultEditor: CustomEditor;\n\n\teditor: EditorComponent;\n\n\teditorComponentFactory: EditorFactory | undefined;\n\n\tautocompleteProvider: AutocompleteProvider | undefined;\n\n\tautocompleteProviderWrappers: AutocompleteProviderFactory[] = [];\n\n\tfdPath: string | undefined;\n\n\teditorContainer: Container;\n\n\tactiveSelectorToken: object | undefined;\n\n\tactiveSelectorDispose: (() => void) | undefined;\n\n\tfooter: FooterComponent;\n\tfooterContainer: Container;\n\n\tusageMeter: UsageMeterComponent;\n\n\tfooterDataProvider: FooterDataProvider;\n\n\t// Stored so the same manager can be injected into custom editors, selectors, and extension UI.\n\tkeybindings: KeybindingsManager;\n\n\treloadCoordinator: KeybindingsReloadCoordinator;\n\n\tinteractiveEngineShortcutHandler: ((data: string) => boolean) | undefined;\n\n\tdisposeInteractiveEngineHost: () => void = () => {};\n\n\tversion: string;\n\n\tisInitialized = false;\n\n\tonInputCallback?: (submission: InteractiveSubmission) => void;\n\n\tpendingUserInputs: InteractiveSubmission[] = [];\n\n\tstartupReplayInputs: string[] = [];\n\n\tstartupReplayActiveInput: string | undefined = undefined;\n\n\tstartupDraftText: string | undefined = undefined;\n\n\tstartupCookedInputRecovered = false;\n\n\tdeferredRenderedUserInputs: string[] = [];\n\n\tdeferredRenderedUserInputComponents = new Map<string, Component[][]>();\n\n\tloadingAnimation: Loader | AtomicWorkingLoader | undefined = undefined;\n\n\tworkingMessage: string | undefined = undefined;\n\n\tworkingVisible = true;\n\n\tworkingIndicatorOptions: LoaderIndicatorOptions | undefined = undefined;\n\n\treadonly defaultWorkingMessage = \"Working...\";\n\n\treadonly defaultHiddenThinkingLabel = \"Thinking...\";\n\n\thiddenThinkingLabel = this.defaultHiddenThinkingLabel;\n\n\tlastSigintTime = 0;\n\n\tlastEscapeTime = 0;\n\n\tchangelogMarkdown: string | undefined = undefined;\n\n\tstartupNoticesShown = false;\n\tstartupNoticesPrepared = false;\n\n\tanthropicSubscriptionWarningShown = false;\n\n\tfirstRunNoticeVisible = false;\n\n\thadLastChangelogVersionAtStartup = false;\n\n\tfirstRunOnboardingNoticeComponents: Component[] = [];\n\n\tautoTrustOnReloadCwd: string | undefined;\n\n\t// Status line tracking (for mutating immediately-sequential status updates)\n\tlastStatusSpacer: Spacer | undefined = undefined;\n\n\tlastStatusText: Text | undefined = undefined;\n\n\t/** Leading spacer added once for the managed-tool startup status block. */\n\tmanagedToolStatusStarted = false;\n\t/** Invalidates readiness callbacks after the transcript is rebuilt for another session. */\n\tmanagedToolStatusGeneration = 0;\n\n\t// Streaming message tracking\n\tstreamingComponent: AssistantMessageComponent | undefined = undefined;\n\n\tstreamingMessage: AssistantMessage | undefined = undefined;\n\n\t// Tool execution tracking: toolCallId -> component\n\tpendingTools = new Map<string, ToolExecutionComponent | RemoteToolExecutionComponent>();\n\n\t// Tool output expansion state\n\ttoolOutputExpanded = false;\n\n\t// Thinking block visibility state\n\thideThinkingBlock = false;\n\toutputPad: 0 | 1 = 1;\n\n\tmermaidMarkdownTransformer: MarkdownTransformer = createMermaidMarkdownTransformer({\n\t\tgetMode: () => this.settingsManager.getMermaidRenderingMode(),\n\t\ttheme,\n\t});\n\tmermaidMarkdownTransformerMode: MermaidRenderingMode | undefined;\n\n\t// Skill commands: command name -> skill file path\n\tskillCommands = new Map<string, string>();\n\n\t// Agent subscription unsubscribe function\n\tunsubscribe?: () => void;\n\n\tsignalCleanupHandlers: Array<() => void> = [];\n\n\t// Track if editor is in bash mode (text starts with !)\n\tisBashMode = false;\n\n\t// Track current bash execution component\n\tbashComponent: BashExecutionComponent | undefined = undefined;\n\n\t// Track pending bash components (shown in pending area, moved to chat on submit)\n\tpendingBashComponents: BashExecutionComponent[] = [];\n\n\t// Auto-compaction state\n\tautoCompactionLoader: AtomicWorkingLoader | undefined = undefined;\n\n\tautoCompactionEscapeHandler?: () => void;\n\n\t/** True once the pre-compaction Escape handler has been captured for restore. */\n\tautoCompactionEscapeHandlerSaved = false;\n\n\t/** True while `runUserPromptTurn()` owns the working loader. */\n\tpromptTurnWorkingLoaderActive = false;\n\n\t// Auto-retry state\n\tretryLoader: Loader | undefined = undefined;\n\tfallbackLoader: Loader | undefined = undefined;\n\n\tretryCountdown: CountdownTimer | undefined = undefined;\n\n\tretryEscapeHandler?: () => void;\n\n\t// Messages queued while compaction is running\n\tcompactionQueuedMessages: CompactionQueuedMessage[] = [];\n\n\t/** Keeps input queued while automatic compaction hands off to a manual request. */\n\tmanualCompactionTakeoverPending = false;\n\n\t// Deferred extension load state (first paint happens before extensions load)\n\tdeferredStartupPending = false;\n\tinitialStartupBinding = false;\n\tdeferredStartupPromise: Promise<void> | undefined = undefined;\n\n\tinputHandlerReadyRecorded = false;\n\n\tfirstSubmitRecorded = false;\n\n\t// Shutdown state\n\tshutdownRequested = false;\n\n\t// Extension UI state\n\textensionSelector: ExtensionSelectorComponent | undefined = undefined;\n\n\textensionInput: ExtensionInputComponent | undefined = undefined;\n\n\textensionEditor: ExtensionEditorComponent | undefined = undefined;\n\n\ttuiInputSubscriptions = new Set<InteractiveTuiInputSubscription>();\n\n\textensionTerminalInputSubscriptions = new Set<InteractiveTuiInputSubscription>();\n\n\ttuiRendererChangeListeners = new Set<() => void>();\n\n\tblockingInlineCustomUiDepth = 0;\n\n\tdeferredInlineCustomUiFocusDepth = 0;\n\n\tpendingInlineCustomUiFocus: Component | undefined = undefined;\n\n\thostCustomUiStateListeners = new Set<HostCustomUiStateListener>();\n\n\twidgetReleaseListeners = new Map<string, Set<() => void>>();\n\n\ttranscriptOverlayReserve: TranscriptOverlayReserve | undefined = undefined;\n\n\tthemeController: InteractiveThemeController;\n\n\t// Extension widgets (components rendered above/below the editor)\n\textensionWidgetsAbove = new Map<string, Component & { dispose?(): void }>();\n\n\textensionWidgetsBelow = new Map<string, Component & { dispose?(): void }>();\n\n\twidgetContainerAbove!: Container;\n\n\twidgetContainerBelow!: Container;\n\n\t// Custom footer from extension (undefined = use built-in footer)\n\tcustomFooter: (Component & { dispose?(): void }) | undefined = undefined;\n\n\t// Header container that holds the built-in or custom header\n\theaderContainer: Container;\n\n\t// Built-in header (logo + keybinding hints + changelog)\n\tbuiltInHeader: Component | undefined = undefined;\n\n\t// Custom header from extension (undefined = use built-in header)\n\tcustomHeader: (Component & { dispose?(): void }) | undefined = undefined;\n\n\t// Convenience accessors\n\tget session(): AgentSession & AgentSessionQueuePauseControl {\n\t\treturn this.runtimeHost.session as AgentSession & AgentSessionQueuePauseControl;\n\t}\n\n\t/** Includes the short handoff window that an isolated engine cannot mirror. */\n\tget compactionActive(): boolean {\n\t\treturn this.session.isCompacting || this.manualCompactionTakeoverPending;\n\t}\n\n\tget agent() {\n\t\treturn this.session.agent;\n\t}\n\n\tget sessionManager() {\n\t\treturn this.session.sessionManager;\n\t}\n\n\tget settingsManager() {\n\t\treturn this.session.settingsManager;\n\t}\n\n\t/**\n\t * Tears down the selector that owns `editorContainer`, including in-flight\n\t * work such as a model catalog refresh.\n\t *\n\t * This lives on the base class so behavior modules can dispose a selector\n\t * without relying on `interactive-selectors.ts` load order.\n\t */\n\tdisposeActiveSelector(): void {\n\t\tconst dispose = this.activeSelectorDispose;\n\t\tthis.activeSelectorToken = undefined;\n\t\tthis.activeSelectorDispose = undefined;\n\t\tdispose?.();\n\t}\n\n\taddTuiInputListener(handler: TuiInputListener): () => void {\n\t\tconst subscription: InteractiveTuiInputSubscription = {\n\t\t\thandler,\n\t\t\tunsubscribe: this.ui.addInputListener(handler),\n\t\t};\n\t\tthis.tuiInputSubscriptions.add(subscription);\n\t\treturn () => {\n\t\t\tsubscription.unsubscribe();\n\t\t\tthis.tuiInputSubscriptions.delete(subscription);\n\t\t};\n\t}\n\n\trebindTuiInputListeners(): void {\n\t\tfor (const subscription of this.tuiInputSubscriptions) {\n\t\t\tsubscription.unsubscribe();\n\t\t\tsubscription.unsubscribe = this.ui.addInputListener(subscription.handler);\n\t\t}\n\t}\n\n\tonTuiRendererChange(listener: () => void): () => void {\n\t\tthis.tuiRendererChangeListeners.add(listener);\n\t\treturn () => this.tuiRendererChangeListeners.delete(listener);\n\t}\n\n\tmountInteractiveTui(tui: TUI, components: readonly Component[]): void {\n\t\tfor (const component of components) tui.addChild(component);\n\t\tif (isViewportTUI(tui)) {\n\t\t\tif (!this.fullscreenLayoutRoot) throw new Error(\"Fullscreen layout is not initialized\");\n\t\t\ttui.setLayoutRoot(this.fullscreenLayoutRoot);\n\t\t}\n\t}\n\n\tprivate async handleRightClickPaste(): Promise<void> {\n\t\tconst target = this.renderer.getFocusedComponent();\n\t\tconst handleInput = target?.handleInput;\n\t\tif (!target || !handleInput) return;\n\t\ttry {\n\t\t\tconst text = await readClipboardText();\n\t\t\tif (!text || this.renderer.getFocusedComponent() !== target) return;\n\t\t\thandleInput.call(target, `\\x1b[200~${text}\\x1b[201~`);\n\t\t\tthis.ui.requestRender();\n\t\t} catch {\n\t\t\t// Clipboard paste is best-effort; permission and native-module failures are common.\n\t\t}\n\t}\n\n\tstopInteractiveTui(fullscreenExitOutput: FullscreenExitOutput): void {\n\t\tconst isFullscreen = this.renderer.mode === \"fullscreen\";\n\t\tif (isFullscreen && fullscreenExitOutput === \"transcript\") {\n\t\t\t// Atomic has no regular renderer to switch into, so pi-tui's own\n\t\t\t// exit paint is the only painter: its stop renders the layout root\n\t\t\t// at natural height onto the main screen. The docked fullscreen\n\t\t\t// layout squeezes its scroll view to `basis` (one row) at natural\n\t\t\t// height, so hand it the document container directly — the exit\n\t\t\t// paint then carries the whole transcript. Drop overlays first so\n\t\t\t// what gets painted is the transcript, not the focused dialog.\n\t\t\twhile (this.renderer.hasOverlayEntries) this.renderer.hideOverlay();\n\t\t\tif (isViewportTUI(this.renderer)) this.renderer.setLayoutRoot(this.documentContainer);\n\t\t}\n\t\t// `resume-hint` keeps whatever the alternate screen held: the prior\n\t\t// shell contents reappear and shutdown prints only the resume line.\n\t\tthis.ui.stop({ preserveScreen: isFullscreen && fullscreenExitOutput === \"resume-hint\" });\n\t}\n\n\tdeclare options: InteractiveModeOptions;\n\n\tconstructor(runtimeHost: AgentSessionRuntime, options: InteractiveModeOptions = {}) {\n\t\tthis.runtimeHost = runtimeHost;\n\t\tthis.options = options;\n\t\tthis.deferredStartupPending = Boolean(options.deferredExtensionLoad);\n\t\tthis.autoTrustOnReloadCwd = options.autoTrustOnReloadCwd;\n\t\tthis.runtimeHost.setBeforeSessionInvalidate(() => {\n\t\t\tthis.resetExtensionUI();\n\t\t});\n\t\tthis.runtimeHost.setRebindSession(async () => {\n\t\t\tawait this.rebindCurrentSession();\n\t\t\t// A rebound session can carry a different settings manager; re-apply\n\t\t\t// the theme so the live selection tracks the session that is current.\n\t\t\tawait this.themeController.applyFromSettings();\n\t\t});\n\t\tsetCapabilityOverrides(this.settingsManager.getTerminalCapabilityOverrides());\n\t\tthis.version = VERSION;\n\t\tthis.renderer = createInteractiveTui({\n\t\t\tshowHardwareCursor: this.settingsManager.getShowHardwareCursor(),\n\t\t\tlogDirectory: runtimeHost.services.agentDir,\n\t\t\tterminal: options.terminal,\n\t\t\tcopyOnSelect: this.settingsManager.getFullscreenCopyOnSelect(),\n\t\t\tonRightClickPaste: this.onRightClickPaste,\n\t\t\tshouldHandleViewportInput: this.shouldHandleViewportInput,\n\t\t\tonOverlayUnhandledInput: this.onOverlayUnhandledInput,\n\t\t\tonOverlayInternalUiAction: this.onOverlayInternalUiAction,\n\t\t\tonInternalUiAction: () => {\n\t\t\t\tthis.jumpToTranscriptEnd();\n\t\t\t\treturn undefined;\n\t\t\t},\n\t\t});\n\t\tthis.ui = createInteractiveTuiReference(() => this.renderer);\n\t\tthis.ui.setClearOnShrink(this.settingsManager.getClearOnShrink());\n\t\tthis.headerContainer = new Container();\n\t\tthis.documentContainer = new Container();\n\t\tthis.documentContainer.addChild(this.headerContainer);\n\t\tthis.chatContainer = new StartupChatContainer();\n\t\tthis.documentContainer.addChild(this.chatContainer);\n\t\tthis.resourceDisclosureContainer = new Container();\n\t\tthis.startupNoticesContainer = new Container();\n\t\t// The isolated engine can emit session_start UI requests as soon as its\n\t\t// bridge attaches below, before init() mounts chat in the TUI. Reserve the\n\t\t// ordering slots now so those messages can never precede RESOURCES.\n\t\tthis.chatContainer.addChild(this.resourceDisclosureContainer);\n\t\tthis.chatContainer.addChild(this.startupNoticesContainer);\n\t\tthis.pendingMessagesContainer = new Container();\n\t\tthis.statusContainer = new Container();\n\t\tthis.widgetContainerAbove = new Container();\n\t\tthis.widgetContainerBelow = new Container();\n\t\tthis.keybindings = KeybindingsManager.create(runtimeHost.services.agentDir);\n\t\tthis.reloadCoordinator = new KeybindingsReloadCoordinator(this.keybindings);\n\t\tsetKeybindings(this.keybindings);\n\t\tconst editorPaddingX = this.settingsManager.getEditorPaddingX();\n\t\tconst autocompleteMaxVisible = this.settingsManager.getAutocompleteMaxVisible();\n\t\tthis.defaultEditor = new CustomEditor(this.ui, getEditorTheme(), this.keybindings, {\n\t\t\tpaddingX: editorPaddingX,\n\t\t\tautocompleteMaxVisible,\n\t\t});\n\n\t\tthis.editor = this.defaultEditor;\n\t\tthis.editorContainer = new Container();\n\t\tthis.editorContainer.addChild(this.editor as Component);\n\t\tthis.footerDataProvider = new FooterDataProvider(this.sessionManager.getCwd());\n\t\tthis.footer = new FooterComponent(this.session, this.footerDataProvider);\n\t\tthis.footerContainer = new Container();\n\t\tthis.footerContainer.addChild(this.footer);\n\t\tthis.usageMeter = new UsageMeterComponent(this.session);\n\t\tthis.usageMeter.setAutoCompactEnabled(this.session.autoCompactionEnabled);\n\n\t\t// Load hide thinking block setting\n\t\tthis.hideThinkingBlock = this.settingsManager.getHideThinkingBlock();\n\t\tthis.outputPad = this.settingsManager.getOutputPad();\n\n\t\t// Register themes from resource loader and initialize\n\t\tsetRegisteredThemes(this.session.resourceLoader.getThemes().themes);\n\t\tthis.themeController = new InteractiveThemeController(this.ui, {\n\t\t\tgetSettingsManager: () => this.settingsManager,\n\t\t\tshowError: (message) => this.showError(message),\n\t\t\tonChanged: () => this.updateEditorBorderColor(),\n\t\t\tinitialThemeSetting: options.initialThemeSetting,\n\t\t});\n\t\tthis.disposeInteractiveEngineHost = attachInteractiveEngineHost(\n\t\t\truntimeHost,\n\t\t\tthis.createExtensionUIContext(),\n\t\t\t(diagnostic) =>\n\t\t\t\trenderEngineDiagnostic(diagnostic, {\n\t\t\t\t\tstopWorkingLoader: () => this.stopWorkingLoader(),\n\t\t\t\t\tshowStatus: (message) => this.showStatus(message),\n\t\t\t\t\tshowError: (message) => this.showError(message),\n\t\t\t\t}),\n\t\t\t{\n\t\t\t\tisFullscreen: () => this.renderer.mode === \"fullscreen\",\n\t\t\t\tonRendererReplaced: (listener) => this.onTuiRendererChange(listener),\n\t\t\t},\n\t\t\t(handler) => {\n\t\t\t\tthis.interactiveEngineShortcutHandler = handler;\n\t\t\t\tthis.defaultEditor.onExtensionShortcut = handler;\n\t\t\t\treturn () => {\n\t\t\t\t\tif (this.interactiveEngineShortcutHandler === handler) this.interactiveEngineShortcutHandler = undefined;\n\t\t\t\t\tif (this.defaultEditor.onExtensionShortcut === handler)\n\t\t\t\t\t\tthis.defaultEditor.onExtensionShortcut = undefined;\n\t\t\t\t};\n\t\t\t},\n\t\t\tthis.keybindings,\n\t\t);\n\t}\n\n\t// Maximum total widget lines to prevent viewport overflow\n\tstatic readonly MAX_WIDGET_LINES = 10;\n\n\t/**\n\t * Gracefully shutdown the agent.\n\t * Stops the TUI before emitting shutdown events so extension UI cleanup cannot\n\t * repaint the final frame while the process is exiting.\n\t */\n\tisShuttingDown = false;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"interactive-mode-base.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-base.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Shared state and constructor wiring for interactive mode.\n * Responsibility-specific behavior is installed by sibling modules.\n */\nimport {\n\tisKeyRelease,\n\tisViewportTUI,\n\ttype ScrollView,\n\tsetCapabilityOverrides,\n\ttype TuiInputListener,\n} from \"@earendil-works/pi-tui\";\n\nimport type { AgentSessionQueuePauseControl } from \"../../core/agent-session-methods.ts\";\nimport type { MarkdownTransformer } from \"../../core/extensions/types.ts\";\nimport type { FullscreenExitOutput, MermaidRenderingMode } from \"../../core/settings-manager.ts\";\nimport type { EarlyInputSnapshot } from \"../../main-early-input.ts\";\nimport { readClipboardText } from \"../../utils/clipboard.ts\";\nimport { renderEngineDiagnostic } from \"../interactive-engine/engine-diagnostic-view.ts\";\nimport { attachInteractiveEngineHost } from \"../interactive-engine/extension-ui-bridge.ts\";\nimport type { RemoteToolExecutionComponent } from \"../interactive-engine/remote-renderer.ts\";\nimport { KeybindingsReloadCoordinator } from \"../rpc/rpc-keybindings-reload.ts\";\nimport type { AtomicWorkingLoader } from \"./components/atomic-working-status.ts\";\nimport { createMermaidMarkdownTransformer } from \"./components/mermaid.ts\";\nimport type { TranscriptOverlayReserve } from \"./components/reserved-bottom-overlay.ts\";\nimport {\n\ttype AgentSession,\n\ttype AgentSessionRuntime,\n\ttype AssistantMessage,\n\ttype AssistantMessageComponent,\n\ttype AutocompleteProvider,\n\ttype AutocompleteProviderFactory,\n\ttype BashExecutionComponent,\n\ttype Component,\n\tContainer,\n\ttype CountdownTimer,\n\tCustomEditor,\n\ttype EditorComponent,\n\ttype EditorFactory,\n\ttype ExtensionEditorComponent,\n\ttype ExtensionInputComponent,\n\ttype ExtensionSelectorComponent,\n\tFooterComponent,\n\tFooterDataProvider,\n\tgetEditorTheme,\n\ttype HostCustomUiStateListener,\n\tInteractiveThemeController,\n\tKeybindingsManager,\n\ttype Loader,\n\ttype LoaderIndicatorOptions,\n\ttype Spacer,\n\tsetKeybindings,\n\tsetRegisteredThemes,\n\ttype Text,\n\ttype ToolExecutionComponent,\n\ttype TUI,\n\ttheme,\n\tUsageMeterComponent,\n\tVERSION,\n} from \"./interactive-mode-deps.ts\";\nimport type {} from \"./interactive-mode-surface.ts\";\nimport type { CompactionQueuedMessage, InteractiveModeOptions } from \"./interactive-mode-types.ts\";\nimport { StartupChatContainer } from \"./interactive-startup-chat-container.ts\";\nimport type { InteractiveSubmission } from \"./interactive-submission.ts\";\nimport {\n\tcreateInteractiveTui,\n\tcreateInteractiveTuiReference,\n\thandleFocusedOverlayInternalUiAction,\n\ttype InteractiveTui,\n\ttype InternalUiActionResult,\n} from \"./interactive-tui.ts\";\n\n/** Move the transcript and nothing else: what a reserving overlay may release. */\nconst FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS = [\n\t\"tui.altScreen.pageUp\",\n\t\"tui.altScreen.pageDown\",\n\t\"tui.altScreen.halfPageUp\",\n\t\"tui.altScreen.halfPageDown\",\n\t\"tui.altScreen.lineUp\",\n\t\"tui.altScreen.lineDown\",\n\t\"tui.altScreen.previousPrompt\",\n\t\"tui.altScreen.nextPrompt\",\n\t\"tui.altScreen.top\",\n\t\"tui.altScreen.bottom\",\n] as const;\n\nconst FULLSCREEN_VIEWPORT_ACTIONS = FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS;\n\nexport function isFullscreenViewportAction(data: string, keybindings: KeybindingsManager): boolean {\n\treturn FULLSCREEN_VIEWPORT_ACTIONS.some((action) => keybindings.matches(data, action));\n}\n\n/**\n * Whether a key scrolls the transcript. A reserving overlay — the\n * `ask_user_question` dialog, an extension component with\n * `reserveTranscriptRows` — declines these so the strip above it still pages\n * and jumps (#2378), and keeps everything else.\n */\nexport function isFullscreenTranscriptScrollAction(data: string, keybindings: KeybindingsManager): boolean {\n\treturn FULLSCREEN_TRANSCRIPT_SCROLL_ACTIONS.some((action) => keybindings.matches(data, action));\n}\n\n/**\n * Decide whether the fullscreen viewport should run before the focused\n * component. `isMouseInput` is classified by pi-tui's own mouse predicate in\n * `AtomicTuiAltScreen`, so this policy does not duplicate terminal grammars.\n * Mouse deferral is limited to actual overlays so inline components do not\n * disable pi-tui's application-owned transcript selection path.\n *\n * **Who owns viewport keys while an overlay is focused.** pi-tui 0.84.2 added\n * `shouldDeferViewportInputToOverlay()` (upstream #7894) and answers \"the\n * overlay\". Atomic answers \"the overlay first, the transcript with whatever it\n * declines\" (#2378 / PR #2381): the actions in `FULLSCREEN_VIEWPORT_ACTIONS`\n * and wheel reports are offered to the focused overlay, and\n * `AtomicTuiAltScreen` replays what it does not consume into pi-tui's viewport\n * listener. Atomic's answer stands, because a mounted dialog that keeps its\n * selection keys must not also freeze the transcript behind it.\n *\n * **The list covers every `tui.altScreen.*` scroll action pi-tui defines.**\n * An action a focused overlay declines still reaches the transcript, so the\n * shortcut is never simply lost.\n *\n * **A focused overlay with no `handleInput` is still an overlay.** The handler\n * is optional — `ExtensionCustomComponent` marks it `handleInput?` and\n * `docs/tui.md` documents it as optional — and a component that cannot answer\n * declines by definition. Answering \"the viewport owns it\" for that shape\n * would hand the key to pi-tui, whose native deferral then drops it because an\n * overlay holds focus, so the transcript would freeze behind a component that\n * never asked for the key. A handler-less overlay therefore takes the same\n * route as one that returns `false`: nothing to offer, then replay. Only a\n * focused component that is *not* an overlay keeps the shortcut, because\n * pi-tui defers nothing to it.\n */\nexport function shouldHandleFullscreenViewportInput(\n\tfocused: Component | null,\n\teditor: Component,\n\tdata: string,\n\tisMouseInput: boolean,\n\tfocusedIsOverlay: boolean,\n\tkeybindings: KeybindingsManager,\n\t_focusedIsViewportSearch = false,\n): boolean {\n\tif (focused === editor || !focused) return true;\n\tif (!focused.handleInput && !focusedIsOverlay) return true;\n\tif (isMouseInput) return !focusedIsOverlay;\n\tif (focusedIsOverlay && keybindings.matches(data, \"app.thinking.toggle\")) return false;\n\treturn !isFullscreenViewportAction(data, keybindings);\n}\n\nfunction isCommandLikeStartupInput(text: string): boolean {\n\tconst trimmed = text.trimStart();\n\treturn trimmed.startsWith(\"/\") || trimmed.startsWith(\"!\");\n}\n\nexport function seedStartupInput(\n\tpendingUserInputs: InteractiveSubmission[],\n\teditor: { setText(text: string): void },\n\tstartupInput: EarlyInputSnapshot | undefined,\n\tstartupReplayInputs: string[] = [],\n\tsetStartupDraftText?: (text: string) => void,\n\tsetStartupReplayActiveInput?: (text: string) => void,\n): void {\n\tif (!startupInput) return;\n\tlet commandReplayStarted = false;\n\tfor (const submission of startupInput.submissions) {\n\t\tif (commandReplayStarted) {\n\t\t\tstartupReplayInputs.push(submission);\n\t\t} else if (isCommandLikeStartupInput(submission)) {\n\t\t\tconst commandText = submission.trim();\n\t\t\tcommandReplayStarted = true;\n\t\t\teditor.setText(commandText);\n\t\t\tsetStartupReplayActiveInput?.(commandText);\n\t\t} else {\n\t\t\tpendingUserInputs.push({ text: submission, draft: submission });\n\t\t}\n\t}\n\tif (startupInput.text.length === 0) return;\n\tif (commandReplayStarted) {\n\t\tsetStartupDraftText?.(startupInput.text);\n\t} else {\n\t\teditor.setText(startupInput.text);\n\t}\n}\n\nexport interface InteractiveTuiInputSubscription {\n\thandler: TuiInputListener;\n\tunsubscribe: () => void;\n}\n\ninterface WorkingStatusEditor extends EditorComponent {\n\treadonly embedWorkingStatus: boolean;\n\tsetWorkingStatusIndicator(indicator: AtomicWorkingLoader | undefined): void;\n}\n\nfunction isWorkingStatusEditor(editor: EditorComponent): editor is WorkingStatusEditor {\n\treturn (\n\t\t\"embedWorkingStatus\" in editor &&\n\t\teditor.embedWorkingStatus === true &&\n\t\t\"setWorkingStatusIndicator\" in editor &&\n\t\ttypeof editor.setWorkingStatusIndicator === \"function\"\n\t);\n}\n\nexport class InteractiveModeBase {\n\truntimeHost: AgentSessionRuntime;\n\n\tui: TUI;\n\tprivate renderer: InteractiveTui;\n\n\tprivate readonly shouldHandleViewportInput = (\n\t\tdata: string,\n\t\tisMouseInput: boolean,\n\t\tfocusedIsOverlay: boolean,\n\t\tfocusedIsViewportSearch: boolean,\n\t): boolean => {\n\t\treturn shouldHandleFullscreenViewportInput(\n\t\t\tthis.renderer.getFocusedComponent(),\n\t\t\tthis.editor,\n\t\t\tdata,\n\t\t\tisMouseInput,\n\t\t\tfocusedIsOverlay,\n\t\t\tthis.keybindings,\n\t\t\tfocusedIsViewportSearch,\n\t\t);\n\t};\n\tprivate readonly onOverlayUnhandledInput = (data: string): boolean => this.handleOverlayUnhandledInput(data);\n\tprivate readonly onOverlayInternalUiAction = (url: string): InternalUiActionResult =>\n\t\thandleFocusedOverlayInternalUiAction(this.renderer, url);\n\n\t/** Dispatch the host thinking action after a focused workflow overlay declines input. */\n\thandleOverlayUnhandledInput(data: string): boolean {\n\t\tif (isKeyRelease(data) || !this.keybindings.matches(data, \"app.thinking.toggle\")) return false;\n\t\t// Reuse the default editor's action dispatcher even while a workflow\n\t\t// overlay owns focus. This keeps the host binding and its user remap as\n\t\t// the source of truth instead of calling the implementation directly.\n\t\treturn this.defaultEditor.handleInput(data);\n\t}\n\n\tsetFullscreenCopyOnSelect(enabled: boolean): void {\n\t\tif (this.renderer.mode === \"fullscreen\") this.renderer.setCopyOnSelect(enabled);\n\t}\n\n\tprivate readonly onRightClickPaste = (): void => {\n\t\tvoid this.handleRightClickPaste();\n\t};\n\n\tchatContainer: Container;\n\tdocumentContainer: Container;\n\n\ttranscriptScrollView: ScrollView | undefined;\n\n\tfullscreenLayoutRoot: Component | undefined;\n\n\tresourceDisclosureContainer: Container;\n\tstartupNoticesContainer: Container;\n\tpendingMessagesContainer: Container;\n\n\tstatusContainer: Container;\n\n\tdefaultEditor: CustomEditor;\n\n\teditor: EditorComponent;\n\n\teditorComponentFactory: EditorFactory | undefined;\n\n\tautocompleteProvider: AutocompleteProvider | undefined;\n\n\tautocompleteProviderWrappers: AutocompleteProviderFactory[] = [];\n\n\tfdPath: string | undefined;\n\n\teditorContainer: Container;\n\n\tactiveSelectorToken: object | undefined;\n\n\tactiveSelectorDispose: (() => void) | undefined;\n\n\tfooter: FooterComponent;\n\tfooterContainer: Container;\n\n\tusageMeter: UsageMeterComponent;\n\n\tfooterDataProvider: FooterDataProvider;\n\n\t// Stored so the same manager can be injected into custom editors, selectors, and extension UI.\n\tkeybindings: KeybindingsManager;\n\n\treloadCoordinator: KeybindingsReloadCoordinator;\n\n\tinteractiveEngineShortcutHandler: ((data: string) => boolean) | undefined;\n\n\tdisposeInteractiveEngineHost: () => void = () => {};\n\n\tversion: string;\n\n\tisInitialized = false;\n\n\tonInputCallback?: (submission: InteractiveSubmission) => void;\n\n\tpendingUserInputs: InteractiveSubmission[] = [];\n\n\tstartupReplayInputs: string[] = [];\n\n\tstartupReplayActiveInput: string | undefined = undefined;\n\n\tstartupDraftText: string | undefined = undefined;\n\tworkingIndicatorEmbedded = false;\n\n\tstartupCookedInputRecovered = false;\n\n\tdeferredRenderedUserInputs: string[] = [];\n\n\tdeferredRenderedUserInputComponents = new Map<string, Component[][]>();\n\n\tloadingAnimation: Loader | AtomicWorkingLoader | undefined = undefined;\n\n\tworkingMessage: string | undefined = undefined;\n\n\tworkingVisible = true;\n\n\tworkingIndicatorOptions: LoaderIndicatorOptions | undefined = undefined;\n\n\treadonly defaultWorkingMessage = \"Working\";\n\n\treadonly defaultHiddenThinkingLabel = \"Thinking...\";\n\n\thiddenThinkingLabel = this.defaultHiddenThinkingLabel;\n\n\tlastSigintTime = 0;\n\n\tlastEscapeTime = 0;\n\n\tchangelogMarkdown: string | undefined = undefined;\n\n\tstartupNoticesShown = false;\n\t/** Last model-catalog warning already shown, so the deferred re-read only speaks on a change. */\n\treportedModelCatalogWarning: string | undefined;\n\tstartupNoticesPrepared = false;\n\n\tanthropicSubscriptionWarningShown = false;\n\n\tfirstRunNoticeVisible = false;\n\n\thadLastChangelogVersionAtStartup = false;\n\n\tfirstRunOnboardingNoticeComponents: Component[] = [];\n\n\tautoTrustOnReloadCwd: string | undefined;\n\n\t// Status line tracking (for mutating immediately-sequential status updates)\n\tlastStatusSpacer: Spacer | undefined = undefined;\n\n\tlastStatusText: Text | undefined = undefined;\n\n\t/** Leading spacer added once for the managed-tool startup status block. */\n\tmanagedToolStatusStarted = false;\n\t/** Invalidates readiness callbacks after the transcript is rebuilt for another session. */\n\tmanagedToolStatusGeneration = 0;\n\n\t// Streaming message tracking\n\tstreamingComponent: AssistantMessageComponent | undefined = undefined;\n\n\tstreamingMessage: AssistantMessage | undefined = undefined;\n\n\t// Tool execution tracking: toolCallId -> component\n\tpendingTools = new Map<string, ToolExecutionComponent | RemoteToolExecutionComponent>();\n\n\t// Tool output expansion state\n\ttoolOutputExpanded = false;\n\n\t// Thinking block visibility state\n\thideThinkingBlock = false;\n\toutputPad: 0 | 1 = 1;\n\n\tmermaidMarkdownTransformer: MarkdownTransformer = createMermaidMarkdownTransformer({\n\t\tgetMode: () => this.settingsManager.getMermaidRenderingMode(),\n\t\ttheme,\n\t});\n\tmermaidMarkdownTransformerMode: MermaidRenderingMode | undefined;\n\n\t// Skill commands: command name -> skill file path\n\tskillCommands = new Map<string, string>();\n\n\t// Agent subscription unsubscribe function\n\tunsubscribe?: () => void;\n\n\tsignalCleanupHandlers: Array<() => void> = [];\n\n\t// Track if editor is in bash mode (text starts with !)\n\tisBashMode = false;\n\n\t// Track current bash execution component\n\tbashComponent: BashExecutionComponent | undefined = undefined;\n\n\t// Track pending bash components (shown in pending area, moved to chat on submit)\n\tpendingBashComponents: BashExecutionComponent[] = [];\n\n\t// Auto-compaction state\n\tautoCompactionLoader: AtomicWorkingLoader | undefined = undefined;\n\n\tautoCompactionEscapeHandler?: () => void;\n\n\t/** True once the pre-compaction Escape handler has been captured for restore. */\n\tautoCompactionEscapeHandlerSaved = false;\n\n\t/** True while `runUserPromptTurn()` owns the working loader. */\n\tpromptTurnWorkingLoaderActive = false;\n\n\t// Auto-retry state\n\tretryLoader: Loader | undefined = undefined;\n\tfallbackLoader: Loader | undefined = undefined;\n\n\tretryCountdown: CountdownTimer | undefined = undefined;\n\n\tretryEscapeHandler?: () => void;\n\n\t// Messages queued while compaction is running\n\tcompactionQueuedMessages: CompactionQueuedMessage[] = [];\n\n\t/** Keeps input queued while automatic compaction hands off to a manual request. */\n\tmanualCompactionTakeoverPending = false;\n\n\t// Deferred extension load state (first paint happens before extensions load)\n\tdeferredStartupPending = false;\n\tinitialStartupBinding = false;\n\tdeferredStartupPromise: Promise<void> | undefined = undefined;\n\n\tinputHandlerReadyRecorded = false;\n\n\tfirstSubmitRecorded = false;\n\n\t// Shutdown state\n\tshutdownRequested = false;\n\n\t// Extension UI state\n\textensionSelector: ExtensionSelectorComponent | undefined = undefined;\n\n\textensionInput: ExtensionInputComponent | undefined = undefined;\n\n\textensionEditor: ExtensionEditorComponent | undefined = undefined;\n\n\ttuiInputSubscriptions = new Set<InteractiveTuiInputSubscription>();\n\n\textensionTerminalInputSubscriptions = new Set<InteractiveTuiInputSubscription>();\n\n\ttuiRendererChangeListeners = new Set<() => void>();\n\n\tblockingInlineCustomUiDepth = 0;\n\n\tdeferredInlineCustomUiFocusDepth = 0;\n\n\tpendingInlineCustomUiFocus: Component | undefined = undefined;\n\n\thostCustomUiStateListeners = new Set<HostCustomUiStateListener>();\n\n\twidgetReleaseListeners = new Map<string, Set<() => void>>();\n\n\ttranscriptOverlayReserve: TranscriptOverlayReserve | undefined = undefined;\n\n\tthemeController: InteractiveThemeController;\n\n\t// Extension widgets (components rendered above/below the editor)\n\textensionWidgetsAbove = new Map<string, Component & { dispose?(): void }>();\n\n\textensionWidgetsBelow = new Map<string, Component & { dispose?(): void }>();\n\n\twidgetContainerAbove!: Container;\n\n\twidgetContainerBelow!: Container;\n\n\t// Custom footer from extension (undefined = use built-in footer)\n\tcustomFooter: (Component & { dispose?(): void }) | undefined = undefined;\n\n\t// Header container that holds the built-in or custom header\n\theaderContainer: Container;\n\n\t// Built-in header (logo + keybinding hints + changelog)\n\tbuiltInHeader: Component | undefined = undefined;\n\n\t// Custom header from extension (undefined = use built-in header)\n\tcustomHeader: (Component & { dispose?(): void }) | undefined = undefined;\n\n\t// Convenience accessors\n\tget session(): AgentSession & AgentSessionQueuePauseControl {\n\t\treturn this.runtimeHost.session as AgentSession & AgentSessionQueuePauseControl;\n\t}\n\n\t/** Includes the short handoff window that an isolated engine cannot mirror. */\n\tget compactionActive(): boolean {\n\t\treturn this.session.isCompacting || this.manualCompactionTakeoverPending;\n\t}\n\n\tget agent() {\n\t\treturn this.session.agent;\n\t}\n\n\tget sessionManager() {\n\t\treturn this.session.sessionManager;\n\t}\n\n\tget settingsManager() {\n\t\treturn this.session.settingsManager;\n\t}\n\n\t/**\n\t * Tears down the selector that owns `editorContainer`, including in-flight\n\t * work such as a model catalog refresh.\n\t *\n\t * This lives on the base class so behavior modules can dispose a selector\n\t * without relying on `interactive-selectors.ts` load order.\n\t */\n\tdisposeActiveSelector(): void {\n\t\tconst dispose = this.activeSelectorDispose;\n\t\tthis.activeSelectorToken = undefined;\n\t\tthis.activeSelectorDispose = undefined;\n\t\tdispose?.();\n\t}\n\n\taddTuiInputListener(handler: TuiInputListener): () => void {\n\t\tconst subscription: InteractiveTuiInputSubscription = {\n\t\t\thandler,\n\t\t\tunsubscribe: this.ui.addInputListener(handler),\n\t\t};\n\t\tthis.tuiInputSubscriptions.add(subscription);\n\t\treturn () => {\n\t\t\tsubscription.unsubscribe();\n\t\t\tthis.tuiInputSubscriptions.delete(subscription);\n\t\t};\n\t}\n\n\trebindTuiInputListeners(): void {\n\t\tfor (const subscription of this.tuiInputSubscriptions) {\n\t\t\tsubscription.unsubscribe();\n\t\t\tsubscription.unsubscribe = this.ui.addInputListener(subscription.handler);\n\t\t}\n\t}\n\n\tonTuiRendererChange(listener: () => void): () => void {\n\t\tthis.tuiRendererChangeListeners.add(listener);\n\t\treturn () => this.tuiRendererChangeListeners.delete(listener);\n\t}\n\n\tmountInteractiveTui(tui: TUI, components: readonly Component[]): void {\n\t\tfor (const component of components) tui.addChild(component);\n\t\tif (isViewportTUI(tui)) {\n\t\t\tif (!this.fullscreenLayoutRoot) throw new Error(\"Fullscreen layout is not initialized\");\n\t\t\ttui.setLayoutRoot(this.fullscreenLayoutRoot);\n\t\t}\n\t}\n\n\tprivate async handleRightClickPaste(): Promise<void> {\n\t\tconst target = this.renderer.getFocusedComponent();\n\t\tconst handleInput = target?.handleInput;\n\t\tif (!target || !handleInput) return;\n\t\ttry {\n\t\t\tconst text = await readClipboardText();\n\t\t\tif (!text || this.renderer.getFocusedComponent() !== target) return;\n\t\t\thandleInput.call(target, `\\x1b[200~${text}\\x1b[201~`);\n\t\t\tthis.ui.requestRender();\n\t\t} catch {\n\t\t\t// Clipboard paste is best-effort; permission and native-module failures are common.\n\t\t}\n\t}\n\n\tstopInteractiveTui(fullscreenExitOutput: FullscreenExitOutput): void {\n\t\tconst isFullscreen = this.renderer.mode === \"fullscreen\";\n\t\tif (isFullscreen && fullscreenExitOutput === \"transcript\") {\n\t\t\t// Atomic has no regular renderer to switch into, so pi-tui's own\n\t\t\t// exit paint is the only painter: its stop renders the layout root\n\t\t\t// at natural height onto the main screen. The docked fullscreen\n\t\t\t// layout squeezes its scroll view to `basis` (one row) at natural\n\t\t\t// height, so hand it the document container directly — the exit\n\t\t\t// paint then carries the whole transcript. Drop overlays first so\n\t\t\t// what gets painted is the transcript, not the focused dialog.\n\t\t\twhile (this.renderer.hasOverlayEntries) this.renderer.hideOverlay();\n\t\t\tif (isViewportTUI(this.renderer)) this.renderer.setLayoutRoot(this.documentContainer);\n\t\t}\n\t\t// `resume-hint` keeps whatever the alternate screen held: the prior\n\t\t// shell contents reappear and shutdown prints only the resume line.\n\t\tthis.ui.stop({ preserveScreen: isFullscreen && fullscreenExitOutput === \"resume-hint\" });\n\t}\n\n\tdeclare options: InteractiveModeOptions;\n\n\tsetEditorWorkingStatusIndicator(indicator: AtomicWorkingLoader | undefined): boolean {\n\t\tthis.defaultEditor.setWorkingStatusIndicator(undefined);\n\t\tif (!isWorkingStatusEditor(this.editor)) return false;\n\t\tthis.editor.setWorkingStatusIndicator(indicator);\n\t\treturn true;\n\t}\n\n\tconstructor(runtimeHost: AgentSessionRuntime, options: InteractiveModeOptions = {}) {\n\t\tthis.runtimeHost = runtimeHost;\n\t\tthis.options = options;\n\t\tthis.deferredStartupPending = Boolean(options.deferredExtensionLoad);\n\t\tthis.autoTrustOnReloadCwd = options.autoTrustOnReloadCwd;\n\t\tthis.runtimeHost.setBeforeSessionInvalidate(() => {\n\t\t\tthis.resetExtensionUI();\n\t\t});\n\t\tthis.runtimeHost.setRebindSession(async () => {\n\t\t\tawait this.rebindCurrentSession();\n\t\t\t// A rebound session can carry a different settings manager; re-apply\n\t\t\t// the theme so the live selection tracks the session that is current.\n\t\t\tawait this.themeController.applyFromSettings();\n\t\t});\n\t\tsetCapabilityOverrides(this.settingsManager.getTerminalCapabilityOverrides());\n\t\tthis.version = VERSION;\n\t\tthis.renderer = createInteractiveTui({\n\t\t\tshowHardwareCursor: this.settingsManager.getShowHardwareCursor(),\n\t\t\tlogDirectory: runtimeHost.services.agentDir,\n\t\t\tterminal: options.terminal,\n\t\t\tcopyOnSelect: this.settingsManager.getFullscreenCopyOnSelect(),\n\t\t\tonRightClickPaste: this.onRightClickPaste,\n\t\t\tshouldHandleViewportInput: this.shouldHandleViewportInput,\n\t\t\tonOverlayUnhandledInput: this.onOverlayUnhandledInput,\n\t\t\tonOverlayInternalUiAction: this.onOverlayInternalUiAction,\n\t\t\tonInternalUiAction: () => {\n\t\t\t\tthis.jumpToTranscriptEnd();\n\t\t\t\treturn undefined;\n\t\t\t},\n\t\t});\n\t\tthis.ui = createInteractiveTuiReference(() => this.renderer);\n\t\tthis.ui.setClearOnShrink(this.settingsManager.getClearOnShrink());\n\t\tthis.headerContainer = new Container();\n\t\tthis.documentContainer = new Container();\n\t\tthis.documentContainer.addChild(this.headerContainer);\n\t\tthis.chatContainer = new StartupChatContainer();\n\t\tthis.documentContainer.addChild(this.chatContainer);\n\t\tthis.resourceDisclosureContainer = new Container();\n\t\tthis.startupNoticesContainer = new Container();\n\t\t// The isolated engine can emit session_start UI requests as soon as its\n\t\t// bridge attaches below, before init() mounts chat in the TUI. Reserve the\n\t\t// ordering slots now so those messages can never precede RESOURCES.\n\t\tthis.chatContainer.addChild(this.resourceDisclosureContainer);\n\t\tthis.chatContainer.addChild(this.startupNoticesContainer);\n\t\tthis.pendingMessagesContainer = new Container();\n\t\tthis.statusContainer = new Container();\n\t\tthis.widgetContainerAbove = new Container();\n\t\tthis.widgetContainerBelow = new Container();\n\t\tthis.keybindings = KeybindingsManager.create(runtimeHost.services.agentDir);\n\t\tthis.reloadCoordinator = new KeybindingsReloadCoordinator(this.keybindings);\n\t\tsetKeybindings(this.keybindings);\n\t\tconst editorPaddingX = this.settingsManager.getEditorPaddingX();\n\t\tconst autocompleteMaxVisible = this.settingsManager.getAutocompleteMaxVisible();\n\t\tthis.defaultEditor = new CustomEditor(this.ui, getEditorTheme(), this.keybindings, {\n\t\t\tpaddingX: editorPaddingX,\n\t\t\tautocompleteMaxVisible,\n\t\t});\n\n\t\tthis.editor = this.defaultEditor;\n\t\tthis.editorContainer = new Container();\n\t\tthis.editorContainer.addChild(this.editor as Component);\n\t\tthis.footerDataProvider = new FooterDataProvider(this.sessionManager.getCwd());\n\t\tthis.footer = new FooterComponent(this.session, this.footerDataProvider);\n\t\tthis.footerContainer = new Container();\n\t\tthis.footerContainer.addChild(this.footer);\n\t\tthis.usageMeter = new UsageMeterComponent(this.session);\n\t\tthis.usageMeter.setAutoCompactEnabled(this.session.autoCompactionEnabled);\n\n\t\t// Load hide thinking block setting\n\t\tthis.hideThinkingBlock = this.settingsManager.getHideThinkingBlock();\n\t\tthis.outputPad = this.settingsManager.getOutputPad();\n\n\t\t// Register themes from resource loader and initialize\n\t\tsetRegisteredThemes(this.session.resourceLoader.getThemes().themes);\n\t\tthis.themeController = new InteractiveThemeController(this.ui, {\n\t\t\tgetSettingsManager: () => this.settingsManager,\n\t\t\tshowError: (message) => this.showError(message),\n\t\t\tonChanged: () => this.updateEditorBorderColor(),\n\t\t\tinitialThemeSetting: options.initialThemeSetting,\n\t\t});\n\t\tthis.disposeInteractiveEngineHost = attachInteractiveEngineHost(\n\t\t\truntimeHost,\n\t\t\tthis.createExtensionUIContext(),\n\t\t\t(diagnostic) =>\n\t\t\t\trenderEngineDiagnostic(diagnostic, {\n\t\t\t\t\tstopWorkingLoader: () => this.stopWorkingLoader(),\n\t\t\t\t\tshowStatus: (message) => this.showStatus(message),\n\t\t\t\t\tshowError: (message) => this.showError(message),\n\t\t\t\t}),\n\t\t\t{\n\t\t\t\tisFullscreen: () => this.renderer.mode === \"fullscreen\",\n\t\t\t\tonRendererReplaced: (listener) => this.onTuiRendererChange(listener),\n\t\t\t},\n\t\t\t(handler) => {\n\t\t\t\tthis.interactiveEngineShortcutHandler = handler;\n\t\t\t\tthis.defaultEditor.onExtensionShortcut = handler;\n\t\t\t\treturn () => {\n\t\t\t\t\tif (this.interactiveEngineShortcutHandler === handler) this.interactiveEngineShortcutHandler = undefined;\n\t\t\t\t\tif (this.defaultEditor.onExtensionShortcut === handler)\n\t\t\t\t\t\tthis.defaultEditor.onExtensionShortcut = undefined;\n\t\t\t\t};\n\t\t\t},\n\t\t\tthis.keybindings,\n\t\t);\n\t}\n\n\t// Maximum total widget lines to prevent viewport overflow\n\tstatic readonly MAX_WIDGET_LINES = 10;\n\n\t/**\n\t * Gracefully shutdown the agent.\n\t * Stops the TUI before emitting shutdown events so extension UI cleanup cannot\n\t * repaint the final frame while the process is exiting.\n\t */\n\tisShuttingDown = false;\n}\n"]}
|
|
@@ -9,11 +9,10 @@ export type OAuthProviderId = string;
|
|
|
9
9
|
export type { AutocompleteItem, AutocompleteProvider, AutocompleteSuggestions, EditorComponent, Keybinding, KeyId, MarkdownTheme, OverlayHandle, OverlayOptions, SlashCommand, } from "@earendil-works/pi-tui";
|
|
10
10
|
export { CombinedAutocompleteProvider, type Component, Container, fuzzyFilter, getCapabilities, hyperlink, Loader, type LoaderIndicatorOptions, Markdown, matchesKey, ProcessTerminal, Spacer, setKeybindings, Text, TruncatedText, type TUI, TuiMainScreen, visibleWidth, } from "@earendil-works/pi-tui";
|
|
11
11
|
export { spawn, spawnSync } from "child_process";
|
|
12
|
-
export { APP_NAME, APP_TITLE, CHANGELOG_URL, ENV_OFFLINE, getAgentDir, getAuthPath, getDebugLogPath, getDocsPath, getEnvValue, getShareViewerUrl,
|
|
12
|
+
export { APP_NAME, APP_TITLE, CHANGELOG_URL, ENV_OFFLINE, getAgentDir, getAuthPath, getDebugLogPath, getDocsPath, getEnvValue, getShareViewerUrl, VERSION, } from "../../config.js";
|
|
13
13
|
export { type AgentSession, type AgentSessionEvent, parseSkillBlock } from "../../core/agent-session.ts";
|
|
14
14
|
export { type AgentSessionRuntime, SessionImportFileNotFoundError } from "../../core/agent-session-runtime.ts";
|
|
15
15
|
export { formatNoModelsAvailableMessage } from "../../core/auth-guidance.ts";
|
|
16
|
-
export { formatCodexFastModeModelLabel, hasSupportedCodexFastModeModel, shouldApplyCodexFastMode, } from "../../core/codex-fast-mode.ts";
|
|
17
16
|
export type { VerbatimCompactionResult } from "../../core/compaction/index.ts";
|
|
18
17
|
export type { AutocompleteProviderFactory, EditorFactory, ExtensionCommandContext, ExtensionContext, ExtensionRunner, ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetOptions, HostCustomUiState, HostCustomUiStateListener, ProjectTrustContext, } from "../../core/extensions/index.ts";
|
|
19
18
|
export { FooterDataProvider, type ReadonlyFooterDataProvider } from "../../core/footer-data-provider.ts";
|
|
@@ -58,7 +57,6 @@ export { EarendilAnnouncementComponent } from "./components/earendil-announcemen
|
|
|
58
57
|
export { ExtensionEditorComponent } from "./components/extension-editor.ts";
|
|
59
58
|
export { ExtensionInputComponent } from "./components/extension-input.ts";
|
|
60
59
|
export { ExtensionSelectorComponent } from "./components/extension-selector.ts";
|
|
61
|
-
export { FastModeSelectorComponent } from "./components/fast-mode-selector.ts";
|
|
62
60
|
export { FooterComponent, UsageMeterComponent } from "./components/footer.ts";
|
|
63
61
|
export { formatKeyText, keyDisplayText, keyHintIfBound, keyText } from "./components/keybinding-hints.ts";
|
|
64
62
|
export { LoginDialogComponent } from "./components/login-dialog.ts";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-deps.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-deps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EACN,KAAK,GAAG,EACR,KAAK,gBAAgB,EACrB,YAAY,EACZ,KAAK,YAAY,EACjB,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,iBAAiB,GACtB,MAAM,uBAAuB,CAAC;AAC/B,YAAY,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,OAAO,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACxB,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC;AACrC,YAAY,EACX,gBAAgB,EAChB,oBAAoB,EACpB,uBAAuB,EACvB,eAAe,EACf,UAAU,EACV,KAAK,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,YAAY,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACN,4BAA4B,EAC5B,KAAK,SAAS,EACd,SAAS,EACT,WAAW,EACX,eAAe,EACf,SAAS,EACT,MAAM,EACN,KAAK,sBAAsB,EAC3B,QAAQ,EACR,UAAU,EACV,eAAe,EACf,MAAM,EACN,cAAc,EACd,IAAI,EACJ,aAAa,EACb,KAAK,GAAG,EACR,aAAa,EACb,YAAY,GACZ,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EACN,QAAQ,EACR,SAAS,EACT,aAAa,EACb,WAAW,EACX,WAAW,EACX,WAAW,EACX,eAAe,EACf,WAAW,EACX,WAAW,EACX,iBAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"interactive-mode-deps.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-deps.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,11 +6,10 @@ export { default as chalk } from "chalk";
|
|
|
6
6
|
export { fs, os, path };
|
|
7
7
|
export { CombinedAutocompleteProvider, Container, fuzzyFilter, getCapabilities, hyperlink, Loader, Markdown, matchesKey, ProcessTerminal, Spacer, setKeybindings, Text, TruncatedText, TuiMainScreen, visibleWidth, } from "@earendil-works/pi-tui";
|
|
8
8
|
export { spawn, spawnSync } from "child_process";
|
|
9
|
-
export { APP_NAME, APP_TITLE, CHANGELOG_URL, ENV_OFFLINE, getAgentDir, getAuthPath, getDebugLogPath, getDocsPath, getEnvValue, getShareViewerUrl,
|
|
9
|
+
export { APP_NAME, APP_TITLE, CHANGELOG_URL, ENV_OFFLINE, getAgentDir, getAuthPath, getDebugLogPath, getDocsPath, getEnvValue, getShareViewerUrl, VERSION, } from "../../config.js";
|
|
10
10
|
export { parseSkillBlock } from "../../core/agent-session.js";
|
|
11
11
|
export { SessionImportFileNotFoundError } from "../../core/agent-session-runtime.js";
|
|
12
12
|
export { formatNoModelsAvailableMessage } from "../../core/auth-guidance.js";
|
|
13
|
-
export { formatCodexFastModeModelLabel, hasSupportedCodexFastModeModel, shouldApplyCodexFastMode, } from "../../core/codex-fast-mode.js";
|
|
14
13
|
export { FooterDataProvider } from "../../core/footer-data-provider.js";
|
|
15
14
|
export { configureHttpDispatcher } from "../../core/http-dispatcher.js";
|
|
16
15
|
export { KeybindingsManager } from "../../core/keybindings.js";
|
|
@@ -50,7 +49,6 @@ export { EarendilAnnouncementComponent } from "./components/earendil-announcemen
|
|
|
50
49
|
export { ExtensionEditorComponent } from "./components/extension-editor.js";
|
|
51
50
|
export { ExtensionInputComponent } from "./components/extension-input.js";
|
|
52
51
|
export { ExtensionSelectorComponent } from "./components/extension-selector.js";
|
|
53
|
-
export { FastModeSelectorComponent } from "./components/fast-mode-selector.js";
|
|
54
52
|
export { FooterComponent, UsageMeterComponent } from "./components/footer.js";
|
|
55
53
|
export { formatKeyText, keyDisplayText, keyHintIfBound, keyText } from "./components/keybinding-hints.js";
|
|
56
54
|
export { LoginDialogComponent } from "./components/login-dialog.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-deps.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-deps.ts"],"names":[],"mappings":"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","sourcesContent":["import * as fs from \"node:fs\";\nimport * as os from \"node:os\";\nimport * as path from \"node:path\";\n\nexport {\n\ttype Api,\n\ttype AssistantMessage,\n\tgetProviders,\n\ttype ImageContent,\n\ttype Message,\n\ttype Model,\n\ttype OAuthSelectPrompt,\n} from \"@bastani/pi-ai/compat\";\nexport type { AgentMessage } from \"@earendil-works/pi-agent-core\";\nexport { default as chalk } from \"chalk\";\nexport { fs, os, path };\nexport type OAuthProviderId = string;\nexport type {\n\tAutocompleteItem,\n\tAutocompleteProvider,\n\tAutocompleteSuggestions,\n\tEditorComponent,\n\tKeybinding,\n\tKeyId,\n\tMarkdownTheme,\n\tOverlayHandle,\n\tOverlayOptions,\n\tSlashCommand,\n} from \"@earendil-works/pi-tui\";\nexport {\n\tCombinedAutocompleteProvider,\n\ttype Component,\n\tContainer,\n\tfuzzyFilter,\n\tgetCapabilities,\n\thyperlink,\n\tLoader,\n\ttype LoaderIndicatorOptions,\n\tMarkdown,\n\tmatchesKey,\n\tProcessTerminal,\n\tSpacer,\n\tsetKeybindings,\n\tText,\n\tTruncatedText,\n\ttype TUI,\n\tTuiMainScreen,\n\tvisibleWidth,\n} from \"@earendil-works/pi-tui\";\nexport { spawn, spawnSync } from \"child_process\";\nexport {\n\tAPP_NAME,\n\tAPP_TITLE,\n\tCHANGELOG_URL,\n\tENV_OFFLINE,\n\tgetAgentDir,\n\tgetAuthPath,\n\tgetDebugLogPath,\n\tgetDocsPath,\n\tgetEnvValue,\n\tgetShareViewerUrl,\n\tsetCodexFastModeEnvironmentSettings,\n\tVERSION,\n} from \"../../config.js\";\nexport { type AgentSession, type AgentSessionEvent, parseSkillBlock } from \"../../core/agent-session.ts\";\nexport { type AgentSessionRuntime, SessionImportFileNotFoundError } from \"../../core/agent-session-runtime.ts\";\nexport { formatNoModelsAvailableMessage } from \"../../core/auth-guidance.ts\";\nexport {\n\tformatCodexFastModeModelLabel,\n\thasSupportedCodexFastModeModel,\n\tshouldApplyCodexFastMode,\n} from \"../../core/codex-fast-mode.ts\";\nexport type { VerbatimCompactionResult } from \"../../core/compaction/index.ts\";\nexport type {\n\tAutocompleteProviderFactory,\n\tEditorFactory,\n\tExtensionCommandContext,\n\tExtensionContext,\n\tExtensionRunner,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tHostCustomUiState,\n\tHostCustomUiStateListener,\n\tProjectTrustContext,\n} from \"../../core/extensions/index.ts\";\nexport { FooterDataProvider, type ReadonlyFooterDataProvider } from \"../../core/footer-data-provider.ts\";\nexport { configureHttpDispatcher } from \"../../core/http-dispatcher.ts\";\nexport { type AppKeybinding, KeybindingsManager } from \"../../core/keybindings.ts\";\nexport {\n\tdefaultModelPerProvider,\n\tfindExactModelReferenceMatch,\n\tfindInitialModel,\n\tresolveModelScope,\n\tresolveModelScopeFromModels,\n\tresolveModelScopeWithDiagnostics,\n\tresolveRestoredModelReference,\n} from \"../../core/model-resolver.ts\";\nexport { DefaultPackageManager } from \"../../core/package-manager.ts\";\nexport { BUILT_IN_PROVIDER_DISPLAY_NAMES } from \"../../core/provider-display-names.ts\";\nexport type { ResourceDiagnostic } from \"../../core/resource-loader.ts\";\nexport { formatMissingSessionCwdPrompt, MissingSessionCwdError } from \"../../core/session-cwd.ts\";\nexport { type SessionContext, SessionManager } from \"../../core/session-manager.ts\";\nexport { BUILTIN_SLASH_COMMANDS, BUNDLED_EXTENSION_SLASH_COMMANDS } from \"../../core/slash-commands.ts\";\nexport type { SourceInfo } from \"../../core/source-info.ts\";\nexport { isInstallTelemetryEnabled } from \"../../core/telemetry.ts\";\nexport { recordTimeSinceReset } from \"../../core/timings.ts\";\nexport type { TruncationResult } from \"../../core/tools/truncate.ts\";\nexport {\n\thasProjectConfigDir,\n\thasProjectTrustInputs,\n\thasTrustRequiringProjectResources,\n\tProjectTrustStore,\n} from \"../../core/trust-manager.ts\";\nexport {\n\tgetChangelogPath,\n\tgetEntriesForVersion,\n\tgetNewEntries,\n\tnormalizeChangelogLinks,\n\tparseChangelog,\n} from \"../../utils/changelog.ts\";\nexport { copyToClipboard } from \"../../utils/clipboard.ts\";\nexport { parseGitUrl } from \"../../utils/git.ts\";\nexport { getCwdRelativePath } from \"../../utils/paths.ts\";\nexport { getPiUserAgent } from \"../../utils/pi-user-agent.ts\";\nexport { killTrackedDetachedChildren } from \"../../utils/shell.ts\";\nexport { ensureTool } from \"../../utils/tools-manager.ts\";\nexport { checkForNewPiVersion } from \"../../utils/version-check.ts\";\nexport {\n\tcombineQueuedMessagesForEditor,\n\topenExternalEditorForText,\n\tpasteClipboardImageToEditor,\n} from \"./chat-input-actions.ts\";\nexport { ArminComponent } from \"./components/armin.ts\";\nexport { AssistantMessageComponent } from \"./components/assistant-message.ts\";\nexport { composeStartupIdentity, renderAtomicAnsiBanner } from \"./components/atomic-banner.ts\";\nexport { BashExecutionComponent } from \"./components/bash-execution.ts\";\nexport { BorderedLoader } from \"./components/bordered-loader.ts\";\nexport { BranchSummaryMessageComponent } from \"./components/branch-summary-message.ts\";\nexport {\n\ttype ChatMessageEntry,\n\ttype ChatMessageRenderOptions,\n\tchatEntriesFromAgentMessages,\n\trenderChatMessageEntry,\n} from \"./components/chat-message-renderer.ts\";\nexport { addChatTranscriptEntry } from \"./components/chat-transcript.ts\";\nexport { CompactionBoundaryMessageComponent } from \"./components/compaction-boundary-message.ts\";\nexport { CountdownTimer } from \"./components/countdown-timer.ts\";\nexport { CustomEditor } from \"./components/custom-editor.ts\";\nexport { CustomMessageComponent } from \"./components/custom-message.ts\";\nexport { DaxnutsComponent } from \"./components/daxnuts.ts\";\nexport { DynamicBorder } from \"./components/dynamic-border.ts\";\nexport { EarendilAnnouncementComponent } from \"./components/earendil-announcement.ts\";\nexport { ExtensionEditorComponent } from \"./components/extension-editor.ts\";\nexport { ExtensionInputComponent } from \"./components/extension-input.ts\";\nexport { ExtensionSelectorComponent } from \"./components/extension-selector.ts\";\nexport { FastModeSelectorComponent } from \"./components/fast-mode-selector.ts\";\nexport { FooterComponent, UsageMeterComponent } from \"./components/footer.ts\";\nexport { formatKeyText, keyDisplayText, keyHintIfBound, keyText } from \"./components/keybinding-hints.ts\";\nexport { LoginDialogComponent } from \"./components/login-dialog.ts\";\nexport { ModelSelectorComponent } from \"./components/model-selector.ts\";\nexport { type AuthSelectorProvider, OAuthSelectorComponent } from \"./components/oauth-selector.ts\";\nexport { ScopedModelsSelectorComponent } from \"./components/scoped-models-selector.ts\";\nexport { SessionSelectorComponent } from \"./components/session-selector.ts\";\nexport { SettingsSelectorComponent } from \"./components/settings-selector.ts\";\nexport { SkillInvocationMessageComponent } from \"./components/skill-invocation-message.ts\";\nexport { ThinkingSelectorComponent } from \"./components/thinking-selector.ts\";\nexport { ToolExecutionComponent } from \"./components/tool-execution.ts\";\nexport { TreeSelectorComponent } from \"./components/tree-selector.ts\";\nexport { TrustSelectorComponent } from \"./components/trust-selector.ts\";\nexport { UserMessageComponent } from \"./components/user-message.ts\";\nexport { UserMessageSelectorComponent } from \"./components/user-message-selector.ts\";\nexport { getModelSearchText } from \"./model-search.ts\";\nexport {\n\tgetAvailableThemes,\n\tgetAvailableThemesWithPaths,\n\tgetEditorTheme,\n\tgetMarkdownTheme,\n\tgetThemeByName,\n\tonThemeChange,\n\tsetRegisteredThemes,\n\tstopThemeWatcher,\n\tTheme,\n\ttheme,\n} from \"./theme/theme.ts\";\nexport { InteractiveThemeController } from \"./theme/theme-controller.ts\";\nexport { pickWhimsicalWorkingMessage } from \"./whimsical-messages.ts\";\n"]}
|
|
1
|
+
{"version":3,"file":"interactive-mode-deps.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-deps.ts"],"names":[],"mappings":"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","sourcesContent":["import * as fs from \"node:fs\";\nimport * as os from \"node:os\";\nimport * as path from \"node:path\";\n\nexport {\n\ttype Api,\n\ttype AssistantMessage,\n\tgetProviders,\n\ttype ImageContent,\n\ttype Message,\n\ttype Model,\n\ttype OAuthSelectPrompt,\n} from \"@bastani/pi-ai/compat\";\nexport type { AgentMessage } from \"@earendil-works/pi-agent-core\";\nexport { default as chalk } from \"chalk\";\nexport { fs, os, path };\nexport type OAuthProviderId = string;\nexport type {\n\tAutocompleteItem,\n\tAutocompleteProvider,\n\tAutocompleteSuggestions,\n\tEditorComponent,\n\tKeybinding,\n\tKeyId,\n\tMarkdownTheme,\n\tOverlayHandle,\n\tOverlayOptions,\n\tSlashCommand,\n} from \"@earendil-works/pi-tui\";\nexport {\n\tCombinedAutocompleteProvider,\n\ttype Component,\n\tContainer,\n\tfuzzyFilter,\n\tgetCapabilities,\n\thyperlink,\n\tLoader,\n\ttype LoaderIndicatorOptions,\n\tMarkdown,\n\tmatchesKey,\n\tProcessTerminal,\n\tSpacer,\n\tsetKeybindings,\n\tText,\n\tTruncatedText,\n\ttype TUI,\n\tTuiMainScreen,\n\tvisibleWidth,\n} from \"@earendil-works/pi-tui\";\nexport { spawn, spawnSync } from \"child_process\";\nexport {\n\tAPP_NAME,\n\tAPP_TITLE,\n\tCHANGELOG_URL,\n\tENV_OFFLINE,\n\tgetAgentDir,\n\tgetAuthPath,\n\tgetDebugLogPath,\n\tgetDocsPath,\n\tgetEnvValue,\n\tgetShareViewerUrl,\n\tVERSION,\n} from \"../../config.js\";\nexport { type AgentSession, type AgentSessionEvent, parseSkillBlock } from \"../../core/agent-session.ts\";\nexport { type AgentSessionRuntime, SessionImportFileNotFoundError } from \"../../core/agent-session-runtime.ts\";\nexport { formatNoModelsAvailableMessage } from \"../../core/auth-guidance.ts\";\nexport type { VerbatimCompactionResult } from \"../../core/compaction/index.ts\";\nexport type {\n\tAutocompleteProviderFactory,\n\tEditorFactory,\n\tExtensionCommandContext,\n\tExtensionContext,\n\tExtensionRunner,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tHostCustomUiState,\n\tHostCustomUiStateListener,\n\tProjectTrustContext,\n} from \"../../core/extensions/index.ts\";\nexport { FooterDataProvider, type ReadonlyFooterDataProvider } from \"../../core/footer-data-provider.ts\";\nexport { configureHttpDispatcher } from \"../../core/http-dispatcher.ts\";\nexport { type AppKeybinding, KeybindingsManager } from \"../../core/keybindings.ts\";\nexport {\n\tdefaultModelPerProvider,\n\tfindExactModelReferenceMatch,\n\tfindInitialModel,\n\tresolveModelScope,\n\tresolveModelScopeFromModels,\n\tresolveModelScopeWithDiagnostics,\n\tresolveRestoredModelReference,\n} from \"../../core/model-resolver.ts\";\nexport { DefaultPackageManager } from \"../../core/package-manager.ts\";\nexport { BUILT_IN_PROVIDER_DISPLAY_NAMES } from \"../../core/provider-display-names.ts\";\nexport type { ResourceDiagnostic } from \"../../core/resource-loader.ts\";\nexport { formatMissingSessionCwdPrompt, MissingSessionCwdError } from \"../../core/session-cwd.ts\";\nexport { type SessionContext, SessionManager } from \"../../core/session-manager.ts\";\nexport { BUILTIN_SLASH_COMMANDS, BUNDLED_EXTENSION_SLASH_COMMANDS } from \"../../core/slash-commands.ts\";\nexport type { SourceInfo } from \"../../core/source-info.ts\";\nexport { isInstallTelemetryEnabled } from \"../../core/telemetry.ts\";\nexport { recordTimeSinceReset } from \"../../core/timings.ts\";\nexport type { TruncationResult } from \"../../core/tools/truncate.ts\";\nexport {\n\thasProjectConfigDir,\n\thasProjectTrustInputs,\n\thasTrustRequiringProjectResources,\n\tProjectTrustStore,\n} from \"../../core/trust-manager.ts\";\nexport {\n\tgetChangelogPath,\n\tgetEntriesForVersion,\n\tgetNewEntries,\n\tnormalizeChangelogLinks,\n\tparseChangelog,\n} from \"../../utils/changelog.ts\";\nexport { copyToClipboard } from \"../../utils/clipboard.ts\";\nexport { parseGitUrl } from \"../../utils/git.ts\";\nexport { getCwdRelativePath } from \"../../utils/paths.ts\";\nexport { getPiUserAgent } from \"../../utils/pi-user-agent.ts\";\nexport { killTrackedDetachedChildren } from \"../../utils/shell.ts\";\nexport { ensureTool } from \"../../utils/tools-manager.ts\";\nexport { checkForNewPiVersion } from \"../../utils/version-check.ts\";\nexport {\n\tcombineQueuedMessagesForEditor,\n\topenExternalEditorForText,\n\tpasteClipboardImageToEditor,\n} from \"./chat-input-actions.ts\";\nexport { ArminComponent } from \"./components/armin.ts\";\nexport { AssistantMessageComponent } from \"./components/assistant-message.ts\";\nexport { composeStartupIdentity, renderAtomicAnsiBanner } from \"./components/atomic-banner.ts\";\nexport { BashExecutionComponent } from \"./components/bash-execution.ts\";\nexport { BorderedLoader } from \"./components/bordered-loader.ts\";\nexport { BranchSummaryMessageComponent } from \"./components/branch-summary-message.ts\";\nexport {\n\ttype ChatMessageEntry,\n\ttype ChatMessageRenderOptions,\n\tchatEntriesFromAgentMessages,\n\trenderChatMessageEntry,\n} from \"./components/chat-message-renderer.ts\";\nexport { addChatTranscriptEntry } from \"./components/chat-transcript.ts\";\nexport { CompactionBoundaryMessageComponent } from \"./components/compaction-boundary-message.ts\";\nexport { CountdownTimer } from \"./components/countdown-timer.ts\";\nexport { CustomEditor } from \"./components/custom-editor.ts\";\nexport { CustomMessageComponent } from \"./components/custom-message.ts\";\nexport { DaxnutsComponent } from \"./components/daxnuts.ts\";\nexport { DynamicBorder } from \"./components/dynamic-border.ts\";\nexport { EarendilAnnouncementComponent } from \"./components/earendil-announcement.ts\";\nexport { ExtensionEditorComponent } from \"./components/extension-editor.ts\";\nexport { ExtensionInputComponent } from \"./components/extension-input.ts\";\nexport { ExtensionSelectorComponent } from \"./components/extension-selector.ts\";\nexport { FooterComponent, UsageMeterComponent } from \"./components/footer.ts\";\nexport { formatKeyText, keyDisplayText, keyHintIfBound, keyText } from \"./components/keybinding-hints.ts\";\nexport { LoginDialogComponent } from \"./components/login-dialog.ts\";\nexport { ModelSelectorComponent } from \"./components/model-selector.ts\";\nexport { type AuthSelectorProvider, OAuthSelectorComponent } from \"./components/oauth-selector.ts\";\nexport { ScopedModelsSelectorComponent } from \"./components/scoped-models-selector.ts\";\nexport { SessionSelectorComponent } from \"./components/session-selector.ts\";\nexport { SettingsSelectorComponent } from \"./components/settings-selector.ts\";\nexport { SkillInvocationMessageComponent } from \"./components/skill-invocation-message.ts\";\nexport { ThinkingSelectorComponent } from \"./components/thinking-selector.ts\";\nexport { ToolExecutionComponent } from \"./components/tool-execution.ts\";\nexport { TreeSelectorComponent } from \"./components/tree-selector.ts\";\nexport { TrustSelectorComponent } from \"./components/trust-selector.ts\";\nexport { UserMessageComponent } from \"./components/user-message.ts\";\nexport { UserMessageSelectorComponent } from \"./components/user-message-selector.ts\";\nexport { getModelSearchText } from \"./model-search.ts\";\nexport {\n\tgetAvailableThemes,\n\tgetAvailableThemesWithPaths,\n\tgetEditorTheme,\n\tgetMarkdownTheme,\n\tgetThemeByName,\n\tonThemeChange,\n\tsetRegisteredThemes,\n\tstopThemeWatcher,\n\tTheme,\n\ttheme,\n} from \"./theme/theme.ts\";\nexport { InteractiveThemeController } from \"./theme/theme-controller.ts\";\nexport { pickWhimsicalWorkingMessage } from \"./whimsical-messages.ts\";\n"]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Usage } from "@bastani/pi-ai/compat";
|
|
1
|
+
import type { AssistantMessage, Usage } from "@bastani/pi-ai/compat";
|
|
2
2
|
import type { ThinkingLevel } from "@earendil-works/pi-agent-core";
|
|
3
3
|
/** Method surface installed onto InteractiveModeBase by sibling modules. */
|
|
4
4
|
import type { MarkdownTransformer } from "../../core/extensions/types.ts";
|
|
@@ -7,19 +7,19 @@ import type { FullscreenExitOutput } from "../../core/settings-manager.ts";
|
|
|
7
7
|
import type { ToolStatus } from "../../utils/tools-manager.ts";
|
|
8
8
|
import type { JsonAgentSessionEvent } from "../json-event.ts";
|
|
9
9
|
import type { AtomicWorkingLoader } from "./components/atomic-working-status.ts";
|
|
10
|
-
import type { AgentMessage, AgentSession, AgentSessionEvent, Api, AppKeybinding, AuthSelectorProvider, AutocompleteProvider, ChatMessageEntry, ChatMessageRenderOptions, Component, Container, EditorFactory, ExtensionCommandContext, ExtensionEditorComponent, ExtensionInputComponent, ExtensionRunner, ExtensionSelectorComponent, ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetOptions, HostCustomUiState, HostCustomUiStateListener, Keybinding, KeybindingsManager,
|
|
10
|
+
import type { AgentMessage, AgentSession, AgentSessionEvent, Api, AppKeybinding, AuthSelectorProvider, AutocompleteProvider, ChatMessageEntry, ChatMessageRenderOptions, Component, Container, EditorFactory, ExtensionCommandContext, ExtensionEditorComponent, ExtensionInputComponent, ExtensionRunner, ExtensionSelectorComponent, ExtensionUIContext, ExtensionUIDialogOptions, ExtensionWidgetOptions, HostCustomUiState, HostCustomUiStateListener, Keybinding, KeybindingsManager, LoaderIndicatorOptions, LoginDialogComponent, MarkdownTheme, Message, MissingSessionCwdError, Model, OAuthSelectPrompt, OverlayHandle, OverlayOptions, ProjectTrustContext, ReadonlyFooterDataProvider, ResourceDiagnostic, SessionContext, SlashCommand, SourceInfo, Theme, TUI, VerbatimCompactionResult } from "./interactive-mode-deps.ts";
|
|
11
11
|
import type { InteractiveSubmission } from "./interactive-submission.ts";
|
|
12
12
|
declare module "./interactive-mode-base.ts" {
|
|
13
13
|
interface InteractiveModeBase {
|
|
14
14
|
getAutocompleteSourceTag(sourceInfo?: SourceInfo): string | undefined;
|
|
15
15
|
prefixAutocompleteDescription(description: string | undefined, sourceInfo?: SourceInfo): string | undefined;
|
|
16
16
|
getBuiltInCommandConflictDiagnostics(extensionRunner: ExtensionRunner): ResourceDiagnostic[];
|
|
17
|
-
getCodexFastModeCandidateModels(): Model<Api>[];
|
|
18
|
-
hasCodexFastModeSupportedModels(): boolean;
|
|
19
17
|
createBaseAutocompleteProvider(): AutocompleteProvider;
|
|
20
18
|
buildRemoteSlashCommands(localCommands: SlashCommand[]): SlashCommand[];
|
|
21
19
|
setupAutocompleteProvider(): void;
|
|
22
20
|
showStartupNoticesIfNeeded(targetContainer?: Container): void;
|
|
21
|
+
reportModelCatalogWarning(targetContainer?: Container): void;
|
|
22
|
+
reportedModelCatalogWarning: string | undefined;
|
|
23
23
|
hadLastChangelogVersionAtStartup: boolean;
|
|
24
24
|
firstRunNoticeVisible: boolean;
|
|
25
25
|
firstRunOnboardingNoticeComponents: Component[];
|
|
@@ -149,7 +149,8 @@ declare module "./interactive-mode-base.ts" {
|
|
|
149
149
|
setupExtensionShortcuts(extensionRunner: ExtensionRunner): void;
|
|
150
150
|
setExtensionStatus(key: string, text: string | undefined): void;
|
|
151
151
|
getWorkingLoaderMessage(): string;
|
|
152
|
-
createWorkingLoader():
|
|
152
|
+
createWorkingLoader(): AtomicWorkingLoader;
|
|
153
|
+
clearWorkingLoader(): void;
|
|
153
154
|
stopWorkingLoader(): void;
|
|
154
155
|
showWorkingLoaderNow(): void;
|
|
155
156
|
setWorkingVisible(visible: boolean): void;
|
|
@@ -230,6 +231,7 @@ declare module "./interactive-mode-base.ts" {
|
|
|
230
231
|
addRenderedChatEntry(entry: ChatMessageEntry): Component;
|
|
231
232
|
addCompactionBoundaryToChat(result: VerbatimCompactionResult): void;
|
|
232
233
|
addCompactionCostNotice(kind: "compaction" | "branch_summary", usage: Usage): void;
|
|
234
|
+
maybeShowAssistantDiagnostics(message: AssistantMessage): void;
|
|
233
235
|
addMessageToChat(message: AgentMessage, options?: {
|
|
234
236
|
populateHistory?: boolean;
|
|
235
237
|
}): void;
|
|
@@ -312,11 +314,10 @@ declare module "./interactive-mode-base.ts" {
|
|
|
312
314
|
focus: Component;
|
|
313
315
|
dispose?: () => void;
|
|
314
316
|
}): void;
|
|
315
|
-
showFastModeSelector(): void;
|
|
316
317
|
showSettingsSelector(): void;
|
|
317
318
|
handleModelCommand(searchTerm?: string): Promise<void>;
|
|
318
319
|
handleThinkingCommand(searchTerm?: string): void;
|
|
319
|
-
selectThinkingLevel(level: ThinkingLevel
|
|
320
|
+
selectThinkingLevel(level: ThinkingLevel): void;
|
|
320
321
|
showThinkingSelector(): void;
|
|
321
322
|
findExactModelMatch(searchTerm: string): Promise<Model<Api> | undefined>;
|
|
322
323
|
getModelCandidates(): Promise<Model<Api>[]>;
|
|
@@ -352,9 +353,7 @@ declare module "./interactive-mode-base.ts" {
|
|
|
352
353
|
getPathCommandArgument(text: string, command: "/export" | "/import"): string | undefined;
|
|
353
354
|
handleImportCommand(text: string): Promise<void>;
|
|
354
355
|
handleShareCommand(): Promise<void>;
|
|
355
|
-
handleCopyCommand(
|
|
356
|
-
preferSelection?: boolean;
|
|
357
|
-
}): Promise<void>;
|
|
356
|
+
handleCopyCommand(): Promise<void>;
|
|
358
357
|
handleNameCommand(text: string): void;
|
|
359
358
|
handleSessionCommand(): void;
|
|
360
359
|
handleChangelogCommand(): void;
|
|
@@ -362,8 +361,6 @@ declare module "./interactive-mode-base.ts" {
|
|
|
362
361
|
getEditorKeyDisplay(action: Keybinding): string;
|
|
363
362
|
jumpToTranscriptEnd(): void;
|
|
364
363
|
setFullscreenCopyOnSelect(enabled: boolean): void;
|
|
365
|
-
getFullscreenCopyOnSelect(): boolean | undefined;
|
|
366
|
-
copyActiveFullscreenSelection(): Promise<boolean | undefined>;
|
|
367
364
|
handleHotkeysCommand(): void;
|
|
368
365
|
handleClearCommand(): Promise<void>;
|
|
369
366
|
handleDebugCommand(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-surface.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-surface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"interactive-mode-surface.d.ts","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-surface.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interactive-mode-surface.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-surface.ts"],"names":[],"mappings":"","sourcesContent":["import type { Usage } from \"@bastani/pi-ai/compat\";\nimport type { ThinkingLevel } from \"@earendil-works/pi-agent-core\";\n/** Method surface installed onto InteractiveModeBase by sibling modules. */\n\nimport type { MarkdownTransformer } from \"../../core/extensions/types.ts\";\nimport type { CustomEntry, SessionEntry } from \"../../core/session-manager.ts\";\nimport type { FullscreenExitOutput } from \"../../core/settings-manager.ts\";\nimport type { ToolStatus } from \"../../utils/tools-manager.ts\";\nimport type { JsonAgentSessionEvent } from \"../json-event.ts\";\nimport type { AtomicWorkingLoader } from \"./components/atomic-working-status.ts\";\nimport type {\n\tAgentMessage,\n\tAgentSession,\n\tAgentSessionEvent,\n\tApi,\n\tAppKeybinding,\n\tAuthSelectorProvider,\n\tAutocompleteProvider,\n\tChatMessageEntry,\n\tChatMessageRenderOptions,\n\tComponent,\n\tContainer,\n\tEditorFactory,\n\tExtensionCommandContext,\n\tExtensionEditorComponent,\n\tExtensionInputComponent,\n\tExtensionRunner,\n\tExtensionSelectorComponent,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tHostCustomUiState,\n\tHostCustomUiStateListener,\n\tKeybinding,\n\tKeybindingsManager,\n\tLoader,\n\tLoaderIndicatorOptions,\n\tLoginDialogComponent,\n\tMarkdownTheme,\n\tMessage,\n\tMissingSessionCwdError,\n\tModel,\n\tOAuthSelectPrompt,\n\tOverlayHandle,\n\tOverlayOptions,\n\tProjectTrustContext,\n\tReadonlyFooterDataProvider,\n\tResourceDiagnostic,\n\tSessionContext,\n\tSlashCommand,\n\tSourceInfo,\n\tTheme,\n\tTUI,\n\tVerbatimCompactionResult,\n} from \"./interactive-mode-deps.ts\";\nimport type { InteractiveSubmission } from \"./interactive-submission.ts\";\n\ndeclare module \"./interactive-mode-base.ts\" {\n\tinterface InteractiveModeBase {\n\t\tgetAutocompleteSourceTag(sourceInfo?: SourceInfo): string | undefined;\n\t\tprefixAutocompleteDescription(description: string | undefined, sourceInfo?: SourceInfo): string | undefined;\n\t\tgetBuiltInCommandConflictDiagnostics(extensionRunner: ExtensionRunner): ResourceDiagnostic[];\n\t\tgetCodexFastModeCandidateModels(): Model<Api>[];\n\t\thasCodexFastModeSupportedModels(): boolean;\n\t\tcreateBaseAutocompleteProvider(): AutocompleteProvider;\n\t\tbuildRemoteSlashCommands(localCommands: SlashCommand[]): SlashCommand[];\n\t\tsetupAutocompleteProvider(): void;\n\t\tshowStartupNoticesIfNeeded(targetContainer?: Container): void;\n\t\thadLastChangelogVersionAtStartup: boolean;\n\t\tfirstRunNoticeVisible: boolean;\n\t\tfirstRunOnboardingNoticeComponents: Component[];\n\t\tinitializeFirstRunOnboardingMarkers(): void;\n\t\tisFirstRunOnboardingEligible(): boolean;\n\t\tclearFirstRunOnboardingUi(): void;\n\t\tinit(): Promise<void>;\n\t\tcompleteDeferredStartup(): Promise<void>;\n\t\tretryDeferredModelRestore(targetContainer?: Container): Promise<void>;\n\t\tupdateTerminalTitle(): void;\n\t\trun(): Promise<void>;\n\t\tcheckForPackageUpdates(): Promise<string[]>;\n\t\tcheckTmuxKeyboardSetup(): Promise<string | undefined>;\n\t\tgetChangelogForDisplay(): string | undefined;\n\t\treportInstallTelemetry(version: string): void;\n\t\tgetMarkdownThemeWithSettings(): MarkdownTheme;\n\t\tgetMarkdownTransformers(): MarkdownTransformer[];\n\t\tformatDisplayPath(p: string): string;\n\t\tformatExtensionDisplayPath(path: string): string;\n\t\tformatContextPath(p: string): string;\n\t\tgetStartupModelLabel(): string;\n\t\tgetStartupIdentityText(maxWidth?: number, gap?: number, manifestoPhase?: number): string;\n\t\tgetAtomicAnsiMarkLines(gap?: number): string[];\n\t\tgetStartupExpansionState(): boolean;\n\t\tgetShortPath(fullPath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactPathLabel(resourcePath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactPackageSourceLabel(sourceInfo?: SourceInfo): string;\n\t\tgetCompactExtensionLabel(resourcePath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactDisplayPathSegments(resourcePath: string): string[];\n\t\tgetCompactNonPackageExtensionLabel(\n\t\t\tresourcePath: string,\n\t\t\tindex: number,\n\t\t\tallPaths: Array<{ path: string; segments: string[] }>,\n\t\t): string;\n\t\tgetCompactExtensionLabels(extensions: Array<{ path: string; sourceInfo?: SourceInfo }>): string[];\n\t\tgetDisplaySourceInfo(sourceInfo?: SourceInfo): {\n\t\t\tlabel: string;\n\t\t\tscopeLabel?: string;\n\t\t\tcolor: \"accent\" | \"muted\";\n\t\t};\n\t\tgetScopeGroup(sourceInfo?: SourceInfo): \"user\" | \"project\" | \"path\";\n\t\tisPackageSource(sourceInfo?: SourceInfo): boolean;\n\t\tbuildScopeGroups(items: Array<{ path: string; sourceInfo?: SourceInfo }>): Array<{\n\t\t\tscope: \"user\" | \"project\" | \"path\";\n\t\t\tpaths: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tpackages: Map<string, Array<{ path: string; sourceInfo?: SourceInfo }>>;\n\t\t}>;\n\t\tformatScopeGroups(\n\t\t\tgroups: Array<{\n\t\t\t\tscope: \"user\" | \"project\" | \"path\";\n\t\t\t\tpaths: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\t\tpackages: Map<string, Array<{ path: string; sourceInfo?: SourceInfo }>>;\n\t\t\t}>,\n\t\t\toptions: {\n\t\t\t\tformatPath: (item: { path: string; sourceInfo?: SourceInfo }) => string;\n\t\t\t\tformatPackagePath: (item: { path: string; sourceInfo?: SourceInfo }, source: string) => string;\n\t\t\t},\n\t\t): string;\n\t\tfindSourceInfoForPath(p: string, sourceInfos: Map<string, SourceInfo>): SourceInfo | undefined;\n\t\tformatPathWithSource(p: string, sourceInfo?: SourceInfo): string;\n\t\tformatDiagnostics(diagnostics: readonly ResourceDiagnostic[], sourceInfos: Map<string, SourceInfo>): string;\n\t\taddResourceDisclosure(options: {\n\t\t\tcontextFiles: ReadonlyArray<{ path: string }>;\n\t\t\tskills: ReadonlyArray<{ filePath: string; name: string }>;\n\t\t\tprompts: ReadonlyArray<{ filePath: string; name: string }>;\n\t\t\textensions: ReadonlyArray<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tthemes: ReadonlyArray<{ name?: string; sourcePath?: string; sourceInfo?: SourceInfo }>;\n\t\t\texpandedSections: {\n\t\t\t\tcontext?: string;\n\t\t\t\tskills?: string;\n\t\t\t\tprompts?: string;\n\t\t\t\textensions?: string;\n\t\t\t\tthemes?: string;\n\t\t\t};\n\t\t\ttargetContainer?: Container;\n\t\t}): void;\n\t\tshowLoadedResources(options?: {\n\t\t\textensions?: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tforce?: boolean;\n\t\t\tshowDiagnosticsWhenQuiet?: boolean;\n\t\t\ttargetContainer?: Container;\n\t\t}): void;\n\t\tbindCurrentSessionExtensions(): Promise<void>;\n\t\tapplyRuntimeSettings(): void;\n\t\trebindCurrentSession(): Promise<void>;\n\t\thandleFatalRuntimeError(prefix: string, error: unknown): Promise<never>;\n\t\trenderCurrentSessionState(): void;\n\t\tgetRegisteredToolDefinition(toolName: string): ReturnType<AgentSession[\"getToolDefinition\"]>;\n\t\tsetupExtensionShortcuts(extensionRunner: ExtensionRunner): void;\n\t\tsetExtensionStatus(key: string, text: string | undefined): void;\n\t\tgetWorkingLoaderMessage(): string;\n\t\tcreateWorkingLoader(): Loader | AtomicWorkingLoader;\n\t\tstopWorkingLoader(): void;\n\t\tshowWorkingLoaderNow(): void;\n\t\tsetWorkingVisible(visible: boolean): void;\n\t\tsetWorkingIndicator(options?: LoaderIndicatorOptions): void;\n\t\tsetHiddenThinkingLabel(label?: string): void;\n\t\tsetExtensionWidget(\n\t\t\tkey: string,\n\t\t\tcontent: string[] | ((tui: TUI, thm: Theme) => Component & { dispose?(): void }) | undefined,\n\t\t\toptions?: ExtensionWidgetOptions,\n\t\t): void;\n\t\tclearExtensionWidgets(): void;\n\t\tresetExtensionUI(): void;\n\t\trenderWidgets(): void;\n\t\trenderWidgetContainer(\n\t\t\tcontainer: Container,\n\t\t\twidgets: Map<string, Component & { dispose?(): void }>,\n\t\t\tspacerWhenEmpty: boolean,\n\t\t\tleadingSpacer: boolean,\n\t\t): void;\n\t\tsetExtensionFooter(\n\t\t\tfactory:\n\t\t\t\t| ((tui: TUI, thm: Theme, footerData: ReadonlyFooterDataProvider) => Component & { dispose?(): void })\n\t\t\t\t| undefined,\n\t\t): void;\n\t\tsetExtensionHeader(factory: ((tui: TUI, thm: Theme) => Component & { dispose?(): void }) | undefined): void;\n\t\taddExtensionTerminalInputListener(\n\t\t\thandler: (data: string) => { consume?: boolean; data?: string } | undefined,\n\t\t): () => void;\n\t\tclearExtensionTerminalInputListeners(): void;\n\t\tgetHostCustomUiState(): HostCustomUiState;\n\t\tnotifyHostCustomUiStateListeners(): void;\n\t\tbeginHostInlineCustomUi(): () => void;\n\t\tbeginInlineCustomUiFocusDeferral(): () => void;\n\t\tshouldDeferInlineCustomUiFocus(): boolean;\n\t\tfocusHostInlineCustomUi(): boolean;\n\t\tonHostCustomUiStateChange(listener: HostCustomUiStateListener): () => void;\n\t\tonExtensionWidgetRelease(key: string, listener: () => void): () => void;\n\t\tnotifyExtensionWidgetRelease(key: string): void;\n\t\tcreateProjectTrustContext(cwd: string): ProjectTrustContext;\n\t\tcreateExtensionUIContext(): ExtensionUIContext;\n\t\tshowExtensionSelector(\n\t\t\ttitle: string,\n\t\t\toptions: string[],\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionSelector(instance?: ExtensionSelectorComponent): void;\n\t\tshowExtensionConfirm(title: string, message: string, opts?: ExtensionUIDialogOptions): Promise<boolean>;\n\t\tpromptForMissingSessionCwd(error: MissingSessionCwdError): Promise<string | undefined>;\n\t\tshowExtensionInput(\n\t\t\ttitle: string,\n\t\t\tplaceholder?: string,\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionInput(instance?: ExtensionInputComponent): void;\n\t\tshowExtensionEditor(\n\t\t\ttitle: string,\n\t\t\tprefill?: string,\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionEditor(instance?: ExtensionEditorComponent): void;\n\t\tsetCustomEditorComponent(factory: EditorFactory | undefined): void;\n\t\tshowExtensionNotify(message: string, type?: \"info\" | \"warning\" | \"error\"): void;\n\t\tshowExtensionCustom<T>(\n\t\t\tfactory: (\n\t\t\t\ttui: TUI,\n\t\t\t\ttheme: Theme,\n\t\t\t\tkeybindings: KeybindingsManager,\n\t\t\t\tdone: (result: T) => void,\n\t\t\t) => (Component & { dispose?(): void }) | Promise<Component & { dispose?(): void }>,\n\t\t\toptions?: {\n\t\t\t\toverlay?: boolean;\n\t\t\t\tdeferInlineCustomUiFocus?: boolean;\n\t\t\t\thandlesInternalUiAction?: boolean;\n\t\t\t\t/** Overlay-only: bound the overlay and reserve transcript scroll extent. */\n\t\t\t\treserveTranscriptRows?: boolean;\n\t\t\t\tsignal?: AbortSignal;\n\t\t\t\toverlayOptions?: OverlayOptions | (() => OverlayOptions);\n\t\t\t\tonHandle?: (handle: OverlayHandle) => void;\n\t\t\t},\n\t\t): Promise<T>;\n\t\tshowExtensionError(extensionPath: string, error: string, stack?: string): void;\n\t\tsetupKeyHandlers(): void;\n\t\thandleClipboardImagePaste(): Promise<void>;\n\t\tsetupEditorSubmitHandler(): void;\n\t\tdeliverStartupReplayPrompt(text: string): void;\n\t\trecoverCookedStartupInput(): boolean;\n\t\tdrainStartupReplayCommands(): Promise<void>;\n\t\tadvanceStartupInputReplay(submittedText: string): void;\n\t\tsubscribeToAgent(): void;\n\t\thandleEvent(event: AgentSessionEvent | JsonAgentSessionEvent): Promise<void>;\n\t\tgetUserMessageText(message: Message): string;\n\t\tshowStatus(message: string): void;\n\t\t/** Report a managed-tool (fd/rg) readiness update inside the transcript. */\n\t\tshowManagedToolStatus(status: ToolStatus): void;\n\t\t/** Bring fd/rg to readiness after first paint; progress lands in the transcript. */\n\t\tensureManagedToolsReady(): Promise<void>;\n\t\tchatMessageRenderOptions(): ChatMessageRenderOptions;\n\t\taddRenderedChatEntry(entry: ChatMessageEntry): Component;\n\t\taddCompactionBoundaryToChat(result: VerbatimCompactionResult): void;\n\t\taddCompactionCostNotice(kind: \"compaction\" | \"branch_summary\", usage: Usage): void;\n\t\taddMessageToChat(message: AgentMessage, options?: { populateHistory?: boolean }): void;\n\t\taddCustomEntryToChat(entry: CustomEntry): void;\n\t\trenderSessionContext(\n\t\t\tsessionContext: SessionContext,\n\t\t\toptions?: { updateFooter?: boolean; populateHistory?: boolean },\n\t\t): void;\n\t\trenderSessionEntries(\n\t\t\tentries: SessionEntry[],\n\t\t\toptions?: {\n\t\t\t\tupdateFooter?: boolean;\n\t\t\t\tpopulateHistory?: boolean;\n\t\t\t\tsuppressCompactionBoundary?: VerbatimCompactionResult;\n\t\t\t},\n\t\t): void;\n\t\trenderInitialMessages(): void;\n\t\tattachStartupNoticesContainer(options?: { resetDetached?: boolean }): void;\n\t\tgetUserInput(): Promise<InteractiveSubmission>;\n\t\trunUserPromptTurn(submission: InteractiveSubmission | string): Promise<void>;\n\t\trenderDeferredUserInput(text: string): void;\n\t\tconsumeDeferredRenderedUserInput(text: string): boolean;\n\t\tdiscardDeferredRenderedUserInput(text: string): void;\n\t\tensureDeferredStartupComplete(): Promise<void>;\n\t\trebuildChatFromMessages(options?: {\n\t\t\tsuppressCompactionBoundary?: VerbatimCompactionResult;\n\t\t\tresetStartupDisclosure?: boolean;\n\t\t}): void;\n\t\thandleCtrlC(): void;\n\t\tinterruptActiveOperation(): boolean;\n\t\thandleCtrlD(): void;\n\t\tshutdown(options?: { fromSignal?: boolean }): Promise<void>;\n\t\temergencyTerminalExit(): never;\n\t\tuncaughtCrash(error: Error): never;\n\t\tcheckShutdownRequested(): Promise<void>;\n\t\tregisterSignalHandlers(): void;\n\t\tunregisterSignalHandlers(): void;\n\t\thandleCtrlZ(): void;\n\t\thandleFollowUp(): Promise<void>;\n\t\thandleDequeue(): void;\n\t\trefreshBuiltInHeader(): void;\n\t\tupdateEditorBorderColor(): void;\n\t\tcycleThinkingLevel(): void;\n\t\tcycleModel(direction: \"forward\" | \"backward\"): Promise<void>;\n\t\ttoggleToolOutputExpansion(): void;\n\t\tsetToolsExpanded(expanded: boolean): void;\n\t\ttoggleThinkingBlockVisibility(): void;\n\t\tupdateThinkingBlockVisibility(): void;\n\t\topenExternalEditor(): Promise<void>;\n\t\tclearEditor(): void;\n\t\tshowError(errorMessage: string): void;\n\t\tshowWarning(warningMessage: string, targetContainer?: Container): void;\n\t\tshowNewVersionNotification(newVersion: string, targetContainer?: Container): void;\n\t\tshowPackageUpdateNotification(packages: string[], targetContainer?: Container): void;\n\t\tgetAllQueuedMessages(): { steering: string[]; followUp: string[] };\n\t\tclearAllQueues(options?: { preserveUnprotectedCustomMessages?: boolean }): {\n\t\t\tsteering: string[];\n\t\t\tfollowUp: string[];\n\t\t};\n\t\tupdatePendingMessagesDisplay(): void;\n\t\trestoreQueuedMessagesToEditor(options?: {\n\t\t\tabort?: boolean;\n\t\t\tcurrentText?: string;\n\t\t\tpreserveUnprotectedCustomMessages?: boolean;\n\t\t}): number;\n\t\tqueueCompactionMessage(text: string, mode: \"steer\" | \"followUp\"): void;\n\t\tisExtensionCommand(text: string): boolean;\n\t\tflushCompactionQueue(options?: { willRetry?: boolean }): Promise<void>;\n\t\tflushPendingBashComponents(): void;\n\t\tshowSelector(\n\t\t\tcreate: (done: () => void) => { component: Component; focus: Component; dispose?: () => void },\n\t\t): void;\n\t\tshowFastModeSelector(): void;\n\t\tshowSettingsSelector(): void;\n\t\thandleModelCommand(searchTerm?: string): Promise<void>;\n\t\thandleThinkingCommand(searchTerm?: string): void;\n\t\tselectThinkingLevel(level: ThinkingLevel, persist: boolean): void;\n\t\tshowThinkingSelector(): void;\n\t\tfindExactModelMatch(searchTerm: string): Promise<Model<Api> | undefined>;\n\t\tgetModelCandidates(): Promise<Model<Api>[]>;\n\t\tupdateAvailableProviderCount(): Promise<void>;\n\t\tmaybeWarnAboutAnthropicSubscriptionAuth(\n\t\t\tmodel?: Model<Api> | undefined,\n\t\t\ttargetContainer?: Container,\n\t\t): Promise<void>;\n\t\tshowModelSelector(initialSearchInput?: string): void;\n\t\tshowModelsSelector(): void;\n\t\tshowUserMessageSelector(): Promise<void>;\n\t\thandleCloneCommand(): Promise<void>;\n\t\tmaybeSaveImplicitProjectTrustAfterReload(): boolean;\n\t\tshowTrustSelector(): void;\n\t\tshowTreeSelector(initialSelectedId?: string): Promise<void>;\n\t\tshowSessionSelector(): void;\n\t\thandleResumeSession(\n\t\t\tsessionPath: string,\n\t\t\toptions?: Parameters<ExtensionCommandContext[\"switchSession\"]>[1],\n\t\t): Promise<{ cancelled: boolean }>;\n\t\tgetLoginProviderOptions(authType?: \"oauth\" | \"api_key\"): AuthSelectorProvider[];\n\t\tgetLogoutProviderOptions(): AuthSelectorProvider[];\n\t\thandleLoginCommand(providerRef?: string): Promise<void>;\n\t\tstartProviderLogin(providerOption: AuthSelectorProvider): Promise<void>;\n\t\tshowLoginAuthTypeSelector(providerOptions?: AuthSelectorProvider[]): void;\n\t\tshowLoginProviderSelector(authType?: \"oauth\" | \"api_key\", initialSearchInput?: string): void;\n\t\tshowOAuthSelector(mode: \"login\" | \"logout\"): Promise<void>;\n\t\tcompleteProviderAuthentication(\n\t\t\tproviderId: string,\n\t\t\tproviderName: string,\n\t\t\tauthType: \"oauth\" | \"api_key\",\n\t\t\tpreviousModel: Model<Api> | undefined,\n\t\t\toptions?: { modelsRefreshed?: boolean },\n\t\t): Promise<void>;\n\t\tshowBedrockSetupDialog(providerId: string, providerName: string): void;\n\t\tshowApiKeyLoginDialog(providerId: string, providerName: string): Promise<void>;\n\t\tshowOAuthLoginSelect(dialog: LoginDialogComponent, prompt: OAuthSelectPrompt): Promise<string | undefined>;\n\t\tshowLoginDialog(providerId: string, providerName: string): Promise<void>;\n\t\thandleReloadCommand(): Promise<void>;\n\t\thandleExportCommand(text: string): Promise<void>;\n\t\tgetPathCommandArgument(text: string, command: \"/export\" | \"/import\"): string | undefined;\n\t\thandleImportCommand(text: string): Promise<void>;\n\t\thandleShareCommand(): Promise<void>;\n\t\thandleCopyCommand(options?: { preferSelection?: boolean }): Promise<void>;\n\t\thandleNameCommand(text: string): void;\n\t\thandleSessionCommand(): void;\n\t\thandleChangelogCommand(): void;\n\t\tgetAppKeyDisplay(action: AppKeybinding): string;\n\t\tgetEditorKeyDisplay(action: Keybinding): string;\n\t\tjumpToTranscriptEnd(): void;\n\t\tsetFullscreenCopyOnSelect(enabled: boolean): void;\n\t\tgetFullscreenCopyOnSelect(): boolean | undefined;\n\t\tcopyActiveFullscreenSelection(): Promise<boolean | undefined>;\n\t\thandleHotkeysCommand(): void;\n\t\thandleClearCommand(): Promise<void>;\n\t\thandleDebugCommand(): void;\n\t\thandleArminSaysHi(): void;\n\t\thandleDementedDelves(): void;\n\t\thandleDaxnuts(): void;\n\t\tcheckDaxnutsEasterEgg(model: { provider: string; id: string }): void;\n\t\thandleBashCommand(command: string, excludeFromContext?: boolean): Promise<void>;\n\t\thandleCompactCommand(): Promise<void>;\n\t\tstop(fullscreenExitOutput?: FullscreenExitOutput): void;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"interactive-mode-surface.js","sourceRoot":"","sources":["../../../src/modes/interactive/interactive-mode-surface.ts"],"names":[],"mappings":"","sourcesContent":["import type { AssistantMessage, Usage } from \"@bastani/pi-ai/compat\";\nimport type { ThinkingLevel } from \"@earendil-works/pi-agent-core\";\n/** Method surface installed onto InteractiveModeBase by sibling modules. */\n\nimport type { MarkdownTransformer } from \"../../core/extensions/types.ts\";\nimport type { CustomEntry, SessionEntry } from \"../../core/session-manager.ts\";\nimport type { FullscreenExitOutput } from \"../../core/settings-manager.ts\";\nimport type { ToolStatus } from \"../../utils/tools-manager.ts\";\nimport type { JsonAgentSessionEvent } from \"../json-event.ts\";\nimport type { AtomicWorkingLoader } from \"./components/atomic-working-status.ts\";\nimport type {\n\tAgentMessage,\n\tAgentSession,\n\tAgentSessionEvent,\n\tApi,\n\tAppKeybinding,\n\tAuthSelectorProvider,\n\tAutocompleteProvider,\n\tChatMessageEntry,\n\tChatMessageRenderOptions,\n\tComponent,\n\tContainer,\n\tEditorFactory,\n\tExtensionCommandContext,\n\tExtensionEditorComponent,\n\tExtensionInputComponent,\n\tExtensionRunner,\n\tExtensionSelectorComponent,\n\tExtensionUIContext,\n\tExtensionUIDialogOptions,\n\tExtensionWidgetOptions,\n\tHostCustomUiState,\n\tHostCustomUiStateListener,\n\tKeybinding,\n\tKeybindingsManager,\n\tLoaderIndicatorOptions,\n\tLoginDialogComponent,\n\tMarkdownTheme,\n\tMessage,\n\tMissingSessionCwdError,\n\tModel,\n\tOAuthSelectPrompt,\n\tOverlayHandle,\n\tOverlayOptions,\n\tProjectTrustContext,\n\tReadonlyFooterDataProvider,\n\tResourceDiagnostic,\n\tSessionContext,\n\tSlashCommand,\n\tSourceInfo,\n\tTheme,\n\tTUI,\n\tVerbatimCompactionResult,\n} from \"./interactive-mode-deps.ts\";\nimport type { InteractiveSubmission } from \"./interactive-submission.ts\";\n\ndeclare module \"./interactive-mode-base.ts\" {\n\tinterface InteractiveModeBase {\n\t\tgetAutocompleteSourceTag(sourceInfo?: SourceInfo): string | undefined;\n\t\tprefixAutocompleteDescription(description: string | undefined, sourceInfo?: SourceInfo): string | undefined;\n\t\tgetBuiltInCommandConflictDiagnostics(extensionRunner: ExtensionRunner): ResourceDiagnostic[];\n\t\tcreateBaseAutocompleteProvider(): AutocompleteProvider;\n\t\tbuildRemoteSlashCommands(localCommands: SlashCommand[]): SlashCommand[];\n\t\tsetupAutocompleteProvider(): void;\n\t\tshowStartupNoticesIfNeeded(targetContainer?: Container): void;\n\t\treportModelCatalogWarning(targetContainer?: Container): void;\n\t\treportedModelCatalogWarning: string | undefined;\n\t\thadLastChangelogVersionAtStartup: boolean;\n\t\tfirstRunNoticeVisible: boolean;\n\t\tfirstRunOnboardingNoticeComponents: Component[];\n\t\tinitializeFirstRunOnboardingMarkers(): void;\n\t\tisFirstRunOnboardingEligible(): boolean;\n\t\tclearFirstRunOnboardingUi(): void;\n\t\tinit(): Promise<void>;\n\t\tcompleteDeferredStartup(): Promise<void>;\n\t\tretryDeferredModelRestore(targetContainer?: Container): Promise<void>;\n\t\tupdateTerminalTitle(): void;\n\t\trun(): Promise<void>;\n\t\tcheckForPackageUpdates(): Promise<string[]>;\n\t\tcheckTmuxKeyboardSetup(): Promise<string | undefined>;\n\t\tgetChangelogForDisplay(): string | undefined;\n\t\treportInstallTelemetry(version: string): void;\n\t\tgetMarkdownThemeWithSettings(): MarkdownTheme;\n\t\tgetMarkdownTransformers(): MarkdownTransformer[];\n\t\tformatDisplayPath(p: string): string;\n\t\tformatExtensionDisplayPath(path: string): string;\n\t\tformatContextPath(p: string): string;\n\t\tgetStartupModelLabel(): string;\n\t\tgetStartupIdentityText(maxWidth?: number, gap?: number, manifestoPhase?: number): string;\n\t\tgetAtomicAnsiMarkLines(gap?: number): string[];\n\t\tgetStartupExpansionState(): boolean;\n\t\tgetShortPath(fullPath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactPathLabel(resourcePath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactPackageSourceLabel(sourceInfo?: SourceInfo): string;\n\t\tgetCompactExtensionLabel(resourcePath: string, sourceInfo?: SourceInfo): string;\n\t\tgetCompactDisplayPathSegments(resourcePath: string): string[];\n\t\tgetCompactNonPackageExtensionLabel(\n\t\t\tresourcePath: string,\n\t\t\tindex: number,\n\t\t\tallPaths: Array<{ path: string; segments: string[] }>,\n\t\t): string;\n\t\tgetCompactExtensionLabels(extensions: Array<{ path: string; sourceInfo?: SourceInfo }>): string[];\n\t\tgetDisplaySourceInfo(sourceInfo?: SourceInfo): {\n\t\t\tlabel: string;\n\t\t\tscopeLabel?: string;\n\t\t\tcolor: \"accent\" | \"muted\";\n\t\t};\n\t\tgetScopeGroup(sourceInfo?: SourceInfo): \"user\" | \"project\" | \"path\";\n\t\tisPackageSource(sourceInfo?: SourceInfo): boolean;\n\t\tbuildScopeGroups(items: Array<{ path: string; sourceInfo?: SourceInfo }>): Array<{\n\t\t\tscope: \"user\" | \"project\" | \"path\";\n\t\t\tpaths: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tpackages: Map<string, Array<{ path: string; sourceInfo?: SourceInfo }>>;\n\t\t}>;\n\t\tformatScopeGroups(\n\t\t\tgroups: Array<{\n\t\t\t\tscope: \"user\" | \"project\" | \"path\";\n\t\t\t\tpaths: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\t\tpackages: Map<string, Array<{ path: string; sourceInfo?: SourceInfo }>>;\n\t\t\t}>,\n\t\t\toptions: {\n\t\t\t\tformatPath: (item: { path: string; sourceInfo?: SourceInfo }) => string;\n\t\t\t\tformatPackagePath: (item: { path: string; sourceInfo?: SourceInfo }, source: string) => string;\n\t\t\t},\n\t\t): string;\n\t\tfindSourceInfoForPath(p: string, sourceInfos: Map<string, SourceInfo>): SourceInfo | undefined;\n\t\tformatPathWithSource(p: string, sourceInfo?: SourceInfo): string;\n\t\tformatDiagnostics(diagnostics: readonly ResourceDiagnostic[], sourceInfos: Map<string, SourceInfo>): string;\n\t\taddResourceDisclosure(options: {\n\t\t\tcontextFiles: ReadonlyArray<{ path: string }>;\n\t\t\tskills: ReadonlyArray<{ filePath: string; name: string }>;\n\t\t\tprompts: ReadonlyArray<{ filePath: string; name: string }>;\n\t\t\textensions: ReadonlyArray<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tthemes: ReadonlyArray<{ name?: string; sourcePath?: string; sourceInfo?: SourceInfo }>;\n\t\t\texpandedSections: {\n\t\t\t\tcontext?: string;\n\t\t\t\tskills?: string;\n\t\t\t\tprompts?: string;\n\t\t\t\textensions?: string;\n\t\t\t\tthemes?: string;\n\t\t\t};\n\t\t\ttargetContainer?: Container;\n\t\t}): void;\n\t\tshowLoadedResources(options?: {\n\t\t\textensions?: Array<{ path: string; sourceInfo?: SourceInfo }>;\n\t\t\tforce?: boolean;\n\t\t\tshowDiagnosticsWhenQuiet?: boolean;\n\t\t\ttargetContainer?: Container;\n\t\t}): void;\n\t\tbindCurrentSessionExtensions(): Promise<void>;\n\t\tapplyRuntimeSettings(): void;\n\t\trebindCurrentSession(): Promise<void>;\n\t\thandleFatalRuntimeError(prefix: string, error: unknown): Promise<never>;\n\t\trenderCurrentSessionState(): void;\n\t\tgetRegisteredToolDefinition(toolName: string): ReturnType<AgentSession[\"getToolDefinition\"]>;\n\t\tsetupExtensionShortcuts(extensionRunner: ExtensionRunner): void;\n\t\tsetExtensionStatus(key: string, text: string | undefined): void;\n\t\tgetWorkingLoaderMessage(): string;\n\t\tcreateWorkingLoader(): AtomicWorkingLoader;\n\t\tclearWorkingLoader(): void;\n\t\tstopWorkingLoader(): void;\n\t\tshowWorkingLoaderNow(): void;\n\t\tsetWorkingVisible(visible: boolean): void;\n\t\tsetWorkingIndicator(options?: LoaderIndicatorOptions): void;\n\t\tsetHiddenThinkingLabel(label?: string): void;\n\t\tsetExtensionWidget(\n\t\t\tkey: string,\n\t\t\tcontent: string[] | ((tui: TUI, thm: Theme) => Component & { dispose?(): void }) | undefined,\n\t\t\toptions?: ExtensionWidgetOptions,\n\t\t): void;\n\t\tclearExtensionWidgets(): void;\n\t\tresetExtensionUI(): void;\n\t\trenderWidgets(): void;\n\t\trenderWidgetContainer(\n\t\t\tcontainer: Container,\n\t\t\twidgets: Map<string, Component & { dispose?(): void }>,\n\t\t\tspacerWhenEmpty: boolean,\n\t\t\tleadingSpacer: boolean,\n\t\t): void;\n\t\tsetExtensionFooter(\n\t\t\tfactory:\n\t\t\t\t| ((tui: TUI, thm: Theme, footerData: ReadonlyFooterDataProvider) => Component & { dispose?(): void })\n\t\t\t\t| undefined,\n\t\t): void;\n\t\tsetExtensionHeader(factory: ((tui: TUI, thm: Theme) => Component & { dispose?(): void }) | undefined): void;\n\t\taddExtensionTerminalInputListener(\n\t\t\thandler: (data: string) => { consume?: boolean; data?: string } | undefined,\n\t\t): () => void;\n\t\tclearExtensionTerminalInputListeners(): void;\n\t\tgetHostCustomUiState(): HostCustomUiState;\n\t\tnotifyHostCustomUiStateListeners(): void;\n\t\tbeginHostInlineCustomUi(): () => void;\n\t\tbeginInlineCustomUiFocusDeferral(): () => void;\n\t\tshouldDeferInlineCustomUiFocus(): boolean;\n\t\tfocusHostInlineCustomUi(): boolean;\n\t\tonHostCustomUiStateChange(listener: HostCustomUiStateListener): () => void;\n\t\tonExtensionWidgetRelease(key: string, listener: () => void): () => void;\n\t\tnotifyExtensionWidgetRelease(key: string): void;\n\t\tcreateProjectTrustContext(cwd: string): ProjectTrustContext;\n\t\tcreateExtensionUIContext(): ExtensionUIContext;\n\t\tshowExtensionSelector(\n\t\t\ttitle: string,\n\t\t\toptions: string[],\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionSelector(instance?: ExtensionSelectorComponent): void;\n\t\tshowExtensionConfirm(title: string, message: string, opts?: ExtensionUIDialogOptions): Promise<boolean>;\n\t\tpromptForMissingSessionCwd(error: MissingSessionCwdError): Promise<string | undefined>;\n\t\tshowExtensionInput(\n\t\t\ttitle: string,\n\t\t\tplaceholder?: string,\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionInput(instance?: ExtensionInputComponent): void;\n\t\tshowExtensionEditor(\n\t\t\ttitle: string,\n\t\t\tprefill?: string,\n\t\t\topts?: ExtensionUIDialogOptions,\n\t\t): Promise<string | undefined>;\n\t\thideExtensionEditor(instance?: ExtensionEditorComponent): void;\n\t\tsetCustomEditorComponent(factory: EditorFactory | undefined): void;\n\t\tshowExtensionNotify(message: string, type?: \"info\" | \"warning\" | \"error\"): void;\n\t\tshowExtensionCustom<T>(\n\t\t\tfactory: (\n\t\t\t\ttui: TUI,\n\t\t\t\ttheme: Theme,\n\t\t\t\tkeybindings: KeybindingsManager,\n\t\t\t\tdone: (result: T) => void,\n\t\t\t) => (Component & { dispose?(): void }) | Promise<Component & { dispose?(): void }>,\n\t\t\toptions?: {\n\t\t\t\toverlay?: boolean;\n\t\t\t\tdeferInlineCustomUiFocus?: boolean;\n\t\t\t\thandlesInternalUiAction?: boolean;\n\t\t\t\t/** Overlay-only: bound the overlay and reserve transcript scroll extent. */\n\t\t\t\treserveTranscriptRows?: boolean;\n\t\t\t\tsignal?: AbortSignal;\n\t\t\t\toverlayOptions?: OverlayOptions | (() => OverlayOptions);\n\t\t\t\tonHandle?: (handle: OverlayHandle) => void;\n\t\t\t},\n\t\t): Promise<T>;\n\t\tshowExtensionError(extensionPath: string, error: string, stack?: string): void;\n\t\tsetupKeyHandlers(): void;\n\t\thandleClipboardImagePaste(): Promise<void>;\n\t\tsetupEditorSubmitHandler(): void;\n\t\tdeliverStartupReplayPrompt(text: string): void;\n\t\trecoverCookedStartupInput(): boolean;\n\t\tdrainStartupReplayCommands(): Promise<void>;\n\t\tadvanceStartupInputReplay(submittedText: string): void;\n\t\tsubscribeToAgent(): void;\n\t\thandleEvent(event: AgentSessionEvent | JsonAgentSessionEvent): Promise<void>;\n\t\tgetUserMessageText(message: Message): string;\n\t\tshowStatus(message: string): void;\n\t\t/** Report a managed-tool (fd/rg) readiness update inside the transcript. */\n\t\tshowManagedToolStatus(status: ToolStatus): void;\n\t\t/** Bring fd/rg to readiness after first paint; progress lands in the transcript. */\n\t\tensureManagedToolsReady(): Promise<void>;\n\t\tchatMessageRenderOptions(): ChatMessageRenderOptions;\n\t\taddRenderedChatEntry(entry: ChatMessageEntry): Component;\n\t\taddCompactionBoundaryToChat(result: VerbatimCompactionResult): void;\n\t\taddCompactionCostNotice(kind: \"compaction\" | \"branch_summary\", usage: Usage): void;\n\t\tmaybeShowAssistantDiagnostics(message: AssistantMessage): void;\n\t\taddMessageToChat(message: AgentMessage, options?: { populateHistory?: boolean }): void;\n\t\taddCustomEntryToChat(entry: CustomEntry): void;\n\t\trenderSessionContext(\n\t\t\tsessionContext: SessionContext,\n\t\t\toptions?: { updateFooter?: boolean; populateHistory?: boolean },\n\t\t): void;\n\t\trenderSessionEntries(\n\t\t\tentries: SessionEntry[],\n\t\t\toptions?: {\n\t\t\t\tupdateFooter?: boolean;\n\t\t\t\tpopulateHistory?: boolean;\n\t\t\t\tsuppressCompactionBoundary?: VerbatimCompactionResult;\n\t\t\t},\n\t\t): void;\n\t\trenderInitialMessages(): void;\n\t\tattachStartupNoticesContainer(options?: { resetDetached?: boolean }): void;\n\t\tgetUserInput(): Promise<InteractiveSubmission>;\n\t\trunUserPromptTurn(submission: InteractiveSubmission | string): Promise<void>;\n\t\trenderDeferredUserInput(text: string): void;\n\t\tconsumeDeferredRenderedUserInput(text: string): boolean;\n\t\tdiscardDeferredRenderedUserInput(text: string): void;\n\t\tensureDeferredStartupComplete(): Promise<void>;\n\t\trebuildChatFromMessages(options?: {\n\t\t\tsuppressCompactionBoundary?: VerbatimCompactionResult;\n\t\t\tresetStartupDisclosure?: boolean;\n\t\t}): void;\n\t\thandleCtrlC(): void;\n\t\tinterruptActiveOperation(): boolean;\n\t\thandleCtrlD(): void;\n\t\tshutdown(options?: { fromSignal?: boolean }): Promise<void>;\n\t\temergencyTerminalExit(): never;\n\t\tuncaughtCrash(error: Error): never;\n\t\tcheckShutdownRequested(): Promise<void>;\n\t\tregisterSignalHandlers(): void;\n\t\tunregisterSignalHandlers(): void;\n\t\thandleCtrlZ(): void;\n\t\thandleFollowUp(): Promise<void>;\n\t\thandleDequeue(): void;\n\t\trefreshBuiltInHeader(): void;\n\t\tupdateEditorBorderColor(): void;\n\t\tcycleThinkingLevel(): void;\n\t\tcycleModel(direction: \"forward\" | \"backward\"): Promise<void>;\n\t\ttoggleToolOutputExpansion(): void;\n\t\tsetToolsExpanded(expanded: boolean): void;\n\t\ttoggleThinkingBlockVisibility(): void;\n\t\tupdateThinkingBlockVisibility(): void;\n\t\topenExternalEditor(): Promise<void>;\n\t\tclearEditor(): void;\n\t\tshowError(errorMessage: string): void;\n\t\tshowWarning(warningMessage: string, targetContainer?: Container): void;\n\t\tshowNewVersionNotification(newVersion: string, targetContainer?: Container): void;\n\t\tshowPackageUpdateNotification(packages: string[], targetContainer?: Container): void;\n\t\tgetAllQueuedMessages(): { steering: string[]; followUp: string[] };\n\t\tclearAllQueues(options?: { preserveUnprotectedCustomMessages?: boolean }): {\n\t\t\tsteering: string[];\n\t\t\tfollowUp: string[];\n\t\t};\n\t\tupdatePendingMessagesDisplay(): void;\n\t\trestoreQueuedMessagesToEditor(options?: {\n\t\t\tabort?: boolean;\n\t\t\tcurrentText?: string;\n\t\t\tpreserveUnprotectedCustomMessages?: boolean;\n\t\t}): number;\n\t\tqueueCompactionMessage(text: string, mode: \"steer\" | \"followUp\"): void;\n\t\tisExtensionCommand(text: string): boolean;\n\t\tflushCompactionQueue(options?: { willRetry?: boolean }): Promise<void>;\n\t\tflushPendingBashComponents(): void;\n\t\tshowSelector(\n\t\t\tcreate: (done: () => void) => { component: Component; focus: Component; dispose?: () => void },\n\t\t): void;\n\t\tshowSettingsSelector(): void;\n\t\thandleModelCommand(searchTerm?: string): Promise<void>;\n\t\thandleThinkingCommand(searchTerm?: string): void;\n\t\tselectThinkingLevel(level: ThinkingLevel): void;\n\t\tshowThinkingSelector(): void;\n\t\tfindExactModelMatch(searchTerm: string): Promise<Model<Api> | undefined>;\n\t\tgetModelCandidates(): Promise<Model<Api>[]>;\n\t\tupdateAvailableProviderCount(): Promise<void>;\n\t\tmaybeWarnAboutAnthropicSubscriptionAuth(\n\t\t\tmodel?: Model<Api> | undefined,\n\t\t\ttargetContainer?: Container,\n\t\t): Promise<void>;\n\t\tshowModelSelector(initialSearchInput?: string): void;\n\t\tshowModelsSelector(): void;\n\t\tshowUserMessageSelector(): Promise<void>;\n\t\thandleCloneCommand(): Promise<void>;\n\t\tmaybeSaveImplicitProjectTrustAfterReload(): boolean;\n\t\tshowTrustSelector(): void;\n\t\tshowTreeSelector(initialSelectedId?: string): Promise<void>;\n\t\tshowSessionSelector(): void;\n\t\thandleResumeSession(\n\t\t\tsessionPath: string,\n\t\t\toptions?: Parameters<ExtensionCommandContext[\"switchSession\"]>[1],\n\t\t): Promise<{ cancelled: boolean }>;\n\t\tgetLoginProviderOptions(authType?: \"oauth\" | \"api_key\"): AuthSelectorProvider[];\n\t\tgetLogoutProviderOptions(): AuthSelectorProvider[];\n\t\thandleLoginCommand(providerRef?: string): Promise<void>;\n\t\tstartProviderLogin(providerOption: AuthSelectorProvider): Promise<void>;\n\t\tshowLoginAuthTypeSelector(providerOptions?: AuthSelectorProvider[]): void;\n\t\tshowLoginProviderSelector(authType?: \"oauth\" | \"api_key\", initialSearchInput?: string): void;\n\t\tshowOAuthSelector(mode: \"login\" | \"logout\"): Promise<void>;\n\t\tcompleteProviderAuthentication(\n\t\t\tproviderId: string,\n\t\t\tproviderName: string,\n\t\t\tauthType: \"oauth\" | \"api_key\",\n\t\t\tpreviousModel: Model<Api> | undefined,\n\t\t\toptions?: { modelsRefreshed?: boolean },\n\t\t): Promise<void>;\n\t\tshowBedrockSetupDialog(providerId: string, providerName: string): void;\n\t\tshowApiKeyLoginDialog(providerId: string, providerName: string): Promise<void>;\n\t\tshowOAuthLoginSelect(dialog: LoginDialogComponent, prompt: OAuthSelectPrompt): Promise<string | undefined>;\n\t\tshowLoginDialog(providerId: string, providerName: string): Promise<void>;\n\t\thandleReloadCommand(): Promise<void>;\n\t\thandleExportCommand(text: string): Promise<void>;\n\t\tgetPathCommandArgument(text: string, command: \"/export\" | \"/import\"): string | undefined;\n\t\thandleImportCommand(text: string): Promise<void>;\n\t\thandleShareCommand(): Promise<void>;\n\t\thandleCopyCommand(): Promise<void>;\n\t\thandleNameCommand(text: string): void;\n\t\thandleSessionCommand(): void;\n\t\thandleChangelogCommand(): void;\n\t\tgetAppKeyDisplay(action: AppKeybinding): string;\n\t\tgetEditorKeyDisplay(action: Keybinding): string;\n\t\tjumpToTranscriptEnd(): void;\n\t\tsetFullscreenCopyOnSelect(enabled: boolean): void;\n\t\thandleHotkeysCommand(): void;\n\t\thandleClearCommand(): Promise<void>;\n\t\thandleDebugCommand(): void;\n\t\thandleArminSaysHi(): void;\n\t\thandleDementedDelves(): void;\n\t\thandleDaxnuts(): void;\n\t\tcheckDaxnutsEasterEgg(model: { provider: string; id: string }): void;\n\t\thandleBashCommand(command: string, excludeFromContext?: boolean): Promise<void>;\n\t\thandleCompactCommand(): Promise<void>;\n\t\tstop(fullscreenExitOutput?: FullscreenExitOutput): void;\n\t}\n}\n"]}
|