@timurproko/a1 0.1.8-dev.112 → 0.1.8-dev.121
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/bin/cli.js +7 -7
- package/bin/guardian.js +1 -1
- package/bin/supervisor.js +1 -1
- package/bin/ui.js +3 -3
- package/dist/{src/cli → cli}/packages.d.ts +1 -1
- package/dist/composition/agent-engine-bridge.d.ts +3 -0
- package/dist/composition/agent-engine-bridge.js +108 -0
- package/dist/composition/index.d.ts +3 -0
- package/dist/composition/index.js +3 -0
- package/dist/composition/owned-ui.d.ts +25 -0
- package/dist/composition/owned-ui.js +40 -0
- package/dist/composition/process.d.ts +16 -0
- package/dist/composition/process.js +45 -0
- package/dist/composition/settings-route-host.d.ts +8 -0
- package/dist/composition/settings-route-host.js +73 -0
- package/dist/{src/features → features}/owned-ui/customization.d.ts +1 -1
- package/dist/{src/features → features}/owned-ui/customization.js +1 -1
- package/dist/{src/features → features}/owned-ui/diagnostics.d.ts +1 -1
- package/dist/{src/features → features}/owned-ui/run.d.ts +2 -2
- package/dist/{src/features → features}/owned-ui/settings-app.d.ts +3 -3
- package/dist/{src/features → features}/owned-ui/settings-app.js +1 -1
- package/dist/{src/features → features}/workspace/capabilities.d.ts +1 -1
- package/dist/{src/features → features}/workspace/reducer.d.ts +1 -1
- package/dist/{src/features → features}/workspace/reducer.js +1 -1
- package/dist/{src/features → features}/workspace/router.d.ts +1 -1
- package/dist/{src/features → features}/workspace/store.d.ts +1 -1
- package/dist/{src/foundation → foundation}/launch-guardian/main.js +8 -2
- package/dist/foundation/lifecycle/paths.d.ts +28 -0
- package/dist/{src/foundation → foundation}/lifecycle/paths.js +21 -0
- package/dist/{src/foundation → foundation}/native-host-protocol/messages.d.ts +1 -1
- package/dist/{src/foundation → foundation}/native-host-protocol/messages.js +1 -1
- package/dist/{src/foundation → foundation}/release/bootstrap.js +42 -10
- package/dist/foundation/release/endpoints.d.ts +20 -0
- package/dist/foundation/release/endpoints.js +50 -0
- package/dist/{src/foundation → foundation}/release/index.d.ts +1 -0
- package/dist/{src/foundation → foundation}/release/index.js +1 -0
- package/dist/{src/foundation → foundation}/release/release-gc.d.ts +4 -1
- package/dist/{src/foundation → foundation}/release/release-gc.js +9 -1
- package/dist/{src/foundation → foundation}/release/update.d.ts +8 -0
- package/dist/{src/foundation → foundation}/release/update.js +60 -22
- package/dist/{src/foundation → foundation}/storage/control-store.d.ts +1 -1
- package/dist/{src/foundation → foundation}/storage/control-store.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/backpressure.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/backpressure.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/commands.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/commands.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/handshake.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/handshake.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/reconnection.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/reconnection.js +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/state.d.ts +1 -1
- package/dist/{src/foundation → foundation}/structured-agent-runtime/state.js +1 -1
- package/dist/foundation/supervision/index.d.ts +3 -0
- package/dist/foundation/supervision/index.js +3 -0
- package/dist/{src/foundation → foundation}/supervision/main.js +11 -5
- package/dist/foundation/supervision/paths.d.ts +1 -0
- package/dist/foundation/supervision/paths.js +1 -0
- package/dist/{src/foundation → foundation}/supervision/server.d.ts +18 -1
- package/dist/{src/foundation → foundation}/supervision/server.js +52 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/components.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/conformance.js +2 -2
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-extension-ui.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-footer-status.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-presenters-transcript.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-presenters-transcript.js +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-selectors-dialogs.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-shared-facade.d.ts +1 -1
- package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-footer.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/adapter.d.ts +2 -2
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/adapter.js +59 -6
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/conformance.js +2 -2
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/model-auth-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.js +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/resource-extension-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/session-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/session-integration.js +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/settings-integration.d.ts +1 -1
- package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflow-controllers.d.ts +1 -1
- package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/route-host.d.ts +1 -1
- package/dist/{src/foundation/pi-owned-ui-integration/session-shell.d.ts → integrations/pi/owned-ui/session-shell-root.d.ts} +7 -46
- package/dist/integrations/pi/owned-ui/session-shell-root.js +722 -0
- package/dist/integrations/pi/owned-ui/session-shell.d.ts +46 -0
- package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/session-shell.js +6 -720
- package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/presentation-adapter.d.ts +1 -1
- package/dist/native/darwin-arm64/manifest.json +1 -1
- package/dist/native/linux-x64/manifest.json +1 -1
- package/dist/native/win32-x64/manifest.json +2 -2
- package/dist/native/win32-x64/process-guardian.exe +0 -0
- package/dist/{src/foundation/ui-apps → ui/apps}/contracts.d.ts +1 -1
- package/dist/{src/foundation/ui-apps → ui/apps}/host.d.ts +1 -1
- package/dist/{src/foundation/ui-apps → ui/apps}/host.js +1 -1
- package/dist/{src/foundation/owned-ui-settings → ui/settings}/session.d.ts +1 -1
- package/docs/architecture/boundaries.md +8 -8
- package/docs/architecture/project-structure.md +52 -29
- package/docs/architecture/toolchain.md +4 -4
- package/docs/ci-release-runbook.md +1 -1
- package/docs/features/launch-profiles.md +6 -8
- package/docs/manual-owned-ui-checkpoint.md +52 -0
- package/docs/manual-terminal-colour-check.md +1 -1
- package/package.json +23 -23
- package/dist/src/composition/index.d.ts +0 -48
- package/dist/src/composition/index.js +0 -258
- package/dist/src/foundation/lifecycle/paths.d.ts +0 -10
- package/dist/src/foundation/supervision/index.d.ts +0 -3
- package/dist/src/foundation/supervision/index.js +0 -3
- package/dist/src/foundation/supervision/paths.d.ts +0 -1
- package/dist/src/foundation/supervision/paths.js +0 -1
- package/docs/manual-transparent-checkpoint.md +0 -53
- /package/dist/{src/cli → cli}/capabilities.d.ts +0 -0
- /package/dist/{src/cli → cli}/capabilities.js +0 -0
- /package/dist/{src/cli → cli}/dispatch.d.ts +0 -0
- /package/dist/{src/cli → cli}/dispatch.js +0 -0
- /package/dist/{src/cli → cli}/index.d.ts +0 -0
- /package/dist/{src/cli → cli}/index.js +0 -0
- /package/dist/{src/cli → cli}/packages.js +0 -0
- /package/dist/{src/cli → cli}/version-stats.d.ts +0 -0
- /package/dist/{src/cli → cli}/version-stats.js +0 -0
- /package/dist/{src/cli → cli}/version.d.ts +0 -0
- /package/dist/{src/cli → cli}/version.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/capability-ports.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/agent-engine-contracts → contracts/agent-engine}/domain-validation.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/domain.js +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/index.d.ts +0 -0
- /package/dist/{src/foundation/agent-engine-contracts → contracts/agent-engine}/index.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.d.ts +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}/ports.js +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.d.ts +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}/index.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/index.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/model.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/model.js +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/validation.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-contracts → contracts/owned-ui}/validation.js +0 -0
- /package/dist/{src/foundation/presentation-contracts → contracts/presentation}/index.d.ts +0 -0
- /package/dist/{src/foundation/presentation-contracts → contracts/presentation}/index.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/index.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/index.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/model.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/model.js +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/validation.d.ts +0 -0
- /package/dist/{src/foundation/workspace-contracts → contracts/workspace}/validation.js +0 -0
- /package/dist/{src/features → features}/launch/development-launch.d.ts +0 -0
- /package/dist/{src/features → features}/launch/development-launch.js +0 -0
- /package/dist/{src/features → features}/launch/index.d.ts +0 -0
- /package/dist/{src/features → features}/launch/index.js +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/features → features}/launch/intent.d.ts +0 -0
- /package/dist/{src/features → features}/launch/intent.js +0 -0
- /package/dist/{src/features → features}/launch/prepare-launch.d.ts +0 -0
- /package/dist/{src/features → features}/launch/prepare-launch.js +0 -0
- /package/dist/{src/features → features}/launch/profile-paths.d.ts +0 -0
- /package/dist/{src/features → features}/launch/profile-paths.js +0 -0
- /package/dist/{src/features → features}/launch/profiles.d.ts +0 -0
- /package/dist/{src/features → features}/launch/profiles.js +0 -0
- /package/dist/{src/features → features}/launch/runtime-selection.d.ts +0 -0
- /package/dist/{src/features → features}/launch/runtime-selection.js +0 -0
- /package/dist/{src/features → features}/owned-ui/diagnostics.js +0 -0
- /package/dist/{src/features → features}/owned-ui/index.d.ts +0 -0
- /package/dist/{src/features → features}/owned-ui/index.js +0 -0
- /package/dist/{src/features → features}/owned-ui/run.js +0 -0
- /package/dist/{src/features → features}/workspace/capabilities.js +0 -0
- /package/dist/{src/features → features}/workspace/index.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/index.js +0 -0
- /package/dist/{src/features → features}/workspace/presentation.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/presentation.js +0 -0
- /package/dist/{src/features → features}/workspace/reconciliation.d.ts +0 -0
- /package/dist/{src/features → features}/workspace/reconciliation.js +0 -0
- /package/dist/{src/features → features}/workspace/router.js +0 -0
- /package/dist/{src/features → features}/workspace/store.js +0 -0
- /package/dist/{src/foundation → foundation}/launch-guardian/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/launch-guardian/index.js +0 -0
- /package/dist/{src/foundation → foundation}/launch-guardian/main.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/commands.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/commands.js +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/index.js +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}/lifecycle/model.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/lifecycle/model.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/codec.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/codec.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/evidence.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/evidence.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/index.js +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/proof-gate.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/native-host-protocol/proof-gate.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}/process-containment/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/index.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/linux-process-inspector.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/linux-process-inspector.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/native-guardian-containment.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/native-guardian-containment.js +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/windows-process-inspector.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/process-containment/windows-process-inspector.js +0 -0
- /package/dist/{src/foundation → foundation}/protocol/client.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/protocol/client.js +0 -0
- /package/dist/{src/foundation → foundation}/protocol/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/protocol/index.js +0 -0
- /package/dist/{src/foundation → foundation}/protocol/messages.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/protocol/messages.js +0 -0
- /package/dist/{src/foundation → foundation}/release/bootstrap.d.ts +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/cohort-state.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/cohort-state.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/release-store.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/release-store.js +0 -0
- /package/dist/{src/foundation → foundation}/release/release.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/release.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 → foundation}/release/update-transaction.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/release/update-transaction.js +0 -0
- /package/dist/{src/foundation → foundation}/storage/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/storage/index.js +0 -0
- /package/dist/{src/foundation → foundation}/structured-agent-runtime/index.d.ts +0 -0
- /package/dist/{src/foundation → foundation}/structured-agent-runtime/index.js +0 -0
- /package/dist/{src/foundation → foundation}/supervision/main.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/components.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/conformance.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/index.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/index.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/resources/builtin-themes.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/resources/builtin-themes.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-components.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-components.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-editor-autocomplete.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-editor-autocomplete.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-extension-ui.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-footer-status.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-selectors-dialogs.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/shell-shared-facade.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/adjacent/core/keybindings.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/adjacent/core/keybindings.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/countdown-timer.d.ts +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/custom-entry.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/custom-entry.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/daxnuts.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/daxnuts.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/earendil-announcement.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/earendil-announcement.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/extension-editor.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/extension-editor.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/first-time-setup.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/first-time-setup.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/markdown-transform.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/markdown-transform.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/mermaid.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/owned-editor.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/owned-editor.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/scoped-models-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/scoped-models-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-footer.js +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/components/session-selector-search.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/session-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/skill-invocation-message.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/skill-invocation-message.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/status-indicator.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/status-indicator.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/tree-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/tree-selector.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/trust-selector.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/components/trust-selector.js +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/external-editor.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/model-search.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-component-adapter → integrations/pi/components}/upstream/theme/theme-controller.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme-controller.js +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme.d.ts +0 -0
- /package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/upstream/theme/theme.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/conformance.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/index.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/index.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/model-auth-integration.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/pi-settings-metadata.json +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/pi-engine-adapter → integrations/pi/engine}/resource-extension-integration.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/runtime-integration.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/runtime-integration.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/settings-integration.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflow-controllers.js +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflows.d.ts +0 -0
- /package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflows.js +0 -0
- /package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/index.d.ts +0 -0
- /package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/index.js +0 -0
- /package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/route-host.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/adapter.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/adapter.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/conformance.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/conformance.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/contracts.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/contracts.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/index.d.ts +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/index.js +0 -0
- /package/dist/{src/foundation/pi-tui-runtime-adapter → integrations/pi/tui-runtime}/presentation-adapter.js +0 -0
- /package/dist/{src/product-identity.d.ts → product-identity.d.ts} +0 -0
- /package/dist/{src/product-identity.js → product-identity.js} +0 -0
- /package/dist/{src/product-identity.json → product-identity.json} +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/contracts.js +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/index.d.ts +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/index.js +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/registry.d.ts +0 -0
- /package/dist/{src/foundation/ui-apps → ui/apps}/registry.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}/dialog-panel.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/frame.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/frame.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/index.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/index.js +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}/line-input.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/line-input.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}/list-view.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/list-view.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/mouse.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/mouse.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}/scrollbar.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/scrollbar.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/shortcuts.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/shortcuts.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/spans.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/spans.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}/surface.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/surface.js +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/text.d.ts +0 -0
- /package/dist/{src/foundation/ui-components → ui/components}/text.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}/declarations.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/declarations.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/index.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/index.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/migrations.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/migrations.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
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/sections.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/sections.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/session.js +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/store.d.ts +0 -0
- /package/dist/{src/foundation/owned-ui-settings → ui/settings}/store.js +0 -0
|
@@ -14,6 +14,8 @@ export class SupervisorServer {
|
|
|
14
14
|
terminateProcess;
|
|
15
15
|
reconciliationDeadlineMs;
|
|
16
16
|
shutdownDeadlineMs;
|
|
17
|
+
readActiveReleaseId;
|
|
18
|
+
supersededPollMs;
|
|
17
19
|
id = randomUUID();
|
|
18
20
|
bootNonce;
|
|
19
21
|
pidStartIdentity = `${process.pid}:${Math.floor(Date.now() - process.uptime() * 1_000)}`;
|
|
@@ -31,12 +33,22 @@ export class SupervisorServer {
|
|
|
31
33
|
#results = new Map();
|
|
32
34
|
#metadataWrites = Promise.resolve();
|
|
33
35
|
#closing = false;
|
|
34
|
-
|
|
36
|
+
#superseded = false;
|
|
37
|
+
#supersededPoll = null;
|
|
38
|
+
constructor(store, paths = resolveProductPaths(), release, bootNonce = randomUUID(), terminateProcess = code => process.exit(code), reconciliationDeadlineMs = 3_000, shutdownDeadlineMs = 1_500,
|
|
39
|
+
/**
|
|
40
|
+
* Which release new sessions start on. A cohort that is no longer that release keeps
|
|
41
|
+
* serving the instances it already has, takes no new ones, and exits when its last one
|
|
42
|
+
* leaves. Absent, this supervisor never considers itself superseded.
|
|
43
|
+
*/
|
|
44
|
+
readActiveReleaseId = null, supersededPollMs = 1_000) {
|
|
35
45
|
this.store = store;
|
|
36
46
|
this.release = release;
|
|
37
47
|
this.terminateProcess = terminateProcess;
|
|
38
48
|
this.reconciliationDeadlineMs = reconciliationDeadlineMs;
|
|
39
49
|
this.shutdownDeadlineMs = shutdownDeadlineMs;
|
|
50
|
+
this.readActiveReleaseId = readActiveReleaseId;
|
|
51
|
+
this.supersededPollMs = supersededPollMs;
|
|
40
52
|
this.bootNonce = bootNonce;
|
|
41
53
|
this.paths = paths;
|
|
42
54
|
for (const instance of store.loadActiveLaunchInstances())
|
|
@@ -56,6 +68,7 @@ export class SupervisorServer {
|
|
|
56
68
|
if (this.#server)
|
|
57
69
|
throw new Error("supervisor is already listening");
|
|
58
70
|
await mkdir(this.paths.runtimeDir, { recursive: true, mode: 0o700 });
|
|
71
|
+
await mkdir(this.paths.endpointsDir, { recursive: true, mode: 0o700 });
|
|
59
72
|
if (platform() !== "win32") {
|
|
60
73
|
if (await endpointIsLive(this.paths.endpoint))
|
|
61
74
|
throw new Error(PRODUCT_TEXT.diagnostic(`supervisor already owns ${this.paths.endpoint}`));
|
|
@@ -71,12 +84,44 @@ export class SupervisorServer {
|
|
|
71
84
|
});
|
|
72
85
|
});
|
|
73
86
|
await this.#writeEndpointMetadata();
|
|
87
|
+
if (this.readActiveReleaseId) {
|
|
88
|
+
const poll = setInterval(() => void this.#refreshCohortRole(), this.supersededPollMs);
|
|
89
|
+
poll.unref();
|
|
90
|
+
this.#supersededPoll = poll;
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Notices that another release has become the one new sessions start on. Nothing is
|
|
95
|
+
* interrupted by that: this cohort finishes what it is holding and then leaves.
|
|
96
|
+
*/
|
|
97
|
+
async #refreshCohortRole() {
|
|
98
|
+
if (this.#closing || !this.readActiveReleaseId)
|
|
99
|
+
return;
|
|
100
|
+
const active = await this.readActiveReleaseId().catch(() => null);
|
|
101
|
+
if (active === null)
|
|
102
|
+
return;
|
|
103
|
+
this.#superseded = active !== this.release.releaseId;
|
|
104
|
+
if (this.#superseded && this.#instances.size === 0)
|
|
105
|
+
await this.retire();
|
|
106
|
+
}
|
|
107
|
+
/** Whether new sessions start on some other release. */
|
|
108
|
+
get superseded() {
|
|
109
|
+
return this.#superseded;
|
|
110
|
+
}
|
|
111
|
+
/** Leaves, taking this cohort's own endpoint artifacts with it. */
|
|
112
|
+
async retire() {
|
|
113
|
+
if (this.#closing)
|
|
114
|
+
return;
|
|
115
|
+
await this.close(false);
|
|
74
116
|
}
|
|
75
117
|
async close(stopAgents = false) {
|
|
76
118
|
if (stopAgents && !await this.#drainInstances("update", this.shutdownDeadlineMs)) {
|
|
77
119
|
throw new Error("active launch instances did not release ownership within the shutdown deadline");
|
|
78
120
|
}
|
|
79
121
|
this.#closing = true;
|
|
122
|
+
if (this.#supersededPoll)
|
|
123
|
+
clearInterval(this.#supersededPoll);
|
|
124
|
+
this.#supersededPoll = null;
|
|
80
125
|
for (const client of this.#clients)
|
|
81
126
|
client.destroy();
|
|
82
127
|
if (this.#server)
|
|
@@ -197,6 +242,9 @@ export class SupervisorServer {
|
|
|
197
242
|
#createLaunchInstance(command, socket, clientId) {
|
|
198
243
|
assertNativeProcessIdentity(command.guardianIdentity);
|
|
199
244
|
const existing = this.store.loadLaunchInstance(command.instanceId);
|
|
245
|
+
if (this.#superseded && !existing) {
|
|
246
|
+
throw new Error(PRODUCT_TEXT.diagnostic(`release ${this.release.releaseId} is no longer the release new sessions start on`));
|
|
247
|
+
}
|
|
200
248
|
if (existing) {
|
|
201
249
|
if (existing.ownerClientId !== clientId
|
|
202
250
|
|| existing.profileId !== command.profileId
|
|
@@ -279,6 +327,9 @@ export class SupervisorServer {
|
|
|
279
327
|
this.#uncertainInstances.delete(stored.id);
|
|
280
328
|
this.#unbindOwner(stored.id, socket);
|
|
281
329
|
this.#mutated();
|
|
330
|
+
// The last session on a superseded cohort has left; there is nothing here to keep.
|
|
331
|
+
if (this.#superseded && this.#instances.size === 0)
|
|
332
|
+
void this.retire();
|
|
282
333
|
}
|
|
283
334
|
#ownedInstance(instanceId, socket, clientId) {
|
|
284
335
|
const instance = this.#instances.get(instanceId) ?? this.store.loadLaunchInstance(instanceId);
|
package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/components.d.ts
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OwnedUiTranscriptBlock } from "
|
|
1
|
+
import type { OwnedUiTranscriptBlock } from "../../../contracts/owned-ui/index.js";
|
|
2
2
|
export declare function adaptPiUserMessage(block: OwnedUiTranscriptBlock, width: number): readonly string[];
|
|
3
3
|
export declare function adaptPiAssistantMessage(block: OwnedUiTranscriptBlock, width: number): readonly string[];
|
|
4
4
|
export declare function adaptPiToolExecution(block: OwnedUiTranscriptBlock, width: number, cwd: string): readonly string[];
|
package/dist/{src/foundation/pi-component-adapter → integrations/pi/components}/conformance.js
RENAMED
|
@@ -2,9 +2,9 @@ import { mkdtemp, rm } from "node:fs/promises";
|
|
|
2
2
|
import { tmpdir } from "node:os";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { AssistantMessageComponent, ExtensionSelectorComponent, initTheme, LoginDialogComponent, ModelSelectorComponent, SettingsSelectorComponent, ThemeSelectorComponent, ThinkingSelectorComponent, ToolExecutionComponent, UserMessageComponent, UserMessageSelectorComponent, VERSION, } from "@earendil-works/pi-coding-agent";
|
|
5
|
-
import { OWNED_UI_CONTRACT_VERSION } from "
|
|
5
|
+
import { OWNED_UI_CONTRACT_VERSION } from "../../../contracts/owned-ui/index.js";
|
|
6
6
|
import { createTuiFacade, validatedAssistantMessage } from "./shell-components.js";
|
|
7
|
-
import { PRODUCT_IDENTITY } from "
|
|
7
|
+
import { PRODUCT_IDENTITY } from "../../../product-identity.js";
|
|
8
8
|
export class PiComponentConformanceError extends Error {
|
|
9
9
|
stage;
|
|
10
10
|
constructor(stage, cause) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type ExtensionUIContext } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { OwnedUiExtensionOverlayHandle, OwnedUiExtensionOverlayOptions } from "
|
|
2
|
+
import type { OwnedUiExtensionOverlayHandle, OwnedUiExtensionOverlayOptions } from "../../../contracts/owned-ui/index.js";
|
|
3
3
|
import { type PiShellComponentPort, type PiShellEditorOptions } from "./shell-shared-facade.js";
|
|
4
4
|
export interface PiExtensionUiBridgeHost {
|
|
5
5
|
readonly runtime: Pick<PiShellEditorOptions, "getColumns" | "getRows" | "requestRender">;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { OwnedUiSessionViewModel } from "
|
|
1
|
+
import type { OwnedUiSessionViewModel } from "../../../contracts/owned-ui/index.js";
|
|
2
2
|
import { type PiShellViewComponentPort, type PiShellStatusPort, type PiShellQueuedInputPort, type PiShellHeaderPort, type PiShellResourceEntry, type PiShellLoadedResourcesPort, type PiShellHeaderOptions, type PiShellEditorOptions } from "./shell-shared-facade.js";
|
|
3
3
|
export declare function createPiShellHeader(options?: PiShellHeaderOptions): PiShellHeaderPort;
|
|
4
4
|
export declare function createPiShellLoadedResources(resources: readonly PiShellResourceEntry[], initialExpanded?: boolean): PiShellLoadedResourcesPort;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { AssistantMessageComponent } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { OwnedUiTranscriptBlock } from "
|
|
2
|
+
import type { OwnedUiTranscriptBlock } from "../../../contracts/owned-ui/index.js";
|
|
3
3
|
import { type PiShellComponentPort, type PiShellExtensionRendererResolver, type PiShellTranscriptComponentPort } from "./shell-shared-facade.js";
|
|
4
4
|
export interface PiShellSessionInfoPresentation {
|
|
5
5
|
readonly sessionName?: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { AssistantMessageComponent, BashExecutionComponent, CompactionSummaryMessageComponent, CustomMessageComponent, DynamicBorder, getMarkdownTheme, parseSkillBlock, ToolExecutionComponent, UserMessageComponent, } from "@earendil-works/pi-coding-agent";
|
|
2
2
|
import { SkillInvocationMessageComponent, } from "./upstream/components/skill-invocation-message.js";
|
|
3
3
|
import { Container, Markdown, Spacer, Text, } from "#pi-tui";
|
|
4
|
-
import { PRODUCT_TEXT } from "
|
|
4
|
+
import { PRODUCT_TEXT } from "../../../product-identity.js";
|
|
5
5
|
import { KeybindingsManager, } from "./upstream/adjacent/core/keybindings.js";
|
|
6
6
|
import { PINNED_PI_LAYOUT, piTheme, } from "./theme.js";
|
|
7
7
|
import { componentPort, createTuiFacade, ensureTheme, formatSessionTokens, isRecord, } from "./shell-shared-facade.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ModelSelectorComponent, type SessionInfo, type SettingsCallbacks, type SettingsConfig } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { OwnedUiDialog } from "
|
|
2
|
+
import type { OwnedUiDialog } from "../../../contracts/owned-ui/index.js";
|
|
3
3
|
import { type TrustDecision, type TrustOption, type TrustUpdate } from "./upstream/components/trust-selector.js";
|
|
4
4
|
import { type PiShellComponentPort, type PiShellEditorOptions, type PiShellSelectorOption, type PiShellSelectorOptions } from "./shell-shared-facade.js";
|
|
5
5
|
export declare function createPiShellSelector(options: PiShellSelectorOptions): PiShellComponentPort;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type AutocompleteProvider, type Component, type TUI } from "#pi-tui";
|
|
2
|
-
import type { OwnedUiSessionViewModel, OwnedUiThinkingLevel, OwnedUiTranscriptBlock } from "
|
|
2
|
+
import type { OwnedUiSessionViewModel, OwnedUiThinkingLevel, OwnedUiTranscriptBlock } from "../../../contracts/owned-ui/index.js";
|
|
3
3
|
export interface PiShellComponentPort {
|
|
4
4
|
render(width: number): readonly string[];
|
|
5
5
|
handleInput?(data: string): void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type Component } from "#pi-tui";
|
|
2
|
-
import type { OwnedUiSessionViewModel } from "
|
|
2
|
+
import type { OwnedUiSessionViewModel } from "../../../../../contracts/owned-ui/index.js";
|
|
3
3
|
export declare class SessionFooter implements Component {
|
|
4
4
|
private readonly getView;
|
|
5
5
|
private readonly cwd;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type AgentSessionRuntime, type AgentSessionServices, type SessionInfo } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import { OWNED_UI_EXTENSION_CONTRACT_VERSION, OWNED_UI_EXTENSION_RENDER_CALLBACKS, OWNED_UI_EXTENSION_UI_CALLBACKS, OWNED_UI_EXTENSION_UI_PROPERTIES, type OwnedUiCommand, type OwnedUiCommandOutcome, type OwnedUiEvent, type OwnedUiSessionViewModel, type OwnedUiSnapshot } from "
|
|
2
|
+
import { OWNED_UI_EXTENSION_CONTRACT_VERSION, OWNED_UI_EXTENSION_RENDER_CALLBACKS, OWNED_UI_EXTENSION_UI_CALLBACKS, OWNED_UI_EXTENSION_UI_PROPERTIES, type OwnedUiCommand, type OwnedUiCommandOutcome, type OwnedUiEvent, type OwnedUiSessionViewModel, type OwnedUiSnapshot } from "../../../contracts/owned-ui/index.js";
|
|
3
3
|
import { type PiAuthenticationProviderOption, type PiBashWorkflowResult, type PiPinnedSettingsCallback, type PiPinnedSettingsSnapshot, type PiWorkflowAutocompleteCommand, type PiWorkflowHost, type PiWorkflowInteractionHost, type PiWorkflowOption, type PiWorkflowRequest, type PiWorkflowResult } from "./workflows.js";
|
|
4
|
-
import type { AgentSettingsPort } from "
|
|
4
|
+
import type { AgentSettingsPort } from "../../../contracts/agent-engine/index.js";
|
|
5
5
|
export interface PiEngineRuntimeFactoryInput {
|
|
6
6
|
readonly cwd: string;
|
|
7
7
|
readonly agentDir: string;
|
|
@@ -3,9 +3,9 @@ import { mkdir, rm, writeFile } from "node:fs/promises";
|
|
|
3
3
|
import { tmpdir } from "node:os";
|
|
4
4
|
import { dirname, join, resolve } from "node:path";
|
|
5
5
|
import { promisify } from "node:util";
|
|
6
|
-
import { PRODUCT_IDENTITY } from "
|
|
6
|
+
import { PRODUCT_IDENTITY } from "../../../product-identity.js";
|
|
7
7
|
import { copyToClipboard, DefaultPackageManager, getAgentDir, ProjectTrustStore, SessionManager, } from "@earendil-works/pi-coding-agent";
|
|
8
|
-
import { OWNED_UI_EXTENSION_CONTRACT_VERSION, OWNED_UI_EXTENSION_RENDER_CALLBACKS, OWNED_UI_EXTENSION_UI_CALLBACKS, OWNED_UI_EXTENSION_UI_PROPERTIES, assertOwnedUiCommand, assertOwnedUiExtensionUiPort, assertOwnedUiSnapshot, } from "
|
|
8
|
+
import { OWNED_UI_EXTENSION_CONTRACT_VERSION, OWNED_UI_EXTENSION_RENDER_CALLBACKS, OWNED_UI_EXTENSION_UI_CALLBACKS, OWNED_UI_EXTENSION_UI_PROPERTIES, assertOwnedUiCommand, assertOwnedUiExtensionUiPort, assertOwnedUiSnapshot, } from "../../../contracts/owned-ui/index.js";
|
|
9
9
|
import { PINNED_PI_SETTINGS_CALLBACKS, PINNED_PI_WORKFLOW_COMMAND_NAMES, } from "./workflows.js";
|
|
10
10
|
import { createPiRuntimeIntegration } from "./runtime-integration.js";
|
|
11
11
|
import { PiSessionCommandIntegration } from "./session-integration.js";
|
|
@@ -17,6 +17,7 @@ const execFileAsync = promisify(execFile);
|
|
|
17
17
|
* batch.
|
|
18
18
|
*/
|
|
19
19
|
const EVENT_DELIVERY_BATCH = 16;
|
|
20
|
+
const TOOL_UPDATE_COALESCE_MS = 50;
|
|
20
21
|
const DEFAULT_SURFACE = {
|
|
21
22
|
columns: 100,
|
|
22
23
|
rows: 32,
|
|
@@ -64,6 +65,9 @@ export class PiEngineAdapter {
|
|
|
64
65
|
#messageBlockIds = new WeakMap();
|
|
65
66
|
#messageFallbackIds = new Map();
|
|
66
67
|
#toolBlockIds = new Map();
|
|
68
|
+
#pendingToolUpdates = new Map();
|
|
69
|
+
#toolUpdateFlush = null;
|
|
70
|
+
#usageCache;
|
|
67
71
|
#nextBlockSequence = 0;
|
|
68
72
|
#diagnostics = [];
|
|
69
73
|
#eventQueue = [];
|
|
@@ -162,6 +166,7 @@ export class PiEngineAdapter {
|
|
|
162
166
|
return () => this.#listeners.delete(listener);
|
|
163
167
|
}
|
|
164
168
|
async flushEvents() {
|
|
169
|
+
this.#flushPendingToolUpdates();
|
|
165
170
|
while (this.#eventQueueProcessing)
|
|
166
171
|
await this.#eventQueueProcessing;
|
|
167
172
|
}
|
|
@@ -742,7 +747,7 @@ export class PiEngineAdapter {
|
|
|
742
747
|
...this.#status,
|
|
743
748
|
diagnostics: [...this.#status.diagnostics],
|
|
744
749
|
badges: [...this.#status.badges],
|
|
745
|
-
usage: this.#readUsage(),
|
|
750
|
+
usage: this.#usageCache ??= this.#readUsage(),
|
|
746
751
|
footer: {
|
|
747
752
|
branch: this.#gitBranch,
|
|
748
753
|
sessionName: this.#session?.sessionManager?.getSessionName() ?? null,
|
|
@@ -808,6 +813,11 @@ export class PiEngineAdapter {
|
|
|
808
813
|
if (this.#disposed)
|
|
809
814
|
return;
|
|
810
815
|
this.#disposed = true;
|
|
816
|
+
if (this.#toolUpdateFlush !== null) {
|
|
817
|
+
clearTimeout(this.#toolUpdateFlush);
|
|
818
|
+
this.#toolUpdateFlush = null;
|
|
819
|
+
}
|
|
820
|
+
this.#pendingToolUpdates.clear();
|
|
811
821
|
this.#extensionBound = false;
|
|
812
822
|
this.#extensionUi = undefined;
|
|
813
823
|
this.#extensionShutdown = undefined;
|
|
@@ -1467,6 +1477,10 @@ export class PiEngineAdapter {
|
|
|
1467
1477
|
#handlePiEvent(event) {
|
|
1468
1478
|
if (!isRecord(event) || typeof event.type !== "string")
|
|
1469
1479
|
return;
|
|
1480
|
+
// Usage moves at message and lifecycle boundaries, not with stream chunks, so the
|
|
1481
|
+
// two streaming event kinds keep the memo and everything else drops it.
|
|
1482
|
+
if (event.type !== "message_update" && event.type !== "tool_execution_update")
|
|
1483
|
+
this.#usageCache = undefined;
|
|
1470
1484
|
switch (event.type) {
|
|
1471
1485
|
case "agent_start":
|
|
1472
1486
|
this.#agentRunActive = true;
|
|
@@ -1500,10 +1514,17 @@ export class PiEngineAdapter {
|
|
|
1500
1514
|
}
|
|
1501
1515
|
return;
|
|
1502
1516
|
case "tool_execution_start":
|
|
1503
|
-
case "
|
|
1504
|
-
|
|
1517
|
+
case "tool_execution_end": {
|
|
1518
|
+
// The end supersedes any update still waiting on the coalescing timer.
|
|
1519
|
+
const toolCallId = stringValue(event.toolCallId);
|
|
1520
|
+
if (toolCallId !== undefined)
|
|
1521
|
+
this.#pendingToolUpdates.delete(toolCallId);
|
|
1505
1522
|
this.#upsertToolExecutionBlock(event);
|
|
1506
1523
|
return;
|
|
1524
|
+
}
|
|
1525
|
+
case "tool_execution_update":
|
|
1526
|
+
this.#coalesceToolExecutionUpdate(event);
|
|
1527
|
+
return;
|
|
1507
1528
|
case "agent_settled":
|
|
1508
1529
|
case "agent_end": {
|
|
1509
1530
|
if (event.type === "agent_end" && event.willRetry === true)
|
|
@@ -1795,6 +1816,35 @@ export class PiEngineAdapter {
|
|
|
1795
1816
|
}
|
|
1796
1817
|
return blocks;
|
|
1797
1818
|
}
|
|
1819
|
+
/**
|
|
1820
|
+
* A busy tool streams far more output chunks than a terminal frame can show, and every
|
|
1821
|
+
* chunk restates the whole accumulated output. Keeping only the newest chunk per tool
|
|
1822
|
+
* and applying it on a short timer bounds the per-command work by frames rather than
|
|
1823
|
+
* by chunks, which is what keeps typed input and the spinner alive under the stream.
|
|
1824
|
+
*/
|
|
1825
|
+
#coalesceToolExecutionUpdate(event) {
|
|
1826
|
+
const toolCallId = stringValue(event.toolCallId);
|
|
1827
|
+
if (!toolCallId)
|
|
1828
|
+
return;
|
|
1829
|
+
this.#pendingToolUpdates.set(toolCallId, event);
|
|
1830
|
+
this.#toolUpdateFlush ??= setTimeout(() => {
|
|
1831
|
+
this.#toolUpdateFlush = null;
|
|
1832
|
+
if (!this.#disposed)
|
|
1833
|
+
this.#flushPendingToolUpdates();
|
|
1834
|
+
}, TOOL_UPDATE_COALESCE_MS);
|
|
1835
|
+
}
|
|
1836
|
+
#flushPendingToolUpdates() {
|
|
1837
|
+
if (this.#toolUpdateFlush !== null) {
|
|
1838
|
+
clearTimeout(this.#toolUpdateFlush);
|
|
1839
|
+
this.#toolUpdateFlush = null;
|
|
1840
|
+
}
|
|
1841
|
+
if (this.#pendingToolUpdates.size === 0)
|
|
1842
|
+
return;
|
|
1843
|
+
const pending = [...this.#pendingToolUpdates.values()];
|
|
1844
|
+
this.#pendingToolUpdates.clear();
|
|
1845
|
+
for (const update of pending)
|
|
1846
|
+
this.#upsertToolExecutionBlock(update);
|
|
1847
|
+
}
|
|
1798
1848
|
#upsertToolExecutionBlock(event) {
|
|
1799
1849
|
const toolCallId = stringValue(event.toolCallId);
|
|
1800
1850
|
if (!toolCallId)
|
|
@@ -1814,7 +1864,9 @@ export class PiEngineAdapter {
|
|
|
1814
1864
|
toolCallId,
|
|
1815
1865
|
toolName: stringValue(event.toolName) ?? "unknown",
|
|
1816
1866
|
arguments: jsonSummary(event.args),
|
|
1817
|
-
result
|
|
1867
|
+
// A partial result repeats the whole accumulated output on every chunk;
|
|
1868
|
+
// summarizing it each time would cost quadratic work over the stream.
|
|
1869
|
+
result: ended ? jsonSummary(source) : { summary: "", json: null },
|
|
1818
1870
|
partialResult: event.type === "tool_execution_update",
|
|
1819
1871
|
argsComplete: ended,
|
|
1820
1872
|
isError: event.isError === true,
|
|
@@ -1897,6 +1949,7 @@ export class PiEngineAdapter {
|
|
|
1897
1949
|
this.#emitEvent({ type: "diagnostic", diagnostic });
|
|
1898
1950
|
}
|
|
1899
1951
|
#emitView() {
|
|
1952
|
+
this.#usageCache = undefined;
|
|
1900
1953
|
this.#viewRevision += 1;
|
|
1901
1954
|
this.#emitEvent({ type: "session-view", view: this.view() });
|
|
1902
1955
|
}
|
|
@@ -2,8 +2,8 @@ import { mkdtemp, rm } from "node:fs/promises";
|
|
|
2
2
|
import { tmpdir } from "node:os";
|
|
3
3
|
import { join } from "node:path";
|
|
4
4
|
import { createAgentSessionFromServices, createAgentSessionRuntime, createAgentSessionServices, ModelRuntime, SessionManager, VERSION, } from "@earendil-works/pi-coding-agent";
|
|
5
|
-
import { OWNED_UI_CONTRACT_VERSION } from "
|
|
6
|
-
import { PRODUCT_IDENTITY } from "
|
|
5
|
+
import { OWNED_UI_CONTRACT_VERSION } from "../../../contracts/owned-ui/index.js";
|
|
6
|
+
import { PRODUCT_IDENTITY } from "../../../product-identity.js";
|
|
7
7
|
export const REQUIRED_PI_CAPABILITY_OPERATIONS = Object.freeze({
|
|
8
8
|
"public-exports": ["services.create", "session.create", "runtime.create"],
|
|
9
9
|
"session-lifecycle": ["session.new", "session.resume", "session.rebind", "session.dispose"],
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/model-auth-integration.d.ts
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ModelRuntime } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { AgentAuthenticationPort, AgentModelDescriptor, AgentModelPort } from "
|
|
2
|
+
import type { AgentAuthenticationPort, AgentModelDescriptor, AgentModelPort } from "../../../contracts/agent-engine/index.js";
|
|
3
3
|
export type PiDocumentedModelRuntime = Pick<ModelRuntime, "getAvailableSnapshot" | "getModel" | "getProvider" | "hasConfiguredAuth" | "refresh" | "logout">;
|
|
4
4
|
export interface PiModelAuthenticationOptions {
|
|
5
5
|
readonly runtime: PiDocumentedModelRuntime;
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.d.ts
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AgentPackagesPort, type AgentPackagesPortInput } from "
|
|
1
|
+
import { type AgentPackagesPort, type AgentPackagesPortInput } from "../../../contracts/agent-engine/index.js";
|
|
2
2
|
/**
|
|
3
3
|
* Pinned Pi's package manager already takes the profile root as an argument, so
|
|
4
4
|
* this binds it to the root A1 chose rather than to whatever the configuration-root
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/package-integration.js
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { join } from "node:path";
|
|
2
2
|
import { DefaultPackageManager, ModelRuntime, SettingsManager } from "@earendil-works/pi-coding-agent";
|
|
3
|
-
import { agentPackageOutcome, } from "
|
|
3
|
+
import { agentPackageOutcome, } from "../../../contracts/agent-engine/index.js";
|
|
4
4
|
const MODEL_REFRESH_TIMEOUT_MS = 15_000;
|
|
5
5
|
/**
|
|
6
6
|
* Pinned Pi's package manager already takes the profile root as an argument, so
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AgentSession } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { AgentExtensionBinding, AgentExtensionFailure, AgentExtensionPort, AgentResourceDescriptor, AgentResourcesPort, AgentSessionMetadata } from "
|
|
2
|
+
import type { AgentExtensionBinding, AgentExtensionFailure, AgentExtensionPort, AgentResourceDescriptor, AgentResourcesPort, AgentSessionMetadata } from "../../../contracts/agent-engine/index.js";
|
|
3
3
|
export interface PiResourceExtensionOptions {
|
|
4
4
|
readonly session: AgentSession;
|
|
5
5
|
readonly bindUi: () => Promise<void>;
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/session-integration.d.ts
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { AgentSession, AgentSessionEvent } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import { type AgentCommandOutcome, type AgentEvent } from "
|
|
2
|
+
import { type AgentCommandOutcome, type AgentEvent } from "../../../contracts/agent-engine/index.js";
|
|
3
3
|
export interface PiDocumentedSessionCommands {
|
|
4
4
|
readonly isStreaming: AgentSession["isStreaming"];
|
|
5
5
|
readonly isRetrying: AgentSession["isRetrying"];
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/settings-integration.d.ts
RENAMED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { SettingsManager } from "@earendil-works/pi-coding-agent";
|
|
2
|
-
import type { AgentJsonValue, AgentSettingDescriptor, AgentSettingsPort } from "
|
|
2
|
+
import type { AgentJsonValue, AgentSettingDescriptor, AgentSettingsPort } from "../../../contracts/agent-engine/index.js";
|
|
3
3
|
/**
|
|
4
4
|
* Values only the running engine knows: the themes installed on this machine and
|
|
5
5
|
* the thinking levels this session supports. The boundary asks for them as it is
|
package/dist/{src/foundation/pi-engine-adapter → integrations/pi/engine}/workflow-controllers.d.ts
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AgentJsonValue, AgentWorkflowDescriptor, AgentWorkflowPort } from "
|
|
1
|
+
import type { AgentJsonValue, AgentWorkflowDescriptor, AgentWorkflowPort } from "../../../contracts/agent-engine/index.js";
|
|
2
2
|
import { type PiWorkflowRoute } from "./workflows.js";
|
|
3
3
|
export type WorkflowCapability = "prompt" | "abort" | "compact" | "bash" | "models.read" | "models.write" | "auth.login" | "auth.logout" | "settings.read" | "settings.write" | "resources.read" | "resources.reload" | "session.read" | "session.new" | "session.resume" | "session.fork" | "session.tree" | "session.import" | "clipboard.write" | "export.write" | "share.write" | "process.quit" | "diagnostics.read";
|
|
4
4
|
export interface WorkflowControllerResult {
|
package/dist/{src/foundation/pi-owned-ui-integration → integrations/pi/owned-ui}/route-host.d.ts
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { PaneMouseEvent } from "
|
|
1
|
+
import type { PaneMouseEvent } from "../../../ui/components/index.js";
|
|
2
2
|
/**
|
|
3
3
|
* The seam between the pinned shell and A1-owned screens. The shell asks whether
|
|
4
4
|
* a route is claimed, mounts whatever surface it is handed, and forwards keys to
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import type { OwnedUiSessionViewModel
|
|
1
|
+
import type { OwnedUiSessionViewModel } from "../../../contracts/owned-ui/index.js";
|
|
2
2
|
import type { UiRouteHost } from "./route-host.js";
|
|
3
|
-
import { type
|
|
4
|
-
import { type PiShellComponentPort, type PiShellEditorPort, type PiShellExtensionRendererResolver, type PiShellHeaderOptions, type PiShellHeaderPort, type PiShellLoadedResourcesPort, type
|
|
5
|
-
import {
|
|
6
|
-
type OwnedUiBackendPort = PiEngineAdapter;
|
|
7
|
-
type OwnedUiTerminalPort = PiTuiTerminalPort;
|
|
3
|
+
import { type PiEngineAdapter, type PiWorkflowResult } from "../engine/index.js";
|
|
4
|
+
import { type PiShellComponentPort, type PiShellEditorPort, type PiShellExtensionRendererResolver, type PiShellHeaderOptions, type PiShellHeaderPort, type PiShellLoadedResourcesPort, type PiShellResourceEntry, type PiShellTranscriptComponentPort } from "../components/index.js";
|
|
5
|
+
import { type PiTuiComponentPort, type PiTuiLayoutNode, type PiTuiTerminalPort } from "../tui-runtime/index.js";
|
|
6
|
+
export type OwnedUiBackendPort = PiEngineAdapter;
|
|
7
|
+
export type OwnedUiTerminalPort = PiTuiTerminalPort;
|
|
8
8
|
type OwnedUiStartupOptions = PiShellHeaderOptions;
|
|
9
9
|
export interface OwnedUiSessionShellOptions {
|
|
10
10
|
readonly backend: OwnedUiBackendPort;
|
|
@@ -69,44 +69,5 @@ export declare class OwnedUiSessionShellRoot implements PiTuiComponentPort {
|
|
|
69
69
|
setFocused(focused: boolean): void;
|
|
70
70
|
dispose(): void;
|
|
71
71
|
}
|
|
72
|
-
export declare
|
|
73
|
-
#private;
|
|
74
|
-
readonly backend: OwnedUiBackendPort;
|
|
75
|
-
readonly root: OwnedUiSessionShellRoot;
|
|
76
|
-
readonly runtime: PiTuiRuntimeAdapter;
|
|
77
|
-
constructor(options: OwnedUiSessionShellOptions);
|
|
78
|
-
view(): OwnedUiSessionViewModel;
|
|
79
|
-
start(): void;
|
|
80
|
-
onView(listener: (view: OwnedUiSessionViewModel) => void): () => void;
|
|
81
|
-
waitUntilStopped(): Promise<void>;
|
|
82
|
-
submit(text: string): Promise<AdapterCommandResult>;
|
|
83
|
-
clearOrExit(now?: number): Promise<AdapterCommandResult>;
|
|
84
|
-
interrupt(): Promise<AdapterCommandResult>;
|
|
85
|
-
abort(): Promise<AdapterCommandResult>;
|
|
86
|
-
retry(): Promise<AdapterCommandResult>;
|
|
87
|
-
compact(): Promise<AdapterCommandResult>;
|
|
88
|
-
newSession(): Promise<AdapterCommandResult>;
|
|
89
|
-
resumeSession(sessionPath: string): Promise<AdapterCommandResult>;
|
|
90
|
-
setModel(providerId: string, modelId: string): Promise<AdapterCommandResult>;
|
|
91
|
-
setThinkingLevel(thinkingLevel: OwnedUiThinkingLevel): Promise<AdapterCommandResult>;
|
|
92
|
-
cycleThinkingLevel(): Promise<AdapterCommandResult>;
|
|
93
|
-
cycleModel(direction: "forward" | "backward"): Promise<AdapterCommandResult>;
|
|
94
|
-
queueFollowUp(): Promise<AdapterCommandResult>;
|
|
95
|
-
restoreQueuedInput(): void;
|
|
96
|
-
showSelector(title: string, options: readonly PiShellSelectorOption[], onSelect: (id: string) => void, onCancel?: () => void): PiTuiOverlayHandle;
|
|
97
|
-
showModelSelector(): void;
|
|
98
|
-
showForkSelector(): void;
|
|
99
|
-
showLogoutSelector(): Promise<void>;
|
|
100
|
-
showLoginMethodSelector(providerReference: string): void;
|
|
101
|
-
showTreeSelector(initialSelectedId?: string): void;
|
|
102
|
-
showLoginAuthTypeSelector(): void;
|
|
103
|
-
showLoginProviderSelector(authType: "oauth" | "api_key"): void;
|
|
104
|
-
showSessionSelector(): void;
|
|
105
|
-
showSettingsSelector(): void;
|
|
106
|
-
shutdown(): Promise<AdapterCommandResult>;
|
|
107
|
-
runWorkflow(request: PiWorkflowRequest): Promise<AdapterCommandResult>;
|
|
108
|
-
showTrustSelector(): void;
|
|
109
|
-
showScopedModelsSelector(): void;
|
|
110
|
-
dispose(): Promise<void>;
|
|
111
|
-
}
|
|
72
|
+
export declare function shellResourceEntries(backend: OwnedUiBackendPort): readonly PiShellResourceEntry[];
|
|
112
73
|
export {};
|