@timurproko/a1 0.2.6 → 0.2.7-dev.1222
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 +41 -3
- package/bin/automatic-update.js +7 -0
- package/bin/cli.js +4 -0
- package/bin/guardian.js +5 -0
- package/bin/tab-launch-context.d.ts +27 -0
- package/bin/tab-launch-context.js +94 -0
- package/bin/ui.js +107 -59
- package/dist/app/session-shell/clipboard-diagnostics.js +1 -1
- package/dist/app/session-shell/dialog-coordinator.d.ts +42 -0
- package/dist/app/session-shell/dialog-coordinator.js +133 -0
- package/dist/app/session-shell/dock-chrome.d.ts +34 -0
- package/dist/app/session-shell/dock-chrome.js +109 -0
- package/dist/app/session-shell/exit-notice.d.ts +1 -1
- package/dist/app/session-shell/exit-notice.js +1 -1
- package/dist/app/session-shell/extension-surface.d.ts +30 -0
- package/dist/app/session-shell/extension-surface.js +105 -0
- package/dist/app/session-shell/helper-pool.d.ts +3 -5
- package/dist/app/session-shell/helper-pool.js +3 -5
- package/dist/app/session-shell/input-surface-switch.d.ts +36 -0
- package/dist/app/session-shell/input-surface-switch.js +85 -0
- package/dist/app/session-shell/login-interaction.d.ts +27 -0
- package/dist/app/session-shell/login-interaction.js +91 -0
- package/dist/app/session-shell/prompt-submission.d.ts +48 -0
- package/dist/app/session-shell/prompt-submission.js +276 -0
- package/dist/app/session-shell/resident-tab-coordinator.d.ts +38 -0
- package/dist/app/session-shell/resident-tab-coordinator.js +77 -0
- package/dist/app/session-shell/response-copy-helper.js +21 -6
- package/dist/app/session-shell/response-copy-protocol.d.ts +1 -1
- package/dist/app/session-shell/response-copy-transport.d.ts +16 -6
- package/dist/app/session-shell/response-copy-transport.js +69 -17
- package/dist/app/session-shell/session-concern.d.ts +22 -0
- package/dist/app/session-shell/session-concern.js +29 -0
- package/dist/app/session-shell/session-lifecycle.d.ts +29 -0
- package/dist/app/session-shell/session-lifecycle.js +49 -0
- package/dist/app/session-shell/session-shell-root.d.ts +42 -6
- package/dist/app/session-shell/session-shell-root.js +197 -908
- package/dist/app/session-shell/session-shell.d.ts +3 -8
- package/dist/app/session-shell/session-shell.js +327 -835
- package/dist/app/session-shell/session-viewport-controller.d.ts +2 -1
- package/dist/app/session-shell/session-viewport-controller.js +41 -38
- package/dist/app/session-shell/settings-bindings.d.ts +17 -0
- package/dist/app/session-shell/settings-bindings.js +91 -0
- package/dist/app/session-shell/shell-editor-factory.d.ts +27 -0
- package/dist/app/session-shell/shell-editor-factory.js +105 -0
- package/dist/app/session-shell/shell-host.d.ts +6 -0
- package/dist/app/session-shell/shell-host.js +34 -7
- package/dist/app/session-shell/shell-layout.d.ts +64 -0
- package/dist/app/session-shell/shell-layout.js +18 -0
- package/dist/app/session-shell/suggestion-surface.d.ts +25 -0
- package/dist/app/session-shell/suggestion-surface.js +63 -0
- package/dist/app/session-shell/transcript-document.d.ts +78 -0
- package/dist/app/session-shell/transcript-document.js +365 -0
- package/dist/app/session-shell/viewport-layout.d.ts +31 -0
- package/dist/app/session-shell/viewport-layout.js +160 -0
- package/dist/app/session-shell/workflow-output.d.ts +33 -0
- package/dist/app/session-shell/workflow-output.js +174 -0
- package/dist/app/session-shell/workflow-router.d.ts +25 -0
- package/dist/app/session-shell/workflow-router.js +39 -0
- package/dist/cli/dispatch.d.ts +11 -1
- package/dist/cli/dispatch.js +79 -5
- package/dist/cli/tabs-request.d.ts +7 -0
- package/dist/cli/tabs-request.js +1 -0
- package/dist/cli/tabs.d.ts +14 -0
- package/dist/cli/tabs.js +151 -0
- package/dist/cli/version-stats.js +38 -3
- package/dist/composition/owned-settings.d.ts +12 -0
- package/dist/composition/owned-settings.js +36 -0
- package/dist/composition/owned-ui.d.ts +27 -28
- package/dist/composition/owned-ui.js +207 -153
- package/dist/composition/reference-selection-options.d.ts +3 -0
- package/dist/composition/reference-selection-options.js +16 -0
- package/dist/composition/resident-tab-bridge.d.ts +25 -0
- package/dist/composition/resident-tab-bridge.js +180 -0
- package/dist/composition/session-backend.d.ts +19 -0
- package/dist/composition/session-backend.js +1 -0
- package/dist/composition/session-runtime-registry.d.ts +20 -0
- package/dist/composition/session-runtime-registry.js +85 -0
- package/dist/composition/settings-route-host.d.ts +16 -2
- package/dist/composition/settings-route-host.js +42 -17
- package/dist/composition/settings-search-input.d.ts +9 -0
- package/dist/composition/settings-search-input.js +61 -0
- package/dist/composition/startup-route.d.ts +32 -0
- package/dist/composition/startup-route.js +72 -0
- package/dist/composition/utility-tab.d.ts +28 -0
- package/dist/composition/utility-tab.js +244 -0
- package/dist/contracts/owned-ui/index.d.ts +1 -1
- package/dist/contracts/owned-ui/model.d.ts +3 -0
- package/dist/contracts/owned-ui/session-backend.d.ts +3 -0
- package/dist/contracts/owned-ui/session-workflows.d.ts +11 -4
- package/dist/contracts/presentation/index.d.ts +11 -0
- package/dist/contracts/presentation/index.js +12 -0
- package/dist/features/launch/development-launch.js +6 -0
- package/dist/features/launch/index.d.ts +1 -1
- package/dist/features/launch/intent.d.ts +3 -1
- package/dist/features/launch/intent.js +7 -4
- package/dist/features/launch/profile-paths.js +4 -0
- package/dist/features/owned-ui/plus-menu-dialog.d.ts +22 -0
- package/dist/features/owned-ui/plus-menu-dialog.js +84 -0
- package/dist/features/owned-ui/project-trust-dialog.d.ts +1 -1
- package/dist/features/owned-ui/project-trust-dialog.js +6 -8
- package/dist/features/owned-ui/project-trust-prompt.d.ts +1 -0
- package/dist/features/owned-ui/project-trust-prompt.js +7 -3
- package/dist/features/owned-ui/reference-document-selection.d.ts +30 -0
- package/dist/features/owned-ui/reference-document-selection.js +179 -0
- package/dist/features/owned-ui/reference-screen-app.d.ts +6 -1
- package/dist/features/owned-ui/reference-screen-app.js +51 -10
- package/dist/features/owned-ui/settings-app.d.ts +13 -2
- package/dist/features/owned-ui/settings-app.js +136 -97
- package/dist/features/owned-ui/settings-search-input.d.ts +29 -0
- package/dist/features/owned-ui/settings-search-input.js +1 -0
- package/dist/features/prompt-history/index.d.ts +1 -1
- package/dist/features/prompt-history/paths.d.ts +2 -1
- package/dist/features/prompt-history/paths.js +10 -2
- package/dist/features/prompt-history/service.d.ts +5 -0
- package/dist/features/prompt-history/service.js +1 -1
- package/dist/features/resident-tab/auto-name.d.ts +11 -0
- package/dist/features/resident-tab/auto-name.js +44 -0
- package/dist/features/resident-tab/index.d.ts +5 -0
- package/dist/features/resident-tab/index.js +7 -0
- package/dist/features/resident-tab/shortcut-bindings-file.d.ts +8 -0
- package/dist/features/resident-tab/shortcut-bindings-file.js +40 -0
- package/dist/features/resident-tab/shortcut-declarations.d.ts +13 -0
- package/dist/features/resident-tab/shortcut-declarations.js +26 -0
- package/dist/features/resident-tab/shortcut-projection.d.ts +29 -0
- package/dist/features/resident-tab/shortcut-projection.js +64 -0
- package/dist/features/resident-tab/status-deriver.d.ts +10 -0
- package/dist/features/resident-tab/status-deriver.js +12 -0
- package/dist/foundation/launch-context/index.d.ts +12 -0
- package/dist/foundation/launch-context/index.js +26 -0
- package/dist/foundation/launch-guardian/exit-watcher.d.ts +14 -0
- package/dist/foundation/launch-guardian/exit-watcher.js +94 -0
- package/dist/foundation/launch-guardian/main.d.ts +7 -1
- package/dist/foundation/launch-guardian/main.js +60 -7
- package/dist/foundation/lifecycle/session-repository-context.js +16 -2
- package/dist/foundation/process-containment/{native-guardian-containment.d.ts → addon-containment.d.ts} +7 -5
- package/dist/foundation/process-containment/addon-containment.js +139 -0
- package/dist/foundation/process-containment/addon-process-inspector.d.ts +11 -0
- package/dist/foundation/process-containment/addon-process-inspector.js +36 -0
- package/dist/foundation/process-containment/addon.d.ts +42 -0
- package/dist/foundation/process-containment/addon.js +57 -0
- package/dist/foundation/process-containment/artifact.d.ts +1 -1
- package/dist/foundation/process-containment/artifact.js +6 -5
- package/dist/foundation/process-containment/contracts.d.ts +2 -0
- package/dist/foundation/process-containment/index.d.ts +4 -4
- package/dist/foundation/process-containment/index.js +3 -3
- package/dist/foundation/process-containment/native-process-inspector.d.ts +2 -1
- package/dist/foundation/process-containment/native-process-inspector.js +10 -10
- package/dist/foundation/release/automatic-update.d.ts +37 -0
- package/dist/foundation/release/automatic-update.js +265 -0
- package/dist/foundation/release/bootstrap.d.ts +7 -9
- package/dist/foundation/release/bootstrap.js +107 -24
- package/dist/foundation/release/cohort-state.d.ts +1 -1
- package/dist/foundation/release/cohort-state.js +1 -1
- package/dist/foundation/release/dependency-certification.js +54 -19
- package/dist/foundation/release/early-accent.d.ts +12 -0
- package/dist/foundation/release/early-accent.js +59 -0
- package/dist/foundation/release/index.d.ts +2 -2
- package/dist/foundation/release/index.js +2 -2
- package/dist/foundation/release/latest-release.d.ts +24 -2
- package/dist/foundation/release/latest-release.js +51 -1
- package/dist/foundation/release/progress-palette.generated.d.ts +137 -3
- package/dist/foundation/release/progress-palette.generated.js +137 -3
- package/dist/foundation/release/release-gc.d.ts +3 -0
- package/dist/foundation/release/release-gc.js +59 -8
- package/dist/foundation/release/release-store.d.ts +12 -0
- package/dist/foundation/release/release-store.js +124 -2
- package/dist/foundation/release/update-execution-lease.d.ts +48 -0
- package/dist/foundation/release/update-execution-lease.js +161 -0
- package/dist/foundation/release/update.d.ts +12 -7
- package/dist/foundation/release/update.js +281 -196
- package/dist/foundation/resident-tabs/bounded-host-command.d.ts +18 -0
- package/dist/foundation/resident-tabs/bounded-host-command.js +39 -0
- package/dist/foundation/resident-tabs/bridge-client.d.ts +70 -0
- package/dist/foundation/resident-tabs/bridge-client.js +321 -0
- package/dist/foundation/resident-tabs/doctor.d.ts +28 -0
- package/dist/foundation/resident-tabs/doctor.js +166 -0
- package/dist/foundation/resident-tabs/draft-checkpoint.d.ts +27 -0
- package/dist/foundation/resident-tabs/draft-checkpoint.js +145 -0
- package/dist/foundation/resident-tabs/ensure-terminal-host.d.ts +36 -0
- package/dist/foundation/resident-tabs/ensure-terminal-host.js +151 -0
- package/dist/foundation/resident-tabs/fault-injection.d.ts +8 -0
- package/dist/foundation/resident-tabs/fault-injection.js +26 -0
- package/dist/foundation/resident-tabs/fixture-control.d.ts +7 -0
- package/dist/foundation/resident-tabs/fixture-control.js +35 -0
- package/dist/foundation/resident-tabs/host-entry.d.ts +1 -0
- package/dist/foundation/resident-tabs/host-entry.js +17 -0
- package/dist/foundation/resident-tabs/index.d.ts +12 -0
- package/dist/foundation/resident-tabs/index.js +6 -0
- package/dist/foundation/resident-tabs/maintenance.d.ts +39 -0
- package/dist/foundation/resident-tabs/maintenance.js +75 -0
- package/dist/foundation/resident-tabs/progress-observation-schema.d.ts +34 -0
- package/dist/foundation/resident-tabs/progress-observation-schema.js +1 -0
- package/dist/foundation/resident-tabs/progress-observation.d.ts +4 -0
- package/dist/foundation/resident-tabs/progress-observation.js +150 -0
- package/dist/foundation/resident-tabs/prompt-journal.d.ts +63 -0
- package/dist/foundation/resident-tabs/prompt-journal.js +213 -0
- package/dist/foundation/resident-tabs/protocol.d.ts +12 -0
- package/dist/foundation/resident-tabs/protocol.js +195 -0
- package/dist/foundation/resident-tabs/recovery.d.ts +26 -0
- package/dist/foundation/resident-tabs/recovery.js +205 -0
- package/dist/foundation/resident-tabs/release-holds.d.ts +28 -0
- package/dist/foundation/resident-tabs/release-holds.js +75 -0
- package/dist/foundation/resident-tabs/routes.d.ts +5 -0
- package/dist/foundation/resident-tabs/routes.js +5 -0
- package/dist/foundation/resident-tabs/routing.d.ts +11 -0
- package/dist/foundation/resident-tabs/routing.js +10 -0
- package/dist/foundation/resident-tabs/session-sync.d.ts +14 -0
- package/dist/foundation/resident-tabs/session-sync.js +37 -0
- package/dist/foundation/resident-tabs/settings.d.ts +12 -0
- package/dist/foundation/resident-tabs/settings.js +58 -0
- package/dist/foundation/resident-tabs/terminal-host-artifact.d.ts +14 -0
- package/dist/foundation/resident-tabs/terminal-host-artifact.js +78 -0
- package/dist/foundation/resident-tabs/zip-archive.d.ts +9 -0
- package/dist/foundation/resident-tabs/zip-archive.js +56 -0
- package/dist/foundation/session-writer-lock/index.d.ts +30 -0
- package/dist/foundation/session-writer-lock/index.js +203 -0
- package/dist/foundation/startup/startup-descriptor.js +2 -2
- package/dist/foundation/terminal-cleanup/index.d.ts +1 -1
- package/dist/foundation/terminal-cleanup/index.js +1 -1
- package/dist/foundation/terminal-cleanup/terminal-reset.d.ts +6 -0
- package/dist/foundation/terminal-cleanup/terminal-reset.js +6 -0
- package/dist/integrations/pi/components/editor-interaction.d.ts +2 -0
- package/dist/integrations/pi/components/modal-frame.d.ts +17 -1
- package/dist/integrations/pi/components/modal-frame.js +48 -9
- package/dist/integrations/pi/components/models-dialog.js +4 -52
- package/dist/integrations/pi/components/owned-editor-ux.d.ts +6 -1
- package/dist/integrations/pi/components/owned-editor-ux.js +138 -11
- package/dist/integrations/pi/components/resources/builtin-themes.d.ts +4 -4
- package/dist/integrations/pi/components/resources/builtin-themes.js +4 -4
- package/dist/integrations/pi/components/share-operation-dialog.d.ts +2 -0
- package/dist/integrations/pi/components/share-operation-dialog.js +2 -1
- package/dist/integrations/pi/components/shell-editor-autocomplete.js +58 -36
- package/dist/integrations/pi/components/shell-extension-ui.js +79 -60
- package/dist/integrations/pi/components/shell-footer-status.d.ts +1 -1
- package/dist/integrations/pi/components/shell-footer-status.js +21 -5
- package/dist/integrations/pi/components/shell-hotkey-sections.js +1 -1
- package/dist/integrations/pi/components/shell-presenters-info.d.ts +5 -2
- package/dist/integrations/pi/components/shell-presenters-info.js +18 -4
- package/dist/integrations/pi/components/shell-presenters-transcript.js +4 -1
- package/dist/integrations/pi/components/shell-selectors-dialogs.js +5 -1
- package/dist/integrations/pi/components/shell-shared-facade.d.ts +12 -1
- package/dist/integrations/pi/components/skills-dialog.js +2 -2
- package/dist/integrations/pi/components/upstream/adjacent/core/keybindings.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/adjacent/core/keybindings.js +17 -4
- package/dist/integrations/pi/components/upstream/assets/earendil-image.json +2 -2
- package/dist/integrations/pi/components/upstream/components/countdown-timer.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/components/earendil-announcement.js +1 -1
- package/dist/integrations/pi/components/upstream/components/extension-editor.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/components/extension-editor.js +1 -1
- package/dist/integrations/pi/components/upstream/components/extension-input.js +1 -1
- package/dist/integrations/pi/components/upstream/components/extension-selector.js +1 -1
- package/dist/integrations/pi/components/upstream/components/mermaid.js +1 -1
- package/dist/integrations/pi/components/upstream/components/owned-editor.d.ts +8 -6
- package/dist/integrations/pi/components/upstream/components/owned-editor.js +16 -9
- package/dist/integrations/pi/components/upstream/components/pi-logo.js +1 -1
- package/dist/integrations/pi/components/upstream/components/scoped-models-selector.d.ts +4 -4
- package/dist/integrations/pi/components/upstream/components/scoped-models-selector.js +2 -2
- package/dist/integrations/pi/components/upstream/components/session-footer.d.ts +2 -1
- package/dist/integrations/pi/components/upstream/components/session-footer.js +31 -25
- package/dist/integrations/pi/components/upstream/components/session-selector-search.js +1 -1
- package/dist/integrations/pi/components/upstream/components/session-selector.js +8 -7
- package/dist/integrations/pi/components/upstream/components/skill-invocation-message.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/components/skill-invocation-message.js +1 -1
- package/dist/integrations/pi/components/upstream/components/status-indicator.d.ts +2 -2
- package/dist/integrations/pi/components/upstream/components/status-indicator.js +3 -3
- package/dist/integrations/pi/components/upstream/components/themed-text.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/components/themed-text.js +1 -1
- package/dist/integrations/pi/components/upstream/components/thinking-selector.d.ts +8 -7
- package/dist/integrations/pi/components/upstream/components/thinking-selector.js +10 -9
- package/dist/integrations/pi/components/upstream/components/tool-execution.d.ts +2 -6
- package/dist/integrations/pi/components/upstream/components/tool-execution.js +103 -101
- package/dist/integrations/pi/components/upstream/components/tree-selector.d.ts +9 -9
- package/dist/integrations/pi/components/upstream/components/tree-selector.js +13 -21
- package/dist/integrations/pi/components/upstream/components/trust-selector.js +1 -1
- package/dist/integrations/pi/components/upstream/external-editor.js +1 -1
- package/dist/integrations/pi/components/upstream/history/editor-core.d.ts +2 -2
- package/dist/integrations/pi/components/upstream/history/editor-core.js +7 -5
- package/dist/integrations/pi/components/upstream/history/kill-ring.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/history/kill-ring.js +1 -1
- package/dist/integrations/pi/components/upstream/history/printable-key.js +1 -1
- package/dist/integrations/pi/components/upstream/history/text-helpers.js +1 -1
- package/dist/integrations/pi/components/upstream/history/undo-stack.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/history/undo-stack.js +1 -1
- package/dist/integrations/pi/components/upstream/history/word-navigation.js +1 -1
- package/dist/integrations/pi/components/upstream/model-search.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/program-status-reporter.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/theme/theme-controller.d.ts +1 -1
- package/dist/integrations/pi/components/upstream/theme/theme.d.ts +5 -0
- package/dist/integrations/pi/components/upstream/theme/theme.js +29 -2
- package/dist/integrations/pi/engine/adapter.d.ts +5 -77
- package/dist/integrations/pi/engine/adapter.js +95 -394
- package/dist/integrations/pi/engine/command-dispatch.d.ts +13 -0
- package/dist/integrations/pi/engine/command-dispatch.js +57 -0
- package/dist/integrations/pi/engine/host.js +2 -2
- package/dist/integrations/pi/engine/offline-settings-port.d.ts +23 -0
- package/dist/integrations/pi/engine/offline-settings-port.js +53 -0
- package/dist/integrations/pi/engine/pi-settings-metadata.json +14 -2
- package/dist/integrations/pi/engine/ports.d.ts +56 -0
- package/dist/integrations/pi/engine/ports.js +93 -0
- package/dist/integrations/pi/engine/prompt-suggestions.d.ts +1 -0
- package/dist/integrations/pi/engine/prompt-suggestions.js +40 -0
- package/dist/integrations/pi/engine/resources/changelog.json +4 -4
- package/dist/integrations/pi/engine/runtime-integration.js +102 -29
- package/dist/integrations/pi/engine/session-runtime.d.ts +0 -6
- package/dist/integrations/pi/engine/session-runtime.js +13 -5
- package/dist/integrations/pi/engine/session-selection.d.ts +3 -0
- package/dist/integrations/pi/engine/session-selection.js +45 -9
- package/dist/integrations/pi/engine/settings-bridge.d.ts +5 -0
- package/dist/integrations/pi/engine/settings-bridge.js +15 -0
- package/dist/integrations/pi/engine/settings-port.js +11 -15
- package/dist/integrations/pi/engine/view-state.d.ts +42 -0
- package/dist/integrations/pi/engine/view-state.js +126 -0
- package/dist/integrations/pi/engine/workflow-contexts.js +10 -1
- package/dist/integrations/pi/engine/workflow-runner.js +74 -5
- package/dist/integrations/pi/engine/workflow-support.d.ts +12 -0
- package/dist/integrations/pi/engine/workflow-support.js +36 -0
- package/dist/integrations/pi/engine/workflows.d.ts +3 -1
- package/dist/integrations/pi/engine/workflows.js +1 -0
- package/dist/integrations/pi/startup-public.js +257 -310
- package/dist/integrations/pi/startup-public.manifest.json +564 -440
- package/dist/integrations/pi/tui-runtime/adapter.d.ts +6 -0
- package/dist/integrations/pi/tui-runtime/adapter.js +32 -1
- package/dist/integrations/pi/tui-runtime/contracts.d.ts +5 -0
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.d.ts +12 -1
- package/dist/integrations/pi/tui-runtime/damage-aware-terminal.js +31 -2
- package/dist/native/darwin-arm64/manifest.json +10 -7
- package/dist/native/darwin-arm64/process-guardian.node +0 -0
- package/dist/native/darwin-arm64/terminal-host-THIRD-PARTY-NOTICES.txt +10500 -0
- package/dist/native/darwin-arm64/terminal-host.manifest.json +46 -0
- package/dist/native/darwin-arm64/terminal-host.node +0 -0
- package/dist/native/darwin-x64/manifest.json +23 -0
- package/dist/native/darwin-x64/process-guardian.node +0 -0
- package/dist/native/darwin-x64/terminal-host-THIRD-PARTY-NOTICES.txt +10737 -0
- package/dist/native/darwin-x64/terminal-host.manifest.json +46 -0
- package/dist/native/darwin-x64/terminal-host.node +0 -0
- package/dist/native/linux-x64/manifest.json +10 -7
- package/dist/native/linux-x64/process-guardian.node +0 -0
- package/dist/native/linux-x64/terminal-host-THIRD-PARTY-NOTICES.txt +11226 -0
- package/dist/native/linux-x64/terminal-host.manifest.json +46 -0
- package/dist/native/linux-x64/terminal-host.node +0 -0
- package/dist/native/win32-x64/manifest.json +10 -7
- package/dist/native/win32-x64/process-guardian.node +0 -0
- package/dist/native/win32-x64/terminal-host-THIRD-PARTY-NOTICES.txt +10757 -0
- package/dist/native/win32-x64/terminal-host.manifest.json +46 -0
- package/dist/native/win32-x64/terminal-host.node +0 -0
- package/dist/product-identity.d.ts +3 -3
- package/dist/product-identity.js +4 -4
- package/dist/product-identity.json +16 -2
- package/dist/runtime-payload-inventory.json +6330 -6677
- package/dist/ui/apps/host.d.ts +2 -0
- package/dist/ui/apps/host.js +7 -1
- package/dist/ui/components/dialog-panel.d.ts +17 -8
- package/dist/ui/components/dialog-panel.js +117 -41
- package/dist/ui/components/index.d.ts +5 -5
- package/dist/ui/components/index.js +4 -4
- package/dist/ui/components/line-input.d.ts +4 -1
- package/dist/ui/components/line-input.js +3 -1
- package/dist/ui/components/prompt-input.d.ts +11 -8
- package/dist/ui/components/prompt-input.js +15 -13
- package/dist/ui/components/scrollbar.d.ts +1 -1
- package/dist/ui/components/scrollbar.js +1 -1
- package/dist/ui/components/selection-copy.d.ts +3 -3
- package/dist/ui/components/selection-copy.js +16 -1
- package/dist/ui/components/spans.js +2 -2
- package/dist/ui/components/submitted-prompt.d.ts +9 -6
- package/dist/ui/components/submitted-prompt.js +20 -12
- package/dist/ui/components/surface.js +4 -2
- package/dist/ui/components/text-selection.d.ts +1 -2
- package/dist/ui/components/text-selection.js +5 -2
- package/dist/ui/components/text.d.ts +3 -6
- package/dist/ui/components/text.js +6 -8
- package/dist/ui/components/transcript-viewport.d.ts +9 -2
- package/dist/ui/components/transcript-viewport.js +179 -58
- package/dist/ui/settings/declarations.d.ts +90 -16
- package/dist/ui/settings/declarations.js +67 -14
- package/dist/ui/settings/early-accent.d.ts +81 -0
- package/dist/ui/settings/early-accent.js +50 -0
- package/dist/ui/settings/index.d.ts +4 -2
- package/dist/ui/settings/index.js +2 -1
- package/dist/ui/settings/manager.d.ts +16 -3
- package/dist/ui/settings/manager.js +122 -33
- package/dist/ui/settings/migrations.d.ts +6 -0
- package/dist/ui/settings/migrations.js +73 -0
- package/dist/ui/settings/profile-document.d.ts +26 -0
- package/dist/ui/settings/profile-document.js +164 -0
- package/dist/ui/settings/progress-palette.generated.d.ts +139 -0
- package/dist/ui/settings/progress-palette.generated.js +139 -0
- package/dist/ui/settings/sections.d.ts +4 -0
- package/dist/ui/settings/sections.js +9 -3
- package/docs/architecture/boundaries.md +24 -9
- package/docs/architecture/evidence/resident-tabs/linux-x64.md +37 -0
- package/docs/architecture/evidence/resident-tabs/macos-arm64.md +36 -0
- package/docs/architecture/evidence/resident-tabs/macos-x64.md +35 -0
- package/docs/architecture/evidence/resident-tabs/windows-x64.md +36 -0
- package/docs/architecture/internal-naming.md +3 -1
- package/docs/architecture/process-guardian-provenance.md +18 -10
- package/docs/architecture/project-structure.md +8 -0
- package/docs/architecture/resident-tabs-requirements.md +18 -0
- package/docs/architecture/resident-tabs.md +649 -0
- package/docs/architecture/response-copy-delivery.md +1 -1
- package/docs/architecture/terminal-host-proof-gate.md +2 -0
- package/docs/architecture/terminal-host-provenance.md +16 -4
- package/docs/architecture/tool-image-presentation.md +2 -1
- package/docs/architecture/toolchain.md +11 -9
- package/docs/ci-release-runbook.md +14 -7
- package/docs/features/launch-profiles.md +11 -8
- package/docs/features/prompt-history.md +41 -20
- package/docs/manual-resident-tabs-acceptance.md +51 -0
- package/docs/openspec-archive-automation.md +49 -22
- package/docs/validation.md +49 -9
- package/package.json +19 -6
- package/dist/foundation/process-containment/darwin-process-inspector.d.ts +0 -5
- package/dist/foundation/process-containment/darwin-process-inspector.js +0 -7
- package/dist/foundation/process-containment/native-guardian-containment.js +0 -152
- package/dist/foundation/process-containment/windows-process-inspector.d.ts +0 -19
- package/dist/foundation/process-containment/windows-process-inspector.js +0 -56
- package/dist/native/darwin-arm64/process-guardian +0 -0
- package/dist/native/linux-x64/process-guardian +0 -0
- package/dist/native/win32-x64/process-guardian.exe +0 -0
|
@@ -1,11 +1,9 @@
|
|
|
1
|
-
export declare const OWNED_UI_SETTINGS_VERSION =
|
|
1
|
+
export declare const OWNED_UI_SETTINGS_VERSION = 19;
|
|
2
2
|
export type OwnedUiSettingValue = string | number | boolean;
|
|
3
3
|
export type OwnedUiSettingApplication = "live" | "restart";
|
|
4
4
|
export interface OwnedUiSettingDeclaration {
|
|
5
5
|
readonly id: string;
|
|
6
|
-
/** Optional presentation label; the id remains the persistence key. */
|
|
7
6
|
readonly label?: string;
|
|
8
|
-
/** Optional settings-screen group for related owned controls. */
|
|
9
7
|
readonly section?: {
|
|
10
8
|
readonly id: string;
|
|
11
9
|
readonly title: string;
|
|
@@ -14,23 +12,40 @@ export interface OwnedUiSettingDeclaration {
|
|
|
14
12
|
readonly application: OwnedUiSettingApplication;
|
|
15
13
|
readonly defaultValue: OwnedUiSettingValue;
|
|
16
14
|
readonly allowedValues: readonly OwnedUiSettingValue[];
|
|
15
|
+
/**
|
|
16
|
+
* Parts of a structured setting, edited through their own dialog: the value is the comma-separated
|
|
17
|
+
* keys of the enabled parts in this order.
|
|
18
|
+
*/
|
|
19
|
+
readonly flags?: readonly {
|
|
20
|
+
readonly key: string;
|
|
21
|
+
readonly label: string;
|
|
22
|
+
readonly description: string;
|
|
23
|
+
}[];
|
|
17
24
|
}
|
|
18
|
-
/**
|
|
19
|
-
* Every A1 setting, keyed by its id. The table is the one declaration: ids, defaults, and allowed
|
|
20
|
-
* values are read from it, and `OwnedSettingValueOf` derives each getter's type from it.
|
|
21
|
-
*/
|
|
22
25
|
export declare const OWNED_SETTING_DECLARATIONS: Readonly<{
|
|
23
26
|
readonly updateCheck: Readonly<{
|
|
24
27
|
id: "updateCheck";
|
|
25
|
-
label: "Update
|
|
28
|
+
label: "Update";
|
|
26
29
|
section: Readonly<{
|
|
27
30
|
id: "generic";
|
|
28
31
|
title: "Generic";
|
|
29
32
|
}>;
|
|
30
|
-
description: "
|
|
33
|
+
description: "Auto installs verified channel updates silently, Notify shows the current update notice, and No leaves updates manual. Checks use the public npm registry; applies on next start.";
|
|
31
34
|
application: "restart";
|
|
32
|
-
defaultValue:
|
|
33
|
-
allowedValues: readonly [
|
|
35
|
+
defaultValue: "auto";
|
|
36
|
+
allowedValues: readonly ["auto", "notify", "no"];
|
|
37
|
+
}>;
|
|
38
|
+
readonly timeFormat: Readonly<{
|
|
39
|
+
id: "timeFormat";
|
|
40
|
+
label: "Time format";
|
|
41
|
+
section: Readonly<{
|
|
42
|
+
id: "generic";
|
|
43
|
+
title: "Generic";
|
|
44
|
+
}>;
|
|
45
|
+
description: "Format used by submitted-prompt timestamps and the resident tab clock.";
|
|
46
|
+
application: "live";
|
|
47
|
+
defaultValue: "8:00 PM";
|
|
48
|
+
allowedValues: readonly ["20:00", "8:00 PM"];
|
|
34
49
|
}>;
|
|
35
50
|
readonly accentColor: Readonly<{
|
|
36
51
|
id: "accentColor";
|
|
@@ -41,8 +56,8 @@ export declare const OWNED_SETTING_DECLARATIONS: Readonly<{
|
|
|
41
56
|
}>;
|
|
42
57
|
description: "Color used by highlighted interface controls, list markers, and tonal interface surfaces.";
|
|
43
58
|
application: "live";
|
|
44
|
-
defaultValue: "
|
|
45
|
-
allowedValues: readonly ["
|
|
59
|
+
defaultValue: "blue";
|
|
60
|
+
allowedValues: readonly ["blue", "purple", "cyan", "green", "orange", "pink"];
|
|
46
61
|
}>;
|
|
47
62
|
readonly backgroundStyle: Readonly<{
|
|
48
63
|
id: "backgroundStyle";
|
|
@@ -111,11 +126,23 @@ export declare const OWNED_SETTING_DECLARATIONS: Readonly<{
|
|
|
111
126
|
id: "history";
|
|
112
127
|
title: "History";
|
|
113
128
|
}>;
|
|
114
|
-
description: "Retain reusable prompts
|
|
129
|
+
description: "Retain reusable prompts after restart. Applies on next start; disabling does not erase saved history or stop existing instances.";
|
|
115
130
|
application: "restart";
|
|
116
131
|
defaultValue: true;
|
|
117
132
|
allowedValues: readonly [true, false];
|
|
118
133
|
}>;
|
|
134
|
+
readonly promptHistoryScope: Readonly<{
|
|
135
|
+
id: "promptHistoryScope";
|
|
136
|
+
label: "History scope";
|
|
137
|
+
section: Readonly<{
|
|
138
|
+
id: "history";
|
|
139
|
+
title: "History";
|
|
140
|
+
}>;
|
|
141
|
+
description: "Unique shows each agent session's history; Shared shows the profile-wide history. Switches running agents without moving or erasing saved prompts.";
|
|
142
|
+
application: "live";
|
|
143
|
+
defaultValue: "unique";
|
|
144
|
+
allowedValues: readonly ["unique", "shared"];
|
|
145
|
+
}>;
|
|
119
146
|
readonly promptHistoryMaxItems: Readonly<{
|
|
120
147
|
id: "promptHistoryMaxItems";
|
|
121
148
|
label: "History limit";
|
|
@@ -164,11 +191,58 @@ export declare const OWNED_SETTING_DECLARATIONS: Readonly<{
|
|
|
164
191
|
defaultValue: 8;
|
|
165
192
|
allowedValues: readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16];
|
|
166
193
|
}>;
|
|
194
|
+
readonly tabsPosition: Readonly<{
|
|
195
|
+
id: "tabsPosition";
|
|
196
|
+
label: "Position";
|
|
197
|
+
section: Readonly<{
|
|
198
|
+
id: "tabs";
|
|
199
|
+
title: "Tab Bar";
|
|
200
|
+
}>;
|
|
201
|
+
description: "Place the resident tab bar at the top or bottom of the terminal.";
|
|
202
|
+
application: "live";
|
|
203
|
+
defaultValue: "top";
|
|
204
|
+
allowedValues: readonly ["top", "bottom"];
|
|
205
|
+
}>;
|
|
206
|
+
readonly tabBarPlusMenu: Readonly<{
|
|
207
|
+
id: "tabBarPlusMenu";
|
|
208
|
+
label: "Plus menu";
|
|
209
|
+
section: Readonly<{
|
|
210
|
+
id: "tabs";
|
|
211
|
+
title: "Tab Bar";
|
|
212
|
+
}>;
|
|
213
|
+
description: "The tabs + offers. With only Agent, + adds an Agent at once; with more, it opens a menu; with none, + is hidden.";
|
|
214
|
+
application: "live";
|
|
215
|
+
defaultValue: "agent";
|
|
216
|
+
allowedValues: readonly ["", "agent", "settings", "changelog", "agent,settings", "agent,changelog", "settings,changelog", "agent,settings,changelog"];
|
|
217
|
+
flags: readonly (Readonly<{
|
|
218
|
+
key: "agent";
|
|
219
|
+
label: "Agent";
|
|
220
|
+
description: "Add a new Agent tab every time.";
|
|
221
|
+
}> | Readonly<{
|
|
222
|
+
key: "settings";
|
|
223
|
+
label: "Settings";
|
|
224
|
+
description: "Show the one Settings tab.";
|
|
225
|
+
}> | Readonly<{
|
|
226
|
+
key: "changelog";
|
|
227
|
+
label: "Changelog";
|
|
228
|
+
description: "Show the one Changelog tab.";
|
|
229
|
+
}>)[];
|
|
230
|
+
}>;
|
|
231
|
+
readonly tabsAutoName: Readonly<{
|
|
232
|
+
id: "tabsAutoName";
|
|
233
|
+
label: "Auto name";
|
|
234
|
+
section: Readonly<{
|
|
235
|
+
id: "tabs";
|
|
236
|
+
title: "Tab Bar";
|
|
237
|
+
}>;
|
|
238
|
+
description: "Automatically name a new tab from its first completed turn with the tab's current model.";
|
|
239
|
+
application: "live";
|
|
240
|
+
defaultValue: true;
|
|
241
|
+
allowedValues: readonly [true, false];
|
|
242
|
+
}>;
|
|
167
243
|
}>;
|
|
168
244
|
export type OwnedSettingId = keyof typeof OWNED_SETTING_DECLARATIONS;
|
|
169
|
-
/** The value type a setting's declaration allows: a literal union for a choice, `number` for a stepped range. */
|
|
170
245
|
export type OwnedSettingValueOf<Id extends OwnedSettingId> = (typeof OWNED_SETTING_DECLARATIONS)[Id]["allowedValues"][number];
|
|
171
|
-
/** The declarations in declaration order, for resolution, persistence, and the settings screen. */
|
|
172
246
|
export declare const OWNED_UI_SETTING_DECLARATIONS: readonly OwnedUiSettingDeclaration[];
|
|
173
247
|
export declare function isOwnedSettingId(id: string): id is OwnedSettingId;
|
|
174
248
|
export declare function assertOwnedUiSettingDeclarations(declarations: readonly OwnedUiSettingDeclaration[]): void;
|
|
@@ -1,27 +1,44 @@
|
|
|
1
|
-
export const OWNED_UI_SETTINGS_VERSION =
|
|
1
|
+
export const OWNED_UI_SETTINGS_VERSION = 19;
|
|
2
2
|
const UI_ACCENT_COLOR_CHOICES = Object.freeze([
|
|
3
|
-
"
|
|
3
|
+
"blue", "purple", "cyan", "green", "orange", "pink",
|
|
4
4
|
]);
|
|
5
5
|
const MAX_ID_LENGTH = 64;
|
|
6
6
|
const ID_PATTERN = /^[a-z][a-z0-9]*(?:[A-Z][a-z0-9]*)*$/;
|
|
7
|
-
/** Declared first so the settings screen opens on it; sections follow first-declaration order. */
|
|
8
7
|
const GENERIC_SECTION = Object.freeze({ id: "generic", title: "Generic" });
|
|
9
8
|
const APPEARANCE_SECTION = Object.freeze({ id: "appearance", title: "Appearance" });
|
|
10
9
|
const SCROLL_SECTION = Object.freeze({ id: "scroll", title: "Scroll" });
|
|
11
10
|
const AGENT_SECTION = Object.freeze({ id: "agent", title: "Agent" });
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
11
|
+
const TABS_SECTION = Object.freeze({ id: "tabs", title: "Tab Bar" });
|
|
12
|
+
/** The tab kinds the strip's `+` can offer, in the order it shows them. */
|
|
13
|
+
const PLUS_MENU_KINDS = Object.freeze([
|
|
14
|
+
Object.freeze({ key: "agent", label: "Agent", description: "Add a new Agent tab every time." }),
|
|
15
|
+
Object.freeze({ key: "settings", label: "Settings", description: "Show the one Settings tab." }),
|
|
16
|
+
Object.freeze({ key: "changelog", label: "Changelog", description: "Show the one Changelog tab." }),
|
|
17
|
+
]);
|
|
18
|
+
/** Every enabled subset of the plus-menu kinds, each in kind order. */
|
|
19
|
+
const PLUS_MENU_VALUES = Object.freeze([
|
|
20
|
+
"", "agent", "settings", "changelog", "agent,settings", "agent,changelog", "settings,changelog", "agent,settings,changelog",
|
|
21
|
+
]);
|
|
16
22
|
export const OWNED_SETTING_DECLARATIONS = Object.freeze({
|
|
17
23
|
updateCheck: Object.freeze({
|
|
18
24
|
id: "updateCheck",
|
|
19
|
-
label: "Update
|
|
25
|
+
label: "Update",
|
|
20
26
|
section: GENERIC_SECTION,
|
|
21
|
-
description: "
|
|
27
|
+
description: "Auto installs verified channel updates silently, Notify shows the current update notice, and No leaves updates manual. Checks use the public npm registry; applies on next start.",
|
|
22
28
|
application: "restart",
|
|
23
|
-
defaultValue:
|
|
24
|
-
allowedValues: Object.freeze([
|
|
29
|
+
defaultValue: "auto",
|
|
30
|
+
allowedValues: Object.freeze(["auto", "notify", "no"]),
|
|
31
|
+
}),
|
|
32
|
+
timeFormat: Object.freeze({
|
|
33
|
+
id: "timeFormat",
|
|
34
|
+
label: "Time format",
|
|
35
|
+
section: GENERIC_SECTION,
|
|
36
|
+
description: "Format used by submitted-prompt timestamps and the resident tab clock.",
|
|
37
|
+
application: "live",
|
|
38
|
+
defaultValue: "8:00 PM",
|
|
39
|
+
allowedValues: Object.freeze([
|
|
40
|
+
"20:00", "8:00 PM",
|
|
41
|
+
]),
|
|
25
42
|
}),
|
|
26
43
|
accentColor: Object.freeze({
|
|
27
44
|
id: "accentColor",
|
|
@@ -29,7 +46,7 @@ export const OWNED_SETTING_DECLARATIONS = Object.freeze({
|
|
|
29
46
|
section: APPEARANCE_SECTION,
|
|
30
47
|
description: "Color used by highlighted interface controls, list markers, and tonal interface surfaces.",
|
|
31
48
|
application: "live",
|
|
32
|
-
defaultValue: "
|
|
49
|
+
defaultValue: "blue",
|
|
33
50
|
allowedValues: UI_ACCENT_COLOR_CHOICES,
|
|
34
51
|
}),
|
|
35
52
|
backgroundStyle: Object.freeze({
|
|
@@ -83,11 +100,20 @@ export const OWNED_SETTING_DECLARATIONS = Object.freeze({
|
|
|
83
100
|
id: "promptHistoryEnabled",
|
|
84
101
|
label: "Persistent history",
|
|
85
102
|
section: Object.freeze({ id: "history", title: "History" }),
|
|
86
|
-
description: "Retain reusable prompts
|
|
103
|
+
description: "Retain reusable prompts after restart. Applies on next start; disabling does not erase saved history or stop existing instances.",
|
|
87
104
|
application: "restart",
|
|
88
105
|
defaultValue: true,
|
|
89
106
|
allowedValues: Object.freeze([true, false]),
|
|
90
107
|
}),
|
|
108
|
+
promptHistoryScope: Object.freeze({
|
|
109
|
+
id: "promptHistoryScope",
|
|
110
|
+
label: "History scope",
|
|
111
|
+
section: Object.freeze({ id: "history", title: "History" }),
|
|
112
|
+
description: "Unique shows each agent session's history; Shared shows the profile-wide history. Switches running agents without moving or erasing saved prompts.",
|
|
113
|
+
application: "live",
|
|
114
|
+
defaultValue: "unique",
|
|
115
|
+
allowedValues: Object.freeze(["unique", "shared"]),
|
|
116
|
+
}),
|
|
91
117
|
promptHistoryMaxItems: Object.freeze({
|
|
92
118
|
id: "promptHistoryMaxItems",
|
|
93
119
|
label: "History limit",
|
|
@@ -124,8 +150,35 @@ export const OWNED_SETTING_DECLARATIONS = Object.freeze({
|
|
|
124
150
|
defaultValue: 8,
|
|
125
151
|
allowedValues: Object.freeze([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]),
|
|
126
152
|
}),
|
|
153
|
+
tabsPosition: Object.freeze({
|
|
154
|
+
id: "tabsPosition",
|
|
155
|
+
label: "Position",
|
|
156
|
+
section: TABS_SECTION,
|
|
157
|
+
description: "Place the resident tab bar at the top or bottom of the terminal.",
|
|
158
|
+
application: "live",
|
|
159
|
+
defaultValue: "top",
|
|
160
|
+
allowedValues: Object.freeze(["top", "bottom"]),
|
|
161
|
+
}),
|
|
162
|
+
tabBarPlusMenu: Object.freeze({
|
|
163
|
+
id: "tabBarPlusMenu",
|
|
164
|
+
label: "Plus menu",
|
|
165
|
+
section: TABS_SECTION,
|
|
166
|
+
description: "The tabs + offers. With only Agent, + adds an Agent at once; with more, it opens a menu; with none, + is hidden.",
|
|
167
|
+
application: "live",
|
|
168
|
+
defaultValue: "agent",
|
|
169
|
+
allowedValues: PLUS_MENU_VALUES,
|
|
170
|
+
flags: PLUS_MENU_KINDS,
|
|
171
|
+
}),
|
|
172
|
+
tabsAutoName: Object.freeze({
|
|
173
|
+
id: "tabsAutoName",
|
|
174
|
+
label: "Auto name",
|
|
175
|
+
section: TABS_SECTION,
|
|
176
|
+
description: "Automatically name a new tab from its first completed turn with the tab's current model.",
|
|
177
|
+
application: "live",
|
|
178
|
+
defaultValue: true,
|
|
179
|
+
allowedValues: Object.freeze([true, false]),
|
|
180
|
+
}),
|
|
127
181
|
});
|
|
128
|
-
/** The declarations in declaration order, for resolution, persistence, and the settings screen. */
|
|
129
182
|
export const OWNED_UI_SETTING_DECLARATIONS = Object.freeze(Object.values(OWNED_SETTING_DECLARATIONS));
|
|
130
183
|
export function isOwnedSettingId(id) {
|
|
131
184
|
return Object.hasOwn(OWNED_SETTING_DECLARATIONS, id);
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import type { UiAccentColor } from "../../contracts/owned-ui/index.js";
|
|
2
|
+
type Appearance = "dark" | "light";
|
|
3
|
+
type ColorMode = "truecolor" | "256color";
|
|
4
|
+
/** Global settings only: project resources must remain unavailable until trust is resolved. */
|
|
5
|
+
export declare function readPreTrustAccent(environment?: NodeJS.ProcessEnv): UiAccentColor;
|
|
6
|
+
export declare function preTrustPalette(color: UiAccentColor, appearance: Appearance, mode: ColorMode): {
|
|
7
|
+
accent: string;
|
|
8
|
+
border: string;
|
|
9
|
+
} | {
|
|
10
|
+
accent: string;
|
|
11
|
+
border: string;
|
|
12
|
+
} | {
|
|
13
|
+
accent: string;
|
|
14
|
+
border: string;
|
|
15
|
+
} | {
|
|
16
|
+
accent: string;
|
|
17
|
+
border: string;
|
|
18
|
+
} | {
|
|
19
|
+
accent: string;
|
|
20
|
+
border: string;
|
|
21
|
+
} | {
|
|
22
|
+
accent: string;
|
|
23
|
+
border: string;
|
|
24
|
+
} | {
|
|
25
|
+
accent: string;
|
|
26
|
+
border: string;
|
|
27
|
+
} | {
|
|
28
|
+
accent: string;
|
|
29
|
+
border: string;
|
|
30
|
+
} | {
|
|
31
|
+
accent: string;
|
|
32
|
+
border: string;
|
|
33
|
+
} | {
|
|
34
|
+
accent: string;
|
|
35
|
+
border: string;
|
|
36
|
+
} | {
|
|
37
|
+
accent: string;
|
|
38
|
+
border: string;
|
|
39
|
+
} | {
|
|
40
|
+
accent: string;
|
|
41
|
+
border: string;
|
|
42
|
+
} | {
|
|
43
|
+
accent: string;
|
|
44
|
+
border: string;
|
|
45
|
+
} | {
|
|
46
|
+
accent: string;
|
|
47
|
+
border: string;
|
|
48
|
+
} | {
|
|
49
|
+
accent: string;
|
|
50
|
+
border: string;
|
|
51
|
+
} | {
|
|
52
|
+
accent: string;
|
|
53
|
+
border: string;
|
|
54
|
+
} | {
|
|
55
|
+
accent: string;
|
|
56
|
+
border: string;
|
|
57
|
+
} | {
|
|
58
|
+
accent: string;
|
|
59
|
+
border: string;
|
|
60
|
+
} | {
|
|
61
|
+
accent: string;
|
|
62
|
+
border: string;
|
|
63
|
+
} | {
|
|
64
|
+
accent: string;
|
|
65
|
+
border: string;
|
|
66
|
+
} | {
|
|
67
|
+
accent: string;
|
|
68
|
+
border: string;
|
|
69
|
+
} | {
|
|
70
|
+
accent: string;
|
|
71
|
+
border: string;
|
|
72
|
+
} | {
|
|
73
|
+
accent: string;
|
|
74
|
+
border: string;
|
|
75
|
+
} | {
|
|
76
|
+
accent: string;
|
|
77
|
+
border: string;
|
|
78
|
+
};
|
|
79
|
+
export declare function preTrustTerminalAppearance(environment?: NodeJS.ProcessEnv): Appearance;
|
|
80
|
+
export declare function preTrustTerminalColorMode(environment?: NodeJS.ProcessEnv): ColorMode;
|
|
81
|
+
export {};
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { readFileSync, statSync } from "node:fs";
|
|
2
|
+
import { homedir } from "node:os";
|
|
3
|
+
import { isAbsolute, join } from "node:path";
|
|
4
|
+
import { PRODUCT_IDENTITY } from "../../product-identity.js";
|
|
5
|
+
import { SHARED_PROGRESS_PALETTE } from "./progress-palette.generated.js";
|
|
6
|
+
/** Global settings only: project resources must remain unavailable until trust is resolved. */
|
|
7
|
+
export function readPreTrustAccent(environment = process.env) {
|
|
8
|
+
try {
|
|
9
|
+
const home = environment[PRODUCT_IDENTITY.environment.profileHome] ?? homedir();
|
|
10
|
+
if (!isAbsolute(home) || home.includes("\0"))
|
|
11
|
+
return "blue";
|
|
12
|
+
const file = join(home, PRODUCT_IDENTITY.state.piAgentProfile, "settings.json");
|
|
13
|
+
if (statSync(file).size > 256 * 1024)
|
|
14
|
+
return "blue";
|
|
15
|
+
const raw = readFileSync(file, "utf8");
|
|
16
|
+
if (Buffer.byteLength(raw, "utf8") > 256 * 1024)
|
|
17
|
+
return "blue";
|
|
18
|
+
const root = JSON.parse(raw.replace(/^\uFEFF/u, ""));
|
|
19
|
+
if (root === null || typeof root !== "object" || Array.isArray(root))
|
|
20
|
+
return "blue";
|
|
21
|
+
const namespace = root[PRODUCT_IDENTITY.commandName];
|
|
22
|
+
if (namespace === null || typeof namespace !== "object" || Array.isArray(namespace))
|
|
23
|
+
return "blue";
|
|
24
|
+
const value = namespace.accentColor;
|
|
25
|
+
if (value === "default")
|
|
26
|
+
return "purple";
|
|
27
|
+
return typeof value === "string" && Object.hasOwn(SHARED_PROGRESS_PALETTE, value) ? value : "blue";
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return "blue";
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
export function preTrustPalette(color, appearance, mode) {
|
|
34
|
+
return SHARED_PROGRESS_PALETTE[color][appearance][mode];
|
|
35
|
+
}
|
|
36
|
+
export function preTrustTerminalAppearance(environment = process.env) {
|
|
37
|
+
const index = Number.parseInt((environment.COLORFGBG ?? "").split(";").at(-1) ?? "", 10);
|
|
38
|
+
return Number.isInteger(index) && (index === 7 || index === 15 || index >= 231) ? "light" : "dark";
|
|
39
|
+
}
|
|
40
|
+
export function preTrustTerminalColorMode(environment = process.env) {
|
|
41
|
+
if (environment.PI_TRUE_COLOR === "1")
|
|
42
|
+
return "truecolor";
|
|
43
|
+
if (environment.PI_TRUE_COLOR === "0")
|
|
44
|
+
return "256color";
|
|
45
|
+
const program = (environment.TERM_PROGRAM ?? "").toLowerCase();
|
|
46
|
+
const known = ["kitty", "ghostty", "wezterm", "rex", "warpterminal", "iterm.app", "alacritty", "vscode", "zed"];
|
|
47
|
+
return /^(truecolor|24bit)$/iu.test(environment.COLORTERM ?? "") || (environment.TERM ?? "").endsWith("-direct")
|
|
48
|
+
|| process.platform === "win32" || environment.WT_SESSION !== undefined || known.includes(program)
|
|
49
|
+
? "truecolor" : "256color";
|
|
50
|
+
}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export { OWNED_SETTING_DECLARATIONS, OWNED_UI_SETTINGS_VERSION, OWNED_UI_SETTING_DECLARATIONS, assertOwnedUiSettingDeclarations, findOwnedUiSettingDeclaration, isOwnedSettingId, } from "./declarations.js";
|
|
2
2
|
export type { OwnedSettingId, OwnedSettingValueOf, OwnedUiSettingApplication, OwnedUiSettingDeclaration, OwnedUiSettingValue } from "./declarations.js";
|
|
3
|
-
export { OWNED_UI_SETTINGS_MIGRATIONS, assertOwnedUiSettingsMigrations, migrationsFrom } from "./migrations.js";
|
|
4
|
-
export type { OwnedUiSettingsMigration } from "./migrations.js";
|
|
3
|
+
export { OWNED_UI_SETTINGS_MIGRATIONS, assertOwnedUiSettingsMigrations, migrationsFrom, normalizeOwnedUiSettingsValues, } from "./migrations.js";
|
|
4
|
+
export type { OwnedUiSettingsCompatibilityResult, OwnedUiSettingsMigration } from "./migrations.js";
|
|
5
5
|
export { documentFrom, parseOwnedUiSettingsDocument, resolveOwnedUiSettings, settingValue } from "./resolution.js";
|
|
6
6
|
export type { OwnedUiResolvedSetting, OwnedUiSettingSource, OwnedUiSettingsDocument, OwnedUiSettingsNotice, OwnedUiSettingsNoticeCode, OwnedUiSettingsResolution, ResolveOwnedUiSettingsInput, } from "./resolution.js";
|
|
7
7
|
export { AGENT_SECTION_ID, buildOwnedUiSettingsSections, findOwnedUiSettingsEntry } from "./sections.js";
|
|
8
8
|
export type { AgentSettingsSnapshot, BuildOwnedUiSettingsSectionsInput, OwnedUiSettingsBackend, OwnedUiSettingsEntry, OwnedUiSettingsSection, } from "./sections.js";
|
|
9
9
|
export { OwnedSettingsManager } from "./manager.js";
|
|
10
10
|
export type { OwnedSettingsManagerOptions, OwnedUiSettingsChangeOutcome, OwnedUiSettingsListener } from "./manager.js";
|
|
11
|
+
export { assertProfileSettingsNamespaceAvailable, readProfileSettingsNamespace, repairProfileSettingsDocument, updateProfileSettingsNamespace, } from "./profile-document.js";
|
|
12
|
+
export type { ProfileSettingsNamespaceRead, ProfileSettingsNamespaceUpdate } from "./profile-document.js";
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export { OWNED_SETTING_DECLARATIONS, OWNED_UI_SETTINGS_VERSION, OWNED_UI_SETTING_DECLARATIONS, assertOwnedUiSettingDeclarations, findOwnedUiSettingDeclaration, isOwnedSettingId, } from "./declarations.js";
|
|
2
|
-
export { OWNED_UI_SETTINGS_MIGRATIONS, assertOwnedUiSettingsMigrations, migrationsFrom } from "./migrations.js";
|
|
2
|
+
export { OWNED_UI_SETTINGS_MIGRATIONS, assertOwnedUiSettingsMigrations, migrationsFrom, normalizeOwnedUiSettingsValues, } from "./migrations.js";
|
|
3
3
|
export { documentFrom, parseOwnedUiSettingsDocument, resolveOwnedUiSettings, settingValue } from "./resolution.js";
|
|
4
4
|
export { AGENT_SECTION_ID, buildOwnedUiSettingsSections, findOwnedUiSettingsEntry } from "./sections.js";
|
|
5
5
|
export { OwnedSettingsManager } from "./manager.js";
|
|
6
|
+
export { assertProfileSettingsNamespaceAvailable, readProfileSettingsNamespace, repairProfileSettingsDocument, updateProfileSettingsNamespace, } from "./profile-document.js";
|
|
@@ -4,13 +4,20 @@ import { type OwnedUiSettingsMigration } from "./migrations.js";
|
|
|
4
4
|
import { type OwnedUiSettingsResolution } from "./resolution.js";
|
|
5
5
|
import { type OwnedUiSettingsBackend, type OwnedUiSettingsSection } from "./sections.js";
|
|
6
6
|
export interface OwnedSettingsManagerOptions {
|
|
7
|
-
/**
|
|
8
|
-
readonly
|
|
7
|
+
/** Selected global agent profile containing the shared `settings.json`. */
|
|
8
|
+
readonly profileDir?: string;
|
|
9
|
+
/** Compatibility alias for SDK/tests that supplied the former root option. */
|
|
10
|
+
readonly configDir?: string;
|
|
9
11
|
readonly profileId: string;
|
|
12
|
+
/** Product namespace; defaults to profileId for generic and hermetic consumers. */
|
|
13
|
+
readonly namespace?: string;
|
|
14
|
+
/** Former product configuration root, consulted only while the namespace is absent. */
|
|
15
|
+
readonly legacyConfigDir?: string;
|
|
10
16
|
readonly declarations?: readonly OwnedUiSettingDeclaration[];
|
|
11
17
|
readonly migrations?: readonly OwnedUiSettingsMigration[];
|
|
12
18
|
readonly agent?: AgentSettingsPort | null;
|
|
13
19
|
readonly agentProvider?: () => AgentSettingsPort | null;
|
|
20
|
+
readonly hiddenOwnedSettingIds?: readonly string[];
|
|
14
21
|
readonly hiddenAgentSettingIds?: readonly string[];
|
|
15
22
|
readonly agentSettingLabelOverrides?: Readonly<Record<string, string>>;
|
|
16
23
|
}
|
|
@@ -37,9 +44,15 @@ export declare class OwnedSettingsManager {
|
|
|
37
44
|
constructor(options: OwnedSettingsManagerOptions);
|
|
38
45
|
get file(): string;
|
|
39
46
|
get resolution(): OwnedUiSettingsResolution;
|
|
40
|
-
/** Reads and resolves the
|
|
47
|
+
/** Reads and resolves the product namespace. Never throws: every failure becomes a notice. */
|
|
41
48
|
read(): OwnedUiSettingsResolution;
|
|
42
49
|
load(): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Adopts values another process stored in the shared document. Notifies only when a
|
|
52
|
+
* resolved value differs, so a peer's own write echo stays silent. Restart-bound values
|
|
53
|
+
* keep their session-start effect and surface as pending instead.
|
|
54
|
+
*/
|
|
55
|
+
refresh(): boolean;
|
|
43
56
|
sections(): readonly OwnedUiSettingsSection[];
|
|
44
57
|
/**
|
|
45
58
|
* The value in effect for a declared setting, typed by its declaration. A restart-bound
|