@vascend/talos 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +202 -0
- package/dist/backend/asset-events.d.ts +31 -0
- package/dist/backend/asset-events.js +149 -0
- package/dist/backend/assets.d.ts +31 -0
- package/dist/backend/assets.js +210 -0
- package/dist/backend/auth.d.ts +18 -0
- package/dist/backend/auth.js +59 -0
- package/dist/backend/config.d.ts +14 -0
- package/dist/backend/config.js +41 -0
- package/dist/backend/conversations.d.ts +21 -0
- package/dist/backend/conversations.js +141 -0
- package/dist/backend/crypto.d.ts +9 -0
- package/dist/backend/crypto.js +68 -0
- package/dist/backend/engine.d.ts +13 -0
- package/dist/backend/engine.js +78 -0
- package/dist/backend/http.d.ts +25 -0
- package/dist/backend/http.js +112 -0
- package/dist/backend/index.d.ts +1 -0
- package/dist/backend/index.js +24 -0
- package/dist/backend/routes.d.ts +14 -0
- package/dist/backend/routes.js +169 -0
- package/dist/backend/sdk.d.ts +12 -0
- package/dist/backend/sdk.js +11 -0
- package/dist/backend/server.d.ts +12 -0
- package/dist/backend/server.js +91 -0
- package/dist/backend/temp-image-store.d.ts +46 -0
- package/dist/backend/temp-image-store.js +197 -0
- package/dist/backend/types.d.ts +103 -0
- package/dist/backend/types.js +29 -0
- package/dist/backend/users.d.ts +13 -0
- package/dist/backend/users.js +76 -0
- package/dist/backend/ws-handler.d.ts +14 -0
- package/dist/backend/ws-handler.js +72 -0
- package/dist/backend/ws.d.ts +19 -0
- package/dist/backend/ws.js +146 -0
- package/dist/core/agent.d.ts +56 -0
- package/dist/core/agent.js +1783 -0
- package/dist/core/background.d.ts +45 -0
- package/dist/core/background.js +140 -0
- package/dist/core/bootstrap.d.ts +45 -0
- package/dist/core/bootstrap.js +294 -0
- package/dist/core/cli-args.d.ts +41 -0
- package/dist/core/cli-args.js +282 -0
- package/dist/core/collapsible-output.d.ts +38 -0
- package/dist/core/collapsible-output.js +143 -0
- package/dist/core/compaction-checkpoint.d.ts +9 -0
- package/dist/core/compaction-checkpoint.js +58 -0
- package/dist/core/compaction.d.ts +42 -0
- package/dist/core/compaction.js +270 -0
- package/dist/core/config.d.ts +49 -0
- package/dist/core/config.js +417 -0
- package/dist/core/context-ledger.d.ts +99 -0
- package/dist/core/context-ledger.js +222 -0
- package/dist/core/context-policy.d.ts +17 -0
- package/dist/core/context-policy.js +81 -0
- package/dist/core/continuation-review.d.ts +23 -0
- package/dist/core/continuation-review.js +64 -0
- package/dist/core/crash-report.d.ts +3 -0
- package/dist/core/crash-report.js +27 -0
- package/dist/core/credentials.d.ts +11 -0
- package/dist/core/credentials.js +183 -0
- package/dist/core/doctor.d.ts +24 -0
- package/dist/core/doctor.js +125 -0
- package/dist/core/effort.d.ts +5 -0
- package/dist/core/effort.js +42 -0
- package/dist/core/env-paths.d.ts +3 -0
- package/dist/core/env-paths.js +38 -0
- package/dist/core/execution-guidance.d.ts +9 -0
- package/dist/core/execution-guidance.js +73 -0
- package/dist/core/execution-target.d.ts +41 -0
- package/dist/core/execution-target.js +69 -0
- package/dist/core/file-coordination.d.ts +66 -0
- package/dist/core/file-coordination.js +176 -0
- package/dist/core/file-lease-store.d.ts +14 -0
- package/dist/core/file-lease-store.js +89 -0
- package/dist/core/image-limits.d.ts +26 -0
- package/dist/core/image-limits.js +205 -0
- package/dist/core/interruptible-completion.d.ts +3 -0
- package/dist/core/interruptible-completion.js +42 -0
- package/dist/core/kingdoms-mode-state.d.ts +24 -0
- package/dist/core/kingdoms-mode-state.js +139 -0
- package/dist/core/licenza.d.ts +38 -0
- package/dist/core/licenza.js +125 -0
- package/dist/core/model-limits.d.ts +2 -0
- package/dist/core/model-limits.js +36 -0
- package/dist/core/output-lifecycle.d.ts +44 -0
- package/dist/core/output-lifecycle.js +190 -0
- package/dist/core/package-update.d.ts +15 -0
- package/dist/core/package-update.js +121 -0
- package/dist/core/permission-queue.d.ts +2 -0
- package/dist/core/permission-queue.js +20 -0
- package/dist/core/prompt-attachment.d.ts +21 -0
- package/dist/core/prompt-attachment.js +123 -0
- package/dist/core/request-plan.d.ts +16 -0
- package/dist/core/request-plan.js +36 -0
- package/dist/core/run-timing.d.ts +17 -0
- package/dist/core/run-timing.js +123 -0
- package/dist/core/self-update.d.ts +17 -0
- package/dist/core/self-update.js +54 -0
- package/dist/core/session-refs.d.ts +27 -0
- package/dist/core/session-refs.js +126 -0
- package/dist/core/session-storage.d.ts +4 -0
- package/dist/core/session-storage.js +48 -0
- package/dist/core/session-title.d.ts +1 -0
- package/dist/core/session-title.js +21 -0
- package/dist/core/session-usage.d.ts +17 -0
- package/dist/core/session-usage.js +74 -0
- package/dist/core/session.d.ts +58 -0
- package/dist/core/session.js +296 -0
- package/dist/core/settings.d.ts +17 -0
- package/dist/core/settings.js +107 -0
- package/dist/core/storage-retention.d.ts +21 -0
- package/dist/core/storage-retention.js +227 -0
- package/dist/core/text-sanitize.d.ts +1 -0
- package/dist/core/text-sanitize.js +35 -0
- package/dist/core/tool-artifacts.d.ts +6 -0
- package/dist/core/tool-artifacts.js +51 -0
- package/dist/core/tool-compress.d.ts +8 -0
- package/dist/core/tool-compress.js +111 -0
- package/dist/core/tool-executor.d.ts +16 -0
- package/dist/core/tool-executor.js +97 -0
- package/dist/core/tool-result-index.d.ts +52 -0
- package/dist/core/tool-result-index.js +327 -0
- package/dist/core/tool-result-store.d.ts +38 -0
- package/dist/core/tool-result-store.js +190 -0
- package/dist/core/tool-scheduler.d.ts +16 -0
- package/dist/core/tool-scheduler.js +35 -0
- package/dist/core/trust.d.ts +21 -0
- package/dist/core/trust.js +95 -0
- package/dist/core/types.d.ts +402 -0
- package/dist/core/types.js +1 -0
- package/dist/core/update-check.d.ts +26 -0
- package/dist/core/update-check.js +89 -0
- package/dist/core/update-process.d.ts +10 -0
- package/dist/core/update-process.js +31 -0
- package/dist/core/user-inbox.d.ts +23 -0
- package/dist/core/user-inbox.js +56 -0
- package/dist/core/user-input.d.ts +10 -0
- package/dist/core/user-input.js +35 -0
- package/dist/core/version.d.ts +1 -0
- package/dist/core/version.js +10 -0
- package/dist/core/vibe-modes.d.ts +38 -0
- package/dist/core/vibe-modes.js +383 -0
- package/dist/core/workspace-roots.d.ts +13 -0
- package/dist/core/workspace-roots.js +91 -0
- package/dist/core/workspace-sessions.d.ts +51 -0
- package/dist/core/workspace-sessions.js +243 -0
- package/dist/cowork/client.d.ts +29 -0
- package/dist/cowork/client.js +49 -0
- package/dist/cowork/engine-bridge.d.ts +22 -0
- package/dist/cowork/engine-bridge.js +98 -0
- package/dist/cowork/index.d.ts +11 -0
- package/dist/cowork/index.js +16 -0
- package/dist/cowork/ipc.d.ts +97 -0
- package/dist/cowork/ipc.js +96 -0
- package/dist/cowork/manager.d.ts +66 -0
- package/dist/cowork/manager.js +325 -0
- package/dist/cowork/store.d.ts +23 -0
- package/dist/cowork/store.js +182 -0
- package/dist/cowork/sync.d.ts +20 -0
- package/dist/cowork/sync.js +164 -0
- package/dist/cowork/types.d.ts +78 -0
- package/dist/cowork/types.js +21 -0
- package/dist/extensions/ext-tools.d.ts +3 -0
- package/dist/extensions/ext-tools.js +73 -0
- package/dist/extensions/loader.d.ts +91 -0
- package/dist/extensions/loader.js +474 -0
- package/dist/extensions/settings.d.ts +20 -0
- package/dist/extensions/settings.js +86 -0
- package/dist/extensions/types.d.ts +219 -0
- package/dist/extensions/types.js +1 -0
- package/dist/horizon/async-queue.d.ts +9 -0
- package/dist/horizon/async-queue.js +46 -0
- package/dist/horizon/engine.d.ts +85 -0
- package/dist/horizon/engine.js +603 -0
- package/dist/horizon/index.d.ts +4 -0
- package/dist/horizon/index.js +2 -0
- package/dist/horizon/main-team.d.ts +163 -0
- package/dist/horizon/main-team.js +774 -0
- package/dist/horizon/types.d.ts +233 -0
- package/dist/horizon/types.js +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +233 -0
- package/dist/mcp/protocol.d.ts +81 -0
- package/dist/mcp/protocol.js +122 -0
- package/dist/package.json +1 -0
- package/dist/packages/packages.d.ts +12 -0
- package/dist/packages/packages.js +323 -0
- package/dist/prompts/templates.d.ts +13 -0
- package/dist/prompts/templates.js +139 -0
- package/dist/providers/anthropic-oauth.d.ts +13 -0
- package/dist/providers/anthropic-oauth.js +124 -0
- package/dist/providers/anthropic.d.ts +27 -0
- package/dist/providers/anthropic.js +526 -0
- package/dist/providers/catalog.d.ts +15 -0
- package/dist/providers/catalog.js +166 -0
- package/dist/providers/effort.d.ts +12 -0
- package/dist/providers/effort.js +102 -0
- package/dist/providers/model-catalog.d.ts +43 -0
- package/dist/providers/model-catalog.js +70 -0
- package/dist/providers/model-effort.d.ts +5 -0
- package/dist/providers/model-effort.js +43 -0
- package/dist/providers/model-registry.d.ts +39 -0
- package/dist/providers/model-registry.js +142 -0
- package/dist/providers/models-dev.d.ts +9 -0
- package/dist/providers/models-dev.js +97 -0
- package/dist/providers/oauth-callback-server.d.ts +28 -0
- package/dist/providers/oauth-callback-server.js +184 -0
- package/dist/providers/oauth-orchestrator.d.ts +58 -0
- package/dist/providers/oauth-orchestrator.js +159 -0
- package/dist/providers/oauth-store.d.ts +12 -0
- package/dist/providers/oauth-store.js +139 -0
- package/dist/providers/open-browser.d.ts +20 -0
- package/dist/providers/open-browser.js +92 -0
- package/dist/providers/openai-compat.d.ts +14 -0
- package/dist/providers/openai-compat.js +523 -0
- package/dist/providers/openai-oauth.d.ts +15 -0
- package/dist/providers/openai-oauth.js +382 -0
- package/dist/providers/openrouter-auth.d.ts +73 -0
- package/dist/providers/openrouter-auth.js +321 -0
- package/dist/providers/openrouter-manual-fallback.d.ts +25 -0
- package/dist/providers/openrouter-manual-fallback.js +161 -0
- package/dist/providers/openrouter.d.ts +15 -0
- package/dist/providers/openrouter.js +107 -0
- package/dist/providers/plan-limits.d.ts +6 -0
- package/dist/providers/plan-limits.js +175 -0
- package/dist/providers/provider-reset.d.ts +4 -0
- package/dist/providers/provider-reset.js +83 -0
- package/dist/providers/quota-limits.d.ts +4 -0
- package/dist/providers/quota-limits.js +33 -0
- package/dist/providers/registry.d.ts +33 -0
- package/dist/providers/registry.js +213 -0
- package/dist/providers/retry.d.ts +37 -0
- package/dist/providers/retry.js +347 -0
- package/dist/rpc/server.d.ts +23 -0
- package/dist/rpc/server.js +222 -0
- package/dist/sdk.d.ts +67 -0
- package/dist/sdk.js +64 -0
- package/dist/skills/skills.d.ts +17 -0
- package/dist/skills/skills.js +155 -0
- package/dist/text-sanitize.js +28 -0
- package/dist/tools/ask-user.d.ts +2 -0
- package/dist/tools/ask-user.js +60 -0
- package/dist/tools/builtin.d.ts +48 -0
- package/dist/tools/builtin.js +2494 -0
- package/dist/tools/capabilities.d.ts +5 -0
- package/dist/tools/capabilities.js +55 -0
- package/dist/tools/computer-capture.d.ts +2 -0
- package/dist/tools/computer-capture.js +91 -0
- package/dist/tools/computer-posix.d.ts +5 -0
- package/dist/tools/computer-posix.js +136 -0
- package/dist/tools/computer-use.d.ts +14 -0
- package/dist/tools/computer-use.js +108 -0
- package/dist/tools/discovery.d.ts +12 -0
- package/dist/tools/discovery.js +205 -0
- package/dist/tools/execute.d.ts +2 -0
- package/dist/tools/execute.js +73 -0
- package/dist/tools/normalize-input.d.ts +17 -0
- package/dist/tools/normalize-input.js +174 -0
- package/dist/tools/output-artifact.d.ts +3 -0
- package/dist/tools/output-artifact.js +80 -0
- package/dist/tools/pagination.d.ts +15 -0
- package/dist/tools/pagination.js +93 -0
- package/dist/tools/plan-status.d.ts +2 -0
- package/dist/tools/plan-status.js +109 -0
- package/dist/tools/program-input.d.ts +3 -0
- package/dist/tools/program-input.js +19 -0
- package/dist/tools/program.d.ts +3 -0
- package/dist/tools/program.js +567 -0
- package/dist/tools/protocol-catalog.d.ts +12 -0
- package/dist/tools/protocol-catalog.js +46 -0
- package/dist/tools/ramification-tools.d.ts +12 -0
- package/dist/tools/ramification-tools.js +528 -0
- package/dist/tools/regex-compat.d.ts +9 -0
- package/dist/tools/regex-compat.js +96 -0
- package/dist/tools/registry.d.ts +51 -0
- package/dist/tools/registry.js +185 -0
- package/dist/tools/resolve.d.ts +2 -0
- package/dist/tools/resolve.js +107 -0
- package/dist/tools/shell-env.d.ts +2 -0
- package/dist/tools/shell-env.js +7 -0
- package/dist/tools/team-input.d.ts +3 -0
- package/dist/tools/team-input.js +129 -0
- package/dist/tools/team-tools.d.ts +7 -0
- package/dist/tools/team-tools.js +348 -0
- package/dist/tools/workspace-sessions.d.ts +2 -0
- package/dist/tools/workspace-sessions.js +35 -0
- package/dist/tui/account-entry.d.ts +1 -0
- package/dist/tui/account-entry.js +93 -0
- package/dist/tui/attachment-highlight.d.ts +1 -0
- package/dist/tui/attachment-highlight.js +24 -0
- package/dist/tui/attachment-refs.d.ts +2 -0
- package/dist/tui/attachment-refs.js +3 -0
- package/dist/tui/bottom-input.d.ts +219 -0
- package/dist/tui/bottom-input.js +1958 -0
- package/dist/tui/branding.d.ts +107 -0
- package/dist/tui/branding.js +750 -0
- package/dist/tui/clipboard-image.d.ts +10 -0
- package/dist/tui/clipboard-image.js +163 -0
- package/dist/tui/clipboard-text.d.ts +9 -0
- package/dist/tui/clipboard-text.js +51 -0
- package/dist/tui/clipboard-windows.d.ts +8 -0
- package/dist/tui/clipboard-windows.js +84 -0
- package/dist/tui/collapsible-command.d.ts +15 -0
- package/dist/tui/collapsible-command.js +48 -0
- package/dist/tui/command-feedback.d.ts +10 -0
- package/dist/tui/command-feedback.js +46 -0
- package/dist/tui/command-output-registry.d.ts +28 -0
- package/dist/tui/command-output-registry.js +103 -0
- package/dist/tui/command-transcript.d.ts +12 -0
- package/dist/tui/command-transcript.js +90 -0
- package/dist/tui/commands.d.ts +20 -0
- package/dist/tui/commands.js +131 -0
- package/dist/tui/context-bar.d.ts +4 -0
- package/dist/tui/context-bar.js +74 -0
- package/dist/tui/context-meter.d.ts +25 -0
- package/dist/tui/context-meter.js +81 -0
- package/dist/tui/cost-binding.d.ts +8 -0
- package/dist/tui/cost-binding.js +43 -0
- package/dist/tui/cost-tracker.d.ts +49 -0
- package/dist/tui/cost-tracker.js +122 -0
- package/dist/tui/diff.d.ts +9 -0
- package/dist/tui/diff.js +119 -0
- package/dist/tui/i18n-catalog.d.ts +5 -0
- package/dist/tui/i18n-catalog.js +184 -0
- package/dist/tui/i18n.d.ts +6 -0
- package/dist/tui/i18n.js +10 -0
- package/dist/tui/image-attachments.d.ts +46 -0
- package/dist/tui/image-attachments.js +167 -0
- package/dist/tui/images.d.ts +12 -0
- package/dist/tui/images.js +87 -0
- package/dist/tui/intro.d.ts +13 -0
- package/dist/tui/intro.js +109 -0
- package/dist/tui/language-preference.d.ts +6 -0
- package/dist/tui/language-preference.js +24 -0
- package/dist/tui/live-output.d.ts +2 -0
- package/dist/tui/live-output.js +18 -0
- package/dist/tui/locales.d.ts +19 -0
- package/dist/tui/locales.js +22 -0
- package/dist/tui/login-menu.d.ts +17 -0
- package/dist/tui/login-menu.js +58 -0
- package/dist/tui/logo.d.ts +8 -0
- package/dist/tui/logo.js +305 -0
- package/dist/tui/markdown-inline.d.ts +3 -0
- package/dist/tui/markdown-inline.js +99 -0
- package/dist/tui/markdown-table.d.ts +4 -0
- package/dist/tui/markdown-table.js +63 -0
- package/dist/tui/markdown.d.ts +11 -0
- package/dist/tui/markdown.js +257 -0
- package/dist/tui/mcp-transcript.d.ts +7 -0
- package/dist/tui/mcp-transcript.js +40 -0
- package/dist/tui/model-details.d.ts +2 -0
- package/dist/tui/model-details.js +21 -0
- package/dist/tui/model-selection.d.ts +7 -0
- package/dist/tui/model-selection.js +41 -0
- package/dist/tui/native-scrollback.d.ts +27 -0
- package/dist/tui/native-scrollback.js +134 -0
- package/dist/tui/onboarding.d.ts +72 -0
- package/dist/tui/onboarding.js +207 -0
- package/dist/tui/paste-collapse.d.ts +39 -0
- package/dist/tui/paste-collapse.js +117 -0
- package/dist/tui/perm-mode.d.ts +8 -0
- package/dist/tui/perm-mode.js +41 -0
- package/dist/tui/prompt-queue-store.d.ts +26 -0
- package/dist/tui/prompt-queue-store.js +87 -0
- package/dist/tui/prompt-queue.d.ts +47 -0
- package/dist/tui/prompt-queue.js +187 -0
- package/dist/tui/provider-menu.d.ts +33 -0
- package/dist/tui/provider-menu.js +175 -0
- package/dist/tui/question.d.ts +24 -0
- package/dist/tui/question.js +32 -0
- package/dist/tui/queue-screen.d.ts +25 -0
- package/dist/tui/queue-screen.js +152 -0
- package/dist/tui/queue-team.d.ts +3 -0
- package/dist/tui/queue-team.js +28 -0
- package/dist/tui/queued-questions.d.ts +20 -0
- package/dist/tui/queued-questions.js +163 -0
- package/dist/tui/quick-help.d.ts +1 -0
- package/dist/tui/quick-help.js +53 -0
- package/dist/tui/repl.d.ts +78 -0
- package/dist/tui/repl.js +4130 -0
- package/dist/tui/restore-queued-input.d.ts +3 -0
- package/dist/tui/restore-queued-input.js +20 -0
- package/dist/tui/review-detail.d.ts +6 -0
- package/dist/tui/review-detail.js +56 -0
- package/dist/tui/review-files.d.ts +3 -0
- package/dist/tui/review-files.js +22 -0
- package/dist/tui/review-render.d.ts +22 -0
- package/dist/tui/review-render.js +98 -0
- package/dist/tui/review-screen.d.ts +38 -0
- package/dist/tui/review-screen.js +358 -0
- package/dist/tui/review-store.d.ts +60 -0
- package/dist/tui/review-store.js +270 -0
- package/dist/tui/review-team.d.ts +2 -0
- package/dist/tui/review-team.js +27 -0
- package/dist/tui/selector-mouse.d.ts +26 -0
- package/dist/tui/selector-mouse.js +65 -0
- package/dist/tui/selector.d.ts +51 -0
- package/dist/tui/selector.js +299 -0
- package/dist/tui/session-replay.d.ts +10 -0
- package/dist/tui/session-replay.js +78 -0
- package/dist/tui/session-usage.d.ts +22 -0
- package/dist/tui/session-usage.js +55 -0
- package/dist/tui/skill-transcript.d.ts +5 -0
- package/dist/tui/skill-transcript.js +31 -0
- package/dist/tui/startup.d.ts +5 -0
- package/dist/tui/startup.js +61 -0
- package/dist/tui/status-line-loader.d.ts +8 -0
- package/dist/tui/status-line-loader.js +33 -0
- package/dist/tui/status-line.d.ts +38 -0
- package/dist/tui/status-line.js +213 -0
- package/dist/tui/system-language.d.ts +8 -0
- package/dist/tui/system-language.js +41 -0
- package/dist/tui/task-labels.d.ts +2 -0
- package/dist/tui/task-labels.js +7 -0
- package/dist/tui/term-bg.d.ts +4 -0
- package/dist/tui/term-bg.js +67 -0
- package/dist/tui/terminal-screen.d.ts +12 -0
- package/dist/tui/terminal-screen.js +1 -0
- package/dist/tui/terminal-text.d.ts +7 -0
- package/dist/tui/terminal-text.js +123 -0
- package/dist/tui/theme.d.ts +25 -0
- package/dist/tui/theme.js +383 -0
- package/dist/tui/tool-style.d.ts +7 -0
- package/dist/tui/tool-style.js +119 -0
- package/dist/tui/update-prompt.d.ts +14 -0
- package/dist/tui/update-prompt.js +104 -0
- package/dist/tui/usage-footer.d.ts +9 -0
- package/dist/tui/usage-footer.js +123 -0
- package/dist/tui/vascend-login.d.ts +68 -0
- package/dist/tui/vascend-login.js +355 -0
- package/dist/tui/web-login.d.ts +28 -0
- package/dist/tui/web-login.js +115 -0
- package/dist/vascend/activity-status.d.ts +12 -0
- package/dist/vascend/activity-status.js +68 -0
- package/dist/vascend/architecture-map.d.ts +73 -0
- package/dist/vascend/architecture-map.js +424 -0
- package/dist/vascend/attention-layout.d.ts +19 -0
- package/dist/vascend/attention-layout.js +141 -0
- package/dist/vascend/budget-allocator.d.ts +31 -0
- package/dist/vascend/budget-allocator.js +79 -0
- package/dist/vascend/candidate-collector.d.ts +20 -0
- package/dist/vascend/candidate-collector.js +220 -0
- package/dist/vascend/code-events.d.ts +24 -0
- package/dist/vascend/code-events.js +304 -0
- package/dist/vascend/code-graph-memory.d.ts +38 -0
- package/dist/vascend/code-graph-memory.js +334 -0
- package/dist/vascend/code-graph-runtime.d.ts +19 -0
- package/dist/vascend/code-graph-runtime.js +190 -0
- package/dist/vascend/code-graph-types.d.ts +58 -0
- package/dist/vascend/code-graph-types.js +50 -0
- package/dist/vascend/code-parser.d.ts +4 -0
- package/dist/vascend/code-parser.js +257 -0
- package/dist/vascend/competitor-knowledge.d.ts +53 -0
- package/dist/vascend/competitor-knowledge.js +262 -0
- package/dist/vascend/completeness.d.ts +16 -0
- package/dist/vascend/completeness.js +90 -0
- package/dist/vascend/context-autotuner.d.ts +45 -0
- package/dist/vascend/context-autotuner.js +231 -0
- package/dist/vascend/context-candidate.d.ts +45 -0
- package/dist/vascend/context-candidate.js +150 -0
- package/dist/vascend/context-capsule.d.ts +51 -0
- package/dist/vascend/context-capsule.js +133 -0
- package/dist/vascend/context-fabric.d.ts +108 -0
- package/dist/vascend/context-fabric.js +480 -0
- package/dist/vascend/context-feedback-loop.d.ts +56 -0
- package/dist/vascend/context-feedback-loop.js +204 -0
- package/dist/vascend/context-learning-identity.d.ts +4 -0
- package/dist/vascend/context-learning-identity.js +8 -0
- package/dist/vascend/context-links.d.ts +14 -0
- package/dist/vascend/context-links.js +83 -0
- package/dist/vascend/context-lint.d.ts +22 -0
- package/dist/vascend/context-lint.js +91 -0
- package/dist/vascend/context-market-selection.d.ts +17 -0
- package/dist/vascend/context-market-selection.js +50 -0
- package/dist/vascend/context-metrics.d.ts +25 -0
- package/dist/vascend/context-metrics.js +57 -0
- package/dist/vascend/context-pack-render.d.ts +16 -0
- package/dist/vascend/context-pack-render.js +52 -0
- package/dist/vascend/context-pareto.d.ts +33 -0
- package/dist/vascend/context-pareto.js +165 -0
- package/dist/vascend/context-pattern-explorer.d.ts +41 -0
- package/dist/vascend/context-pattern-explorer.js +276 -0
- package/dist/vascend/context-regret.d.ts +32 -0
- package/dist/vascend/context-regret.js +93 -0
- package/dist/vascend/context-retriever.d.ts +22 -0
- package/dist/vascend/context-retriever.js +243 -0
- package/dist/vascend/context-scope-index.d.ts +5 -0
- package/dist/vascend/context-scope-index.js +96 -0
- package/dist/vascend/context-scorer.d.ts +35 -0
- package/dist/vascend/context-scorer.js +162 -0
- package/dist/vascend/context-search-index.d.ts +12 -0
- package/dist/vascend/context-search-index.js +25 -0
- package/dist/vascend/context-snapshot.d.ts +22 -0
- package/dist/vascend/context-snapshot.js +135 -0
- package/dist/vascend/context-window-compiler.d.ts +42 -0
- package/dist/vascend/context-window-compiler.js +237 -0
- package/dist/vascend/contract-memory.d.ts +61 -0
- package/dist/vascend/contract-memory.js +435 -0
- package/dist/vascend/council.d.ts +58 -0
- package/dist/vascend/council.js +337 -0
- package/dist/vascend/decision-promotion.d.ts +48 -0
- package/dist/vascend/decision-promotion.js +410 -0
- package/dist/vascend/delta-context.d.ts +12 -0
- package/dist/vascend/delta-context.js +36 -0
- package/dist/vascend/dev-context-compiler.d.ts +27 -0
- package/dist/vascend/dev-context-compiler.js +133 -0
- package/dist/vascend/dev-context-layout.d.ts +30 -0
- package/dist/vascend/dev-context-layout.js +262 -0
- package/dist/vascend/evidence-slots.d.ts +14 -0
- package/dist/vascend/evidence-slots.js +55 -0
- package/dist/vascend/expansion-levels.d.ts +15 -0
- package/dist/vascend/expansion-levels.js +178 -0
- package/dist/vascend/file-lock.d.ts +7 -0
- package/dist/vascend/file-lock.js +95 -0
- package/dist/vascend/granular-kingdom.d.ts +25 -0
- package/dist/vascend/granular-kingdom.js +259 -0
- package/dist/vascend/granular-launcher.d.ts +48 -0
- package/dist/vascend/granular-launcher.js +202 -0
- package/dist/vascend/kingdom-bus.d.ts +25 -0
- package/dist/vascend/kingdom-bus.js +54 -0
- package/dist/vascend/kingdom-channel.d.ts +22 -0
- package/dist/vascend/kingdom-channel.js +180 -0
- package/dist/vascend/kingdom-kpi.d.ts +48 -0
- package/dist/vascend/kingdom-kpi.js +172 -0
- package/dist/vascend/kingdom-live.d.ts +28 -0
- package/dist/vascend/kingdom-live.js +61 -0
- package/dist/vascend/kingdom-run.d.ts +18 -0
- package/dist/vascend/kingdom-run.js +506 -0
- package/dist/vascend/kingdom-scribe.d.ts +20 -0
- package/dist/vascend/kingdom-scribe.js +52 -0
- package/dist/vascend/kingdom.d.ts +79 -0
- package/dist/vascend/kingdom.js +870 -0
- package/dist/vascend/lexical-index.d.ts +10 -0
- package/dist/vascend/lexical-index.js +99 -0
- package/dist/vascend/lexical-search.d.ts +29 -0
- package/dist/vascend/lexical-search.js +262 -0
- package/dist/vascend/long-term-context.d.ts +51 -0
- package/dist/vascend/long-term-context.js +194 -0
- package/dist/vascend/mandate.d.ts +33 -0
- package/dist/vascend/mandate.js +107 -0
- package/dist/vascend/memory-packet.d.ts +13 -0
- package/dist/vascend/memory-packet.js +155 -0
- package/dist/vascend/memory-status.d.ts +22 -0
- package/dist/vascend/memory-status.js +73 -0
- package/dist/vascend/memory-store.d.ts +62 -0
- package/dist/vascend/memory-store.js +273 -0
- package/dist/vascend/objective-revision.d.ts +69 -0
- package/dist/vascend/objective-revision.js +319 -0
- package/dist/vascend/patch-plan-store.d.ts +33 -0
- package/dist/vascend/patch-plan-store.js +240 -0
- package/dist/vascend/patch-plan.d.ts +97 -0
- package/dist/vascend/patch-plan.js +345 -0
- package/dist/vascend/plan-progress.d.ts +11 -0
- package/dist/vascend/plan-progress.js +68 -0
- package/dist/vascend/plan-store.d.ts +64 -0
- package/dist/vascend/plan-store.js +460 -0
- package/dist/vascend/proof-chains.d.ts +19 -0
- package/dist/vascend/proof-chains.js +120 -0
- package/dist/vascend/ramification-store.d.ts +25 -0
- package/dist/vascend/ramification-store.js +94 -0
- package/dist/vascend/ramification.d.ts +193 -0
- package/dist/vascend/ramification.js +583 -0
- package/dist/vascend/recall-planner.d.ts +17 -0
- package/dist/vascend/recall-planner.js +109 -0
- package/dist/vascend/requirements.d.ts +31 -0
- package/dist/vascend/requirements.js +151 -0
- package/dist/vascend/reviewer.d.ts +9 -0
- package/dist/vascend/reviewer.js +93 -0
- package/dist/vascend/room-graph.d.ts +29 -0
- package/dist/vascend/room-graph.js +242 -0
- package/dist/vascend/room-memory.d.ts +57 -0
- package/dist/vascend/room-memory.js +631 -0
- package/dist/vascend/runtime.d.ts +84 -0
- package/dist/vascend/runtime.js +286 -0
- package/dist/vascend/self-improve.d.ts +104 -0
- package/dist/vascend/self-improve.js +396 -0
- package/dist/vascend/session-search.d.ts +52 -0
- package/dist/vascend/session-search.js +349 -0
- package/dist/vascend/supersession-graph.d.ts +14 -0
- package/dist/vascend/supersession-graph.js +70 -0
- package/dist/vascend/team-areas.d.ts +9 -0
- package/dist/vascend/team-areas.js +28 -0
- package/dist/vascend/team-handoff.d.ts +24 -0
- package/dist/vascend/team-handoff.js +37 -0
- package/dist/vascend/team-scheduler.d.ts +13 -0
- package/dist/vascend/team-scheduler.js +74 -0
- package/dist/vascend/team-session.d.ts +42 -0
- package/dist/vascend/team-session.js +142 -0
- package/dist/vascend/test-failure-memory.d.ts +76 -0
- package/dist/vascend/test-failure-memory.js +354 -0
- package/dist/vascend/token-market.d.ts +42 -0
- package/dist/vascend/token-market.js +144 -0
- package/dist/vascend/tuner-baseline-store.d.ts +52 -0
- package/dist/vascend/tuner-baseline-store.js +446 -0
- package/dist/vascend/user-profile.d.ts +44 -0
- package/dist/vascend/user-profile.js +131 -0
- package/dist/vascend/vision.d.ts +94 -0
- package/dist/vascend/vision.js +375 -0
- package/dist/vascend/work-agent.d.ts +12 -0
- package/dist/vascend/work-agent.js +83 -0
- package/dist/vascend/work-queue.d.ts +62 -0
- package/dist/vascend/work-queue.js +255 -0
- package/dist/vascend/work-runner.d.ts +64 -0
- package/dist/vascend/work-runner.js +137 -0
- package/dist/vascend/worktree.d.ts +38 -0
- package/dist/vascend/worktree.js +206 -0
- package/dist/vendor/computer-use/README.md +7 -0
- package/dist/vendor/computer-use/computer-desktop.js +211 -0
- package/dist/vendor/computer-use/computer-observe.js +315 -0
- package/dist/vendor/computer-use/computer-scripts.js +1230 -0
- package/dist/vendor/computer-use/computer-tools.js +2136 -0
- package/dist/vendor/computer-use/package.json +1 -0
- package/dist/vendor/computer-use/rac/atomic-input.js +91 -0
- package/dist/vendor/computer-use/rac/grammatica.js +101 -0
- package/dist/vendor/computer-use/rac/parser.js +185 -0
- package/dist/vendor/computer-use/rac/protocol.js +136 -0
- package/install.ps1 +30 -0
- package/install.sh +50 -0
- package/package.json +56 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { type QueueStyle } from "./queue-screen.js";
|
|
2
|
+
import type { ScreenKey } from "./terminal-screen.js";
|
|
3
|
+
export declare class QueuedQuestions {
|
|
4
|
+
private readonly changed;
|
|
5
|
+
private readonly pending;
|
|
6
|
+
focused: boolean;
|
|
7
|
+
constructor(changed: () => void);
|
|
8
|
+
get count(): number;
|
|
9
|
+
enqueue(title: string, options?: readonly string[], signal?: AbortSignal): Promise<string | null>;
|
|
10
|
+
open(): void;
|
|
11
|
+
hide(): void;
|
|
12
|
+
clear(): void;
|
|
13
|
+
paste(text: string): void;
|
|
14
|
+
key(text: string, key: ScreenKey): void;
|
|
15
|
+
render(columns: number, maxRows: number, style?: QueueStyle): {
|
|
16
|
+
lines: string[];
|
|
17
|
+
cursorRow: number;
|
|
18
|
+
cursorCol: number;
|
|
19
|
+
};
|
|
20
|
+
}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import { tr } from "./i18n.js";
|
|
2
|
+
import { fitLine, plainText, terminalWidth, wrapText } from "./terminal-text.js";
|
|
3
|
+
import { PLAIN_QUEUE_STYLE } from "./queue-screen.js";
|
|
4
|
+
// Questions own their editor. Enqueuing, answering or hiding one never changes
|
|
5
|
+
// the main composer's draft, cursor, history or attachments.
|
|
6
|
+
export class QueuedQuestions {
|
|
7
|
+
changed;
|
|
8
|
+
pending = [];
|
|
9
|
+
focused = false;
|
|
10
|
+
constructor(changed) {
|
|
11
|
+
this.changed = changed;
|
|
12
|
+
}
|
|
13
|
+
get count() { return this.pending.length; }
|
|
14
|
+
enqueue(title, options = [], signal) {
|
|
15
|
+
if (signal?.aborted)
|
|
16
|
+
return Promise.resolve(null);
|
|
17
|
+
return new Promise(resolve => {
|
|
18
|
+
const question = {
|
|
19
|
+
title, options: [...options], index: 0, text: "", cursor: 0, offset: 0,
|
|
20
|
+
finish: answer => {
|
|
21
|
+
signal?.removeEventListener("abort", abort);
|
|
22
|
+
const index = this.pending.indexOf(question);
|
|
23
|
+
if (index < 0)
|
|
24
|
+
return;
|
|
25
|
+
this.pending.splice(index, 1);
|
|
26
|
+
if (index === 0)
|
|
27
|
+
this.focused = false;
|
|
28
|
+
resolve(answer);
|
|
29
|
+
this.changed();
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
const abort = () => question.finish(null);
|
|
33
|
+
this.pending.push(question);
|
|
34
|
+
signal?.addEventListener("abort", abort, { once: true });
|
|
35
|
+
if (signal?.aborted)
|
|
36
|
+
abort();
|
|
37
|
+
else
|
|
38
|
+
this.changed();
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
open() { if (this.count) {
|
|
42
|
+
this.focused = true;
|
|
43
|
+
this.changed();
|
|
44
|
+
} }
|
|
45
|
+
hide() { this.focused = false; this.changed(); }
|
|
46
|
+
clear() { for (const question of [...this.pending])
|
|
47
|
+
question.finish(null); }
|
|
48
|
+
paste(text) {
|
|
49
|
+
const q = this.pending[0];
|
|
50
|
+
if (!q || !this.focused)
|
|
51
|
+
return;
|
|
52
|
+
const clean = plainText(text).replace(/[\r\n\t]+/g, " ");
|
|
53
|
+
q.index = q.options.length;
|
|
54
|
+
q.text = q.text.slice(0, q.cursor) + clean + q.text.slice(q.cursor);
|
|
55
|
+
q.cursor += clean.length;
|
|
56
|
+
q.offset = -1;
|
|
57
|
+
this.changed();
|
|
58
|
+
}
|
|
59
|
+
key(text, key) {
|
|
60
|
+
const q = this.pending[0];
|
|
61
|
+
if (!q || !this.focused)
|
|
62
|
+
return;
|
|
63
|
+
if (key.name === "escape" || key.meta && key.name === "down") {
|
|
64
|
+
this.hide();
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (text === "\x1d" || key.ctrl && key.name === "]") {
|
|
68
|
+
q.finish(null);
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
if (key.name === "return" || key.name === "enter") {
|
|
72
|
+
const answer = q.options[q.index] ?? q.text.trim();
|
|
73
|
+
if (answer)
|
|
74
|
+
q.finish(answer);
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
if (key.name === "pageup" || key.name === "pagedown") {
|
|
78
|
+
q.offset = Math.max(0, q.offset + (key.name === "pageup" ? -3 : 3));
|
|
79
|
+
}
|
|
80
|
+
else if (key.name === "up" || key.name === "down" || key.name === "tab") {
|
|
81
|
+
const delta = key.name === "up" || key.shift ? -1 : 1;
|
|
82
|
+
q.index = (q.index + delta + q.options.length + 1) % (q.options.length + 1);
|
|
83
|
+
q.offset = -1;
|
|
84
|
+
}
|
|
85
|
+
else if (key.ctrl && key.name === "a" || key.name === "home")
|
|
86
|
+
q.cursor = 0;
|
|
87
|
+
else if (key.ctrl && key.name === "e" || key.name === "end")
|
|
88
|
+
q.cursor = q.text.length;
|
|
89
|
+
else if (key.name === "left")
|
|
90
|
+
q.cursor = Math.max(0, q.cursor - 1);
|
|
91
|
+
else if (key.name === "right")
|
|
92
|
+
q.cursor = Math.min(q.text.length, q.cursor + 1);
|
|
93
|
+
else if (key.ctrl && key.name === "u") {
|
|
94
|
+
q.text = q.text.slice(q.cursor);
|
|
95
|
+
q.cursor = 0;
|
|
96
|
+
}
|
|
97
|
+
else if (key.ctrl && key.name === "k")
|
|
98
|
+
q.text = q.text.slice(0, q.cursor);
|
|
99
|
+
else if (key.name === "backspace" && q.cursor) {
|
|
100
|
+
q.text = q.text.slice(0, q.cursor - 1) + q.text.slice(q.cursor);
|
|
101
|
+
q.cursor--;
|
|
102
|
+
}
|
|
103
|
+
else if (key.name === "delete")
|
|
104
|
+
q.text = q.text.slice(0, q.cursor) + q.text.slice(q.cursor + 1);
|
|
105
|
+
else if (text && !key.ctrl && !key.meta && !/[\x00-\x1f\x7f]/.test(text)) {
|
|
106
|
+
this.paste(text);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
this.changed();
|
|
110
|
+
}
|
|
111
|
+
render(columns, maxRows, style = PLAIN_QUEUE_STYLE) {
|
|
112
|
+
const width = Math.max(4, columns - 1);
|
|
113
|
+
const heading = fitLine(style.muted(" • " + tr("Richieste in coda", "Queued follow-up inputs")), width);
|
|
114
|
+
if (!this.count)
|
|
115
|
+
return { lines: [], cursorRow: 0, cursorCol: 1 };
|
|
116
|
+
if (!this.focused)
|
|
117
|
+
return {
|
|
118
|
+
lines: [heading,
|
|
119
|
+
fitLine(style.heading(" ? " + (this.count === 1 ? tr("1 domanda", "1 question") : tr("{count} domande", "{count} questions", { count: this.count }))), width),
|
|
120
|
+
fitLine(style.muted(" " + tr("Shift+← per rispondere", "Shift+← to answer")), width)],
|
|
121
|
+
cursorRow: 0, cursorCol: 1,
|
|
122
|
+
};
|
|
123
|
+
const q = this.pending[0];
|
|
124
|
+
const bodyWidth = Math.max(2, width - 4);
|
|
125
|
+
const body = wrapText(plainText(q.title), bodyWidth, true).map(row => style.heading(" " + row));
|
|
126
|
+
body.push("");
|
|
127
|
+
let selectedRow = 0, selectedEnd = 0, cursorCol = 3;
|
|
128
|
+
[...q.options, tr("Altro", "Other")].forEach((option, index) => {
|
|
129
|
+
const prefix = `${index === q.index ? "›" : " "} ${index + 1}. `;
|
|
130
|
+
const available = Math.max(1, width - terminalWidth(prefix) - 2);
|
|
131
|
+
if (index === q.index)
|
|
132
|
+
selectedRow = body.length;
|
|
133
|
+
if (index === q.options.length && index === q.index) {
|
|
134
|
+
let start = 0;
|
|
135
|
+
while (start < q.cursor && terminalWidth(q.text.slice(start, q.cursor)) >= available)
|
|
136
|
+
start++;
|
|
137
|
+
cursorCol = 2 + terminalWidth(prefix) + terminalWidth(q.text.slice(start, q.cursor));
|
|
138
|
+
body.push(" " + style.heading(prefix) + (style.text ?? style.selected)(fitLine(q.text.slice(start) || option, available)));
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
for (const [part, row] of wrapText(plainText(option), available, true).entries()) {
|
|
142
|
+
body.push(" " + (index === q.index ? style.heading : style.muted)((part ? " ".repeat(prefix.length) : prefix) + row));
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
if (index === q.index)
|
|
146
|
+
selectedEnd = body.length;
|
|
147
|
+
});
|
|
148
|
+
const shortcuts = tr("Invio invia · Ctrl+] salta · Alt+↓ prompt", "Enter submit · Ctrl+] skip · Alt+↓ main prompt");
|
|
149
|
+
const footer = wrapText(shortcuts, bodyWidth, true).map(row => style.muted(" " + row));
|
|
150
|
+
const page = Math.max(1, maxRows - footer.length - 2);
|
|
151
|
+
if (q.offset < 0)
|
|
152
|
+
q.offset = Math.max(0, Math.min(selectedRow, selectedEnd - page));
|
|
153
|
+
q.offset = Math.min(q.offset, Math.max(0, body.length - page));
|
|
154
|
+
const background = (row) => {
|
|
155
|
+
const content = fitLine(row, width - 1);
|
|
156
|
+
return " " + "\x1b[48;5;236m" + content.replace(/\x1b\[0m/g, "\x1b[0m\x1b[48;5;236m")
|
|
157
|
+
+ " ".repeat(Math.max(0, width - 1 - terminalWidth(content))) + "\x1b[0m";
|
|
158
|
+
};
|
|
159
|
+
const lines = [heading, ...body.slice(q.offset, q.offset + page).map(background), ...footer.map(background)];
|
|
160
|
+
return { lines, cursorRow: Math.max(1, Math.min(selectedRow - q.offset + 1, lines.length - footer.length - 1)),
|
|
161
|
+
cursorCol: Math.min(width, cursorCol + 1) };
|
|
162
|
+
}
|
|
163
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const QUICK_HELP = "## Inizia qui\nScrivi una richiesta e premi **Invio**. Talos mostra la risposta nella chat; l'input resta in basso.\n\n### Token e contesto\n- **Contesto~** mostra una barra breve con token e percentuale **attivi** e **archiviati**, stimati rispetto alla finestra del modello. Il valore dopo **/** \u00E8 la capacit\u00E0 della finestra. Sotto l'input, **7g** \u00E8 la quota settimanale residua e **reset** il tempo rimasto; **~** davanti alla quota indica un dato non recente. Tutte le finestre e i consumi restano in **/usage**.\n- I blocchi **lime** rappresentano il contesto attivo; i **grigi** la quantit\u00E0 originale archiviata, dal pi\u00F9 vecchio (scuro) al pi\u00F9 recente (chiaro). **Archiviato** e **attivo** hanno percentuali separate rispetto alla finestra del modello. Il materiale grigio \u00E8 conservato fuori dalla finestra viva; riassunti e riferimenti fanno parte dell'attivo. **\u00D7N** indica la scala della barra quando il totale supera una finestra. Dettagli in **/context**.\n- Il totale in **/usage** somma i token delle chiamate della sessione, anche input ripetuti e cache: non indica il contesto di una singola richiesta. **\u2265** significa totale parziale.\n- Talos seleziona informazioni rilevanti e gestisce la cronologia con recupero e compattazione secondo la configurazione; i consumi del provider restano reali.\n- **ctx~** \u00E8 una stima locale del contesto, non la misura esatta del payload inviato. La quota ChatGPT \u00E8 separata. **/usage** mostra dettagli, cache e ultima chiamata.\n\n### Copiare e incollare\n- **/copy** copia l'ultima risposta testuale, senza colori del terminale (mantiene il Markdown).\n- **/copy una frase** copia soltanto il testo scritto dopo il comando.\n- Per selezionare una frase dalla chat: trascina il mouse senza tenere Shift, poi usa **Ctrl+Shift+C** (Windows/Linux) o **Cmd+C** (macOS). Dipende dalle impostazioni del terminale.\n- Incolla testo con **Ctrl+Shift+V** o **Cmd+V**. **Alt+V** legge un'immagine dagli appunti; puoi anche usare **/img percorso**.\n- I riferimenti **img #N** e **txt #N** sono evidenziati in ciano nel campo di input e nella chat; il contenuto completo viene allegato all'invio.\n- **Ctrl+C non \u00E8 il comando di copia di Talos.**\n\n### Fermare senza perdere il controllo\n- Primo **Ctrl+C**: avviso, nessuna azione. Secondo **Ctrl+C entro 2 secondi**: conferma l'azione indicata (fermare il lavoro, svuotare la bozza o uscire).\n- Un altro tasto annulla la conferma. **Esc** ferma subito il lavoro; in un menu o una domanda chiude solo quel pannello.\n- Fermare il lavoro conserva i messaggi in coda e li mette in pausa. **Alt+Q** apre la gestione per riprenderli o eliminarli. I processi in background si gestiscono con **/bg**.\n- **/quit** esce direttamente. Le chat gi\u00E0 inviate restano salvate; le bozze non sono salvate.\n\n### Messaggi in attesa\n- Sopra l'input, il punto **\u2022** indica i messaggi in attesa e quando verranno consegnati; la riga rientrata **\u21B3** mostra il prossimo messaggio. Normalmente partono in ordine dopo la risposta corrente; **Alt+Q** mostra tutti i messaggi.\n- **Alt+Q** o **/queue** (anche **/coda**) apre subito la coda: frecce per scegliere, **Invio** modifica, **Canc** elimina, **Shift+Su/Gi\u00F9** riordina, **p** mette in pausa o riprende.\n- **Alt+S** invia subito il testo che stai scrivendo, anche durante la risposta; se l'input \u00E8 vuoto, invia la prima richiesta in coda. Nella coda, **s \u00B7 Invia subito** invia il messaggio selezionato. Talos interrompe la generazione e riparte con il nuovo input; un'operazione gi\u00E0 avviata termina prima. **Alt+Invio** \u00E8 un alias nei terminali che lo inoltrano.\n- Con **almeno 3 richieste** in coda, **Alt+T** le invia subito insieme e chiede all'agente di ingaggiare il team per implementarle tutte. Nella gestione coda puoi usare anche **g \u00B7 Invia al team**. I comandi sono esclusi e la bozza che stai scrivendo resta intatta. Fino alla consegna puoi ancora modificare le singole richieste; il gruppo viene conservato anche al riavvio, in pausa.\n- **t** sceglie tra \u201Cdopo la risposta\u201D e \u201Cdurante il lavoro\u201D. Questa seconda modalit\u00E0 attende la risposta o l'operazione corrente senza interromperla.\n- Mentre gestisci o modifichi la coda nessun messaggio viene consegnato. **Invio** salva la modifica, **Esc** la annulla e conserva l'originale. La bozza precedente resta intatta.\n- Un messaggio compare nella conversazione solo alla consegna, con l'etichetta **Dalla coda \u00B7 consegnato**. Da quel momento non \u00E8 pi\u00F9 modificabile nella coda.\n- La coda \u00E8 salvata per chat, con ordine, modifiche confermate, testo incollato e immagini. Dopo la chiusura, il normale avvio riprende la chat con l'ultima coda pendente; una chat scelta esplicitamente ha precedenza. Aprire la chat lascia i messaggi **in pausa**. Quando Talos \u00E8 a riposo, **Invio** riprende la coda, anche con input vuoto; un nuovo prompt viene aggiunto in fondo e avvia la consegna. Puoi anche usare **Alt+Q**, poi **p** per riprenderli oppure **s** per inviarne uno subito.\n\n### Modalit\u00E0 fast\n- **/fast on** attiva la modalit\u00E0 veloce per ChatGPT/OpenAI, **/fast off** la disattiva, **/fast status** mostra lo stato. Quando \u00E8 attiva, **fast** compare accanto al modello. La preferenza \u00E8 salvata per i prossimi avvii.\n- Fast richiede il relativo supporto del modello e del provider e pu\u00F2 aumentare i consumi.\n\n### Ritrovare le chat\n- **/new** apre una chat vuota: la precedente resta salvata.\n- **/chats** (o **/resume**) apre la ricerca delle chat salvate; scrivi per filtrare, usa le frecce e Invio, Esc per annullare.\n- **/rename Titolo** assegna un nome riconoscibile alla chat corrente.\n- **/sessions** mostra gli ID; **/resume ID** riprende una chat specifica.\n\n### Leggere e navigare\n- **PageUp / PageDown**, rotella o **Shift+Su/Gi\u00F9** scorrono la conversazione senza spostare l'input.\n- **Su/Gi\u00F9** in fondo alla chat richiamano le richieste precedenti. **Tab** completa i comandi.\n- **Ctrl+R** apre la revisione delle attivit\u00E0; **Ctrl+O** apre l'elenco dei file modificati: frecce per scegliere, Invio per leggere il confronto, Esc per tornare. **Ctrl+G** o **/todo** apre la lista delle attivit\u00E0, con gruppi e stati: da fare, in corso, completata e fallita.\n- **/commands** apre tutti i comandi, con ricerca. **/help** riapre questa guida.\n\nLe scorciatoie descritte valgono nella TUI interattiva. In terminali remoti, copia e selezione dipendono anche dal client; /copy usa gli appunti della macchina dove gira Talos.\n";
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
// Guida orientata alle azioni; /commands resta il catalogo completo ricercabile.
|
|
2
|
+
export const QUICK_HELP = `## Inizia qui
|
|
3
|
+
Scrivi una richiesta e premi **Invio**. Talos mostra la risposta nella chat; l'input resta in basso.
|
|
4
|
+
|
|
5
|
+
### Token e contesto
|
|
6
|
+
- **Contesto~** mostra una barra breve con token e percentuale **attivi** e **archiviati**, stimati rispetto alla finestra del modello. Il valore dopo **/** è la capacità della finestra. Sotto l'input, **7g** è la quota settimanale residua e **reset** il tempo rimasto; **~** davanti alla quota indica un dato non recente. Tutte le finestre e i consumi restano in **/usage**.
|
|
7
|
+
- I blocchi **lime** rappresentano il contesto attivo; i **grigi** la quantità originale archiviata, dal più vecchio (scuro) al più recente (chiaro). **Archiviato** e **attivo** hanno percentuali separate rispetto alla finestra del modello. Il materiale grigio è conservato fuori dalla finestra viva; riassunti e riferimenti fanno parte dell'attivo. **×N** indica la scala della barra quando il totale supera una finestra. Dettagli in **/context**.
|
|
8
|
+
- Il totale in **/usage** somma i token delle chiamate della sessione, anche input ripetuti e cache: non indica il contesto di una singola richiesta. **≥** significa totale parziale.
|
|
9
|
+
- Talos seleziona informazioni rilevanti e gestisce la cronologia con recupero e compattazione secondo la configurazione; i consumi del provider restano reali.
|
|
10
|
+
- **ctx~** è una stima locale del contesto, non la misura esatta del payload inviato. La quota ChatGPT è separata. **/usage** mostra dettagli, cache e ultima chiamata.
|
|
11
|
+
|
|
12
|
+
### Copiare e incollare
|
|
13
|
+
- **/copy** copia l'ultima risposta testuale, senza colori del terminale (mantiene il Markdown).
|
|
14
|
+
- **/copy una frase** copia soltanto il testo scritto dopo il comando.
|
|
15
|
+
- Per selezionare una frase dalla chat: trascina il mouse senza tenere Shift, poi usa **Ctrl+Shift+C** (Windows/Linux) o **Cmd+C** (macOS). Dipende dalle impostazioni del terminale.
|
|
16
|
+
- Incolla testo con **Ctrl+Shift+V** o **Cmd+V**. **Alt+V** legge un'immagine dagli appunti; puoi anche usare **/img percorso**.
|
|
17
|
+
- I riferimenti **img #N** e **txt #N** sono evidenziati in ciano nel campo di input e nella chat; il contenuto completo viene allegato all'invio.
|
|
18
|
+
- **Ctrl+C non è il comando di copia di Talos.**
|
|
19
|
+
|
|
20
|
+
### Fermare senza perdere il controllo
|
|
21
|
+
- Primo **Ctrl+C**: avviso, nessuna azione. Secondo **Ctrl+C entro 2 secondi**: conferma l'azione indicata (fermare il lavoro, svuotare la bozza o uscire).
|
|
22
|
+
- Un altro tasto annulla la conferma. **Esc** ferma subito il lavoro; in un menu o una domanda chiude solo quel pannello.
|
|
23
|
+
- Fermare il lavoro conserva i messaggi in coda e li mette in pausa. **Alt+Q** apre la gestione per riprenderli o eliminarli. I processi in background si gestiscono con **/bg**.
|
|
24
|
+
- **/quit** esce direttamente. Le chat già inviate restano salvate; le bozze non sono salvate.
|
|
25
|
+
|
|
26
|
+
### Messaggi in attesa
|
|
27
|
+
- Sopra l'input, il punto **•** indica i messaggi in attesa e quando verranno consegnati; la riga rientrata **↳** mostra il prossimo messaggio. Normalmente partono in ordine dopo la risposta corrente; **Alt+Q** mostra tutti i messaggi.
|
|
28
|
+
- **Alt+Q** o **/queue** (anche **/coda**) apre subito la coda: frecce per scegliere, **Invio** modifica, **Canc** elimina, **Shift+Su/Giù** riordina, **p** mette in pausa o riprende.
|
|
29
|
+
- **Alt+S** invia subito il testo che stai scrivendo, anche durante la risposta; se l'input è vuoto, invia la prima richiesta in coda. Nella coda, **s · Invia subito** invia il messaggio selezionato. Talos interrompe la generazione e riparte con il nuovo input; un'operazione già avviata termina prima. **Alt+Invio** è un alias nei terminali che lo inoltrano.
|
|
30
|
+
- Con **almeno 3 richieste** in coda, **Alt+T** le invia subito insieme e chiede all'agente di ingaggiare il team per implementarle tutte. Nella gestione coda puoi usare anche **g · Invia al team**. I comandi sono esclusi e la bozza che stai scrivendo resta intatta. Fino alla consegna puoi ancora modificare le singole richieste; il gruppo viene conservato anche al riavvio, in pausa.
|
|
31
|
+
- **t** sceglie tra “dopo la risposta” e “durante il lavoro”. Questa seconda modalità attende la risposta o l'operazione corrente senza interromperla.
|
|
32
|
+
- Mentre gestisci o modifichi la coda nessun messaggio viene consegnato. **Invio** salva la modifica, **Esc** la annulla e conserva l'originale. La bozza precedente resta intatta.
|
|
33
|
+
- Un messaggio compare nella conversazione solo alla consegna, con l'etichetta **Dalla coda · consegnato**. Da quel momento non è più modificabile nella coda.
|
|
34
|
+
- La coda è salvata per chat, con ordine, modifiche confermate, testo incollato e immagini. Dopo la chiusura, il normale avvio riprende la chat con l'ultima coda pendente; una chat scelta esplicitamente ha precedenza. Aprire la chat lascia i messaggi **in pausa**. Quando Talos è a riposo, **Invio** riprende la coda, anche con input vuoto; un nuovo prompt viene aggiunto in fondo e avvia la consegna. Puoi anche usare **Alt+Q**, poi **p** per riprenderli oppure **s** per inviarne uno subito.
|
|
35
|
+
|
|
36
|
+
### Modalità fast
|
|
37
|
+
- **/fast on** attiva la modalità veloce per ChatGPT/OpenAI, **/fast off** la disattiva, **/fast status** mostra lo stato. Quando è attiva, **fast** compare accanto al modello. La preferenza è salvata per i prossimi avvii.
|
|
38
|
+
- Fast richiede il relativo supporto del modello e del provider e può aumentare i consumi.
|
|
39
|
+
|
|
40
|
+
### Ritrovare le chat
|
|
41
|
+
- **/new** apre una chat vuota: la precedente resta salvata.
|
|
42
|
+
- **/chats** (o **/resume**) apre la ricerca delle chat salvate; scrivi per filtrare, usa le frecce e Invio, Esc per annullare.
|
|
43
|
+
- **/rename Titolo** assegna un nome riconoscibile alla chat corrente.
|
|
44
|
+
- **/sessions** mostra gli ID; **/resume ID** riprende una chat specifica.
|
|
45
|
+
|
|
46
|
+
### Leggere e navigare
|
|
47
|
+
- **PageUp / PageDown**, rotella o **Shift+Su/Giù** scorrono la conversazione senza spostare l'input.
|
|
48
|
+
- **Su/Giù** in fondo alla chat richiamano le richieste precedenti. **Tab** completa i comandi.
|
|
49
|
+
- **Ctrl+R** apre la revisione delle attività; **Ctrl+O** apre l'elenco dei file modificati: frecce per scegliere, Invio per leggere il confronto, Esc per tornare. **Ctrl+G** o **/todo** apre la lista delle attività, con gruppi e stati: da fare, in corso, completata e fallita.
|
|
50
|
+
- **/commands** apre tutti i comandi, con ricerca. **/help** riapre questa guida.
|
|
51
|
+
|
|
52
|
+
Le scorciatoie descritte valgono nella TUI interattiva. In terminali remoti, copia e selezione dipendono anche dal client; /copy usa gli appunti della macchina dove gira Talos.
|
|
53
|
+
`;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { type UserInbox } from "../core/user-inbox.js";
|
|
2
|
+
import type { AgentEvent, ContentPart } from "../core/types.js";
|
|
3
|
+
import type { Harness } from "../core/bootstrap.js";
|
|
4
|
+
import { type TuiTheme } from "./branding.js";
|
|
5
|
+
export { resumeReplay } from "./session-replay.js";
|
|
6
|
+
import { ReviewStore } from "./review-store.js";
|
|
7
|
+
export { filterOptions, pickerPageSize } from "./selector.js";
|
|
8
|
+
interface ReplDeps {
|
|
9
|
+
readonly harness: Harness;
|
|
10
|
+
readonly resumePicker?: boolean;
|
|
11
|
+
readonly recoverQueue?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface InputControl {
|
|
14
|
+
writeConversation?(text: string): void;
|
|
15
|
+
clearConversation?(): void;
|
|
16
|
+
replayConversation?(renderer: (columns: number) => string): void;
|
|
17
|
+
readonly userInbox?: UserInbox;
|
|
18
|
+
showQueue?(): void;
|
|
19
|
+
queueQuestion?(title: string, options?: readonly string[], signal?: AbortSignal): Promise<string | null>;
|
|
20
|
+
restoreQueue?(): void;
|
|
21
|
+
acceptQueuedMessage?(id: string): string | undefined;
|
|
22
|
+
pauseQueuedMessages?(): void;
|
|
23
|
+
readonly review?: ReviewStore;
|
|
24
|
+
showReview?(section?: string): void;
|
|
25
|
+
pause(): void;
|
|
26
|
+
resume(): void;
|
|
27
|
+
write(text: string): void;
|
|
28
|
+
replaceTail?(lines: readonly string[], count: number): void;
|
|
29
|
+
refresh?(): void;
|
|
30
|
+
setStatus(label: string | null): void;
|
|
31
|
+
setStatusTool?(name: string | null): void;
|
|
32
|
+
setRoomStatus?(label: string | null, state?: "running" | "done" | "failed"): void;
|
|
33
|
+
setLogLine?(index: number, text: string): void;
|
|
34
|
+
getLogLine?(index: number): string | undefined;
|
|
35
|
+
setTokens(newInput: number, cache: number, outTok: number): void;
|
|
36
|
+
setOverlay(lines: string[] | null): void;
|
|
37
|
+
promptInput(label: string): Promise<string | null>;
|
|
38
|
+
logLength(): number;
|
|
39
|
+
fold(start: number, end: number, summary: string): number;
|
|
40
|
+
openFold(start: number, summary: string): number;
|
|
41
|
+
updateFoldSummary(id: number, summary: string): void;
|
|
42
|
+
updateFold(id: number, end: number, summary: string): void;
|
|
43
|
+
closeFold(id: number, summary?: string): void;
|
|
44
|
+
expandFold(id?: number): boolean;
|
|
45
|
+
expandAllFolds(): number;
|
|
46
|
+
removeFold(id: number): boolean;
|
|
47
|
+
setKingdomVassals(data: ReadonlyArray<{
|
|
48
|
+
slug: string;
|
|
49
|
+
lines: readonly string[];
|
|
50
|
+
}> | null): void;
|
|
51
|
+
setKingdomBoard(lines: readonly string[] | null): void;
|
|
52
|
+
hasKingdomBoard(): boolean;
|
|
53
|
+
}
|
|
54
|
+
type ReadlineLineResult = "quit" | void;
|
|
55
|
+
export interface SerialReadlineQueueOptions {
|
|
56
|
+
readonly processLine: (raw: string, signal: AbortSignal) => Promise<ReadlineLineResult>;
|
|
57
|
+
readonly prompt: () => void;
|
|
58
|
+
readonly requestClose: () => void;
|
|
59
|
+
readonly onError?: (error: unknown) => void;
|
|
60
|
+
readonly installAbort?: (abort: () => void) => (() => void);
|
|
61
|
+
readonly deliverToActive?: (raw: string) => boolean;
|
|
62
|
+
}
|
|
63
|
+
export interface SerialReadlineQueue {
|
|
64
|
+
enqueue(raw: string): Promise<void>;
|
|
65
|
+
close(): void;
|
|
66
|
+
idle(): Promise<void>;
|
|
67
|
+
}
|
|
68
|
+
export declare function beginActiveTurnInbox(): UserInbox;
|
|
69
|
+
export declare function endActiveTurnInbox(): void;
|
|
70
|
+
export declare function deliverToActiveTurn(raw: string, parts?: readonly ContentPart[]): boolean;
|
|
71
|
+
export declare function createSerialReadlineQueue(options: SerialReadlineQueueOptions): SerialReadlineQueue;
|
|
72
|
+
export declare function startRepl(deps: ReplDeps): Promise<void>;
|
|
73
|
+
export declare function makeSink(theme: TuiTheme, terminalColumns: () => number, cwd: string, env: NodeJS.ProcessEnv, ctl: InputControl, plan?: {
|
|
74
|
+
sdir: string;
|
|
75
|
+
sid: string;
|
|
76
|
+
}): (event: AgentEvent) => void;
|
|
77
|
+
export declare function gitSummary(command: string): string | null;
|
|
78
|
+
export declare function oneLinePreview(text: string, max: number): string;
|