@timurproko/a1 0.1.8-dev.50ebb19 → 0.1.8-dev.510
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 +209 -63
- package/bin/activate.js +8 -0
- package/bin/cli.js +33 -11
- package/bin/guardian.js +16 -6
- package/bin/module-identity.js +76 -69
- package/bin/module-resolver.js +138 -0
- package/bin/pinned-pi-public.d.ts +3 -0
- package/bin/pinned-pi-public.js +93 -0
- package/bin/release-cleanup.js +8 -0
- package/bin/supervisor.js +2 -2
- package/bin/sync-pi-tui-proxy.js +7 -0
- package/bin/ui.js +67 -22
- package/bin/update-recovery.js +343 -0
- package/bin/warmup.js +28 -0
- package/dist/app/session-shell/clipboard-diagnostics.d.ts +16 -0
- package/dist/app/session-shell/clipboard-diagnostics.js +65 -0
- package/dist/app/session-shell/clipboard-image.d.ts +11 -0
- package/dist/app/session-shell/clipboard-image.js +38 -0
- package/dist/app/session-shell/editor-hyperlink-budget.d.ts +9 -0
- package/dist/app/session-shell/editor-hyperlink-budget.js +23 -0
- package/dist/app/session-shell/helper-pool.d.ts +33 -0
- package/dist/app/session-shell/helper-pool.js +98 -0
- package/dist/app/session-shell/image-preparation-client.d.ts +20 -0
- package/dist/app/session-shell/image-preparation-client.js +145 -0
- package/dist/app/session-shell/image-preparation.d.ts +18 -0
- package/dist/app/session-shell/image-preparation.js +126 -0
- package/dist/app/session-shell/image-source.d.ts +13 -0
- package/dist/app/session-shell/image-source.js +171 -0
- package/dist/app/session-shell/image-worker.d.ts +17 -0
- package/dist/app/session-shell/image-worker.js +23 -0
- package/dist/app/session-shell/index.d.ts +7 -0
- package/dist/app/session-shell/index.js +4 -0
- package/dist/app/session-shell/paste-executor.d.ts +18 -0
- package/dist/app/session-shell/paste-executor.js +253 -0
- package/dist/app/session-shell/paste-helper.js +173 -0
- package/dist/app/session-shell/paste-preparation-client.d.ts +31 -0
- package/dist/app/session-shell/paste-preparation-client.js +170 -0
- package/dist/app/session-shell/paste-protocol.d.ts +78 -0
- package/dist/app/session-shell/paste-protocol.js +18 -0
- package/dist/app/session-shell/paste-text-preparation.d.ts +6 -0
- package/dist/app/session-shell/paste-text-preparation.js +134 -0
- package/dist/app/session-shell/paste-text-worker.js +12 -0
- package/dist/app/session-shell/paste-types.d.ts +17 -0
- package/dist/app/session-shell/path-chip-presentation.d.ts +7 -0
- package/dist/app/session-shell/path-chip-presentation.js +24 -0
- package/dist/app/session-shell/prompt-chips.d.ts +76 -0
- package/dist/app/session-shell/prompt-chips.js +507 -0
- package/dist/app/session-shell/prompt-history-controller.d.ts +36 -0
- package/dist/app/session-shell/prompt-history-controller.js +170 -0
- package/dist/app/session-shell/prompt-suggestion-controller.d.ts +37 -0
- package/dist/app/session-shell/prompt-suggestion-controller.js +219 -0
- package/dist/app/session-shell/quit-outro-effects.d.ts +29 -0
- package/dist/app/session-shell/quit-outro-effects.js +242 -0
- package/dist/app/session-shell/quit-outro.d.ts +38 -0
- package/dist/app/session-shell/quit-outro.js +98 -0
- package/dist/app/session-shell/response-copy-coordinator.d.ts +27 -0
- package/dist/app/session-shell/response-copy-coordinator.js +187 -0
- package/dist/app/session-shell/response-copy-helper.js +122 -0
- package/dist/app/session-shell/response-copy-protocol.d.ts +56 -0
- package/dist/app/session-shell/response-copy-protocol.js +5 -0
- package/dist/app/session-shell/response-copy-transport.d.ts +39 -0
- package/dist/app/session-shell/response-copy-transport.js +217 -0
- package/dist/app/session-shell/session-shell-root.d.ts +275 -0
- package/dist/app/session-shell/session-shell-root.js +1376 -0
- package/dist/app/session-shell/session-shell.d.ts +66 -0
- package/dist/app/session-shell/session-shell.js +2116 -0
- package/dist/app/session-shell/session-viewport-controller.d.ts +61 -0
- package/dist/app/session-shell/session-viewport-controller.js +597 -0
- package/dist/app/session-shell/stream-presentation-coalescer.d.ts +29 -0
- package/dist/app/session-shell/stream-presentation-coalescer.js +79 -0
- package/dist/app/session-shell/system-clipboard.d.ts +20 -0
- package/dist/app/session-shell/system-clipboard.js +159 -0
- package/dist/app/session-shell/text-paste.d.ts +5 -0
- package/dist/app/session-shell/text-paste.js +16 -0
- package/dist/cli/capabilities.d.ts +6 -0
- package/dist/cli/capabilities.js +7 -0
- package/dist/cli/dispatch.d.ts +46 -0
- package/dist/cli/dispatch.js +261 -0
- package/dist/cli/index.d.ts +8 -0
- package/dist/cli/index.js +4 -0
- package/dist/cli/package-messages.d.ts +26 -0
- package/dist/cli/package-messages.js +71 -0
- package/dist/cli/packages.d.ts +32 -0
- package/dist/cli/packages.js +81 -0
- package/dist/cli/version-stats.d.ts +22 -0
- package/dist/cli/version-stats.js +112 -0
- package/dist/composition/index.d.ts +2 -0
- package/dist/composition/index.js +2 -0
- package/dist/composition/owned-ui.d.ts +37 -0
- package/dist/composition/owned-ui.js +154 -0
- package/dist/composition/settings-route-host.d.ts +20 -0
- package/dist/composition/settings-route-host.js +141 -0
- package/dist/contracts/agent-engine/capability-ports.d.ts +95 -0
- package/dist/contracts/agent-engine/domain-validation.js +107 -0
- package/dist/contracts/agent-engine/domain.d.ts +138 -0
- package/dist/contracts/agent-engine/index.d.ts +11 -0
- package/dist/contracts/agent-engine/index.js +6 -0
- package/dist/contracts/agent-engine/package-ports.d.ts +60 -0
- package/dist/contracts/agent-engine/ports.js +1 -0
- package/dist/contracts/owned-ui/extension-ui.d.ts +310 -0
- package/dist/contracts/owned-ui/image-attachments.d.ts +36 -0
- package/dist/contracts/owned-ui/image-attachments.js +67 -0
- package/dist/contracts/owned-ui/index.d.ts +12 -0
- package/dist/contracts/owned-ui/index.js +8 -0
- package/dist/contracts/owned-ui/model.d.ts +374 -0
- package/dist/contracts/owned-ui/prompt-history.d.ts +55 -0
- package/dist/contracts/owned-ui/prompt-history.js +23 -0
- package/dist/contracts/owned-ui/prompt-suggestions.d.ts +3 -0
- package/dist/contracts/owned-ui/prompt-suggestions.js +44 -0
- package/dist/contracts/owned-ui/suggestion-diagnostics.d.ts +22 -0
- package/dist/contracts/owned-ui/suggestion-diagnostics.js +9 -0
- package/dist/contracts/owned-ui/transcript-lifecycle.d.ts +5 -0
- package/dist/contracts/owned-ui/transcript-lifecycle.js +33 -0
- package/dist/contracts/owned-ui/validation.d.ts +15 -0
- package/dist/contracts/owned-ui/validation.js +523 -0
- package/dist/contracts/presentation/index.d.ts +104 -0
- package/dist/features/launch/development-launch.js +36 -0
- package/dist/features/launch/index.d.ts +12 -0
- package/dist/features/launch/index.js +6 -0
- package/dist/features/launch/intent.d.ts +12 -0
- package/dist/features/launch/intent.js +8 -0
- package/dist/features/launch/prepare-launch.d.ts +11 -0
- package/dist/features/launch/prepare-launch.js +14 -0
- package/dist/features/launch/profile-paths.d.ts +16 -0
- package/dist/features/launch/profile-paths.js +36 -0
- package/dist/features/launch/runtime-selection.d.ts +16 -0
- package/dist/features/launch/runtime-selection.js +13 -0
- package/dist/features/owned-ui/index.d.ts +9 -0
- package/dist/features/owned-ui/index.js +6 -0
- package/dist/features/owned-ui/project-trust-prompt.d.ts +25 -0
- package/dist/features/owned-ui/project-trust-prompt.js +149 -0
- package/dist/features/owned-ui/reference-routes.d.ts +6 -0
- package/dist/features/owned-ui/reference-routes.js +6 -0
- package/dist/features/owned-ui/reference-screen-app.d.ts +37 -0
- package/dist/features/owned-ui/reference-screen-app.js +232 -0
- package/dist/features/owned-ui/run.d.ts +17 -0
- package/dist/features/owned-ui/run.js +64 -0
- package/dist/features/owned-ui/session-fork-prompt.d.ts +8 -0
- package/dist/features/owned-ui/session-fork-prompt.js +34 -0
- package/dist/features/owned-ui/settings-app.d.ts +21 -0
- package/dist/features/owned-ui/settings-app.js +802 -0
- package/dist/features/owned-ui/settings-route.d.ts +2 -0
- package/dist/features/owned-ui/settings-route.js +2 -0
- package/dist/features/prompt-history/image-sidecar.d.ts +32 -0
- package/dist/features/prompt-history/image-sidecar.js +130 -0
- package/dist/features/prompt-history/index.d.ts +4 -0
- package/dist/features/prompt-history/index.js +3 -0
- package/dist/features/prompt-history/paths.d.ts +5 -0
- package/dist/features/prompt-history/paths.js +17 -0
- package/dist/features/prompt-history/service.d.ts +54 -0
- package/dist/features/prompt-history/service.js +425 -0
- package/dist/features/prompt-history/store.d.ts +16 -0
- package/dist/features/prompt-history/store.js +219 -0
- package/dist/features/prompt-history/worker.d.ts +9 -0
- package/dist/features/prompt-history/worker.js +45 -0
- package/dist/features/prompt-suggestions/diagnostics.d.ts +18 -0
- package/dist/features/prompt-suggestions/diagnostics.js +82 -0
- package/dist/features/prompt-suggestions/index.d.ts +2 -0
- package/dist/features/prompt-suggestions/index.js +1 -0
- package/dist/foundation/launch-context/index.d.ts +59 -0
- package/dist/foundation/launch-context/index.js +136 -0
- package/dist/foundation/launch-guardian/index.d.ts +2 -0
- package/dist/foundation/launch-guardian/index.js +1 -0
- package/dist/foundation/launch-guardian/main.d.ts +33 -0
- package/dist/foundation/launch-guardian/main.js +180 -0
- package/dist/foundation/lifecycle/commands.js +1 -0
- package/dist/foundation/lifecycle/index.d.ts +11 -0
- package/dist/foundation/lifecycle/index.js +5 -0
- package/dist/foundation/lifecycle/model.d.ts +64 -0
- package/dist/foundation/lifecycle/model.js +40 -0
- package/dist/foundation/lifecycle/paths.d.ts +30 -0
- package/dist/foundation/lifecycle/paths.js +70 -0
- package/dist/foundation/lifecycle/session-selection.d.ts +9 -0
- package/dist/foundation/lifecycle/session-selection.js +39 -0
- package/dist/foundation/lifecycle/supervisor-startup.d.ts +30 -0
- package/dist/foundation/lifecycle/supervisor-startup.js +106 -0
- package/dist/foundation/process-containment/darwin-process-inspector.d.ts +5 -0
- package/dist/foundation/process-containment/darwin-process-inspector.js +7 -0
- package/dist/foundation/process-containment/index.d.ts +8 -0
- package/dist/foundation/process-containment/index.js +6 -0
- package/dist/foundation/process-containment/linux-process-inspector.d.ts +7 -0
- package/dist/foundation/process-containment/linux-process-inspector.js +27 -0
- package/dist/foundation/process-containment/native-guardian-containment.d.ts +17 -0
- package/dist/foundation/process-containment/native-guardian-containment.js +140 -0
- package/dist/foundation/process-containment/windows-process-inspector.d.ts +19 -0
- package/dist/foundation/process-containment/windows-process-inspector.js +56 -0
- package/dist/foundation/protocol/client.d.ts +18 -0
- package/dist/foundation/protocol/client.js +130 -0
- package/dist/foundation/protocol/index.d.ts +3 -0
- package/dist/foundation/protocol/index.js +2 -0
- package/dist/foundation/protocol/messages.d.ts +90 -0
- package/dist/foundation/protocol/messages.js +100 -0
- package/dist/foundation/release/bootstrap.d.ts +51 -0
- package/dist/foundation/release/bootstrap.js +427 -0
- package/dist/foundation/release/cohort-state.d.ts +157 -0
- package/dist/foundation/release/cohort-state.js +472 -0
- package/dist/foundation/release/dependency-certification-retention.d.ts +7 -0
- package/dist/foundation/release/dependency-certification-retention.js +88 -0
- package/dist/foundation/release/dependency-certification.d.ts +24 -0
- package/dist/foundation/release/dependency-certification.js +266 -0
- package/dist/foundation/release/dependency-layer.d.ts +78 -0
- package/dist/foundation/release/dependency-layer.js +466 -0
- package/dist/foundation/release/endpoints.d.ts +24 -0
- package/dist/foundation/release/endpoints.js +134 -0
- package/dist/foundation/release/immutable-platform.d.ts +6 -0
- package/dist/foundation/release/immutable-platform.js +13 -0
- package/dist/foundation/release/index.d.ts +32 -0
- package/dist/foundation/release/index.js +17 -0
- package/dist/foundation/release/release-gc.d.ts +71 -0
- package/dist/foundation/release/release-gc.js +764 -0
- package/dist/foundation/release/release-store.d.ts +49 -0
- package/dist/foundation/release/release-store.js +235 -0
- package/dist/foundation/release/release.d.ts +43 -0
- package/dist/foundation/release/release.js +215 -0
- package/dist/foundation/release/restart-certification.d.ts +68 -0
- package/dist/foundation/release/restart-certification.js +227 -0
- package/dist/foundation/release/types.d.ts +11 -0
- package/dist/foundation/release/types.js +1 -0
- package/dist/foundation/release/update-activation.d.ts +72 -0
- package/dist/foundation/release/update-activation.js +204 -0
- package/dist/foundation/release/update-launch.d.ts +6 -0
- package/dist/foundation/release/update-launch.js +17 -0
- package/dist/foundation/release/update-recovery.d.ts +76 -0
- package/dist/foundation/release/update-recovery.js +356 -0
- package/dist/foundation/release/update-transaction.d.ts +42 -0
- package/dist/foundation/release/update-transaction.js +101 -0
- package/dist/foundation/release/update.d.ts +114 -0
- package/dist/foundation/release/update.js +633 -0
- package/dist/foundation/release/warmup.d.ts +3 -0
- package/dist/foundation/release/warmup.js +47 -0
- package/dist/foundation/startup/index.d.ts +4 -0
- package/dist/foundation/startup/index.js +2 -0
- package/dist/foundation/startup/startup-budget.d.ts +46 -0
- package/dist/foundation/startup/startup-budget.js +42 -0
- package/dist/foundation/startup/startup-descriptor.js +34 -0
- package/dist/foundation/startup/startup-runtime.d.ts +27 -0
- package/dist/foundation/startup/startup-runtime.js +128 -0
- package/dist/foundation/storage/control-store.d.ts +18 -0
- package/dist/foundation/storage/control-store.js +342 -0
- package/dist/foundation/storage/index.d.ts +1 -0
- package/dist/foundation/storage/index.js +1 -0
- package/dist/foundation/supervision/index.d.ts +3 -0
- package/dist/foundation/supervision/index.js +3 -0
- package/dist/foundation/supervision/main.d.ts +1 -0
- package/dist/foundation/supervision/main.js +84 -0
- package/dist/foundation/supervision/paths.d.ts +1 -0
- package/dist/foundation/supervision/paths.js +1 -0
- package/dist/foundation/supervision/server.d.ts +46 -0
- package/dist/foundation/supervision/server.js +573 -0
- package/dist/foundation/terminal-cleanup/fatal-exit.d.ts +12 -0
- package/dist/foundation/terminal-cleanup/fatal-exit.js +87 -0
- package/dist/foundation/terminal-cleanup/index.d.ts +3 -0
- package/dist/foundation/terminal-cleanup/index.js +2 -0
- package/dist/foundation/terminal-cleanup/terminal-reset.d.ts +4 -0
- package/dist/foundation/terminal-cleanup/terminal-reset.js +40 -0
- package/dist/integrations/pi/components/components.d.ts +4 -0
- package/dist/integrations/pi/components/components.js +64 -0
- package/dist/integrations/pi/components/conformance.d.ts +18 -0
- package/dist/integrations/pi/components/conformance.js +70 -0
- package/dist/integrations/pi/components/editor-interaction.d.ts +38 -0
- package/dist/integrations/pi/components/editor-interaction.js +1 -0
- package/dist/integrations/pi/components/history-editor-loader.d.ts +5 -0
- package/dist/integrations/pi/components/history-editor-loader.js +5 -0
- package/dist/integrations/pi/components/index.d.ts +23 -0
- package/dist/integrations/pi/components/index.js +14 -0
- package/dist/integrations/pi/components/models-dialog.d.ts +55 -0
- package/dist/integrations/pi/components/models-dialog.js +310 -0
- package/dist/integrations/pi/components/owned-editor-ux.d.ts +74 -0
- package/dist/integrations/pi/components/owned-editor-ux.js +1094 -0
- package/dist/integrations/pi/components/path-word-ranges.d.ts +2 -0
- package/dist/integrations/pi/components/path-word-ranges.js +37 -0
- package/dist/integrations/pi/components/prompt-input-port.d.ts +18 -0
- package/dist/integrations/pi/components/prompt-input-port.js +1 -0
- package/dist/integrations/pi/components/resources/builtin-themes.d.ts +167 -0
- package/dist/integrations/pi/components/resources/builtin-themes.js +168 -0
- package/dist/integrations/pi/components/shell-components.d.ts +7 -0
- package/dist/integrations/pi/components/shell-components.js +7 -0
- package/dist/integrations/pi/components/shell-editor-autocomplete.d.ts +21 -0
- package/dist/integrations/pi/components/shell-editor-autocomplete.js +322 -0
- package/dist/integrations/pi/components/shell-extension-ui.d.ts +35 -0
- package/dist/integrations/pi/components/shell-extension-ui.js +280 -0
- package/dist/integrations/pi/components/shell-footer-status.d.ts +7 -0
- package/dist/integrations/pi/components/shell-footer-status.js +249 -0
- package/dist/integrations/pi/components/shell-presenters-info.d.ts +53 -0
- package/dist/integrations/pi/components/shell-presenters-info.js +134 -0
- package/dist/integrations/pi/components/shell-presenters-transcript.d.ts +29 -0
- package/dist/integrations/pi/components/shell-presenters-transcript.js +433 -0
- package/dist/integrations/pi/components/shell-selectors-dialogs.d.ts +133 -0
- package/dist/integrations/pi/components/shell-selectors-dialogs.js +255 -0
- package/dist/integrations/pi/components/shell-shared-facade.d.ts +225 -0
- package/dist/integrations/pi/components/shell-shared-facade.js +92 -0
- package/dist/integrations/pi/components/skills-command.d.ts +47 -0
- package/dist/integrations/pi/components/skills-command.js +118 -0
- package/dist/integrations/pi/components/skills-dialog.d.ts +9 -0
- package/dist/integrations/pi/components/skills-dialog.js +112 -0
- package/dist/integrations/pi/components/submitted-prompt-adapter.d.ts +17 -0
- package/dist/integrations/pi/components/submitted-prompt-adapter.js +49 -0
- package/dist/integrations/pi/components/tool-image-presentation.d.ts +21 -0
- package/dist/integrations/pi/components/tool-image-presentation.js +83 -0
- package/dist/integrations/pi/components/tool-result-adapter.d.ts +6 -0
- package/dist/integrations/pi/components/tool-result-adapter.js +27 -0
- package/dist/integrations/pi/components/transcript-image-resolver.d.ts +7 -0
- package/dist/integrations/pi/components/transcript-image-resolver.js +19 -0
- package/dist/integrations/pi/components/upstream/adjacent/core/keybindings.d.ts +445 -0
- package/dist/integrations/pi/components/upstream/adjacent/core/keybindings.js +370 -0
- package/dist/integrations/pi/components/upstream/assets/earendil-image.json +12 -0
- package/dist/integrations/pi/components/upstream/components/countdown-timer.d.ts +13 -0
- package/dist/integrations/pi/components/upstream/components/daxnuts.d.ts +29 -0
- package/dist/integrations/pi/components/upstream/components/daxnuts.js +146 -0
- package/dist/integrations/pi/components/upstream/components/earendil-announcement.d.ts +4 -0
- package/dist/integrations/pi/components/upstream/components/earendil-announcement.js +48 -0
- package/dist/integrations/pi/components/upstream/components/extension-editor.d.ts +20 -0
- package/dist/integrations/pi/components/upstream/components/extension-editor.js +84 -0
- package/dist/integrations/pi/components/upstream/components/mermaid.js +81 -0
- package/dist/integrations/pi/components/upstream/components/owned-editor.d.ts +52 -0
- package/dist/integrations/pi/components/upstream/components/owned-editor.js +222 -0
- package/dist/integrations/pi/components/upstream/components/scoped-models-selector.d.ts +59 -0
- package/dist/integrations/pi/components/upstream/components/scoped-models-selector.js +346 -0
- package/dist/integrations/pi/components/upstream/components/session-footer.d.ts +11 -0
- package/dist/integrations/pi/components/upstream/components/session-footer.js +123 -0
- package/dist/integrations/pi/components/upstream/components/session-selector-search.js +161 -0
- package/dist/integrations/pi/components/upstream/components/session-selector.d.ts +95 -0
- package/dist/integrations/pi/components/upstream/components/session-selector.js +893 -0
- package/dist/integrations/pi/components/upstream/components/skill-invocation-message.d.ts +21 -0
- package/dist/integrations/pi/components/upstream/components/skill-invocation-message.js +46 -0
- package/dist/integrations/pi/components/upstream/components/status-indicator.d.ts +35 -0
- package/dist/integrations/pi/components/upstream/components/status-indicator.js +69 -0
- package/dist/integrations/pi/components/upstream/components/tool-execution.d.ts +67 -0
- package/dist/integrations/pi/components/upstream/components/tool-execution.js +365 -0
- package/dist/integrations/pi/components/upstream/components/tree-selector.d.ts +101 -0
- package/dist/integrations/pi/components/upstream/components/tree-selector.js +1275 -0
- package/dist/integrations/pi/components/upstream/components/trust-selector.d.ts +33 -0
- package/dist/integrations/pi/components/upstream/components/trust-selector.js +81 -0
- package/dist/integrations/pi/components/upstream/external-editor.js +43 -0
- package/dist/integrations/pi/components/upstream/history/editor-core.d.ts +289 -0
- package/dist/integrations/pi/components/upstream/history/editor-core.js +2144 -0
- package/dist/integrations/pi/components/upstream/history/kill-ring.d.ts +35 -0
- package/dist/integrations/pi/components/upstream/history/kill-ring.js +51 -0
- package/dist/integrations/pi/components/upstream/history/printable-key.d.ts +1 -0
- package/dist/integrations/pi/components/upstream/history/printable-key.js +43 -0
- package/dist/integrations/pi/components/upstream/history/text-helpers.d.ts +14 -0
- package/dist/integrations/pi/components/upstream/history/text-helpers.js +31 -0
- package/dist/integrations/pi/components/upstream/history/undo-stack.d.ts +25 -0
- package/dist/integrations/pi/components/upstream/history/undo-stack.js +39 -0
- package/dist/integrations/pi/components/upstream/history/word-navigation.d.ts +24 -0
- package/dist/integrations/pi/components/upstream/history/word-navigation.js +103 -0
- package/dist/integrations/pi/components/upstream/model-search.d.ts +18 -0
- package/dist/integrations/pi/components/upstream/theme/theme-controller.d.ts +33 -0
- package/dist/integrations/pi/components/upstream/theme/theme-controller.js +114 -0
- package/dist/integrations/pi/components/upstream/theme/theme.d.ts +61 -0
- package/dist/integrations/pi/components/upstream/theme/theme.js +337 -0
- package/dist/integrations/pi/engine/adapter.d.ts +139 -0
- package/dist/integrations/pi/engine/adapter.js +660 -0
- package/dist/integrations/pi/engine/changelog.d.ts +2 -0
- package/dist/integrations/pi/engine/changelog.js +63 -0
- package/dist/integrations/pi/engine/command-dispatch.d.ts +41 -0
- package/dist/integrations/pi/engine/command-dispatch.js +125 -0
- package/dist/integrations/pi/engine/compaction-progress.d.ts +28 -0
- package/dist/integrations/pi/engine/compaction-progress.js +96 -0
- package/dist/integrations/pi/engine/conformance.d.ts +39 -0
- package/dist/integrations/pi/engine/conformance.js +140 -0
- package/dist/integrations/pi/engine/event-delivery.d.ts +100 -0
- package/dist/integrations/pi/engine/event-delivery.js +184 -0
- package/dist/integrations/pi/engine/extension-ui-binding.d.ts +35 -0
- package/dist/integrations/pi/engine/extension-ui-binding.js +81 -0
- package/dist/integrations/pi/engine/http-dispatcher.d.ts +4 -0
- package/dist/integrations/pi/engine/http-dispatcher.js +25 -0
- package/dist/integrations/pi/engine/index.d.ts +18 -0
- package/dist/integrations/pi/engine/index.js +10 -0
- package/dist/integrations/pi/engine/message-values.d.ts +29 -0
- package/dist/integrations/pi/engine/message-values.js +168 -0
- package/dist/integrations/pi/engine/package-integration.d.ts +13 -0
- package/dist/integrations/pi/engine/package-integration.js +118 -0
- package/dist/integrations/pi/engine/pending-delivery.d.ts +30 -0
- package/dist/integrations/pi/engine/pending-delivery.js +156 -0
- package/dist/integrations/pi/engine/pi-settings-metadata.json +385 -0
- package/dist/integrations/pi/engine/project-trust-preflight.d.ts +22 -0
- package/dist/integrations/pi/engine/project-trust-preflight.js +50 -0
- package/dist/integrations/pi/engine/prompt-suggestions.d.ts +30 -0
- package/dist/integrations/pi/engine/prompt-suggestions.js +102 -0
- package/dist/integrations/pi/engine/provider-authentication.d.ts +34 -0
- package/dist/integrations/pi/engine/provider-authentication.js +209 -0
- package/dist/integrations/pi/engine/resource-catalog.d.ts +50 -0
- package/dist/integrations/pi/engine/resource-catalog.js +299 -0
- package/dist/integrations/pi/engine/resources/changelog.json +12 -0
- package/dist/integrations/pi/engine/runtime-integration.d.ts +53 -0
- package/dist/integrations/pi/engine/runtime-integration.js +118 -0
- package/dist/integrations/pi/engine/session-events.d.ts +48 -0
- package/dist/integrations/pi/engine/session-events.js +223 -0
- package/dist/integrations/pi/engine/session-integration.d.ts +67 -0
- package/dist/integrations/pi/engine/session-integration.js +195 -0
- package/dist/integrations/pi/engine/session-runtime.d.ts +84 -0
- package/dist/integrations/pi/engine/session-runtime.js +249 -0
- package/dist/integrations/pi/engine/session-selection.d.ts +28 -0
- package/dist/integrations/pi/engine/session-selection.js +90 -0
- package/dist/integrations/pi/engine/settings-bridge.d.ts +121 -0
- package/dist/integrations/pi/engine/settings-bridge.js +514 -0
- package/dist/integrations/pi/engine/settings-metadata.d.ts +31 -0
- package/dist/integrations/pi/engine/settings-metadata.js +67 -0
- package/dist/integrations/pi/engine/settings-port.d.ts +42 -0
- package/dist/integrations/pi/engine/settings-port.js +353 -0
- package/dist/integrations/pi/engine/tool-rendering.d.ts +13 -0
- package/dist/integrations/pi/engine/tool-rendering.js +145 -0
- package/dist/integrations/pi/engine/transcript-image-assets.d.ts +11 -0
- package/dist/integrations/pi/engine/transcript-image-assets.js +86 -0
- package/dist/integrations/pi/engine/transcript-projection.d.ts +39 -0
- package/dist/integrations/pi/engine/transcript-projection.js +405 -0
- package/dist/integrations/pi/engine/usage-view.d.ts +4 -0
- package/dist/integrations/pi/engine/usage-view.js +56 -0
- package/dist/integrations/pi/engine/windows-filesystem-hygiene.d.ts +21 -0
- package/dist/integrations/pi/engine/windows-filesystem-hygiene.js +55 -0
- package/dist/integrations/pi/engine/workflow-contexts.d.ts +66 -0
- package/dist/integrations/pi/engine/workflow-contexts.js +360 -0
- package/dist/integrations/pi/engine/workflow-runner.d.ts +60 -0
- package/dist/integrations/pi/engine/workflow-runner.js +533 -0
- package/dist/integrations/pi/engine/workflow-support.d.ts +33 -0
- package/dist/integrations/pi/engine/workflow-support.js +352 -0
- package/dist/integrations/pi/engine/workflows.d.ts +275 -0
- package/dist/integrations/pi/engine/workflows.js +71 -0
- package/dist/integrations/pi/startup-public.d.ts +2 -0
- package/dist/integrations/pi/startup-public.js +2223 -0
- package/dist/integrations/pi/startup-public.manifest.json +12502 -0
- package/dist/integrations/pi/tui-runtime/adapter.d.ts +56 -0
- package/dist/integrations/pi/tui-runtime/adapter.js +783 -0
- package/dist/integrations/pi/tui-runtime/contracts.d.ts +156 -0
- package/dist/integrations/pi/tui-runtime/contracts.js +1 -0
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.d.ts +88 -0
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.js +433 -0
- package/dist/integrations/pi/tui-runtime/index.d.ts +9 -0
- package/dist/integrations/pi/tui-runtime/index.js +5 -0
- package/dist/integrations/pi/tui-runtime/input-presentation-coordinator.d.ts +39 -0
- package/dist/integrations/pi/tui-runtime/input-presentation-coordinator.js +139 -0
- package/dist/integrations/pi/tui-runtime/mouse-report-input.d.ts +13 -0
- package/dist/integrations/pi/tui-runtime/mouse-report-input.js +57 -0
- package/dist/integrations/pi/tui-runtime/overlay-geometry.d.ts +32 -0
- package/dist/integrations/pi/tui-runtime/overlay-geometry.js +158 -0
- package/dist/integrations/pi/tui-runtime/presentation-adapter.d.ts +4 -0
- package/dist/integrations/pi/tui-runtime/presentation-adapter.js +48 -0
- package/dist/native/darwin-arm64/manifest.json +4 -4
- package/dist/native/darwin-arm64/process-guardian +0 -0
- package/dist/native/linux-x64/manifest.json +3 -3
- package/dist/native/linux-x64/process-guardian +0 -0
- package/dist/native/win32-x64/manifest.json +3 -3
- package/dist/native/win32-x64/process-guardian.exe +0 -0
- package/dist/product-identity.d.ts +37 -0
- package/dist/product-identity.js +119 -0
- package/dist/product-identity.json +85 -0
- package/dist/runtime-payload-inventory.json +127148 -0
- package/dist/ui/apps/contracts.d.ts +72 -0
- package/dist/ui/apps/host.d.ts +42 -0
- package/dist/ui/apps/host.js +156 -0
- package/dist/ui/apps/index.d.ts +5 -0
- package/dist/ui/apps/index.js +3 -0
- package/dist/ui/apps/registry.d.ts +12 -0
- package/dist/ui/apps/registry.js +33 -0
- package/dist/ui/components/dialog-panel.js +49 -0
- package/dist/ui/components/frame.d.ts +22 -0
- package/dist/ui/components/frame.js +55 -0
- package/dist/ui/components/index.d.ts +47 -0
- package/dist/ui/components/index.js +25 -0
- package/dist/ui/components/line-input.d.ts +68 -0
- package/dist/ui/components/line-input.js +224 -0
- package/dist/ui/components/list-view.d.ts +60 -0
- package/dist/ui/components/list-view.js +82 -0
- package/dist/ui/components/mouse.d.ts +25 -0
- package/dist/ui/components/mouse.js +70 -0
- package/dist/ui/components/progress-status.d.ts +2 -0
- package/dist/ui/components/progress-status.js +4 -0
- package/dist/ui/components/prompt-input.d.ts +32 -0
- package/dist/ui/components/prompt-input.js +51 -0
- package/dist/ui/components/scrollbar.d.ts +88 -0
- package/dist/ui/components/scrollbar.js +137 -0
- package/dist/ui/components/selection-copy.d.ts +24 -0
- package/dist/ui/components/selection-copy.js +39 -0
- package/dist/ui/components/shortcuts.d.ts +58 -0
- package/dist/ui/components/shortcuts.js +82 -0
- package/dist/ui/components/spans.d.ts +28 -0
- package/dist/ui/components/spans.js +266 -0
- package/dist/ui/components/submitted-prompt.d.ts +23 -0
- package/dist/ui/components/submitted-prompt.js +50 -0
- package/dist/ui/components/surface.d.ts +20 -0
- package/dist/ui/components/surface.js +44 -0
- package/dist/ui/components/text-selection.d.ts +62 -0
- package/dist/ui/components/text-selection.js +210 -0
- package/dist/ui/components/text.d.ts +38 -0
- package/dist/ui/components/text.js +185 -0
- package/dist/ui/components/transcript-viewport.d.ts +173 -0
- package/dist/ui/components/transcript-viewport.js +753 -0
- package/dist/ui/components/visible-hyperlinks.d.ts +26 -0
- package/dist/ui/components/visible-hyperlinks.js +97 -0
- package/dist/ui/settings/declarations.d.ts +127 -0
- package/dist/ui/settings/declarations.js +124 -0
- package/dist/ui/settings/index.d.ts +10 -0
- package/dist/ui/settings/index.js +5 -0
- package/dist/ui/settings/manager.d.ts +54 -0
- package/dist/ui/settings/manager.js +256 -0
- package/dist/ui/settings/migrations.d.ts +13 -0
- package/dist/ui/settings/migrations.js +92 -0
- package/dist/ui/settings/sections.d.ts +52 -0
- package/dist/ui/settings/sections.js +112 -0
- package/docs/architecture/boundaries.md +17 -13
- package/docs/architecture/code-documentation.md +77 -0
- package/docs/architecture/history-editor-provenance.md +100 -0
- package/docs/architecture/internal-naming.md +93 -0
- package/docs/architecture/process-guardian-provenance.md +3 -1
- package/docs/architecture/project-structure.md +69 -30
- package/docs/architecture/prompt-suggestions.md +68 -0
- package/docs/architecture/resource-and-data-policy.md +28 -2
- package/docs/architecture/response-copy-delivery.md +85 -0
- package/docs/architecture/terminal-host-proof-gate.md +1 -1
- package/docs/architecture/terminal-host-spike-evidence.md +1 -1
- package/docs/architecture/tool-image-presentation.md +62 -0
- package/docs/architecture/toolchain.md +32 -10
- package/docs/architecture/ui-reference-provenance.md +61 -6
- package/docs/ci-release-runbook.md +256 -79
- package/docs/features/launch-profiles.md +24 -17
- package/docs/features/modal-content-interaction.md +38 -0
- package/docs/features/prompt-history.md +149 -0
- package/docs/local-worktree-cleanup.md +212 -0
- package/docs/manual-code-streaming-cleanup.md +88 -0
- package/docs/manual-ghost-link-baseline.md +89 -0
- package/docs/manual-launch-instance-acceptance.md +12 -35
- package/docs/manual-owned-ui-checkpoint.md +79 -0
- package/docs/manual-pi-boundary-candidate.md +4 -5
- package/docs/manual-terminal-colour-check.md +4 -3
- package/docs/openspec-archive-automation.md +259 -0
- package/docs/repository-governance-live-acceptance.md +77 -0
- package/docs/validation.md +100 -0
- package/package.json +52 -34
- package/dist/src/cli/capabilities.d.ts +0 -15
- package/dist/src/cli/capabilities.js +0 -7
- package/dist/src/cli/dispatch.d.ts +0 -32
- package/dist/src/cli/dispatch.js +0 -142
- package/dist/src/cli/index.d.ts +0 -5
- package/dist/src/cli/index.js +0 -5
- package/dist/src/cli/packages.d.ts +0 -23
- package/dist/src/cli/packages.js +0 -84
- package/dist/src/cli/version-stats.d.ts +0 -16
- package/dist/src/cli/version-stats.js +0 -72
- package/dist/src/cli/version.d.ts +0 -2
- package/dist/src/cli/version.js +0 -23
- package/dist/src/composition/index.d.ts +0 -48
- package/dist/src/composition/index.js +0 -258
- package/dist/src/features/launch/development-launch.js +0 -28
- package/dist/src/features/launch/index.d.ts +0 -7
- package/dist/src/features/launch/index.js +0 -7
- package/dist/src/features/launch/intent.d.ts +0 -7
- package/dist/src/features/launch/intent.js +0 -4
- package/dist/src/features/launch/prepare-launch.d.ts +0 -13
- package/dist/src/features/launch/prepare-launch.js +0 -21
- package/dist/src/features/launch/profile-paths.d.ts +0 -15
- package/dist/src/features/launch/profile-paths.js +0 -31
- package/dist/src/features/launch/profiles.d.ts +0 -12
- package/dist/src/features/launch/profiles.js +0 -26
- package/dist/src/features/launch/runtime-selection.d.ts +0 -19
- package/dist/src/features/launch/runtime-selection.js +0 -13
- package/dist/src/features/owned-ui/customization.d.ts +0 -38
- package/dist/src/features/owned-ui/customization.js +0 -108
- package/dist/src/features/owned-ui/diagnostics.d.ts +0 -33
- package/dist/src/features/owned-ui/diagnostics.js +0 -94
- package/dist/src/features/owned-ui/index.d.ts +0 -4
- package/dist/src/features/owned-ui/index.js +0 -4
- package/dist/src/features/owned-ui/run.d.ts +0 -11
- package/dist/src/features/owned-ui/run.js +0 -15
- package/dist/src/features/owned-ui/settings-app.d.ts +0 -22
- package/dist/src/features/owned-ui/settings-app.js +0 -633
- package/dist/src/features/workspace/capabilities.d.ts +0 -31
- package/dist/src/features/workspace/capabilities.js +0 -75
- package/dist/src/features/workspace/index.d.ts +0 -6
- package/dist/src/features/workspace/index.js +0 -6
- package/dist/src/features/workspace/presentation.d.ts +0 -30
- package/dist/src/features/workspace/presentation.js +0 -70
- package/dist/src/features/workspace/reconciliation.d.ts +0 -15
- package/dist/src/features/workspace/reconciliation.js +0 -82
- package/dist/src/features/workspace/reducer.d.ts +0 -42
- package/dist/src/features/workspace/reducer.js +0 -213
- package/dist/src/features/workspace/router.d.ts +0 -31
- package/dist/src/features/workspace/router.js +0 -124
- package/dist/src/features/workspace/store.d.ts +0 -17
- package/dist/src/features/workspace/store.js +0 -54
- package/dist/src/foundation/agent-engine-contracts/capability-ports.d.ts +0 -95
- package/dist/src/foundation/agent-engine-contracts/domain-validation.js +0 -89
- package/dist/src/foundation/agent-engine-contracts/domain.d.ts +0 -116
- package/dist/src/foundation/agent-engine-contracts/index.d.ts +0 -8
- package/dist/src/foundation/agent-engine-contracts/index.js +0 -8
- package/dist/src/foundation/agent-engine-contracts/package-ports.d.ts +0 -54
- package/dist/src/foundation/launch-guardian/index.d.ts +0 -1
- package/dist/src/foundation/launch-guardian/index.js +0 -1
- package/dist/src/foundation/launch-guardian/main.d.ts +0 -31
- package/dist/src/foundation/launch-guardian/main.js +0 -165
- package/dist/src/foundation/lifecycle/index.d.ts +0 -4
- package/dist/src/foundation/lifecycle/index.js +0 -4
- package/dist/src/foundation/lifecycle/model.d.ts +0 -64
- package/dist/src/foundation/lifecycle/model.js +0 -40
- package/dist/src/foundation/lifecycle/paths.d.ts +0 -10
- package/dist/src/foundation/lifecycle/paths.js +0 -42
- package/dist/src/foundation/native-host-protocol/codec.d.ts +0 -11
- package/dist/src/foundation/native-host-protocol/codec.js +0 -56
- package/dist/src/foundation/native-host-protocol/evidence.d.ts +0 -67
- package/dist/src/foundation/native-host-protocol/evidence.js +0 -141
- package/dist/src/foundation/native-host-protocol/index.d.ts +0 -4
- package/dist/src/foundation/native-host-protocol/index.js +0 -4
- package/dist/src/foundation/native-host-protocol/messages.d.ts +0 -56
- package/dist/src/foundation/native-host-protocol/messages.js +0 -149
- package/dist/src/foundation/native-host-protocol/proof-gate.d.ts +0 -13
- package/dist/src/foundation/native-host-protocol/proof-gate.js +0 -33
- package/dist/src/foundation/owned-ui-contracts/extension-ui.d.ts +0 -302
- package/dist/src/foundation/owned-ui-contracts/index.d.ts +0 -3
- package/dist/src/foundation/owned-ui-contracts/index.js +0 -3
- package/dist/src/foundation/owned-ui-contracts/model.d.ts +0 -241
- package/dist/src/foundation/owned-ui-contracts/validation.d.ts +0 -11
- package/dist/src/foundation/owned-ui-contracts/validation.js +0 -395
- package/dist/src/foundation/owned-ui-settings/declarations.d.ts +0 -13
- package/dist/src/foundation/owned-ui-settings/declarations.js +0 -39
- package/dist/src/foundation/owned-ui-settings/index.d.ts +0 -6
- package/dist/src/foundation/owned-ui-settings/index.js +0 -6
- package/dist/src/foundation/owned-ui-settings/migrations.d.ts +0 -13
- package/dist/src/foundation/owned-ui-settings/migrations.js +0 -28
- package/dist/src/foundation/owned-ui-settings/sections.d.ts +0 -70
- package/dist/src/foundation/owned-ui-settings/sections.js +0 -93
- package/dist/src/foundation/owned-ui-settings/session.d.ts +0 -44
- package/dist/src/foundation/owned-ui-settings/session.js +0 -145
- package/dist/src/foundation/owned-ui-settings/store.d.ts +0 -28
- package/dist/src/foundation/owned-ui-settings/store.js +0 -90
- package/dist/src/foundation/pi-component-adapter/components.d.ts +0 -4
- package/dist/src/foundation/pi-component-adapter/components.js +0 -64
- package/dist/src/foundation/pi-component-adapter/conformance.d.ts +0 -17
- package/dist/src/foundation/pi-component-adapter/conformance.js +0 -69
- package/dist/src/foundation/pi-component-adapter/index.d.ts +0 -13
- package/dist/src/foundation/pi-component-adapter/index.js +0 -13
- package/dist/src/foundation/pi-component-adapter/resources/builtin-themes.d.ts +0 -165
- package/dist/src/foundation/pi-component-adapter/resources/builtin-themes.js +0 -166
- package/dist/src/foundation/pi-component-adapter/shell-components.d.ts +0 -6
- package/dist/src/foundation/pi-component-adapter/shell-components.js +0 -6
- package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.d.ts +0 -11
- package/dist/src/foundation/pi-component-adapter/shell-editor-autocomplete.js +0 -162
- package/dist/src/foundation/pi-component-adapter/shell-extension-ui.d.ts +0 -35
- package/dist/src/foundation/pi-component-adapter/shell-extension-ui.js +0 -279
- package/dist/src/foundation/pi-component-adapter/shell-footer-status.d.ts +0 -7
- package/dist/src/foundation/pi-component-adapter/shell-footer-status.js +0 -189
- package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.d.ts +0 -57
- package/dist/src/foundation/pi-component-adapter/shell-presenters-transcript.js +0 -429
- package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.d.ts +0 -113
- package/dist/src/foundation/pi-component-adapter/shell-selectors-dialogs.js +0 -235
- package/dist/src/foundation/pi-component-adapter/shell-shared-facade.d.ts +0 -116
- package/dist/src/foundation/pi-component-adapter/shell-shared-facade.js +0 -87
- package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.d.ts +0 -422
- package/dist/src/foundation/pi-component-adapter/upstream/adjacent/core/keybindings.js +0 -296
- package/dist/src/foundation/pi-component-adapter/upstream/components/countdown-timer.d.ts +0 -10
- package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.d.ts +0 -17
- package/dist/src/foundation/pi-component-adapter/upstream/components/custom-entry.js +0 -51
- package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.d.ts +0 -22
- package/dist/src/foundation/pi-component-adapter/upstream/components/daxnuts.js +0 -142
- package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.d.ts +0 -4
- package/dist/src/foundation/pi-component-adapter/upstream/components/earendil-announcement.js +0 -19
- package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.d.ts +0 -17
- package/dist/src/foundation/pi-component-adapter/upstream/components/extension-editor.js +0 -81
- package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.d.ts +0 -24
- package/dist/src/foundation/pi-component-adapter/upstream/components/first-time-setup.js +0 -105
- package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.d.ts +0 -2
- package/dist/src/foundation/pi-component-adapter/upstream/components/markdown-transform.js +0 -18
- package/dist/src/foundation/pi-component-adapter/upstream/components/mermaid.js +0 -77
- package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.d.ts +0 -18
- package/dist/src/foundation/pi-component-adapter/upstream/components/owned-editor.js +0 -55
- package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.d.ts +0 -55
- package/dist/src/foundation/pi-component-adapter/upstream/components/scoped-models-selector.js +0 -342
- package/dist/src/foundation/pi-component-adapter/upstream/components/session-footer.d.ts +0 -10
- package/dist/src/foundation/pi-component-adapter/upstream/components/session-footer.js +0 -120
- package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector-search.js +0 -159
- package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.d.ts +0 -95
- package/dist/src/foundation/pi-component-adapter/upstream/components/session-selector.js +0 -889
- package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.d.ts +0 -19
- package/dist/src/foundation/pi-component-adapter/upstream/components/skill-invocation-message.js +0 -44
- package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.d.ts +0 -30
- package/dist/src/foundation/pi-component-adapter/upstream/components/status-indicator.js +0 -59
- package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.d.ts +0 -98
- package/dist/src/foundation/pi-component-adapter/upstream/components/tree-selector.js +0 -1272
- package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.d.ts +0 -33
- package/dist/src/foundation/pi-component-adapter/upstream/components/trust-selector.js +0 -76
- package/dist/src/foundation/pi-component-adapter/upstream/external-editor.js +0 -39
- package/dist/src/foundation/pi-component-adapter/upstream/model-search.d.ts +0 -15
- package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.d.ts +0 -25
- package/dist/src/foundation/pi-component-adapter/upstream/theme/theme-controller.js +0 -117
- package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.d.ts +0 -61
- package/dist/src/foundation/pi-component-adapter/upstream/theme/theme.js +0 -326
- package/dist/src/foundation/pi-engine-adapter/adapter.d.ts +0 -164
- package/dist/src/foundation/pi-engine-adapter/adapter.js +0 -2367
- package/dist/src/foundation/pi-engine-adapter/conformance.d.ts +0 -37
- package/dist/src/foundation/pi-engine-adapter/conformance.js +0 -130
- package/dist/src/foundation/pi-engine-adapter/index.d.ts +0 -10
- package/dist/src/foundation/pi-engine-adapter/index.js +0 -10
- package/dist/src/foundation/pi-engine-adapter/model-auth-integration.d.ts +0 -30
- package/dist/src/foundation/pi-engine-adapter/model-auth-integration.js +0 -61
- package/dist/src/foundation/pi-engine-adapter/package-integration.d.ts +0 -13
- package/dist/src/foundation/pi-engine-adapter/package-integration.js +0 -112
- package/dist/src/foundation/pi-engine-adapter/pi-settings-metadata.json +0 -374
- package/dist/src/foundation/pi-engine-adapter/resource-extension-integration.d.ts +0 -31
- package/dist/src/foundation/pi-engine-adapter/resource-extension-integration.js +0 -80
- package/dist/src/foundation/pi-engine-adapter/runtime-integration.d.ts +0 -35
- package/dist/src/foundation/pi-engine-adapter/runtime-integration.js +0 -67
- package/dist/src/foundation/pi-engine-adapter/session-integration.d.ts +0 -43
- package/dist/src/foundation/pi-engine-adapter/session-integration.js +0 -97
- package/dist/src/foundation/pi-engine-adapter/settings-integration.d.ts +0 -55
- package/dist/src/foundation/pi-engine-adapter/settings-integration.js +0 -233
- package/dist/src/foundation/pi-engine-adapter/workflow-controllers.d.ts +0 -20
- package/dist/src/foundation/pi-engine-adapter/workflow-controllers.js +0 -48
- package/dist/src/foundation/pi-engine-adapter/workflows.d.ts +0 -173
- package/dist/src/foundation/pi-engine-adapter/workflows.js +0 -60
- package/dist/src/foundation/pi-owned-ui-integration/index.d.ts +0 -2
- package/dist/src/foundation/pi-owned-ui-integration/index.js +0 -2
- package/dist/src/foundation/pi-owned-ui-integration/route-host.d.ts +0 -29
- package/dist/src/foundation/pi-owned-ui-integration/session-shell.d.ts +0 -106
- package/dist/src/foundation/pi-owned-ui-integration/session-shell.js +0 -1518
- package/dist/src/foundation/pi-tui-runtime-adapter/adapter.d.ts +0 -39
- package/dist/src/foundation/pi-tui-runtime-adapter/adapter.js +0 -493
- package/dist/src/foundation/pi-tui-runtime-adapter/conformance.d.ts +0 -18
- package/dist/src/foundation/pi-tui-runtime-adapter/conformance.js +0 -145
- package/dist/src/foundation/pi-tui-runtime-adapter/contracts.d.ts +0 -120
- package/dist/src/foundation/pi-tui-runtime-adapter/index.d.ts +0 -4
- package/dist/src/foundation/pi-tui-runtime-adapter/index.js +0 -4
- package/dist/src/foundation/pi-tui-runtime-adapter/presentation-adapter.d.ts +0 -4
- package/dist/src/foundation/pi-tui-runtime-adapter/presentation-adapter.js +0 -48
- package/dist/src/foundation/presentation-contracts/index.d.ts +0 -96
- package/dist/src/foundation/process-containment/index.d.ts +0 -5
- package/dist/src/foundation/process-containment/index.js +0 -5
- package/dist/src/foundation/process-containment/linux-process-inspector.d.ts +0 -6
- package/dist/src/foundation/process-containment/linux-process-inspector.js +0 -26
- package/dist/src/foundation/process-containment/native-guardian-containment.d.ts +0 -16
- package/dist/src/foundation/process-containment/native-guardian-containment.js +0 -139
- package/dist/src/foundation/process-containment/windows-process-inspector.d.ts +0 -17
- package/dist/src/foundation/process-containment/windows-process-inspector.js +0 -53
- package/dist/src/foundation/protocol/client.d.ts +0 -17
- package/dist/src/foundation/protocol/client.js +0 -129
- package/dist/src/foundation/protocol/index.d.ts +0 -2
- package/dist/src/foundation/protocol/index.js +0 -2
- package/dist/src/foundation/protocol/messages.d.ts +0 -89
- package/dist/src/foundation/protocol/messages.js +0 -99
- package/dist/src/foundation/release/bootstrap.d.ts +0 -29
- package/dist/src/foundation/release/bootstrap.js +0 -335
- package/dist/src/foundation/release/cohort-state.d.ts +0 -70
- package/dist/src/foundation/release/cohort-state.js +0 -202
- package/dist/src/foundation/release/index.d.ts +0 -10
- package/dist/src/foundation/release/index.js +0 -10
- package/dist/src/foundation/release/release-gc.d.ts +0 -5
- package/dist/src/foundation/release/release-gc.js +0 -16
- package/dist/src/foundation/release/release-store.d.ts +0 -43
- package/dist/src/foundation/release/release-store.js +0 -175
- package/dist/src/foundation/release/release.d.ts +0 -38
- package/dist/src/foundation/release/release.js +0 -204
- package/dist/src/foundation/release/update-transaction.d.ts +0 -31
- package/dist/src/foundation/release/update-transaction.js +0 -89
- package/dist/src/foundation/release/update.d.ts +0 -82
- package/dist/src/foundation/release/update.js +0 -527
- package/dist/src/foundation/storage/control-store.d.ts +0 -61
- package/dist/src/foundation/storage/control-store.js +0 -530
- package/dist/src/foundation/storage/index.d.ts +0 -1
- package/dist/src/foundation/storage/index.js +0 -1
- package/dist/src/foundation/structured-agent-runtime/backpressure.d.ts +0 -46
- package/dist/src/foundation/structured-agent-runtime/backpressure.js +0 -118
- package/dist/src/foundation/structured-agent-runtime/commands.d.ts +0 -52
- package/dist/src/foundation/structured-agent-runtime/commands.js +0 -164
- package/dist/src/foundation/structured-agent-runtime/handshake.d.ts +0 -41
- package/dist/src/foundation/structured-agent-runtime/handshake.js +0 -151
- package/dist/src/foundation/structured-agent-runtime/index.d.ts +0 -5
- package/dist/src/foundation/structured-agent-runtime/index.js +0 -5
- package/dist/src/foundation/structured-agent-runtime/reconnection.d.ts +0 -37
- package/dist/src/foundation/structured-agent-runtime/reconnection.js +0 -129
- package/dist/src/foundation/structured-agent-runtime/state.d.ts +0 -56
- package/dist/src/foundation/structured-agent-runtime/state.js +0 -118
- package/dist/src/foundation/supervision/index.d.ts +0 -3
- package/dist/src/foundation/supervision/index.js +0 -3
- package/dist/src/foundation/supervision/main.d.ts +0 -1
- package/dist/src/foundation/supervision/main.js +0 -41
- package/dist/src/foundation/supervision/paths.d.ts +0 -1
- package/dist/src/foundation/supervision/paths.js +0 -1
- package/dist/src/foundation/supervision/server.d.ts +0 -22
- package/dist/src/foundation/supervision/server.js +0 -451
- package/dist/src/foundation/ui-apps/contracts.d.ts +0 -42
- package/dist/src/foundation/ui-apps/host.d.ts +0 -42
- package/dist/src/foundation/ui-apps/host.js +0 -152
- package/dist/src/foundation/ui-apps/index.d.ts +0 -3
- package/dist/src/foundation/ui-apps/index.js +0 -3
- package/dist/src/foundation/ui-apps/registry.d.ts +0 -11
- package/dist/src/foundation/ui-apps/registry.js +0 -32
- package/dist/src/foundation/ui-components/dialog-panel.js +0 -47
- package/dist/src/foundation/ui-components/frame.d.ts +0 -21
- package/dist/src/foundation/ui-components/frame.js +0 -54
- package/dist/src/foundation/ui-components/index.d.ts +0 -18
- package/dist/src/foundation/ui-components/index.js +0 -18
- package/dist/src/foundation/ui-components/line-input.d.ts +0 -74
- package/dist/src/foundation/ui-components/line-input.js +0 -245
- package/dist/src/foundation/ui-components/list-view.d.ts +0 -66
- package/dist/src/foundation/ui-components/list-view.js +0 -76
- package/dist/src/foundation/ui-components/mouse.d.ts +0 -15
- package/dist/src/foundation/ui-components/mouse.js +0 -46
- package/dist/src/foundation/ui-components/scrollbar.d.ts +0 -62
- package/dist/src/foundation/ui-components/scrollbar.js +0 -102
- package/dist/src/foundation/ui-components/shortcuts.d.ts +0 -57
- package/dist/src/foundation/ui-components/shortcuts.js +0 -81
- package/dist/src/foundation/ui-components/spans.d.ts +0 -7
- package/dist/src/foundation/ui-components/spans.js +0 -59
- package/dist/src/foundation/ui-components/surface.d.ts +0 -20
- package/dist/src/foundation/ui-components/surface.js +0 -38
- package/dist/src/foundation/ui-components/text.d.ts +0 -24
- package/dist/src/foundation/ui-components/text.js +0 -123
- package/dist/src/foundation/workspace-contracts/index.d.ts +0 -2
- package/dist/src/foundation/workspace-contracts/index.js +0 -2
- package/dist/src/foundation/workspace-contracts/model.d.ts +0 -248
- package/dist/src/foundation/workspace-contracts/model.js +0 -2
- package/dist/src/foundation/workspace-contracts/validation.d.ts +0 -13
- package/dist/src/foundation/workspace-contracts/validation.js +0 -335
- package/dist/src/product-identity.d.ts +0 -37
- package/dist/src/product-identity.js +0 -150
- package/dist/src/product-identity.json +0 -99
- package/docs/manual-transparent-checkpoint.md +0 -53
- /package/dist/{src/foundation/agent-engine-contracts/domain.js → app/session-shell/paste-helper.d.ts} +0 -0
- /package/dist/{src/foundation/agent-engine-contracts/ports.js → app/session-shell/paste-text-worker.d.ts} +0 -0
- /package/dist/{src/foundation/lifecycle/commands.js → app/session-shell/paste-types.js} +0 -0
- /package/dist/{src/foundation/pi-owned-ui-integration/route-host.js → app/session-shell/response-copy-helper.d.ts} +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/capability-ports.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain-validation.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter/contracts.js → contracts/agent-engine/domain.js} +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/model.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/model.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/package-ports.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/ports.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/serialization.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/serialization.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/validation.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/validation.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/extension-ui.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/model.js +0 -0
- /package/dist/{src/foundation/presentation-contracts → contracts/presentation}/index.js +0 -0
- /package/dist/{src/features → features}/launch/development-launch.d.ts +0 -0
- /package/dist/{src/features → features}/launch/initialize-profile.d.ts +0 -0
- /package/dist/{src/features → features}/launch/initialize-profile.js +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/commands.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/launch-instance.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/launch-instance.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/artifact.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/artifact.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/contracts.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/contracts.js +0 -0
- /package/dist/{src/foundation → foundation}/release/cohort-selection.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/cohort-selection.js +0 -0
- /package/dist/{src/foundation → foundation}/release/concurrency.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/concurrency.js +0 -0
- /package/dist/{src/foundation → foundation}/release/process-cleanup.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/process-cleanup.js +0 -0
- /package/dist/{src/foundation → foundation}/release/stable-release.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/stable-release.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/theme.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/theme.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/countdown-timer.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/mermaid.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector-search.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/external-editor.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/model-search.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/public-main-entry.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/public-main-entry.js +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/contracts.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/dialog-panel.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/label.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/label.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/list-block.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/list-block.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/pane.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/pane.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/revision.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/revision.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/status-line.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/status-line.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/stepper.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/stepper.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/theme.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/theme.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/value-menu.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/value-menu.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/resolution.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/resolution.js +0 -0
|
@@ -0,0 +1,352 @@
|
|
|
1
|
+
/** Pure helpers behind pinned Pi's workflows: result wording, session-info presentation, model matching, and option shaping. */
|
|
2
|
+
import { execFile } from "node:child_process";
|
|
3
|
+
import { promisify } from "node:util";
|
|
4
|
+
import { readPinnedCommandChangelog } from "./changelog.js";
|
|
5
|
+
import { dynamicObject, finiteNumber, isRecord, stringProperty, stringValue } from "./message-values.js";
|
|
6
|
+
import { copyToClipboard } from "../startup-public.js";
|
|
7
|
+
const execFileAsync = promisify(execFile);
|
|
8
|
+
export const AUTH_REFRESH_TIMEOUT_MS = 15_000;
|
|
9
|
+
// Provenance: Pi 0.84.2 core/model-resolver.ts defaultModelPerProvider.
|
|
10
|
+
export const PINNED_DEFAULT_MODEL_BY_PROVIDER = Object.freeze({
|
|
11
|
+
"amazon-bedrock": "us.anthropic.claude-opus-4-6-v1",
|
|
12
|
+
"ant-ling": "Ring-2.6-1T",
|
|
13
|
+
anthropic: "claude-opus-4-8",
|
|
14
|
+
openai: "gpt-5.5",
|
|
15
|
+
"azure-openai-responses": "gpt-5.4",
|
|
16
|
+
"openai-codex": "gpt-5.5",
|
|
17
|
+
radius: "auto",
|
|
18
|
+
nvidia: "nvidia/nemotron-3-super-120b-a12b",
|
|
19
|
+
deepseek: "deepseek-v4-pro",
|
|
20
|
+
google: "gemini-3.1-pro-preview",
|
|
21
|
+
"google-vertex": "gemini-3.1-pro-preview",
|
|
22
|
+
"github-copilot": "gpt-5.4",
|
|
23
|
+
openrouter: "moonshotai/kimi-k2.6",
|
|
24
|
+
"vercel-ai-gateway": "zai/glm-5.1",
|
|
25
|
+
xai: "grok-4.5",
|
|
26
|
+
groq: "openai/gpt-oss-120b",
|
|
27
|
+
cerebras: "zai-glm-4.7",
|
|
28
|
+
zai: "glm-5.1",
|
|
29
|
+
"zai-coding-cn": "glm-5.1",
|
|
30
|
+
mistral: "devstral-medium-latest",
|
|
31
|
+
minimax: "MiniMax-M2.7",
|
|
32
|
+
"minimax-cn": "MiniMax-M2.7",
|
|
33
|
+
moonshotai: "kimi-k2.6",
|
|
34
|
+
"moonshotai-cn": "kimi-k2.6",
|
|
35
|
+
huggingface: "moonshotai/Kimi-K2.6",
|
|
36
|
+
fireworks: "accounts/fireworks/models/kimi-k2p6",
|
|
37
|
+
together: "moonshotai/Kimi-K2.6",
|
|
38
|
+
baseten: "zai-org/GLM-5.2",
|
|
39
|
+
opencode: "kimi-k2.6",
|
|
40
|
+
"opencode-go": "kimi-k2.6",
|
|
41
|
+
"kimi-coding": "kimi-for-coding",
|
|
42
|
+
"cloudflare-workers-ai": "@cf/moonshotai/kimi-k2.6",
|
|
43
|
+
"cloudflare-ai-gateway": "workers-ai/@cf/moonshotai/kimi-k2.6",
|
|
44
|
+
"qwen-token-plan": "qwen3.7-max",
|
|
45
|
+
"qwen-token-plan-cn": "qwen3.7-max",
|
|
46
|
+
"qwen-token-plan-individual": "qwen3.8-max",
|
|
47
|
+
xiaomi: "mimo-v2.5-pro",
|
|
48
|
+
"xiaomi-token-plan-cn": "mimo-v2.5-pro",
|
|
49
|
+
"xiaomi-token-plan-ams": "mimo-v2.5-pro",
|
|
50
|
+
"xiaomi-token-plan-sgp": "mimo-v2.5-pro",
|
|
51
|
+
});
|
|
52
|
+
export function pinnedSessionInfoPresentation(value, sessionName, entries, modelRuntime) {
|
|
53
|
+
const stats = isRecord(value) ? value : {};
|
|
54
|
+
const tokens = dynamicObject(stats, "tokens");
|
|
55
|
+
return {
|
|
56
|
+
kind: "session-info",
|
|
57
|
+
...(sessionName === undefined ? {} : { sessionName }),
|
|
58
|
+
stats: {
|
|
59
|
+
...(stringProperty(stats, "sessionFile") === undefined ? {} : { sessionFile: stringProperty(stats, "sessionFile") }),
|
|
60
|
+
sessionId: stringProperty(stats, "sessionId") ?? "unknown",
|
|
61
|
+
userMessages: finiteNumber(stats.userMessages),
|
|
62
|
+
assistantMessages: finiteNumber(stats.assistantMessages),
|
|
63
|
+
toolCalls: finiteNumber(stats.toolCalls),
|
|
64
|
+
toolResults: finiteNumber(stats.toolResults),
|
|
65
|
+
totalMessages: finiteNumber(stats.totalMessages),
|
|
66
|
+
tokens: {
|
|
67
|
+
input: finiteNumber(tokens.input),
|
|
68
|
+
output: finiteNumber(tokens.output),
|
|
69
|
+
cacheRead: finiteNumber(tokens.cacheRead),
|
|
70
|
+
cacheWrite: finiteNumber(tokens.cacheWrite),
|
|
71
|
+
total: finiteNumber(tokens.total),
|
|
72
|
+
},
|
|
73
|
+
cost: finiteNumber(stats.cost),
|
|
74
|
+
},
|
|
75
|
+
cacheWaste: pinnedCacheWaste(entries, modelRuntime),
|
|
76
|
+
usageBreakdown: pinnedUsageCostBreakdown(entries),
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
export function pinnedUsageCostBreakdown(entries) {
|
|
80
|
+
const totals = new Map();
|
|
81
|
+
for (const entry of entries) {
|
|
82
|
+
if (!isRecord(entry))
|
|
83
|
+
continue;
|
|
84
|
+
let key;
|
|
85
|
+
let usage;
|
|
86
|
+
const message = dynamicObject(entry, "message");
|
|
87
|
+
if (entry.type === "message" && message.role === "assistant") {
|
|
88
|
+
const provider = stringProperty(message, "provider");
|
|
89
|
+
const model = stringProperty(message, "responseModel") ?? stringProperty(message, "model");
|
|
90
|
+
if (provider && model)
|
|
91
|
+
key = `${provider}/${model}`;
|
|
92
|
+
usage = dynamicObject(message, "usage");
|
|
93
|
+
}
|
|
94
|
+
else if (entry.type === "message" && message.role === "toolResult" && isRecord(message.usage)) {
|
|
95
|
+
key = "Tools/summaries";
|
|
96
|
+
usage = message.usage;
|
|
97
|
+
}
|
|
98
|
+
else if ((entry.type === "branch_summary" || entry.type === "compaction") && isRecord(entry.usage)) {
|
|
99
|
+
key = "Tools/summaries";
|
|
100
|
+
usage = entry.usage;
|
|
101
|
+
}
|
|
102
|
+
if (!key || !usage)
|
|
103
|
+
continue;
|
|
104
|
+
const cost = finiteNumber(dynamicObject(usage, "cost").total);
|
|
105
|
+
const tokens = finiteNumber(usage.input) + finiteNumber(usage.output)
|
|
106
|
+
+ finiteNumber(usage.cacheRead) + finiteNumber(usage.cacheWrite);
|
|
107
|
+
const current = totals.get(key) ?? { cost: 0, tokens: 0 };
|
|
108
|
+
current.cost += cost;
|
|
109
|
+
current.tokens += tokens;
|
|
110
|
+
totals.set(key, current);
|
|
111
|
+
}
|
|
112
|
+
return [...totals].map(([key, total]) => ({ key, ...total }))
|
|
113
|
+
.filter(entry => entry.cost > 0 || entry.tokens > 0)
|
|
114
|
+
.sort((a, b) => b.cost - a.cost);
|
|
115
|
+
}
|
|
116
|
+
export function pinnedCacheWaste(entries, modelRuntime) {
|
|
117
|
+
let previous;
|
|
118
|
+
const totals = { missedTokens: 0, missedCost: 0, missCount: 0 };
|
|
119
|
+
for (const entry of entries) {
|
|
120
|
+
if (!isRecord(entry))
|
|
121
|
+
continue;
|
|
122
|
+
if (entry.type === "compaction" || entry.type === "branch_summary") {
|
|
123
|
+
previous = undefined;
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
const message = dynamicObject(entry, "message");
|
|
127
|
+
if (entry.type !== "message" || message.role !== "assistant")
|
|
128
|
+
continue;
|
|
129
|
+
const usage = dynamicObject(message, "usage");
|
|
130
|
+
const input = finiteNumber(usage.input);
|
|
131
|
+
const cacheRead = finiteNumber(usage.cacheRead);
|
|
132
|
+
const cacheWrite = finiteNumber(usage.cacheWrite);
|
|
133
|
+
const promptTokens = input + cacheRead + cacheWrite;
|
|
134
|
+
if (previous && promptTokens > 0 && (cacheRead + cacheWrite > 0 || previous.reportedCache)) {
|
|
135
|
+
const missedTokens = Math.min(previous.promptTokens, promptTokens) - cacheRead;
|
|
136
|
+
if (missedTokens > 1024) {
|
|
137
|
+
const cost = dynamicObject(usage, "cost");
|
|
138
|
+
const paidTokens = input + cacheWrite;
|
|
139
|
+
const paidRate = paidTokens > 0 ? (finiteNumber(cost.input) + finiteNumber(cost.cacheWrite)) / paidTokens : 0;
|
|
140
|
+
const provider = stringProperty(message, "provider") ?? "";
|
|
141
|
+
const modelId = stringProperty(message, "model") ?? "";
|
|
142
|
+
const model = modelRuntime.getModel(provider, modelId);
|
|
143
|
+
const modelCost = dynamicObject(dynamicObject(model, "cost"));
|
|
144
|
+
const readRate = cacheRead > 0
|
|
145
|
+
? finiteNumber(cost.cacheRead) / cacheRead
|
|
146
|
+
: finiteNumber(modelCost.cacheRead) / 1_000_000;
|
|
147
|
+
totals.missedTokens += missedTokens;
|
|
148
|
+
totals.missedCost += missedTokens * Math.max(0, paidRate - readRate);
|
|
149
|
+
totals.missCount += 1;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (promptTokens > 0) {
|
|
153
|
+
const provider = stringProperty(message, "provider") ?? "";
|
|
154
|
+
const model = stringProperty(message, "model") ?? "";
|
|
155
|
+
previous = {
|
|
156
|
+
promptTokens,
|
|
157
|
+
modelKey: `${provider}/${model}`,
|
|
158
|
+
timestamp: finiteNumber(message.timestamp),
|
|
159
|
+
reportedCache: (previous?.reportedCache ?? false) || cacheRead + cacheWrite > 0,
|
|
160
|
+
};
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
return totals;
|
|
164
|
+
}
|
|
165
|
+
export function defaultWorkflowHost() {
|
|
166
|
+
return {
|
|
167
|
+
copyText: copyToClipboard,
|
|
168
|
+
async runCommand(command, arguments_, options) {
|
|
169
|
+
const result = await execFileAsync(command, [...arguments_], { encoding: "utf8", signal: options?.signal });
|
|
170
|
+
return { stdout: result.stdout, stderr: result.stderr };
|
|
171
|
+
},
|
|
172
|
+
readChangelog: readPinnedCommandChangelog,
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
export function workflowLoginNotification(event) {
|
|
176
|
+
if (!isRecord(event))
|
|
177
|
+
return undefined;
|
|
178
|
+
if (event.type === "auth_url") {
|
|
179
|
+
const url = stringProperty(event, "url");
|
|
180
|
+
if (!url)
|
|
181
|
+
return undefined;
|
|
182
|
+
const instructions = stringProperty(event, "instructions");
|
|
183
|
+
return { type: "auth_url", url, ...(instructions === undefined ? {} : { instructions }) };
|
|
184
|
+
}
|
|
185
|
+
if (event.type === "device_code") {
|
|
186
|
+
const verificationUri = stringProperty(event, "verificationUri");
|
|
187
|
+
const userCode = stringProperty(event, "userCode");
|
|
188
|
+
return verificationUri && userCode ? { type: "device_code", verificationUri, userCode } : undefined;
|
|
189
|
+
}
|
|
190
|
+
const message = stringProperty(event, "message");
|
|
191
|
+
if (!message)
|
|
192
|
+
return undefined;
|
|
193
|
+
if (event.type === "info") {
|
|
194
|
+
const links = Array.isArray(event.links) ? event.links.filter(isRecord).flatMap(link => {
|
|
195
|
+
const url = stringProperty(link, "url");
|
|
196
|
+
if (!url)
|
|
197
|
+
return [];
|
|
198
|
+
const label = stringProperty(link, "label");
|
|
199
|
+
return [{ ...(label === undefined ? {} : { label }), url }];
|
|
200
|
+
}) : [];
|
|
201
|
+
return { type: "info", message, ...(links.length === 0 ? {} : { links }) };
|
|
202
|
+
}
|
|
203
|
+
return { type: event.type === "waiting" ? "waiting" : "progress", message };
|
|
204
|
+
}
|
|
205
|
+
export function workflowResult(command, outcome, message, detail, messageKind, messages) {
|
|
206
|
+
return {
|
|
207
|
+
command,
|
|
208
|
+
outcome,
|
|
209
|
+
message,
|
|
210
|
+
...(detail === undefined ? {} : { detail }),
|
|
211
|
+
...(messageKind === undefined ? {} : { messageKind }),
|
|
212
|
+
...(messages === undefined ? {} : { messages: Object.freeze([...messages]) }),
|
|
213
|
+
};
|
|
214
|
+
}
|
|
215
|
+
export function workflowConfirmation(command, message, detail) {
|
|
216
|
+
return {
|
|
217
|
+
command,
|
|
218
|
+
outcome: "requires-confirmation",
|
|
219
|
+
message,
|
|
220
|
+
...(detail === undefined ? {} : { detail }),
|
|
221
|
+
selectorTitle: "Confirm",
|
|
222
|
+
options: [
|
|
223
|
+
{ id: "yes", label: "Yes" },
|
|
224
|
+
{ id: "no", label: "No" },
|
|
225
|
+
],
|
|
226
|
+
};
|
|
227
|
+
}
|
|
228
|
+
export function errorMessage(error, fallback) {
|
|
229
|
+
return error instanceof Error ? error.message : fallback;
|
|
230
|
+
}
|
|
231
|
+
export function shareCommandFailureDetail(error) {
|
|
232
|
+
// Compatibility: Pi reports a failed child's stderr, not execFile's command wrapper.
|
|
233
|
+
if (isRecord(error) && (typeof error.code === "number" || typeof error.signal === "string") && typeof error.stderr === "string") {
|
|
234
|
+
return error.stderr.trim() || "Unknown error";
|
|
235
|
+
}
|
|
236
|
+
return errorMessage(error, "Unknown error");
|
|
237
|
+
}
|
|
238
|
+
export function commandMissing(error) {
|
|
239
|
+
return isRecord(error) && error.code === "ENOENT";
|
|
240
|
+
}
|
|
241
|
+
export function isAbortError(error) {
|
|
242
|
+
return isRecord(error) && (error.name === "AbortError" || error.code === "ABORT_ERR");
|
|
243
|
+
}
|
|
244
|
+
export function shareViewerUrl(gistId) {
|
|
245
|
+
const baseUrl = process.env.PI_SHARE_VIEWER_URL || "https://pi.dev/session/";
|
|
246
|
+
return `${baseUrl}#${gistId}`;
|
|
247
|
+
}
|
|
248
|
+
export function workflowOptions(value, idKey, labelKey) {
|
|
249
|
+
if (!Array.isArray(value))
|
|
250
|
+
return [];
|
|
251
|
+
return value.filter(isRecord).flatMap(item => {
|
|
252
|
+
const id = stringProperty(item, idKey);
|
|
253
|
+
if (!id)
|
|
254
|
+
return [];
|
|
255
|
+
return [{ id, label: stringProperty(item, labelKey) ?? id }];
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
export function sessionInfoOptions(value) {
|
|
259
|
+
return value.filter(isRecord).flatMap(info => {
|
|
260
|
+
const path = stringProperty(info, "path");
|
|
261
|
+
if (!path)
|
|
262
|
+
return [];
|
|
263
|
+
const modified = info.modified instanceof Date ? info.modified.toISOString() : stringProperty(info, "modified") ?? "unknown time";
|
|
264
|
+
const messageCount = typeof info.messageCount === "number" ? info.messageCount : 0;
|
|
265
|
+
return [{
|
|
266
|
+
id: path,
|
|
267
|
+
label: stringProperty(info, "name") ?? stringProperty(info, "firstMessage") ?? stringProperty(info, "id") ?? path,
|
|
268
|
+
description: `${messageCount} messages · ${modified}`,
|
|
269
|
+
}];
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
export function pathArgument(value) {
|
|
273
|
+
if (!value)
|
|
274
|
+
return undefined;
|
|
275
|
+
const quote = value[0];
|
|
276
|
+
if (quote === '"' || quote === "'") {
|
|
277
|
+
const closing = value.indexOf(quote, 1);
|
|
278
|
+
return closing < 0 ? undefined : value.slice(1, closing);
|
|
279
|
+
}
|
|
280
|
+
return value.split(/\s/, 1)[0] || undefined;
|
|
281
|
+
}
|
|
282
|
+
export function pinnedHotkeySummary() {
|
|
283
|
+
return [
|
|
284
|
+
"Enter: send message · Alt+Enter: queue follow-up",
|
|
285
|
+
"Escape: cancel/abort · Ctrl+C: clear/exit · Ctrl+D: exit when empty",
|
|
286
|
+
"Shift+Tab: cycle thinking · Ctrl+P/Shift+Ctrl+P: cycle models · Ctrl+L: select model",
|
|
287
|
+
"Ctrl+O: expand tools · Ctrl+T: toggle thinking · Ctrl+X: copy message",
|
|
288
|
+
"Alt+Up: restore queued messages · /: commands · !/!!: bash",
|
|
289
|
+
].join("\n");
|
|
290
|
+
}
|
|
291
|
+
export function scopedModelRecords(modelRuntime) {
|
|
292
|
+
return modelRuntime.getAvailableSnapshot().map(model => ({
|
|
293
|
+
descriptor: { provider: model.provider, id: model.id, name: model.name ?? model.id },
|
|
294
|
+
model,
|
|
295
|
+
}));
|
|
296
|
+
}
|
|
297
|
+
export function scopedModelReference(value) {
|
|
298
|
+
if (!isRecord(value) || !isRecord(value.model))
|
|
299
|
+
return undefined;
|
|
300
|
+
const provider = stringValue(value.model.provider);
|
|
301
|
+
const id = stringValue(value.model.id);
|
|
302
|
+
return provider && id ? `${provider}/${id}` : undefined;
|
|
303
|
+
}
|
|
304
|
+
export function resolveConfiguredModelIds(patterns, models) {
|
|
305
|
+
const references = models.map(item => `${item.descriptor.provider}/${item.descriptor.id}`);
|
|
306
|
+
const resolved = [];
|
|
307
|
+
for (const pattern of patterns) {
|
|
308
|
+
const thinkingSuffix = /:(?:off|minimal|low|medium|high|xhigh)$/.exec(pattern);
|
|
309
|
+
const modelPattern = thinkingSuffix === null ? pattern : pattern.slice(0, -thinkingSuffix[0].length);
|
|
310
|
+
const matcher = wildcardMatcher(modelPattern);
|
|
311
|
+
const matches = references.filter((reference, index) => matcher.test(reference) || matcher.test(models[index]?.descriptor.id ?? ""));
|
|
312
|
+
if (matches.length === 0) {
|
|
313
|
+
resolved.push(pattern);
|
|
314
|
+
}
|
|
315
|
+
else {
|
|
316
|
+
for (const match of matches)
|
|
317
|
+
if (!resolved.includes(match))
|
|
318
|
+
resolved.push(match);
|
|
319
|
+
}
|
|
320
|
+
}
|
|
321
|
+
return resolved;
|
|
322
|
+
}
|
|
323
|
+
export function wildcardMatcher(pattern) {
|
|
324
|
+
let source = "";
|
|
325
|
+
for (const character of pattern) {
|
|
326
|
+
if (character === "*")
|
|
327
|
+
source += ".*";
|
|
328
|
+
else if (character === "?")
|
|
329
|
+
source += ".";
|
|
330
|
+
else
|
|
331
|
+
source += character.replace(/[\\^$.*+?()[\]{}|]/g, "\\$&");
|
|
332
|
+
}
|
|
333
|
+
return new RegExp(`^${source}$`, "i");
|
|
334
|
+
}
|
|
335
|
+
export function isUnknownModel(value) {
|
|
336
|
+
return isRecord(value)
|
|
337
|
+
&& value.provider === "unknown"
|
|
338
|
+
&& value.id === "unknown"
|
|
339
|
+
&& value.api === "unknown";
|
|
340
|
+
}
|
|
341
|
+
export function findExactWorkflowModel(reference, models) {
|
|
342
|
+
const normalized = reference.trim().toLowerCase();
|
|
343
|
+
const canonical = models.filter(model => {
|
|
344
|
+
const provider = stringProperty(model, "provider");
|
|
345
|
+
const id = stringProperty(model, "id");
|
|
346
|
+
return provider !== undefined && id !== undefined && `${provider}/${id}`.toLowerCase() === normalized;
|
|
347
|
+
});
|
|
348
|
+
if (canonical.length === 1)
|
|
349
|
+
return canonical[0];
|
|
350
|
+
const bare = models.filter(model => stringProperty(model, "id")?.toLowerCase() === normalized);
|
|
351
|
+
return bare.length === 1 ? bare[0] : undefined;
|
|
352
|
+
}
|
|
@@ -0,0 +1,275 @@
|
|
|
1
|
+
import type { SessionInfo } from "../startup-public.js";
|
|
2
|
+
export declare const PINNED_PI_WORKFLOW_COMMAND_NAMES: readonly ["settings", "model", "tree", "thinking", "scoped-models", "export", "import", "share", "copy", "name", "session", "changelog", "hotkeys", "fork", "clone", "trust", "login", "logout", "new", "compact", "resume", "reload", "quit"];
|
|
3
|
+
export declare const PINNED_PI_HIDDEN_COMMAND_NAMES: readonly ["debug", "arminsayshi", "dementedelves"];
|
|
4
|
+
export type PiWorkflowCommandName = typeof PINNED_PI_WORKFLOW_COMMAND_NAMES[number];
|
|
5
|
+
export type PiHiddenWorkflowCommandName = typeof PINNED_PI_HIDDEN_COMMAND_NAMES[number];
|
|
6
|
+
/** The one bare-A1 model command; it replaces the pinned `model` and `scoped-models` routes there. */
|
|
7
|
+
export declare const OWNED_MODELS_COMMAND_NAME: "models";
|
|
8
|
+
export type OwnedModelsCommandName = typeof OWNED_MODELS_COMMAND_NAME;
|
|
9
|
+
export type OwnedWorkflowCommandName = Exclude<PiWorkflowCommandName, "model" | "scoped-models"> | OwnedModelsCommandName;
|
|
10
|
+
/** Bare A1's advertised command catalog: the pinned catalog with `models` in place of `model` and `scoped-models`. */
|
|
11
|
+
export declare const OWNED_WORKFLOW_COMMAND_NAMES: readonly OwnedWorkflowCommandName[];
|
|
12
|
+
export type PiProductMode = "bare" | "comparison";
|
|
13
|
+
/** The advertised command catalog for a product mode; hidden routes are shared by both. */
|
|
14
|
+
export declare function workflowCommandNames(productMode: PiProductMode): readonly (PiWorkflowCommandName | OwnedModelsCommandName)[];
|
|
15
|
+
export type PiWorkflowRoute = PiWorkflowCommandName | PiHiddenWorkflowCommandName | OwnedModelsCommandName;
|
|
16
|
+
export declare const PINNED_PI_SETTINGS_CALLBACKS: readonly ["onAutoCompactChange", "onShowImagesChange", "onImageWidthCellsChange", "onAutoResizeImagesChange", "onBlockImagesChange", "onEnableSkillCommandsChange", "onSteeringModeChange", "onFollowUpModeChange", "onTransportChange", "onHttpIdleTimeoutMsChange", "onModelThinkingLevelChange", "onModelThinkingLevelRemove", "onThemeChange", "onThemePreview", "onHideThinkingBlockChange", "onMermaidRenderingModeChange", "onShowCacheMissNoticesChange", "onCollapseChangelogChange", "onEnableInstallTelemetryChange", "onQuietStartupChange", "onDefaultProjectTrustChange", "onDoubleEscapeActionChange", "onTreeFilterModeChange", "onShowHardwareCursorChange", "onEditorPaddingXChange", "onOutputPadChange", "onAutocompleteMaxVisibleChange", "onClearOnShrinkChange", "onShowTerminalProgressChange", "onTuiModeChange", "onFullscreenExitOutputChange", "onFullscreenScrollbarChange", "onFullscreenCopyOnSelectChange", "onWarningsChange", "onCancel"];
|
|
17
|
+
export type PiPinnedSettingsCallback = typeof PINNED_PI_SETTINGS_CALLBACKS[number];
|
|
18
|
+
export interface PiPinnedSettingsSnapshot {
|
|
19
|
+
readonly autoCompact: boolean;
|
|
20
|
+
readonly showImages: boolean;
|
|
21
|
+
readonly imageWidthCells: number;
|
|
22
|
+
readonly autoResizeImages: boolean;
|
|
23
|
+
readonly blockImages: boolean;
|
|
24
|
+
readonly enableSkillCommands: boolean;
|
|
25
|
+
readonly steeringMode: "all" | "one-at-a-time";
|
|
26
|
+
readonly followUpMode: "all" | "one-at-a-time";
|
|
27
|
+
readonly transport: "sse" | "websocket" | "websocket-cached" | "auto";
|
|
28
|
+
readonly httpIdleTimeoutMs: number;
|
|
29
|
+
readonly thinkingLevel: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
|
30
|
+
readonly availableThinkingLevels: readonly ("off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max")[];
|
|
31
|
+
/** The stored global default the selector offers to restore; the session's level may differ. */
|
|
32
|
+
readonly defaultThinkingLevel: "off" | "minimal" | "low" | "medium" | "high" | "xhigh" | "max";
|
|
33
|
+
/** Per-model thinking overrides keyed `provider/modelId`. */
|
|
34
|
+
readonly modelThinkingLevels: Readonly<Record<string, string>>;
|
|
35
|
+
/** `provider/modelId` of the persisted default model, or the engine's "not set" wording. */
|
|
36
|
+
readonly defaultModel: string;
|
|
37
|
+
readonly currentModel?: unknown;
|
|
38
|
+
readonly availableDefaultModels: readonly unknown[];
|
|
39
|
+
readonly currentTheme: string;
|
|
40
|
+
readonly terminalTheme: "dark" | "light";
|
|
41
|
+
readonly availableThemes: readonly string[];
|
|
42
|
+
readonly hideThinkingBlock: boolean;
|
|
43
|
+
readonly mermaidRenderingMode: "off" | "final" | "streaming";
|
|
44
|
+
readonly showCacheMissNotices: boolean;
|
|
45
|
+
readonly collapseChangelog: boolean;
|
|
46
|
+
readonly enableInstallTelemetry: boolean;
|
|
47
|
+
readonly doubleEscapeAction: "fork" | "tree" | "none";
|
|
48
|
+
readonly treeFilterMode: "default" | "no-tools" | "user-only" | "labeled-only" | "all";
|
|
49
|
+
readonly showHardwareCursor: boolean;
|
|
50
|
+
readonly editorPaddingX: number;
|
|
51
|
+
readonly outputPad: 0 | 1;
|
|
52
|
+
readonly autocompleteMaxVisible: number;
|
|
53
|
+
readonly quietStartup: boolean;
|
|
54
|
+
readonly defaultProjectTrust: "ask" | "always" | "never";
|
|
55
|
+
readonly clearOnShrink: boolean;
|
|
56
|
+
readonly showTerminalProgress: boolean;
|
|
57
|
+
readonly tuiMode: "regular" | "fullscreen";
|
|
58
|
+
readonly fullscreenExitOutput: "transcript" | "resume-hint";
|
|
59
|
+
readonly fullscreenScrollbar: "hidden" | "auto" | "always";
|
|
60
|
+
readonly fullscreenCopyOnSelect: boolean;
|
|
61
|
+
readonly warnings: {
|
|
62
|
+
readonly anthropicExtraUsage?: boolean;
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
export interface PiWorkflowOption {
|
|
66
|
+
readonly id: string;
|
|
67
|
+
readonly label: string;
|
|
68
|
+
readonly description?: string;
|
|
69
|
+
}
|
|
70
|
+
export interface PiAuthenticationProviderStatus {
|
|
71
|
+
readonly type: "oauth" | "api_key";
|
|
72
|
+
readonly source?: string;
|
|
73
|
+
}
|
|
74
|
+
export interface PiAuthenticationProviderOption extends PiWorkflowOption {
|
|
75
|
+
readonly providerId: string;
|
|
76
|
+
readonly authType: "oauth" | "api_key";
|
|
77
|
+
readonly status?: PiAuthenticationProviderStatus;
|
|
78
|
+
}
|
|
79
|
+
export interface PiWorkflowRequest {
|
|
80
|
+
readonly command: PiWorkflowRoute;
|
|
81
|
+
readonly argument: string;
|
|
82
|
+
readonly selection?: string;
|
|
83
|
+
/** For the model route: also persist the selection as the default model. The bare `models` route always persists. */
|
|
84
|
+
readonly persist?: boolean;
|
|
85
|
+
readonly confirmed?: boolean;
|
|
86
|
+
/** Recovery cwd selected after an import/resume source cwd is unavailable. */
|
|
87
|
+
readonly cwdOverride?: string;
|
|
88
|
+
/** Cancellation for an owned operation surface such as `/share`. */
|
|
89
|
+
readonly signal?: AbortSignal;
|
|
90
|
+
readonly treeSummary?: {
|
|
91
|
+
readonly summarize: boolean;
|
|
92
|
+
readonly customInstructions?: string;
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
export type PiWorkflowOutcome = "completed" | "cancelled" | "failed" | "requires-selection" | "requires-confirmation";
|
|
96
|
+
export interface PiSessionInfoPresentation {
|
|
97
|
+
readonly kind: "session-info";
|
|
98
|
+
readonly sessionName?: string;
|
|
99
|
+
readonly stats: {
|
|
100
|
+
readonly sessionFile?: string;
|
|
101
|
+
readonly sessionId: string;
|
|
102
|
+
readonly userMessages: number;
|
|
103
|
+
readonly assistantMessages: number;
|
|
104
|
+
readonly toolCalls: number;
|
|
105
|
+
readonly toolResults: number;
|
|
106
|
+
readonly totalMessages: number;
|
|
107
|
+
readonly tokens: {
|
|
108
|
+
readonly input: number;
|
|
109
|
+
readonly output: number;
|
|
110
|
+
readonly cacheRead: number;
|
|
111
|
+
readonly cacheWrite: number;
|
|
112
|
+
readonly total: number;
|
|
113
|
+
};
|
|
114
|
+
readonly cost: number;
|
|
115
|
+
};
|
|
116
|
+
readonly cacheWaste: {
|
|
117
|
+
readonly missedTokens: number;
|
|
118
|
+
readonly missedCost: number;
|
|
119
|
+
readonly missCount: number;
|
|
120
|
+
};
|
|
121
|
+
readonly usageBreakdown: readonly {
|
|
122
|
+
readonly key: string;
|
|
123
|
+
readonly cost: number;
|
|
124
|
+
readonly tokens: number;
|
|
125
|
+
}[];
|
|
126
|
+
}
|
|
127
|
+
export type PiWorkflowPresentation = PiSessionInfoPresentation;
|
|
128
|
+
export type PiWorkflowMessageKind = "status" | "warning" | "error" | "accent" | "silent";
|
|
129
|
+
export interface PiWorkflowMessage {
|
|
130
|
+
readonly kind: Exclude<PiWorkflowMessageKind, "silent">;
|
|
131
|
+
readonly message: string;
|
|
132
|
+
}
|
|
133
|
+
export interface PiWorkflowResult {
|
|
134
|
+
readonly command: PiWorkflowRoute;
|
|
135
|
+
readonly outcome: PiWorkflowOutcome;
|
|
136
|
+
readonly message: string;
|
|
137
|
+
/** Explicit presentation semantics; never inferred from message prefixes. */
|
|
138
|
+
readonly messageKind?: PiWorkflowMessageKind;
|
|
139
|
+
/** Ordered messages for truthful partial-success outcomes. */
|
|
140
|
+
readonly messages?: readonly PiWorkflowMessage[];
|
|
141
|
+
readonly detail?: string;
|
|
142
|
+
readonly selectorTitle?: string;
|
|
143
|
+
readonly options?: readonly PiWorkflowOption[];
|
|
144
|
+
readonly presentation?: PiWorkflowPresentation;
|
|
145
|
+
}
|
|
146
|
+
export interface PiWorkflowAutocompleteCommand {
|
|
147
|
+
readonly name: string;
|
|
148
|
+
readonly description?: string;
|
|
149
|
+
readonly argumentHint?: string;
|
|
150
|
+
readonly argumentOptions?: readonly PiWorkflowOption[];
|
|
151
|
+
readonly source: "builtin" | "prompt" | "skill" | "extension";
|
|
152
|
+
}
|
|
153
|
+
export interface PiWorkflowInteractionRequest {
|
|
154
|
+
readonly type: "text" | "secret" | "manual-code" | "select";
|
|
155
|
+
readonly message: string;
|
|
156
|
+
readonly placeholder?: string;
|
|
157
|
+
readonly options?: readonly {
|
|
158
|
+
readonly id: string;
|
|
159
|
+
readonly label: string;
|
|
160
|
+
}[];
|
|
161
|
+
}
|
|
162
|
+
export interface PiWorkflowLoginStart {
|
|
163
|
+
readonly providerId: string;
|
|
164
|
+
readonly providerName: string;
|
|
165
|
+
readonly authType: "oauth" | "api_key";
|
|
166
|
+
}
|
|
167
|
+
export type PiWorkflowLoginNotification = {
|
|
168
|
+
readonly type: "auth_url";
|
|
169
|
+
readonly url: string;
|
|
170
|
+
readonly instructions?: string;
|
|
171
|
+
} | {
|
|
172
|
+
readonly type: "device_code";
|
|
173
|
+
readonly verificationUri: string;
|
|
174
|
+
readonly userCode: string;
|
|
175
|
+
} | {
|
|
176
|
+
readonly type: "info";
|
|
177
|
+
readonly message: string;
|
|
178
|
+
readonly links?: readonly {
|
|
179
|
+
readonly label?: string;
|
|
180
|
+
readonly url: string;
|
|
181
|
+
}[];
|
|
182
|
+
} | {
|
|
183
|
+
readonly type: "waiting" | "progress";
|
|
184
|
+
readonly message: string;
|
|
185
|
+
};
|
|
186
|
+
export interface PiWorkflowInteractionHost {
|
|
187
|
+
startLogin?(request: PiWorkflowLoginStart): void;
|
|
188
|
+
prompt(request: PiWorkflowInteractionRequest): Promise<string | null>;
|
|
189
|
+
notify(event: PiWorkflowLoginNotification): void;
|
|
190
|
+
/** Deliver a post-login status or warning after the authentication dialog closes. */
|
|
191
|
+
publish?(message: PiWorkflowMessage): void;
|
|
192
|
+
finishLogin?(): void;
|
|
193
|
+
}
|
|
194
|
+
export interface PiWorkflowHost {
|
|
195
|
+
copyText(text: string): Promise<void>;
|
|
196
|
+
runCommand(command: string, arguments_: readonly string[], options?: {
|
|
197
|
+
readonly signal?: AbortSignal;
|
|
198
|
+
}): Promise<{
|
|
199
|
+
readonly stdout: string;
|
|
200
|
+
readonly stderr: string;
|
|
201
|
+
}>;
|
|
202
|
+
readChangelog(sinceVersion?: string): Promise<string>;
|
|
203
|
+
}
|
|
204
|
+
export interface PiBashWorkflowResult {
|
|
205
|
+
readonly command: string;
|
|
206
|
+
readonly output: string;
|
|
207
|
+
readonly exitCode: number | undefined;
|
|
208
|
+
readonly cancelled: boolean;
|
|
209
|
+
readonly truncated: boolean;
|
|
210
|
+
readonly excludeFromContext: boolean;
|
|
211
|
+
}
|
|
212
|
+
export interface PiScopedModelDescriptor {
|
|
213
|
+
readonly provider: string;
|
|
214
|
+
readonly id: string;
|
|
215
|
+
readonly name: string;
|
|
216
|
+
}
|
|
217
|
+
export interface PiScopedModelsContext {
|
|
218
|
+
readonly models: readonly PiScopedModelDescriptor[];
|
|
219
|
+
readonly enabledModelIds: readonly string[] | null;
|
|
220
|
+
}
|
|
221
|
+
export interface PiProjectTrustUpdate {
|
|
222
|
+
readonly path: string;
|
|
223
|
+
readonly decision: boolean | null;
|
|
224
|
+
}
|
|
225
|
+
export interface PiProjectTrustContext {
|
|
226
|
+
readonly cwd: string;
|
|
227
|
+
readonly savedDecision: {
|
|
228
|
+
readonly path: string;
|
|
229
|
+
readonly decision: boolean;
|
|
230
|
+
} | null;
|
|
231
|
+
readonly projectTrusted: boolean;
|
|
232
|
+
readonly trustOptions: readonly {
|
|
233
|
+
readonly label: string;
|
|
234
|
+
readonly trusted: boolean;
|
|
235
|
+
readonly updates: readonly PiProjectTrustUpdate[];
|
|
236
|
+
readonly savedPath?: string;
|
|
237
|
+
}[];
|
|
238
|
+
}
|
|
239
|
+
export interface PiTreeSelectorContext {
|
|
240
|
+
readonly tree: readonly unknown[];
|
|
241
|
+
readonly currentLeafId: string | null;
|
|
242
|
+
readonly filterMode: "default" | "no-tools" | "user-only" | "labeled-only" | "all";
|
|
243
|
+
readonly skipSummaryPrompt: boolean;
|
|
244
|
+
readonly appendLabelChange: (entryId: string, label: string | undefined) => void;
|
|
245
|
+
}
|
|
246
|
+
export interface PiSessionResumeMetadata {
|
|
247
|
+
readonly sessionId: string;
|
|
248
|
+
readonly sessionDir: string;
|
|
249
|
+
readonly usesDefaultSessionDir: boolean;
|
|
250
|
+
}
|
|
251
|
+
export interface PiSessionSelectorContext {
|
|
252
|
+
readonly currentSessionFilePath: string | undefined;
|
|
253
|
+
readonly loadCurrentSessions: (onProgress?: (loaded: number, total: number) => void) => Promise<SessionInfo[]>;
|
|
254
|
+
readonly loadAllSessions: (onProgress?: (loaded: number, total: number) => void) => Promise<SessionInfo[]>;
|
|
255
|
+
readonly renameSession: (sessionFilePath: string, nextName: string | undefined) => Promise<void>;
|
|
256
|
+
}
|
|
257
|
+
export interface PiScopedModelsRefreshResult extends PiScopedModelsContext {
|
|
258
|
+
readonly status: string;
|
|
259
|
+
readonly statusKind: "success" | "warning";
|
|
260
|
+
}
|
|
261
|
+
/** What the bare-A1 Models dialog reads: the authenticated catalog and the explicit session and persisted scopes, kept apart. */
|
|
262
|
+
export interface PiModelsContext {
|
|
263
|
+
readonly models: readonly PiScopedModelDescriptor[];
|
|
264
|
+
/** `provider/id` of the active model, or null before one is set. */
|
|
265
|
+
readonly activeModelId: string | null;
|
|
266
|
+
/** Ordered `provider/id` references the session cycles; empty is the all-model fallback, not an explicit full scope. */
|
|
267
|
+
readonly sessionScopeIds: readonly string[];
|
|
268
|
+
/** The persisted `enabledModels` patterns resolved against the catalog, in order; unmatched patterns stay verbatim. */
|
|
269
|
+
readonly persistedScopeIds: readonly string[];
|
|
270
|
+
}
|
|
271
|
+
export interface PiModelsRefreshResult {
|
|
272
|
+
readonly models: readonly PiScopedModelDescriptor[];
|
|
273
|
+
readonly status: string;
|
|
274
|
+
readonly statusKind: "success" | "warning";
|
|
275
|
+
}
|