@vibesdotdev/external 0.0.0-stage → 1.0.0-rc.1
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/LICENSE +18 -0
- package/README.md +68 -2
- package/REFERENCE.md +217 -0
- package/dist/acp/index.d.ts +28 -0
- package/dist/acp/index.d.ts.map +1 -0
- package/dist/acp/index.js +31 -0
- package/dist/acp/index.js.map +1 -0
- package/dist/ambient/agent-roster-heartbeat.d.ts +67 -0
- package/dist/ambient/agent-roster-heartbeat.d.ts.map +1 -0
- package/dist/ambient/agent-roster-heartbeat.js +257 -0
- package/dist/ambient/agent-roster-heartbeat.js.map +1 -0
- package/dist/ambient/attempt.d.ts +19 -0
- package/dist/ambient/attempt.d.ts.map +1 -0
- package/dist/ambient/attempt.js +39 -0
- package/dist/ambient/attempt.js.map +1 -0
- package/dist/ambient/cloud-agent-roster-provider.impl.d.ts +13 -0
- package/dist/ambient/cloud-agent-roster-provider.impl.d.ts.map +1 -0
- package/dist/ambient/cloud-agent-roster-provider.impl.js +73 -0
- package/dist/ambient/cloud-agent-roster-provider.impl.js.map +1 -0
- package/dist/ambient/cloud-authenticated-json.d.ts +69 -0
- package/dist/ambient/cloud-authenticated-json.d.ts.map +1 -0
- package/dist/ambient/cloud-authenticated-json.js +108 -0
- package/dist/ambient/cloud-authenticated-json.js.map +1 -0
- package/dist/ambient/cloud-touch-projection.impl.d.ts +74 -0
- package/dist/ambient/cloud-touch-projection.impl.d.ts.map +1 -0
- package/dist/ambient/cloud-touch-projection.impl.js +225 -0
- package/dist/ambient/cloud-touch-projection.impl.js.map +1 -0
- package/dist/ambient/collaboration-settings.d.ts +50 -0
- package/dist/ambient/collaboration-settings.d.ts.map +1 -0
- package/dist/ambient/collaboration-settings.js +57 -0
- package/dist/ambient/collaboration-settings.js.map +1 -0
- package/dist/ambient/collision-notice.d.ts +41 -0
- package/dist/ambient/collision-notice.d.ts.map +1 -0
- package/dist/ambient/collision-notice.js +104 -0
- package/dist/ambient/collision-notice.js.map +1 -0
- package/dist/ambient/default-collision-filter.impl.d.ts +19 -0
- package/dist/ambient/default-collision-filter.impl.d.ts.map +1 -0
- package/dist/ambient/default-collision-filter.impl.js +53 -0
- package/dist/ambient/default-collision-filter.impl.js.map +1 -0
- package/dist/ambient/default-notice-formatter.impl.d.ts +4 -0
- package/dist/ambient/default-notice-formatter.impl.d.ts.map +1 -0
- package/dist/ambient/default-notice-formatter.impl.js +38 -0
- package/dist/ambient/default-notice-formatter.impl.js.map +1 -0
- package/dist/ambient/file-access-ambient-drain.impl.d.ts +21 -0
- package/dist/ambient/file-access-ambient-drain.impl.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient-drain.impl.js +53 -0
- package/dist/ambient/file-access-ambient-drain.impl.js.map +1 -0
- package/dist/ambient/file-access-ambient-drain.subscription.descriptor.d.ts +27 -0
- package/dist/ambient/file-access-ambient-drain.subscription.descriptor.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient-drain.subscription.descriptor.js +27 -0
- package/dist/ambient/file-access-ambient-drain.subscription.descriptor.js.map +1 -0
- package/dist/ambient/file-access-ambient-fs.impl.d.ts +45 -0
- package/dist/ambient/file-access-ambient-fs.impl.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient-fs.impl.js +243 -0
- package/dist/ambient/file-access-ambient-fs.impl.js.map +1 -0
- package/dist/ambient/file-access-ambient-fs.subscription.descriptor.d.ts +32 -0
- package/dist/ambient/file-access-ambient-fs.subscription.descriptor.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient-fs.subscription.descriptor.js +39 -0
- package/dist/ambient/file-access-ambient-fs.subscription.descriptor.js.map +1 -0
- package/dist/ambient/file-access-ambient.impl.d.ts +32 -0
- package/dist/ambient/file-access-ambient.impl.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient.impl.js +231 -0
- package/dist/ambient/file-access-ambient.impl.js.map +1 -0
- package/dist/ambient/file-access-ambient.subscription.descriptor.d.ts +31 -0
- package/dist/ambient/file-access-ambient.subscription.descriptor.d.ts.map +1 -0
- package/dist/ambient/file-access-ambient.subscription.descriptor.js +31 -0
- package/dist/ambient/file-access-ambient.subscription.descriptor.js.map +1 -0
- package/dist/ambient/file-access-shared.d.ts +48 -0
- package/dist/ambient/file-access-shared.d.ts.map +1 -0
- package/dist/ambient/file-access-shared.js +59 -0
- package/dist/ambient/file-access-shared.js.map +1 -0
- package/dist/ambient/message-transport.impl.d.ts +47 -0
- package/dist/ambient/message-transport.impl.d.ts.map +1 -0
- package/dist/ambient/message-transport.impl.js +300 -0
- package/dist/ambient/message-transport.impl.js.map +1 -0
- package/dist/ambient/pending-notices.d.ts +11 -0
- package/dist/ambient/pending-notices.d.ts.map +1 -0
- package/dist/ambient/pending-notices.js +24 -0
- package/dist/ambient/pending-notices.js.map +1 -0
- package/dist/ambient/subsystem-overlap.impl.d.ts +60 -0
- package/dist/ambient/subsystem-overlap.impl.d.ts.map +1 -0
- package/dist/ambient/subsystem-overlap.impl.js +127 -0
- package/dist/ambient/subsystem-overlap.impl.js.map +1 -0
- package/dist/cli/dev.external.hooks-install.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.hooks-install.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-install.descriptor.js +27 -0
- package/dist/cli/dev.external.hooks-install.descriptor.js.map +1 -0
- package/dist/cli/dev.external.hooks-install.impl.d.ts +9 -0
- package/dist/cli/dev.external.hooks-install.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-install.impl.js +57 -0
- package/dist/cli/dev.external.hooks-install.impl.js.map +1 -0
- package/dist/cli/dev.external.hooks-list.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.hooks-list.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-list.descriptor.js +16 -0
- package/dist/cli/dev.external.hooks-list.descriptor.js.map +1 -0
- package/dist/cli/dev.external.hooks-list.impl.d.ts +3 -0
- package/dist/cli/dev.external.hooks-list.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-list.impl.js +68 -0
- package/dist/cli/dev.external.hooks-list.impl.js.map +1 -0
- package/dist/cli/dev.external.hooks-uninstall.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.hooks-uninstall.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-uninstall.descriptor.js +30 -0
- package/dist/cli/dev.external.hooks-uninstall.descriptor.js.map +1 -0
- package/dist/cli/dev.external.hooks-uninstall.impl.d.ts +9 -0
- package/dist/cli/dev.external.hooks-uninstall.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks-uninstall.impl.js +59 -0
- package/dist/cli/dev.external.hooks-uninstall.impl.js.map +1 -0
- package/dist/cli/dev.external.hooks.call.descriptor.d.ts +12 -0
- package/dist/cli/dev.external.hooks.call.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks.call.descriptor.js +51 -0
- package/dist/cli/dev.external.hooks.call.descriptor.js.map +1 -0
- package/dist/cli/dev.external.hooks.call.impl.d.ts +6 -0
- package/dist/cli/dev.external.hooks.call.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks.call.impl.js +162 -0
- package/dist/cli/dev.external.hooks.call.impl.js.map +1 -0
- package/dist/cli/dev.external.hooks.descriptor.d.ts +9 -0
- package/dist/cli/dev.external.hooks.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.hooks.descriptor.js +17 -0
- package/dist/cli/dev.external.hooks.descriptor.js.map +1 -0
- package/dist/cli/dev.external.launch.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.launch.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.launch.descriptor.js +31 -0
- package/dist/cli/dev.external.launch.descriptor.js.map +1 -0
- package/dist/cli/dev.external.launch.impl.d.ts +17 -0
- package/dist/cli/dev.external.launch.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.launch.impl.js +137 -0
- package/dist/cli/dev.external.launch.impl.js.map +1 -0
- package/dist/cli/dev.external.presets-apply.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.presets-apply.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-apply.descriptor.js +36 -0
- package/dist/cli/dev.external.presets-apply.descriptor.js.map +1 -0
- package/dist/cli/dev.external.presets-apply.impl.d.ts +3 -0
- package/dist/cli/dev.external.presets-apply.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-apply.impl.js +119 -0
- package/dist/cli/dev.external.presets-apply.impl.js.map +1 -0
- package/dist/cli/dev.external.presets-list.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.presets-list.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-list.descriptor.js +21 -0
- package/dist/cli/dev.external.presets-list.descriptor.js.map +1 -0
- package/dist/cli/dev.external.presets-list.impl.d.ts +3 -0
- package/dist/cli/dev.external.presets-list.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-list.impl.js +33 -0
- package/dist/cli/dev.external.presets-list.impl.js.map +1 -0
- package/dist/cli/dev.external.presets-show.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.presets-show.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-show.descriptor.js +29 -0
- package/dist/cli/dev.external.presets-show.descriptor.js.map +1 -0
- package/dist/cli/dev.external.presets-show.impl.d.ts +7 -0
- package/dist/cli/dev.external.presets-show.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.presets-show.impl.js +39 -0
- package/dist/cli/dev.external.presets-show.impl.js.map +1 -0
- package/dist/cli/dev.external.presets.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.presets.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.presets.descriptor.js +15 -0
- package/dist/cli/dev.external.presets.descriptor.js.map +1 -0
- package/dist/cli/dev.external.setup.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.setup.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.setup.descriptor.js +29 -0
- package/dist/cli/dev.external.setup.descriptor.js.map +1 -0
- package/dist/cli/dev.external.setup.impl.d.ts +3 -0
- package/dist/cli/dev.external.setup.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.setup.impl.js +129 -0
- package/dist/cli/dev.external.setup.impl.js.map +1 -0
- package/dist/cli/dev.external.skills-generate.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.skills-generate.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.skills-generate.descriptor.js +43 -0
- package/dist/cli/dev.external.skills-generate.descriptor.js.map +1 -0
- package/dist/cli/dev.external.skills-generate.impl.consumer.d.ts +3 -0
- package/dist/cli/dev.external.skills-generate.impl.consumer.d.ts.map +1 -0
- package/dist/cli/dev.external.skills-generate.impl.consumer.js +140 -0
- package/dist/cli/dev.external.skills-generate.impl.consumer.js.map +1 -0
- package/dist/cli/dev.external.skills.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.skills.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.skills.descriptor.js +15 -0
- package/dist/cli/dev.external.skills.descriptor.js.map +1 -0
- package/dist/cli/dev.external.status.descriptor.d.ts +7 -0
- package/dist/cli/dev.external.status.descriptor.d.ts.map +1 -0
- package/dist/cli/dev.external.status.descriptor.js +16 -0
- package/dist/cli/dev.external.status.descriptor.js.map +1 -0
- package/dist/cli/dev.external.status.impl.d.ts +24 -0
- package/dist/cli/dev.external.status.impl.d.ts.map +1 -0
- package/dist/cli/dev.external.status.impl.js +165 -0
- package/dist/cli/dev.external.status.impl.js.map +1 -0
- package/dist/cli/launch/launch.cli-group.descriptor.d.ts +4 -0
- package/dist/cli/launch/launch.cli-group.descriptor.d.ts.map +1 -0
- package/dist/cli/launch/launch.cli-group.descriptor.js +12 -0
- package/dist/cli/launch/launch.cli-group.descriptor.js.map +1 -0
- package/dist/cli/launch/launch.harness.impl.consumer.d.ts +6 -0
- package/dist/cli/launch/launch.harness.impl.consumer.d.ts.map +1 -0
- package/dist/cli/launch/launch.harness.impl.consumer.js +55 -0
- package/dist/cli/launch/launch.harness.impl.consumer.js.map +1 -0
- package/dist/cli/launch/launch.list.descriptor.d.ts +4 -0
- package/dist/cli/launch/launch.list.descriptor.d.ts.map +1 -0
- package/dist/cli/launch/launch.list.descriptor.js +13 -0
- package/dist/cli/launch/launch.list.descriptor.js.map +1 -0
- package/dist/cli/launch/launch.list.impl.consumer.d.ts +7 -0
- package/dist/cli/launch/launch.list.impl.consumer.d.ts.map +1 -0
- package/dist/cli/launch/launch.list.impl.consumer.js +26 -0
- package/dist/cli/launch/launch.list.impl.consumer.js.map +1 -0
- package/dist/cli/launch/launch.logs.descriptor.d.ts +4 -0
- package/dist/cli/launch/launch.logs.descriptor.d.ts.map +1 -0
- package/dist/cli/launch/launch.logs.descriptor.js +30 -0
- package/dist/cli/launch/launch.logs.descriptor.js.map +1 -0
- package/dist/cli/launch/launch.logs.impl.consumer.d.ts +7 -0
- package/dist/cli/launch/launch.logs.impl.consumer.d.ts.map +1 -0
- package/dist/cli/launch/launch.logs.impl.consumer.js +78 -0
- package/dist/cli/launch/launch.logs.impl.consumer.js.map +1 -0
- package/dist/cli/launch/launch.status.descriptor.d.ts +4 -0
- package/dist/cli/launch/launch.status.descriptor.d.ts.map +1 -0
- package/dist/cli/launch/launch.status.descriptor.js +21 -0
- package/dist/cli/launch/launch.status.descriptor.js.map +1 -0
- package/dist/cli/launch/launch.status.impl.consumer.d.ts +7 -0
- package/dist/cli/launch/launch.status.impl.consumer.d.ts.map +1 -0
- package/dist/cli/launch/launch.status.impl.consumer.js +69 -0
- package/dist/cli/launch/launch.status.impl.consumer.js.map +1 -0
- package/dist/cli/plugin.d.ts +4 -0
- package/dist/cli/plugin.d.ts.map +1 -0
- package/dist/cli/plugin.js +76 -0
- package/dist/cli/plugin.js.map +1 -0
- package/dist/cli/runtime-projection.d.ts +34 -0
- package/dist/cli/runtime-projection.d.ts.map +1 -0
- package/dist/cli/runtime-projection.js +272 -0
- package/dist/cli/runtime-projection.js.map +1 -0
- package/dist/cli/stdio.d.ts +15 -0
- package/dist/cli/stdio.d.ts.map +1 -0
- package/dist/cli/stdio.js +15 -0
- package/dist/cli/stdio.js.map +1 -0
- package/dist/cli/who.descriptor.d.ts +16 -0
- package/dist/cli/who.descriptor.d.ts.map +1 -0
- package/dist/cli/who.descriptor.js +38 -0
- package/dist/cli/who.descriptor.js.map +1 -0
- package/dist/cli/who.impl.d.ts +16 -0
- package/dist/cli/who.impl.d.ts.map +1 -0
- package/dist/cli/who.impl.js +127 -0
- package/dist/cli/who.impl.js.map +1 -0
- package/dist/client/external-client.d.ts +423 -0
- package/dist/client/external-client.d.ts.map +1 -0
- package/dist/client/external-client.js +988 -0
- package/dist/client/external-client.js.map +1 -0
- package/dist/client/index.d.ts +9 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +8 -0
- package/dist/client/index.js.map +1 -0
- package/dist/client/lifecycle.d.ts +25 -0
- package/dist/client/lifecycle.d.ts.map +1 -0
- package/dist/client/lifecycle.js +134 -0
- package/dist/client/lifecycle.js.map +1 -0
- package/dist/config/binary-detection.d.ts +26 -0
- package/dist/config/binary-detection.d.ts.map +1 -0
- package/dist/config/binary-detection.js +105 -0
- package/dist/config/binary-detection.js.map +1 -0
- package/dist/config/external.config.descriptor.d.ts +11 -0
- package/dist/config/external.config.descriptor.d.ts.map +1 -0
- package/dist/config/external.config.descriptor.js +41 -0
- package/dist/config/external.config.descriptor.js.map +1 -0
- package/dist/config/index.d.ts +10 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +10 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/manifest.d.ts +4696 -0
- package/dist/config/manifest.d.ts.map +1 -0
- package/dist/config/manifest.js +210 -0
- package/dist/config/manifest.js.map +1 -0
- package/dist/config/read.d.ts +13 -0
- package/dist/config/read.d.ts.map +1 -0
- package/dist/config/read.js +20 -0
- package/dist/config/read.js.map +1 -0
- package/dist/consumer.d.ts +15 -0
- package/dist/consumer.d.ts.map +1 -0
- package/dist/consumer.js +15 -0
- package/dist/consumer.js.map +1 -0
- package/dist/detection/base.d.ts +71 -0
- package/dist/detection/base.d.ts.map +1 -0
- package/dist/detection/base.js +115 -0
- package/dist/detection/base.js.map +1 -0
- package/dist/detection/command-probe.d.ts +43 -0
- package/dist/detection/command-probe.d.ts.map +1 -0
- package/dist/detection/command-probe.js +75 -0
- package/dist/detection/command-probe.js.map +1 -0
- package/dist/detection/config-document.d.ts +31 -0
- package/dist/detection/config-document.d.ts.map +1 -0
- package/dist/detection/config-document.js +138 -0
- package/dist/detection/config-document.js.map +1 -0
- package/dist/detection/index.d.ts +11 -0
- package/dist/detection/index.d.ts.map +1 -0
- package/dist/detection/index.js +13 -0
- package/dist/detection/index.js.map +1 -0
- package/dist/detection/manifest-detector-helpers.d.ts +45 -0
- package/dist/detection/manifest-detector-helpers.d.ts.map +1 -0
- package/dist/detection/manifest-detector-helpers.js +198 -0
- package/dist/detection/manifest-detector-helpers.js.map +1 -0
- package/dist/detection/manifest-detector.d.ts +34 -0
- package/dist/detection/manifest-detector.d.ts.map +1 -0
- package/dist/detection/manifest-detector.js +123 -0
- package/dist/detection/manifest-detector.js.map +1 -0
- package/dist/detection/service.d.ts +99 -0
- package/dist/detection/service.d.ts.map +1 -0
- package/dist/detection/service.js +124 -0
- package/dist/detection/service.js.map +1 -0
- package/dist/detection/types.d.ts +113 -0
- package/dist/detection/types.d.ts.map +1 -0
- package/dist/detection/types.js +30 -0
- package/dist/detection/types.js.map +1 -0
- package/dist/dev.external.descriptor.d.ts +9 -0
- package/dist/dev.external.descriptor.d.ts.map +1 -0
- package/dist/dev.external.descriptor.js +17 -0
- package/dist/dev.external.descriptor.js.map +1 -0
- package/dist/docs/external.ambient.docs.descriptor.d.ts +4 -0
- package/dist/docs/external.ambient.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/external.ambient.docs.descriptor.js +109 -0
- package/dist/docs/external.ambient.docs.descriptor.js.map +1 -0
- package/dist/external-adapter/descriptors.d.ts +133 -0
- package/dist/external-adapter/descriptors.d.ts.map +1 -0
- package/dist/external-adapter/descriptors.js +70 -0
- package/dist/external-adapter/descriptors.js.map +1 -0
- package/dist/external-adapter/implementations.d.ts +13 -0
- package/dist/external-adapter/implementations.d.ts.map +1 -0
- package/dist/external-adapter/implementations.js +97 -0
- package/dist/external-adapter/implementations.js.map +1 -0
- package/dist/external-adapter/schemas/adapter.d.ts +66 -0
- package/dist/external-adapter/schemas/adapter.d.ts.map +1 -0
- package/dist/external-adapter/schemas/adapter.js +55 -0
- package/dist/external-adapter/schemas/adapter.js.map +1 -0
- package/dist/external-tool/impl/default-tool.d.ts +201 -0
- package/dist/external-tool/impl/default-tool.d.ts.map +1 -0
- package/dist/external-tool/impl/default-tool.js +243 -0
- package/dist/external-tool/impl/default-tool.js.map +1 -0
- package/dist/external-tool/interfaces/tool.d.ts +102 -0
- package/dist/external-tool/interfaces/tool.d.ts.map +1 -0
- package/dist/external-tool/interfaces/tool.js +2 -0
- package/dist/external-tool/interfaces/tool.js.map +1 -0
- package/dist/external-tool/loader.d.ts +5 -0
- package/dist/external-tool/loader.d.ts.map +1 -0
- package/dist/external-tool/loader.js +8 -0
- package/dist/external-tool/loader.js.map +1 -0
- package/dist/external-tool/path-template.d.ts +54 -0
- package/dist/external-tool/path-template.d.ts.map +1 -0
- package/dist/external-tool/path-template.js +65 -0
- package/dist/external-tool/path-template.js.map +1 -0
- package/dist/external-tool/runtime.d.ts +38 -0
- package/dist/external-tool/runtime.d.ts.map +1 -0
- package/dist/external-tool/runtime.js +89 -0
- package/dist/external-tool/runtime.js.map +1 -0
- package/dist/external-tool/schemas/tool.d.ts +269 -0
- package/dist/external-tool/schemas/tool.d.ts.map +1 -0
- package/dist/external-tool/schemas/tool.js +77 -0
- package/dist/external-tool/schemas/tool.js.map +1 -0
- package/dist/external.plugin.d.ts +4 -0
- package/dist/external.plugin.d.ts.map +1 -0
- package/dist/external.plugin.js +184 -0
- package/dist/external.plugin.js.map +1 -0
- package/dist/harness/agent-host-scope.d.ts +18 -0
- package/dist/harness/agent-host-scope.d.ts.map +1 -0
- package/dist/harness/agent-host-scope.js +30 -0
- package/dist/harness/agent-host-scope.js.map +1 -0
- package/dist/harness/agent-host-settings.d.ts +6 -0
- package/dist/harness/agent-host-settings.d.ts.map +1 -0
- package/dist/harness/agent-host-settings.js +18 -0
- package/dist/harness/agent-host-settings.js.map +1 -0
- package/dist/harness/agent-host.config.descriptor.d.ts +6 -0
- package/dist/harness/agent-host.config.descriptor.d.ts.map +1 -0
- package/dist/harness/agent-host.config.descriptor.js +22 -0
- package/dist/harness/agent-host.config.descriptor.js.map +1 -0
- package/dist/harness/agent-host.d.ts +98 -0
- package/dist/harness/agent-host.d.ts.map +1 -0
- package/dist/harness/agent-host.js +203 -0
- package/dist/harness/agent-host.js.map +1 -0
- package/dist/harness/command-arguments.d.ts +54 -0
- package/dist/harness/command-arguments.d.ts.map +1 -0
- package/dist/harness/command-arguments.js +113 -0
- package/dist/harness/command-arguments.js.map +1 -0
- package/dist/harness/command-execution.d.ts +20 -0
- package/dist/harness/command-execution.d.ts.map +1 -0
- package/dist/harness/command-execution.js +78 -0
- package/dist/harness/command-execution.js.map +1 -0
- package/dist/harness/command-output.d.ts +59 -0
- package/dist/harness/command-output.d.ts.map +1 -0
- package/dist/harness/command-output.js +173 -0
- package/dist/harness/command-output.js.map +1 -0
- package/dist/harness/execution-queue.d.ts +14 -0
- package/dist/harness/execution-queue.d.ts.map +1 -0
- package/dist/harness/execution-queue.js +23 -0
- package/dist/harness/execution-queue.js.map +1 -0
- package/dist/harness/index.d.ts +15 -0
- package/dist/harness/index.d.ts.map +1 -0
- package/dist/harness/index.js +12 -0
- package/dist/harness/index.js.map +1 -0
- package/dist/harness/live-tools.d.ts +130 -0
- package/dist/harness/live-tools.d.ts.map +1 -0
- package/dist/harness/live-tools.js +257 -0
- package/dist/harness/live-tools.js.map +1 -0
- package/dist/harness/managed-block.d.ts +34 -0
- package/dist/harness/managed-block.d.ts.map +1 -0
- package/dist/harness/managed-block.js +66 -0
- package/dist/harness/managed-block.js.map +1 -0
- package/dist/harness/markers.d.ts +22 -0
- package/dist/harness/markers.d.ts.map +1 -0
- package/dist/harness/markers.js +28 -0
- package/dist/harness/markers.js.map +1 -0
- package/dist/harness/node.d.ts +6 -0
- package/dist/harness/node.d.ts.map +1 -0
- package/dist/harness/node.js +6 -0
- package/dist/harness/node.js.map +1 -0
- package/dist/harness/prompt.d.ts +54 -0
- package/dist/harness/prompt.d.ts.map +1 -0
- package/dist/harness/prompt.js +78 -0
- package/dist/harness/prompt.js.map +1 -0
- package/dist/harness/prompts/index.d.ts +113 -0
- package/dist/harness/prompts/index.d.ts.map +1 -0
- package/dist/harness/prompts/index.js +5 -0
- package/dist/harness/prompts/index.js.map +1 -0
- package/dist/harness/prompts/static-briefing-note.prompt.descriptor.d.ts +114 -0
- package/dist/harness/prompts/static-briefing-note.prompt.descriptor.d.ts.map +1 -0
- package/dist/harness/prompts/static-briefing-note.prompt.descriptor.js +17 -0
- package/dist/harness/prompts/static-briefing-note.prompt.descriptor.js.map +1 -0
- package/dist/harness/prompts/system-prompt.prompt.descriptor.d.ts +114 -0
- package/dist/harness/prompts/system-prompt.prompt.descriptor.d.ts.map +1 -0
- package/dist/harness/prompts/system-prompt.prompt.descriptor.js +35 -0
- package/dist/harness/prompts/system-prompt.prompt.descriptor.js.map +1 -0
- package/dist/harness/role-prompt.d.ts +12 -0
- package/dist/harness/role-prompt.d.ts.map +1 -0
- package/dist/harness/role-prompt.js +24 -0
- package/dist/harness/role-prompt.js.map +1 -0
- package/dist/harness/runtime-transport.d.ts +89 -0
- package/dist/harness/runtime-transport.d.ts.map +1 -0
- package/dist/harness/runtime-transport.js +356 -0
- package/dist/harness/runtime-transport.js.map +1 -0
- package/dist/harness/schemas/agent-host.d.ts +146 -0
- package/dist/harness/schemas/agent-host.d.ts.map +1 -0
- package/dist/harness/schemas/agent-host.js +26 -0
- package/dist/harness/schemas/agent-host.js.map +1 -0
- package/dist/harness/stdio-sink.d.ts +35 -0
- package/dist/harness/stdio-sink.d.ts.map +1 -0
- package/dist/harness/stdio-sink.js +34 -0
- package/dist/harness/stdio-sink.js.map +1 -0
- package/dist/harness/strip-undefined.d.ts +9 -0
- package/dist/harness/strip-undefined.d.ts.map +1 -0
- package/dist/harness/strip-undefined.js +11 -0
- package/dist/harness/strip-undefined.js.map +1 -0
- package/dist/harness/tool-projection.d.ts +130 -0
- package/dist/harness/tool-projection.d.ts.map +1 -0
- package/dist/harness/tool-projection.js +195 -0
- package/dist/harness/tool-projection.js.map +1 -0
- package/dist/harness/validation-errors.d.ts +11 -0
- package/dist/harness/validation-errors.d.ts.map +1 -0
- package/dist/harness/validation-errors.js +32 -0
- package/dist/harness/validation-errors.js.map +1 -0
- package/dist/hooks/bounded-payload.d.ts +39 -0
- package/dist/hooks/bounded-payload.d.ts.map +1 -0
- package/dist/hooks/bounded-payload.js +70 -0
- package/dist/hooks/bounded-payload.js.map +1 -0
- package/dist/hooks/bridge.d.ts +34 -0
- package/dist/hooks/bridge.d.ts.map +1 -0
- package/dist/hooks/bridge.js +86 -0
- package/dist/hooks/bridge.js.map +1 -0
- package/dist/hooks/call.d.ts +298 -0
- package/dist/hooks/call.d.ts.map +1 -0
- package/dist/hooks/call.js +1550 -0
- package/dist/hooks/call.js.map +1 -0
- package/dist/hooks/consumer.d.ts +7 -0
- package/dist/hooks/consumer.d.ts.map +1 -0
- package/dist/hooks/consumer.js +5 -0
- package/dist/hooks/consumer.js.map +1 -0
- package/dist/hooks/continuity.d.ts +155 -0
- package/dist/hooks/continuity.d.ts.map +1 -0
- package/dist/hooks/continuity.js +187 -0
- package/dist/hooks/continuity.js.map +1 -0
- package/dist/hooks/dispatch-script.d.ts +27 -0
- package/dist/hooks/dispatch-script.d.ts.map +1 -0
- package/dist/hooks/dispatch-script.js +77 -0
- package/dist/hooks/dispatch-script.js.map +1 -0
- package/dist/hooks/edit-targets.d.ts +23 -0
- package/dist/hooks/edit-targets.d.ts.map +1 -0
- package/dist/hooks/edit-targets.js +74 -0
- package/dist/hooks/edit-targets.js.map +1 -0
- package/dist/hooks/hook-delivery.d.ts +21 -0
- package/dist/hooks/hook-delivery.d.ts.map +1 -0
- package/dist/hooks/hook-delivery.js +87 -0
- package/dist/hooks/hook-delivery.js.map +1 -0
- package/dist/hooks/hook-seat.d.ts +37 -0
- package/dist/hooks/hook-seat.d.ts.map +1 -0
- package/dist/hooks/hook-seat.js +59 -0
- package/dist/hooks/hook-seat.js.map +1 -0
- package/dist/hooks/index.d.ts +9 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/index.js +8 -0
- package/dist/hooks/index.js.map +1 -0
- package/dist/hooks/native-edit-guard.d.ts +25 -0
- package/dist/hooks/native-edit-guard.d.ts.map +1 -0
- package/dist/hooks/native-edit-guard.js +33 -0
- package/dist/hooks/native-edit-guard.js.map +1 -0
- package/dist/hooks/native-edit-locks.d.ts +54 -0
- package/dist/hooks/native-edit-locks.d.ts.map +1 -0
- package/dist/hooks/native-edit-locks.js +98 -0
- package/dist/hooks/native-edit-locks.js.map +1 -0
- package/dist/hooks/resolve-event.d.ts +13 -0
- package/dist/hooks/resolve-event.d.ts.map +1 -0
- package/dist/hooks/resolve-event.js +32 -0
- package/dist/hooks/resolve-event.js.map +1 -0
- package/dist/hooks/review-state.d.ts +22 -0
- package/dist/hooks/review-state.d.ts.map +1 -0
- package/dist/hooks/review-state.js +57 -0
- package/dist/hooks/review-state.js.map +1 -0
- package/dist/hooks/runtime.d.ts +146 -0
- package/dist/hooks/runtime.d.ts.map +1 -0
- package/dist/hooks/runtime.js +83 -0
- package/dist/hooks/runtime.js.map +1 -0
- package/dist/hooks/self-review.d.ts +14 -0
- package/dist/hooks/self-review.d.ts.map +1 -0
- package/dist/hooks/self-review.js +28 -0
- package/dist/hooks/self-review.js.map +1 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +33 -0
- package/dist/index.js.map +1 -0
- package/dist/ingest/logging/subagent-completions.output.descriptor.d.ts +4 -0
- package/dist/ingest/logging/subagent-completions.output.descriptor.d.ts.map +1 -0
- package/dist/ingest/logging/subagent-completions.output.descriptor.js +22 -0
- package/dist/ingest/logging/subagent-completions.output.descriptor.js.map +1 -0
- package/dist/ingest/logging/success-patterns.output.descriptor.d.ts +4 -0
- package/dist/ingest/logging/success-patterns.output.descriptor.d.ts.map +1 -0
- package/dist/ingest/logging/success-patterns.output.descriptor.js +22 -0
- package/dist/ingest/logging/success-patterns.output.descriptor.js.map +1 -0
- package/dist/ingest/logging/tool-use.output.descriptor.d.ts +4 -0
- package/dist/ingest/logging/tool-use.output.descriptor.d.ts.map +1 -0
- package/dist/ingest/logging/tool-use.output.descriptor.js +22 -0
- package/dist/ingest/logging/tool-use.output.descriptor.js.map +1 -0
- package/dist/ingest/resolve-log-paths.d.ts +16 -0
- package/dist/ingest/resolve-log-paths.d.ts.map +1 -0
- package/dist/ingest/resolve-log-paths.js +43 -0
- package/dist/ingest/resolve-log-paths.js.map +1 -0
- package/dist/ingest/schemas.d.ts +43 -0
- package/dist/ingest/schemas.d.ts.map +1 -0
- package/dist/ingest/schemas.js +46 -0
- package/dist/ingest/schemas.js.map +1 -0
- package/dist/jsonrpc/client.d.ts +129 -0
- package/dist/jsonrpc/client.d.ts.map +1 -0
- package/dist/jsonrpc/client.js +553 -0
- package/dist/jsonrpc/client.js.map +1 -0
- package/dist/jsonrpc/envelope.d.ts +37 -0
- package/dist/jsonrpc/envelope.d.ts.map +1 -0
- package/dist/jsonrpc/envelope.js +46 -0
- package/dist/jsonrpc/envelope.js.map +1 -0
- package/dist/jsonrpc/errors.d.ts +28 -0
- package/dist/jsonrpc/errors.d.ts.map +1 -0
- package/dist/jsonrpc/errors.js +110 -0
- package/dist/jsonrpc/errors.js.map +1 -0
- package/dist/jsonrpc/framing.d.ts +35 -0
- package/dist/jsonrpc/framing.d.ts.map +1 -0
- package/dist/jsonrpc/framing.js +134 -0
- package/dist/jsonrpc/framing.js.map +1 -0
- package/dist/jsonrpc/index.d.ts +11 -0
- package/dist/jsonrpc/index.d.ts.map +1 -0
- package/dist/jsonrpc/index.js +11 -0
- package/dist/jsonrpc/index.js.map +1 -0
- package/dist/jsonrpc/outcome.d.ts +25 -0
- package/dist/jsonrpc/outcome.d.ts.map +1 -0
- package/dist/jsonrpc/outcome.js +32 -0
- package/dist/jsonrpc/outcome.js.map +1 -0
- package/dist/jsonrpc/queue.d.ts +30 -0
- package/dist/jsonrpc/queue.d.ts.map +1 -0
- package/dist/jsonrpc/queue.js +113 -0
- package/dist/jsonrpc/queue.js.map +1 -0
- package/dist/jsonrpc/schemas.d.ts +74 -0
- package/dist/jsonrpc/schemas.d.ts.map +1 -0
- package/dist/jsonrpc/schemas.js +65 -0
- package/dist/jsonrpc/schemas.js.map +1 -0
- package/dist/launch/consumer/execute.d.ts +5 -0
- package/dist/launch/consumer/execute.d.ts.map +1 -0
- package/dist/launch/consumer/execute.js +358 -0
- package/dist/launch/consumer/execute.js.map +1 -0
- package/dist/launch/consumer/paths.d.ts +15 -0
- package/dist/launch/consumer/paths.d.ts.map +1 -0
- package/dist/launch/consumer/paths.js +18 -0
- package/dist/launch/consumer/paths.js.map +1 -0
- package/dist/launch/consumer/prepare.d.ts +25 -0
- package/dist/launch/consumer/prepare.d.ts.map +1 -0
- package/dist/launch/consumer/prepare.js +158 -0
- package/dist/launch/consumer/prepare.js.map +1 -0
- package/dist/launch/consumer/prompt.d.ts +18 -0
- package/dist/launch/consumer/prompt.d.ts.map +1 -0
- package/dist/launch/consumer/prompt.js +45 -0
- package/dist/launch/consumer/prompt.js.map +1 -0
- package/dist/launch/consumer/rotate-logs.d.ts +23 -0
- package/dist/launch/consumer/rotate-logs.d.ts.map +1 -0
- package/dist/launch/consumer/rotate-logs.js +43 -0
- package/dist/launch/consumer/rotate-logs.js.map +1 -0
- package/dist/launch/consumer/spawn.d.ts +38 -0
- package/dist/launch/consumer/spawn.d.ts.map +1 -0
- package/dist/launch/consumer/spawn.js +82 -0
- package/dist/launch/consumer/spawn.js.map +1 -0
- package/dist/launch/consumer/state-rows.d.ts +41 -0
- package/dist/launch/consumer/state-rows.d.ts.map +1 -0
- package/dist/launch/consumer/state-rows.js +78 -0
- package/dist/launch/consumer/state-rows.js.map +1 -0
- package/dist/launch/consumer/store.d.ts +139 -0
- package/dist/launch/consumer/store.d.ts.map +1 -0
- package/dist/launch/consumer/store.js +495 -0
- package/dist/launch/consumer/store.js.map +1 -0
- package/dist/launch/index.d.ts +5 -0
- package/dist/launch/index.d.ts.map +1 -0
- package/dist/launch/index.js +3 -0
- package/dist/launch/index.js.map +1 -0
- package/dist/launch/resolve.d.ts +9 -0
- package/dist/launch/resolve.d.ts.map +1 -0
- package/dist/launch/resolve.js +139 -0
- package/dist/launch/resolve.js.map +1 -0
- package/dist/launch/schemas.d.ts +289 -0
- package/dist/launch/schemas.d.ts.map +1 -0
- package/dist/launch/schemas.js +154 -0
- package/dist/launch/schemas.js.map +1 -0
- package/dist/launch/task-executor/external-harness.descriptor.d.ts +6 -0
- package/dist/launch/task-executor/external-harness.descriptor.d.ts.map +1 -0
- package/dist/launch/task-executor/external-harness.descriptor.js +13 -0
- package/dist/launch/task-executor/external-harness.descriptor.js.map +1 -0
- package/dist/launch/task-executor/external-harness.impl.consumer.d.ts +17 -0
- package/dist/launch/task-executor/external-harness.impl.consumer.d.ts.map +1 -0
- package/dist/launch/task-executor/external-harness.impl.consumer.js +151 -0
- package/dist/launch/task-executor/external-harness.impl.consumer.js.map +1 -0
- package/dist/launch/task-executor/isolated-workspace.d.ts +3 -0
- package/dist/launch/task-executor/isolated-workspace.d.ts.map +1 -0
- package/dist/launch/task-executor/isolated-workspace.js +3 -0
- package/dist/launch/task-executor/isolated-workspace.js.map +1 -0
- package/dist/launch/task-executor/session-locks.d.ts +28 -0
- package/dist/launch/task-executor/session-locks.d.ts.map +1 -0
- package/dist/launch/task-executor/session-locks.js +50 -0
- package/dist/launch/task-executor/session-locks.js.map +1 -0
- package/dist/pack/adapter-codegen.d.ts +38 -0
- package/dist/pack/adapter-codegen.d.ts.map +1 -0
- package/dist/pack/adapter-codegen.js +70 -0
- package/dist/pack/adapter-codegen.js.map +1 -0
- package/dist/pack/build.d.ts +48 -0
- package/dist/pack/build.d.ts.map +1 -0
- package/dist/pack/build.js +171 -0
- package/dist/pack/build.js.map +1 -0
- package/dist/pack/emitters/hooks.d.ts +14 -0
- package/dist/pack/emitters/hooks.d.ts.map +1 -0
- package/dist/pack/emitters/hooks.js +15 -0
- package/dist/pack/emitters/hooks.js.map +1 -0
- package/dist/pack/emitters/json.d.ts +10 -0
- package/dist/pack/emitters/json.d.ts.map +1 -0
- package/dist/pack/emitters/json.js +17 -0
- package/dist/pack/emitters/json.js.map +1 -0
- package/dist/pack/emitters/registry.d.ts +22 -0
- package/dist/pack/emitters/registry.d.ts.map +1 -0
- package/dist/pack/emitters/registry.js +38 -0
- package/dist/pack/emitters/registry.js.map +1 -0
- package/dist/pack/emitters/toml.d.ts +8 -0
- package/dist/pack/emitters/toml.d.ts.map +1 -0
- package/dist/pack/emitters/toml.js +28 -0
- package/dist/pack/emitters/toml.js.map +1 -0
- package/dist/pack/emitters/yaml.d.ts +8 -0
- package/dist/pack/emitters/yaml.d.ts.map +1 -0
- package/dist/pack/emitters/yaml.js +27 -0
- package/dist/pack/emitters/yaml.js.map +1 -0
- package/dist/pack/index.d.ts +11 -0
- package/dist/pack/index.d.ts.map +1 -0
- package/dist/pack/index.js +11 -0
- package/dist/pack/index.js.map +1 -0
- package/dist/pack/mcp.d.ts +28 -0
- package/dist/pack/mcp.d.ts.map +1 -0
- package/dist/pack/mcp.js +70 -0
- package/dist/pack/mcp.js.map +1 -0
- package/dist/pack/persist.d.ts +28 -0
- package/dist/pack/persist.d.ts.map +1 -0
- package/dist/pack/persist.js +35 -0
- package/dist/pack/persist.js.map +1 -0
- package/dist/pack/schema.d.ts +126 -0
- package/dist/pack/schema.d.ts.map +1 -0
- package/dist/pack/schema.js +56 -0
- package/dist/pack/schema.js.map +1 -0
- package/dist/plugins/index.d.ts +512 -0
- package/dist/plugins/index.d.ts.map +1 -0
- package/dist/plugins/index.js +25 -0
- package/dist/plugins/index.js.map +1 -0
- package/dist/plugins/installers/config-file.d.ts +21 -0
- package/dist/plugins/installers/config-file.d.ts.map +1 -0
- package/dist/plugins/installers/config-file.js +48 -0
- package/dist/plugins/installers/config-file.js.map +1 -0
- package/dist/plugins/installers/config-value.d.ts +35 -0
- package/dist/plugins/installers/config-value.d.ts.map +1 -0
- package/dist/plugins/installers/config-value.js +52 -0
- package/dist/plugins/installers/config-value.js.map +1 -0
- package/dist/plugins/installers/hooks/index.d.ts +9 -0
- package/dist/plugins/installers/hooks/index.d.ts.map +1 -0
- package/dist/plugins/installers/hooks/index.js +12 -0
- package/dist/plugins/installers/hooks/index.js.map +1 -0
- package/dist/plugins/installers/hooks/scoped-paths.d.ts +24 -0
- package/dist/plugins/installers/hooks/scoped-paths.d.ts.map +1 -0
- package/dist/plugins/installers/hooks/scoped-paths.js +80 -0
- package/dist/plugins/installers/hooks/scoped-paths.js.map +1 -0
- package/dist/plugins/installers/hooks/settings-registration.d.ts +79 -0
- package/dist/plugins/installers/hooks/settings-registration.d.ts.map +1 -0
- package/dist/plugins/installers/hooks/settings-registration.js +125 -0
- package/dist/plugins/installers/hooks/settings-registration.js.map +1 -0
- package/dist/plugins/installers/hooks/shell-installer.d.ts +21 -0
- package/dist/plugins/installers/hooks/shell-installer.d.ts.map +1 -0
- package/dist/plugins/installers/hooks/shell-installer.js +298 -0
- package/dist/plugins/installers/hooks/shell-installer.js.map +1 -0
- package/dist/plugins/installers/hooks/uninstall-backup.d.ts +19 -0
- package/dist/plugins/installers/hooks/uninstall-backup.d.ts.map +1 -0
- package/dist/plugins/installers/hooks/uninstall-backup.js +20 -0
- package/dist/plugins/installers/hooks/uninstall-backup.js.map +1 -0
- package/dist/plugins/installers/index.d.ts +58 -0
- package/dist/plugins/installers/index.d.ts.map +1 -0
- package/dist/plugins/installers/index.js +303 -0
- package/dist/plugins/installers/index.js.map +1 -0
- package/dist/plugins/installers/mcp/environment.d.ts +180 -0
- package/dist/plugins/installers/mcp/environment.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/environment.js +314 -0
- package/dist/plugins/installers/mcp/environment.js.map +1 -0
- package/dist/plugins/installers/mcp/index.d.ts +9 -0
- package/dist/plugins/installers/mcp/index.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/index.js +11 -0
- package/dist/plugins/installers/mcp/index.js.map +1 -0
- package/dist/plugins/installers/mcp/json-installer.d.ts +18 -0
- package/dist/plugins/installers/mcp/json-installer.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/json-installer.js +155 -0
- package/dist/plugins/installers/mcp/json-installer.js.map +1 -0
- package/dist/plugins/installers/mcp/json-paths.d.ts +13 -0
- package/dist/plugins/installers/mcp/json-paths.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/json-paths.js +130 -0
- package/dist/plugins/installers/mcp/json-paths.js.map +1 -0
- package/dist/plugins/installers/mcp/serve-identity.d.ts +19 -0
- package/dist/plugins/installers/mcp/serve-identity.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/serve-identity.js +31 -0
- package/dist/plugins/installers/mcp/serve-identity.js.map +1 -0
- package/dist/plugins/installers/mcp/server-config.d.ts +20 -0
- package/dist/plugins/installers/mcp/server-config.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/server-config.js +64 -0
- package/dist/plugins/installers/mcp/server-config.js.map +1 -0
- package/dist/plugins/installers/mcp/toml-installer.d.ts +41 -0
- package/dist/plugins/installers/mcp/toml-installer.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/toml-installer.js +407 -0
- package/dist/plugins/installers/mcp/toml-installer.js.map +1 -0
- package/dist/plugins/installers/mcp/yaml-installer.d.ts +22 -0
- package/dist/plugins/installers/mcp/yaml-installer.d.ts.map +1 -0
- package/dist/plugins/installers/mcp/yaml-installer.js +156 -0
- package/dist/plugins/installers/mcp/yaml-installer.js.map +1 -0
- package/dist/plugins/installers/runtime.d.ts +42 -0
- package/dist/plugins/installers/runtime.d.ts.map +1 -0
- package/dist/plugins/installers/runtime.js +56 -0
- package/dist/plugins/installers/runtime.js.map +1 -0
- package/dist/plugins/installers/types.d.ts +306 -0
- package/dist/plugins/installers/types.d.ts.map +1 -0
- package/dist/plugins/installers/types.js +40 -0
- package/dist/plugins/installers/types.js.map +1 -0
- package/dist/plugins/schemas/index.d.ts +6 -0
- package/dist/plugins/schemas/index.d.ts.map +1 -0
- package/dist/plugins/schemas/index.js +5 -0
- package/dist/plugins/schemas/index.js.map +1 -0
- package/dist/plugins/schemas/manifest.d.ts +527 -0
- package/dist/plugins/schemas/manifest.d.ts.map +1 -0
- package/dist/plugins/schemas/manifest.js +355 -0
- package/dist/plugins/schemas/manifest.js.map +1 -0
- package/dist/plugins/tools/index.d.ts +12 -0
- package/dist/plugins/tools/index.d.ts.map +1 -0
- package/dist/plugins/tools/index.js +19 -0
- package/dist/plugins/tools/index.js.map +1 -0
- package/dist/presets/executor.d.ts +20 -0
- package/dist/presets/executor.d.ts.map +1 -0
- package/dist/presets/executor.js +629 -0
- package/dist/presets/executor.js.map +1 -0
- package/dist/presets/file-backup.d.ts +66 -0
- package/dist/presets/file-backup.d.ts.map +1 -0
- package/dist/presets/file-backup.js +108 -0
- package/dist/presets/file-backup.js.map +1 -0
- package/dist/presets/index.d.ts +11 -0
- package/dist/presets/index.d.ts.map +1 -0
- package/dist/presets/index.js +10 -0
- package/dist/presets/index.js.map +1 -0
- package/dist/presets/resolve.d.ts +32 -0
- package/dist/presets/resolve.d.ts.map +1 -0
- package/dist/presets/resolve.js +49 -0
- package/dist/presets/resolve.js.map +1 -0
- package/dist/presets/runtime.d.ts +21 -0
- package/dist/presets/runtime.d.ts.map +1 -0
- package/dist/presets/runtime.js +115 -0
- package/dist/presets/runtime.js.map +1 -0
- package/dist/projection/attestation.d.ts +43 -0
- package/dist/projection/attestation.d.ts.map +1 -0
- package/dist/projection/attestation.js +59 -0
- package/dist/projection/attestation.js.map +1 -0
- package/dist/runtime/agent-roster-provider.d.ts +75 -0
- package/dist/runtime/agent-roster-provider.d.ts.map +1 -0
- package/dist/runtime/agent-roster-provider.js +30 -0
- package/dist/runtime/agent-roster-provider.js.map +1 -0
- package/dist/runtime/external-surface-projector.d.ts +37 -0
- package/dist/runtime/external-surface-projector.d.ts.map +1 -0
- package/dist/runtime/external-surface-projector.js +21 -0
- package/dist/runtime/external-surface-projector.js.map +1 -0
- package/dist/runtime/lifecycle-task.d.ts +54 -0
- package/dist/runtime/lifecycle-task.d.ts.map +1 -0
- package/dist/runtime/lifecycle-task.js +111 -0
- package/dist/runtime/lifecycle-task.js.map +1 -0
- package/dist/runtime.d.ts +496 -0
- package/dist/runtime.d.ts.map +1 -0
- package/dist/runtime.js +168 -0
- package/dist/runtime.js.map +1 -0
- package/dist/schemas/agent-message.d.ts +136 -0
- package/dist/schemas/agent-message.d.ts.map +1 -0
- package/dist/schemas/agent-message.js +131 -0
- package/dist/schemas/agent-message.js.map +1 -0
- package/dist/schemas/agent-roster.d.ts +50 -0
- package/dist/schemas/agent-roster.d.ts.map +1 -0
- package/dist/schemas/agent-roster.js +52 -0
- package/dist/schemas/agent-roster.js.map +1 -0
- package/dist/schemas/collision.d.ts +109 -0
- package/dist/schemas/collision.d.ts.map +1 -0
- package/dist/schemas/collision.js +71 -0
- package/dist/schemas/collision.js.map +1 -0
- package/dist/schemas/context-summary.d.ts +225 -0
- package/dist/schemas/context-summary.d.ts.map +1 -0
- package/dist/schemas/context-summary.js +117 -0
- package/dist/schemas/context-summary.js.map +1 -0
- package/dist/schemas/file-access.d.ts +176 -0
- package/dist/schemas/file-access.d.ts.map +1 -0
- package/dist/schemas/file-access.js +139 -0
- package/dist/schemas/file-access.js.map +1 -0
- package/dist/schemas/hooks.d.ts +170 -0
- package/dist/schemas/hooks.d.ts.map +1 -0
- package/dist/schemas/hooks.js +171 -0
- package/dist/schemas/hooks.js.map +1 -0
- package/dist/schemas/index.d.ts +19 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +17 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/path-identity.d.ts +44 -0
- package/dist/schemas/path-identity.d.ts.map +1 -0
- package/dist/schemas/path-identity.js +93 -0
- package/dist/schemas/path-identity.js.map +1 -0
- package/dist/schemas/pending-notice.d.ts +13 -0
- package/dist/schemas/pending-notice.d.ts.map +1 -0
- package/dist/schemas/pending-notice.js +5 -0
- package/dist/schemas/pending-notice.js.map +1 -0
- package/dist/schemas/presets.d.ts +1239 -0
- package/dist/schemas/presets.d.ts.map +1 -0
- package/dist/schemas/presets.js +270 -0
- package/dist/schemas/presets.js.map +1 -0
- package/dist/schemas/roster.d.ts +96 -0
- package/dist/schemas/roster.d.ts.map +1 -0
- package/dist/schemas/roster.js +310 -0
- package/dist/schemas/roster.js.map +1 -0
- package/dist/schemas/tiers.d.ts +95 -0
- package/dist/schemas/tiers.d.ts.map +1 -0
- package/dist/schemas/tiers.js +143 -0
- package/dist/schemas/tiers.js.map +1 -0
- package/dist/schemas/touch-identity.d.ts +25 -0
- package/dist/schemas/touch-identity.d.ts.map +1 -0
- package/dist/schemas/touch-identity.js +16 -0
- package/dist/schemas/touch-identity.js.map +1 -0
- package/dist/schemas/touch-projection.d.ts +157 -0
- package/dist/schemas/touch-projection.d.ts.map +1 -0
- package/dist/schemas/touch-projection.js +100 -0
- package/dist/schemas/touch-projection.js.map +1 -0
- package/dist/session-capability.d.ts +88 -0
- package/dist/session-capability.d.ts.map +1 -0
- package/dist/session-capability.js +28 -0
- package/dist/session-capability.js.map +1 -0
- package/dist/setup/index.d.ts +9 -0
- package/dist/setup/index.d.ts.map +1 -0
- package/dist/setup/index.js +8 -0
- package/dist/setup/index.js.map +1 -0
- package/dist/setup/steps/detect-tools.d.ts +9 -0
- package/dist/setup/steps/detect-tools.d.ts.map +1 -0
- package/dist/setup/steps/detect-tools.js +120 -0
- package/dist/setup/steps/detect-tools.js.map +1 -0
- package/dist/setup/steps/index.d.ts +11 -0
- package/dist/setup/steps/index.d.ts.map +1 -0
- package/dist/setup/steps/index.js +11 -0
- package/dist/setup/steps/index.js.map +1 -0
- package/dist/setup/steps/install-helpers.d.ts +9 -0
- package/dist/setup/steps/install-helpers.d.ts.map +1 -0
- package/dist/setup/steps/install-helpers.js +29 -0
- package/dist/setup/steps/install-helpers.js.map +1 -0
- package/dist/setup/steps/install.d.ts +11 -0
- package/dist/setup/steps/install.d.ts.map +1 -0
- package/dist/setup/steps/install.js +143 -0
- package/dist/setup/steps/install.js.map +1 -0
- package/dist/setup/steps/select-location.d.ts +8 -0
- package/dist/setup/steps/select-location.d.ts.map +1 -0
- package/dist/setup/steps/select-location.js +55 -0
- package/dist/setup/steps/select-location.js.map +1 -0
- package/dist/setup/steps/select-targets.d.ts +8 -0
- package/dist/setup/steps/select-targets.d.ts.map +1 -0
- package/dist/setup/steps/select-targets.js +53 -0
- package/dist/setup/steps/select-targets.js.map +1 -0
- package/dist/setup/steps/select-tiers.d.ts +8 -0
- package/dist/setup/steps/select-tiers.d.ts.map +1 -0
- package/dist/setup/steps/select-tiers.js +124 -0
- package/dist/setup/steps/select-tiers.js.map +1 -0
- package/dist/setup/types.d.ts +128 -0
- package/dist/setup/types.d.ts.map +1 -0
- package/dist/setup/types.js +28 -0
- package/dist/setup/types.js.map +1 -0
- package/dist/setup/wizard.d.ts +25 -0
- package/dist/setup/wizard.d.ts.map +1 -0
- package/dist/setup/wizard.js +182 -0
- package/dist/setup/wizard.js.map +1 -0
- package/dist/storage/agent-message.record.descriptor.d.ts +43 -0
- package/dist/storage/agent-message.record.descriptor.d.ts.map +1 -0
- package/dist/storage/agent-message.record.descriptor.js +72 -0
- package/dist/storage/agent-message.record.descriptor.js.map +1 -0
- package/dist/storage/file-access.record.descriptor.d.ts +104 -0
- package/dist/storage/file-access.record.descriptor.d.ts.map +1 -0
- package/dist/storage/file-access.record.descriptor.js +370 -0
- package/dist/storage/file-access.record.descriptor.js.map +1 -0
- package/dist/storage/touch-identity.d.ts +43 -0
- package/dist/storage/touch-identity.d.ts.map +1 -0
- package/dist/storage/touch-identity.js +155 -0
- package/dist/storage/touch-identity.js.map +1 -0
- package/dist/svelte/external-svelte.plugin.d.ts +39 -0
- package/dist/svelte/external-svelte.plugin.d.ts.map +1 -0
- package/dist/svelte/external-svelte.plugin.js +25 -0
- package/dist/svelte/index.d.ts +11 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +10 -0
- package/dist/svelte/styles.css +8 -0
- package/dist/svelte/tool-widgets/ExternalToolCard.svelte +71 -0
- package/dist/svelte/tool-widgets/ExternalToolCard.svelte.d.ts +5 -0
- package/dist/svelte/tool-widgets/ExternalToolCard.svelte.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.d.ts +3 -0
- package/dist/svelte/tool-widgets/index.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/index.js +2 -0
- package/dist/svelte/tool-widgets/summary.d.ts +27 -0
- package/dist/svelte/tool-widgets/summary.d.ts.map +1 -0
- package/dist/svelte/tool-widgets/summary.js +198 -0
- package/dist/tools/index.d.ts +3 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/unified/action-descriptors.d.ts +185 -0
- package/dist/tools/unified/action-descriptors.d.ts.map +1 -0
- package/dist/tools/unified/action-descriptors.js +10 -0
- package/dist/tools/unified/action-descriptors.js.map +1 -0
- package/dist/tools/unified/action-input.d.ts +7 -0
- package/dist/tools/unified/action-input.d.ts.map +1 -0
- package/dist/tools/unified/action-input.js +13 -0
- package/dist/tools/unified/action-input.js.map +1 -0
- package/dist/tools/unified/actions.d.ts +10 -0
- package/dist/tools/unified/actions.d.ts.map +1 -0
- package/dist/tools/unified/actions.js +26 -0
- package/dist/tools/unified/actions.js.map +1 -0
- package/dist/tools/unified/external.descriptor.d.ts +30 -0
- package/dist/tools/unified/external.descriptor.d.ts.map +1 -0
- package/dist/tools/unified/external.descriptor.js +27 -0
- package/dist/tools/unified/external.descriptor.js.map +1 -0
- package/dist/tools/unified/external.impl.consumer.d.ts +8 -0
- package/dist/tools/unified/external.impl.consumer.d.ts.map +1 -0
- package/dist/tools/unified/external.impl.consumer.js +38 -0
- package/dist/tools/unified/external.impl.consumer.js.map +1 -0
- package/dist/tools/unified/handlers/context-summary.d.ts +4 -0
- package/dist/tools/unified/handlers/context-summary.d.ts.map +1 -0
- package/dist/tools/unified/handlers/context-summary.js +271 -0
- package/dist/tools/unified/handlers/context-summary.js.map +1 -0
- package/dist/tools/unified/handlers/file-access-list.d.ts +4 -0
- package/dist/tools/unified/handlers/file-access-list.d.ts.map +1 -0
- package/dist/tools/unified/handlers/file-access-list.js +39 -0
- package/dist/tools/unified/handlers/file-access-list.js.map +1 -0
- package/dist/tools/unified/handlers/file-access-track.d.ts +4 -0
- package/dist/tools/unified/handlers/file-access-track.d.ts.map +1 -0
- package/dist/tools/unified/handlers/file-access-track.js +34 -0
- package/dist/tools/unified/handlers/file-access-track.js.map +1 -0
- package/dist/tools/unified/handlers/hook-call.d.ts +23 -0
- package/dist/tools/unified/handlers/hook-call.d.ts.map +1 -0
- package/dist/tools/unified/handlers/hook-call.js +86 -0
- package/dist/tools/unified/handlers/hook-call.js.map +1 -0
- package/dist/tools/unified/handlers/hook-generator.d.ts +4 -0
- package/dist/tools/unified/handlers/hook-generator.d.ts.map +1 -0
- package/dist/tools/unified/handlers/hook-generator.js +37 -0
- package/dist/tools/unified/handlers/hook-generator.js.map +1 -0
- package/dist/tools/unified/handlers/signal.d.ts +22 -0
- package/dist/tools/unified/handlers/signal.d.ts.map +1 -0
- package/dist/tools/unified/handlers/signal.js +114 -0
- package/dist/tools/unified/handlers/signal.js.map +1 -0
- package/dist/tools/unified/index.d.ts +6 -0
- package/dist/tools/unified/index.d.ts.map +1 -0
- package/dist/tools/unified/index.js +6 -0
- package/dist/tools/unified/index.js.map +1 -0
- package/dist/tools/unified/install/handler.d.ts +4 -0
- package/dist/tools/unified/install/handler.d.ts.map +1 -0
- package/dist/tools/unified/install/handler.js +17 -0
- package/dist/tools/unified/install/handler.js.map +1 -0
- package/dist/tools/unified/runtime.d.ts +35 -0
- package/dist/tools/unified/runtime.d.ts.map +1 -0
- package/dist/tools/unified/runtime.js +23 -0
- package/dist/tools/unified/runtime.js.map +1 -0
- package/dist/tools/unified/schemas.d.ts +160 -0
- package/dist/tools/unified/schemas.d.ts.map +1 -0
- package/dist/tools/unified/schemas.js +139 -0
- package/dist/tools/unified/schemas.js.map +1 -0
- package/dist/utils/fs-absence.d.ts +22 -0
- package/dist/utils/fs-absence.d.ts.map +1 -0
- package/dist/utils/fs-absence.js +37 -0
- package/dist/utils/fs-absence.js.map +1 -0
- package/dist/utils/runtime-fs.d.ts +37 -0
- package/dist/utils/runtime-fs.d.ts.map +1 -0
- package/dist/utils/runtime-fs.js +100 -0
- package/dist/utils/runtime-fs.js.map +1 -0
- package/dist/utils/toml.d.ts +26 -0
- package/dist/utils/toml.d.ts.map +1 -0
- package/dist/utils/toml.js +415 -0
- package/dist/utils/toml.js.map +1 -0
- package/package.json +263 -4
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The agent-host runtime: one booted Vibes runtime, queried for whatever the
|
|
3
|
+
* host can present.
|
|
4
|
+
*
|
|
5
|
+
* A coding-agent host (Pi, OpenCode, ACP, any future one) is not a second package
|
|
6
|
+
* manager and not a second catalog. It boots ONE real runtime through the
|
|
7
|
+
* kernel's own entry — the same composition the `vibes` binary uses: the CLI
|
|
8
|
+
* host's plugin floor, then the global scope, then the workspace the host runs
|
|
9
|
+
* in — and then *queries* it. Every tool, command, prompt, model and provider a
|
|
10
|
+
* host shows the model is a view over a kind that runtime already holds, and a
|
|
11
|
+
* host that cannot ask a kind has no equivalent for it, so it maps nothing.
|
|
12
|
+
*
|
|
13
|
+
* Why the mapping lives in Framework rather than in a host package is that every
|
|
14
|
+
* one of these mappings is the SAME mapping: Pi and OpenCode differ in how they
|
|
15
|
+
* render a tool row and how they name a command, never in where the descriptor
|
|
16
|
+
* comes from. The environment is injected, never imported — a host runs on Node
|
|
17
|
+
* or Bun and declares its own, so Framework holds the portable policy and the
|
|
18
|
+
* host holds the composition root.
|
|
19
|
+
*
|
|
20
|
+
* The scope it boots under is `agent-host-scope.ts`; the contracts are in
|
|
21
|
+
* `schemas/agent-host.ts`; running, capturing and parsing a command are
|
|
22
|
+
* `command-execution.ts`, `command-output.ts` and `command-arguments.ts`.
|
|
23
|
+
*/
|
|
24
|
+
import { bootstrapVibesRuntime, CapabilityError, CaughtFailureSchema } from '@vibesdotdev/kernel';
|
|
25
|
+
import { invokeToolAsCaller } from '@vibesdotdev/tools/execution';
|
|
26
|
+
import { serializeDescriptor } from '@vibesdotdev/kernel-rpc/descriptor-wire';
|
|
27
|
+
import { HostToolInputSchema, LiveToolDescriptorSchema } from "./live-tools.js";
|
|
28
|
+
import { executeHostCommand } from "./command-execution.js";
|
|
29
|
+
import { ExecutionQueue } from "./execution-queue.js";
|
|
30
|
+
import { conciseValidationFailure } from "./validation-errors.js";
|
|
31
|
+
import { JsonValueFromReaderSchema } from '@vibesdotdev/kernel/schemas/json';
|
|
32
|
+
import {} from "./schemas/agent-host.js";
|
|
33
|
+
export { agentHostSettingsPlugin } from "./agent-host-settings.js";
|
|
34
|
+
/** The kinds this host projection knows how to ask. A kind it cannot map is simply not queried. */
|
|
35
|
+
export const AGENT_HOST_KINDS = {
|
|
36
|
+
tools: 'tools/tool',
|
|
37
|
+
groups: 'cli/group',
|
|
38
|
+
commands: 'cli/command',
|
|
39
|
+
prompts: 'prompts/manifest',
|
|
40
|
+
models: 'ai/model',
|
|
41
|
+
providers: 'ai/provider'
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* One kind's enabled descriptors, or an empty list when a plugin did not register
|
|
45
|
+
* the kind. `T` is the descriptor the kind declares: the kernel already parsed
|
|
46
|
+
* each one against that schema at registration, so a second parse here would
|
|
47
|
+
* assert a fact the registry has already established.
|
|
48
|
+
*/
|
|
49
|
+
function descriptorsOf(runtime, kind) {
|
|
50
|
+
if (!runtime.hasKind(kind))
|
|
51
|
+
return [];
|
|
52
|
+
// SAFETY: the runtime registered these descriptors under `kind`, whose
|
|
53
|
+
// descriptorSchema validated each one at registration; `T` names that shape.
|
|
54
|
+
return runtime.query(kind).enabled().descriptors();
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* One booted runtime, queried.
|
|
58
|
+
*
|
|
59
|
+
* The class owns the runtime's whole life: it boots it, and `dispose` releases
|
|
60
|
+
* it exactly once however many times a host calls it. A host that switches
|
|
61
|
+
* workspaces disposes the previous host before booting the next, so two runtimes
|
|
62
|
+
* never own the same workspace.
|
|
63
|
+
*/
|
|
64
|
+
export class VibesAgentHost {
|
|
65
|
+
runtime;
|
|
66
|
+
root;
|
|
67
|
+
workspaceRoot;
|
|
68
|
+
calls = 0;
|
|
69
|
+
/** One execution at a time: the CLI's own invariant, kept for the same exclusive stdio lease. */
|
|
70
|
+
executions = new ExecutionQueue();
|
|
71
|
+
constructor(runtime, root, workspaceRoot) {
|
|
72
|
+
this.runtime = runtime;
|
|
73
|
+
this.root = root;
|
|
74
|
+
this.workspaceRoot = workspaceRoot;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Boot one runtime for an agent host session.
|
|
78
|
+
*
|
|
79
|
+
* The composition is a workspace composition, so the kernel finds the
|
|
80
|
+
* workspace's own `vibes.config` and composes its plugins on top of the host's
|
|
81
|
+
* floor. This headless harness omits package exports that declare the TUI
|
|
82
|
+
* surface while keeping the rest of the selected workspace graph.
|
|
83
|
+
*/
|
|
84
|
+
static async boot(options) {
|
|
85
|
+
const runtime = await bootstrapVibesRuntime({
|
|
86
|
+
environment: options.environment,
|
|
87
|
+
composition: {
|
|
88
|
+
kind: 'workspace',
|
|
89
|
+
floor: { plugins: [...options.composition.floor], config: options.composition.config },
|
|
90
|
+
global: true,
|
|
91
|
+
failurePolicy: 'abort',
|
|
92
|
+
omitSurfaces: ['tui']
|
|
93
|
+
},
|
|
94
|
+
binding: options.binding ?? 'default',
|
|
95
|
+
activation: 'boot'
|
|
96
|
+
});
|
|
97
|
+
return new VibesAgentHost(runtime, options.root, options.workspaceRoot);
|
|
98
|
+
}
|
|
99
|
+
/** Every registry this host can answer, read in one pass over the kernel's own kind list. */
|
|
100
|
+
catalogs() {
|
|
101
|
+
return {
|
|
102
|
+
tools: this.catalog(),
|
|
103
|
+
groups: this.groups(),
|
|
104
|
+
commands: this.commands(),
|
|
105
|
+
prompts: this.prompts(),
|
|
106
|
+
models: this.models(),
|
|
107
|
+
providers: this.providers()
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* The live `tools/tool` registry in its wire form, through the daemon socket's
|
|
112
|
+
* own serializer — so a host receives JSON Schema exactly as the socket served
|
|
113
|
+
* it, one schema path for every transport rather than one per host.
|
|
114
|
+
*/
|
|
115
|
+
catalog() {
|
|
116
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.tools).map((descriptor) => LiveToolDescriptorSchema.parse(serializeDescriptor(descriptor)));
|
|
117
|
+
}
|
|
118
|
+
/** The live `cli/group` registry: how the host nests commands under a prefix. */
|
|
119
|
+
groups() {
|
|
120
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.groups);
|
|
121
|
+
}
|
|
122
|
+
/** The live `cli/command` registry: the commands this host can offer. */
|
|
123
|
+
commands() {
|
|
124
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.commands).filter((descriptor) => descriptor.internal !== true);
|
|
125
|
+
}
|
|
126
|
+
/** The live `prompts/manifest` registry: the prompts this host can render. */
|
|
127
|
+
prompts() {
|
|
128
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.prompts);
|
|
129
|
+
}
|
|
130
|
+
/** The live `ai/model` and `ai/provider` registries, when the workspace composed the AI plugin. */
|
|
131
|
+
models() {
|
|
132
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.models);
|
|
133
|
+
}
|
|
134
|
+
providers() {
|
|
135
|
+
return descriptorsOf(this.runtime, AGENT_HOST_KINDS.providers);
|
|
136
|
+
}
|
|
137
|
+
/**
|
|
138
|
+
* Run `toolId` as the caller this host session names, through the same path
|
|
139
|
+
* `vibes tools run` uses; the host's abort signal reaches the tool. Both
|
|
140
|
+
* ends are JSON because a host bridge carries JSON; a tool whose output is
|
|
141
|
+
* not JSON fails at this boundary rather than handing a host a value it
|
|
142
|
+
* cannot render or forward.
|
|
143
|
+
*/
|
|
144
|
+
async invokeTool(toolId, input, options = {}) {
|
|
145
|
+
return this.executions.run(async () => {
|
|
146
|
+
let parsedInput;
|
|
147
|
+
try {
|
|
148
|
+
parsedInput = HostToolInputSchema.safeParse(input);
|
|
149
|
+
}
|
|
150
|
+
catch (error) {
|
|
151
|
+
throw new CapabilityError('Tool input could not be validated.', 'INVALID_INPUT', {
|
|
152
|
+
reason: 'agent-host-input-invalid',
|
|
153
|
+
cause: CaughtFailureSchema.parse(error)
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
if (!parsedInput.success) {
|
|
157
|
+
throw new CapabilityError(conciseValidationFailure(parsedInput.error), 'INVALID_INPUT', {
|
|
158
|
+
reason: 'agent-host-input-invalid',
|
|
159
|
+
cause: parsedInput.error
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
const output = await invokeToolAsCaller(this.runtime, {
|
|
163
|
+
toolId,
|
|
164
|
+
input: parsedInput.data,
|
|
165
|
+
callId: `agent_${Date.now()}_${++this.calls}`,
|
|
166
|
+
loggerId: 'external:agent-host',
|
|
167
|
+
session: options.session,
|
|
168
|
+
harness: options.harness,
|
|
169
|
+
harnessSessionId: options.harnessSessionId,
|
|
170
|
+
signal: options.signal
|
|
171
|
+
});
|
|
172
|
+
let parsedOutput;
|
|
173
|
+
try {
|
|
174
|
+
parsedOutput = JsonValueFromReaderSchema.safeParse(output);
|
|
175
|
+
}
|
|
176
|
+
catch (error) {
|
|
177
|
+
throw new CapabilityError('Tool output could not be validated.', 'INTERNAL', {
|
|
178
|
+
reason: 'agent-host-output-invalid',
|
|
179
|
+
cause: CaughtFailureSchema.parse(error)
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
if (!parsedOutput.success) {
|
|
183
|
+
throw new CapabilityError(conciseValidationFailure(parsedOutput.error), 'INTERNAL', {
|
|
184
|
+
reason: 'agent-host-output-invalid',
|
|
185
|
+
cause: parsedOutput.error
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
return parsedOutput.data;
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Run one `cli/command` in this runtime and return what it wrote. The host's
|
|
193
|
+
* process exit code is untouched; this never calls `process.exit`.
|
|
194
|
+
*/
|
|
195
|
+
runCommand(command, args = {}, options = {}, invocation = {}) {
|
|
196
|
+
return this.executions.run(() => executeHostCommand(this.runtime, command, args, options, invocation));
|
|
197
|
+
}
|
|
198
|
+
/** Release the runtime. Idempotent: several callers may race a disposal. */
|
|
199
|
+
dispose() {
|
|
200
|
+
return this.runtime.dispose();
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
//# sourceMappingURL=agent-host.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-host.js","sourceRoot":"","sources":["../../src/harness/agent-host.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a host's argument string becomes a command's declared positionals.
|
|
3
|
+
*
|
|
4
|
+
* A host shows a command as a name and a line of text after it; the command's
|
|
5
|
+
* descriptor already declares what that line may carry. This is the translation
|
|
6
|
+
* between the two, and it reads the declaration rather than guessing — a command
|
|
7
|
+
* that declares no arguments takes none, an argument it declares gets its
|
|
8
|
+
* declared position, and anything past the last declaration is not invented into
|
|
9
|
+
* the call. The command's own implementation remains the authority on what it
|
|
10
|
+
* accepts; this only fills in what the descriptor published.
|
|
11
|
+
*
|
|
12
|
+
* It is separate from the boot because it is the same for every host: Pi's
|
|
13
|
+
* `/vibes session init`, OpenCode's `vibes session init` and a future ACP host
|
|
14
|
+
* differ in what they draw, not in how a quoted argument survives the trip.
|
|
15
|
+
*/
|
|
16
|
+
import type { CLICommandAssetDescriptor, CommandOptions } from '@vibesdotdev/cli-contracts';
|
|
17
|
+
import type { AgentHostCommand } from './schemas/agent-host.ts';
|
|
18
|
+
/** `session init` for a grouped command, `doctor` for one that declares no group. */
|
|
19
|
+
export declare function commandHostName(descriptor: {
|
|
20
|
+
id: string;
|
|
21
|
+
name?: string;
|
|
22
|
+
group?: string;
|
|
23
|
+
}): string;
|
|
24
|
+
/**
|
|
25
|
+
* The commands an agent host offers, in registration order.
|
|
26
|
+
*
|
|
27
|
+
* Two descriptors are deliberately not offered, and both are the host's honest
|
|
28
|
+
* answer rather than a limitation:
|
|
29
|
+
*
|
|
30
|
+
* - **Interactive commands.** A descriptor carrying an `interactive` contract
|
|
31
|
+
* means the CLI surface launches a TUI application in its place. An agent host
|
|
32
|
+
* is already inside somebody else's TUI, so offering one would advertise a
|
|
33
|
+
* mode the host cannot enter.
|
|
34
|
+
* - **Internal commands.** `internal: true` is the owner saying "not unless a
|
|
35
|
+
* surface opts in", and no host opts in by accident.
|
|
36
|
+
*/
|
|
37
|
+
export declare function agentHostCommands(descriptors: readonly CLICommandAssetDescriptor[]): AgentHostCommand[];
|
|
38
|
+
/**
|
|
39
|
+
* Split a host's argument string into the positional arguments the descriptor
|
|
40
|
+
* declares, in the declaration's own order.
|
|
41
|
+
*
|
|
42
|
+
* A quoted run stays together, so a path with spaces survives; a `variadic`
|
|
43
|
+
* declaration collects everything that is left. A missing argument takes the
|
|
44
|
+
* declared default, and a missing argument with no default is simply absent —
|
|
45
|
+
* which is how the command's own implementation sees "not supplied".
|
|
46
|
+
*/
|
|
47
|
+
export declare function parseCommandArguments(descriptor: {
|
|
48
|
+
arguments?: readonly {
|
|
49
|
+
name: string;
|
|
50
|
+
default?: unknown;
|
|
51
|
+
variadic?: boolean;
|
|
52
|
+
}[];
|
|
53
|
+
}, input: string): CommandOptions;
|
|
54
|
+
//# sourceMappingURL=command-arguments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-arguments.d.ts","sourceRoot":"","sources":["../../src/harness/command-arguments.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,qFAAqF;AACrF,wBAAgB,eAAe,CAAC,UAAU,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAMjG;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,SAAS,yBAAyB,EAAE,GAAG,gBAAgB,EAAE,CASvG;AAED;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CACpC,UAAU,EAAE;IAAE,SAAS,CAAC,EAAE,SAAS;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,EAAE,CAAA;CAAE,EAC9F,KAAK,EAAE,MAAM,GACX,cAAc,CAmBhB"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How a host's argument string becomes a command's declared positionals.
|
|
3
|
+
*
|
|
4
|
+
* A host shows a command as a name and a line of text after it; the command's
|
|
5
|
+
* descriptor already declares what that line may carry. This is the translation
|
|
6
|
+
* between the two, and it reads the declaration rather than guessing — a command
|
|
7
|
+
* that declares no arguments takes none, an argument it declares gets its
|
|
8
|
+
* declared position, and anything past the last declaration is not invented into
|
|
9
|
+
* the call. The command's own implementation remains the authority on what it
|
|
10
|
+
* accepts; this only fills in what the descriptor published.
|
|
11
|
+
*
|
|
12
|
+
* It is separate from the boot because it is the same for every host: Pi's
|
|
13
|
+
* `/vibes session init`, OpenCode's `vibes session init` and a future ACP host
|
|
14
|
+
* differ in what they draw, not in how a quoted argument survives the trip.
|
|
15
|
+
*/
|
|
16
|
+
import * as z from 'zod/v4';
|
|
17
|
+
/** `session init` for a grouped command, `doctor` for one that declares no group. */
|
|
18
|
+
export function commandHostName(descriptor) {
|
|
19
|
+
const name = descriptor.name?.trim() || descriptor.id;
|
|
20
|
+
const group = descriptor.group?.trim();
|
|
21
|
+
// A descriptor that already spells its group into its name is left alone:
|
|
22
|
+
// prefixing it twice would show the host a name the registry does not hold.
|
|
23
|
+
return group && !name.startsWith(`${group}.`) && !name.startsWith(`${group} `) ? `${group} ${name}` : name;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The commands an agent host offers, in registration order.
|
|
27
|
+
*
|
|
28
|
+
* Two descriptors are deliberately not offered, and both are the host's honest
|
|
29
|
+
* answer rather than a limitation:
|
|
30
|
+
*
|
|
31
|
+
* - **Interactive commands.** A descriptor carrying an `interactive` contract
|
|
32
|
+
* means the CLI surface launches a TUI application in its place. An agent host
|
|
33
|
+
* is already inside somebody else's TUI, so offering one would advertise a
|
|
34
|
+
* mode the host cannot enter.
|
|
35
|
+
* - **Internal commands.** `internal: true` is the owner saying "not unless a
|
|
36
|
+
* surface opts in", and no host opts in by accident.
|
|
37
|
+
*/
|
|
38
|
+
export function agentHostCommands(descriptors) {
|
|
39
|
+
return descriptors
|
|
40
|
+
.filter((descriptor) => descriptor.internal !== true && descriptor.interactive === undefined)
|
|
41
|
+
.map((descriptor) => ({
|
|
42
|
+
name: commandHostName(descriptor),
|
|
43
|
+
description: descriptor.description,
|
|
44
|
+
descriptor,
|
|
45
|
+
parse: (input) => parseCommandArguments(descriptor, input)
|
|
46
|
+
}));
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Split a host's argument string into the positional arguments the descriptor
|
|
50
|
+
* declares, in the declaration's own order.
|
|
51
|
+
*
|
|
52
|
+
* A quoted run stays together, so a path with spaces survives; a `variadic`
|
|
53
|
+
* declaration collects everything that is left. A missing argument takes the
|
|
54
|
+
* declared default, and a missing argument with no default is simply absent —
|
|
55
|
+
* which is how the command's own implementation sees "not supplied".
|
|
56
|
+
*/
|
|
57
|
+
export function parseCommandArguments(descriptor, input) {
|
|
58
|
+
const declared = descriptor.arguments ?? [];
|
|
59
|
+
if (declared.length === 0)
|
|
60
|
+
return {};
|
|
61
|
+
const tokens = tokenizeArguments(input);
|
|
62
|
+
const parsed = {};
|
|
63
|
+
for (const [index, argument] of declared.entries()) {
|
|
64
|
+
if (argument.variadic) {
|
|
65
|
+
parsed[argument.name] = tokens.slice(index);
|
|
66
|
+
return parsed;
|
|
67
|
+
}
|
|
68
|
+
const token = tokens[index];
|
|
69
|
+
if (token === undefined) {
|
|
70
|
+
const fallback = CommandArgumentDefaultSchema.safeParse(argument.default);
|
|
71
|
+
if (fallback.success)
|
|
72
|
+
parsed[argument.name] = fallback.data;
|
|
73
|
+
continue;
|
|
74
|
+
}
|
|
75
|
+
parsed[argument.name] = token;
|
|
76
|
+
}
|
|
77
|
+
return parsed;
|
|
78
|
+
}
|
|
79
|
+
/** A declared default that a command option can actually hold. */
|
|
80
|
+
const CommandArgumentDefaultSchema = z.union([z.string(), z.number(), z.boolean(), z.array(z.string())]);
|
|
81
|
+
/** Shell-ish splitting that keeps a double- or single-quoted run as one token. */
|
|
82
|
+
function tokenizeArguments(input) {
|
|
83
|
+
const tokens = [];
|
|
84
|
+
let current = '';
|
|
85
|
+
let quote;
|
|
86
|
+
let started = false;
|
|
87
|
+
for (const character of input.trim()) {
|
|
88
|
+
if (quote) {
|
|
89
|
+
if (character === quote)
|
|
90
|
+
quote = undefined;
|
|
91
|
+
else
|
|
92
|
+
current += character;
|
|
93
|
+
continue;
|
|
94
|
+
}
|
|
95
|
+
if (character === '"' || character === "'") {
|
|
96
|
+
quote = character;
|
|
97
|
+
started = true;
|
|
98
|
+
continue;
|
|
99
|
+
}
|
|
100
|
+
if (/\s/.test(character)) {
|
|
101
|
+
if (started || current.length > 0)
|
|
102
|
+
tokens.push(current);
|
|
103
|
+
current = '';
|
|
104
|
+
started = false;
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
current += character;
|
|
108
|
+
}
|
|
109
|
+
if (started || current.length > 0)
|
|
110
|
+
tokens.push(current);
|
|
111
|
+
return tokens;
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=command-arguments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-arguments.js","sourceRoot":"","sources":["../../src/harness/command-arguments.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Running one `cli/command` in a runtime an agent host already booted.
|
|
3
|
+
*
|
|
4
|
+
* This is the path that replaces shelling out to `vibes <command>`: the
|
|
5
|
+
* command's own implementation runs in the runtime the host already booted,
|
|
6
|
+
* against the workspace the host already bound. Nothing here re-implements a
|
|
7
|
+
* command, wraps its arguments, or reaches for a socket — it resolves the
|
|
8
|
+
* implementation the CLI surface resolves, runs it, and reports what it wrote.
|
|
9
|
+
*
|
|
10
|
+
* It is separate from the boot because a failure is a separate concern: a
|
|
11
|
+
* command that is registered but not implemented, and a command cancelled before
|
|
12
|
+
* it started, are both refusals the host must be told about, and neither is a
|
|
13
|
+
* failed run.
|
|
14
|
+
*/
|
|
15
|
+
import { type VibesRuntime } from '@vibesdotdev/kernel';
|
|
16
|
+
import type { CLICommandAssetDescriptor, CommandOptions } from '@vibesdotdev/cli-contracts';
|
|
17
|
+
import type { AgentHostCommandResult, CommandInvocation } from './schemas/agent-host.ts';
|
|
18
|
+
/** Run one `cli/command` here and now, and report what it wrote. */
|
|
19
|
+
export declare function executeHostCommand(runtime: VibesRuntime, command: CLICommandAssetDescriptor, args: CommandOptions, options: CommandOptions, invocation: CommandInvocation): Promise<AgentHostCommandResult>;
|
|
20
|
+
//# sourceMappingURL=command-execution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-execution.d.ts","sourceRoot":"","sources":["../../src/harness/command-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAA0E,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEhI,OAAO,KAAK,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG5F,OAAO,KAAK,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEzF,oEAAoE;AACpE,wBAAsB,kBAAkB,CACvC,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,yBAAyB,EAClC,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,cAAc,EACvB,UAAU,EAAE,iBAAiB,GAC3B,OAAO,CAAC,sBAAsB,CAAC,CA4BjC"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Running one `cli/command` in a runtime an agent host already booted.
|
|
3
|
+
*
|
|
4
|
+
* This is the path that replaces shelling out to `vibes <command>`: the
|
|
5
|
+
* command's own implementation runs in the runtime the host already booted,
|
|
6
|
+
* against the workspace the host already bound. Nothing here re-implements a
|
|
7
|
+
* command, wraps its arguments, or reaches for a socket — it resolves the
|
|
8
|
+
* implementation the CLI surface resolves, runs it, and reports what it wrote.
|
|
9
|
+
*
|
|
10
|
+
* It is separate from the boot because a failure is a separate concern: a
|
|
11
|
+
* command that is registered but not implemented, and a command cancelled before
|
|
12
|
+
* it started, are both refusals the host must be told about, and neither is a
|
|
13
|
+
* failed run.
|
|
14
|
+
*/
|
|
15
|
+
import { CapabilityError, getRuntimeStdioCapture } from '@vibesdotdev/kernel';
|
|
16
|
+
import { resolveCommandImplementation } from '@vibesdotdev/cli/surface';
|
|
17
|
+
import { CommandOutputRecorder, renderCapturedValue, runHostCommand } from "./command-output.js";
|
|
18
|
+
import { readAgentHostSettings } from "./agent-host-settings.js";
|
|
19
|
+
/** Run one `cli/command` here and now, and report what it wrote. */
|
|
20
|
+
export async function executeHostCommand(runtime, command, args, options, invocation) {
|
|
21
|
+
const resolution = await resolveCommandImplementation(runtime, command.id);
|
|
22
|
+
if (resolution.kind !== 'implemented') {
|
|
23
|
+
throw new CapabilityError(`The command '${command.id}' is registered but has no implementation in this runtime scope.`, 'NOT_FOUND', { reason: 'command-not-implemented', retryable: false, details: { id: command.id, why: resolution.reason } });
|
|
24
|
+
}
|
|
25
|
+
if (invocation.signal?.aborted) {
|
|
26
|
+
throw new CapabilityError(`The command '${command.id}' was cancelled before it started.`, 'CANCELLED', {
|
|
27
|
+
reason: 'command-cancelled',
|
|
28
|
+
retryable: true,
|
|
29
|
+
details: { id: command.id }
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
const recorder = new CommandOutputRecorder(command.id);
|
|
33
|
+
const lease = await acquireOutputLease(runtime, recorder);
|
|
34
|
+
const [commandResult] = await Promise.allSettled([runHostCommand(resolution.execute, args, options, recorder, runtime)]);
|
|
35
|
+
const [captureClose] = await Promise.allSettled([lease?.close()]);
|
|
36
|
+
if (commandResult.status === 'rejected') {
|
|
37
|
+
if (captureClose.status === 'rejected')
|
|
38
|
+
throw new AggregateError([commandResult.reason, captureClose.reason], 'Command execution and capture cleanup failed.', { cause: commandResult.reason });
|
|
39
|
+
throw commandResult.reason;
|
|
40
|
+
}
|
|
41
|
+
if (captureClose.status === 'rejected')
|
|
42
|
+
throw captureClose.reason;
|
|
43
|
+
return commandResult.value;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* The host's selected stdio lease, held for one command. Delivery follows
|
|
47
|
+
* External's declared configuration: forward by default, or consume in the
|
|
48
|
+
* recorder when capture-only delivery was explicitly selected.
|
|
49
|
+
*
|
|
50
|
+
* A host that publishes no stdio capture service — a headless embed — has no
|
|
51
|
+
* streams to hold, and the command's own `ui` recorder still returns its answer,
|
|
52
|
+
* which is the contract a host renders. A host that *does* publish the service
|
|
53
|
+
* and cannot acquire from it is broken, and is told so rather than quietly
|
|
54
|
+
* capturing less than it promised.
|
|
55
|
+
*/
|
|
56
|
+
async function acquireOutputLease(runtime, recorder) {
|
|
57
|
+
if (!runtime.hasContext('runtime/stdio'))
|
|
58
|
+
return undefined;
|
|
59
|
+
const capture = await getRuntimeStdioCapture(runtime);
|
|
60
|
+
const { commandCaptureDelivery: delivery } = await readAgentHostSettings(runtime);
|
|
61
|
+
return capture.acquire({
|
|
62
|
+
target: 'both',
|
|
63
|
+
consoleMethods: ['log', 'info', 'warn', 'error', 'debug'],
|
|
64
|
+
onWrite: (write, forward, channel) => {
|
|
65
|
+
recorder.recordBytes(channel === 'stderr' ? 'stderr' : 'stdout', write.bytes);
|
|
66
|
+
if (delivery === 'capture') {
|
|
67
|
+
write.complete();
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
return forward(write.bytes, write.complete);
|
|
71
|
+
},
|
|
72
|
+
onConsole: (method, args) => {
|
|
73
|
+
const line = args.map((argument) => renderCapturedValue(argument)).join(' ');
|
|
74
|
+
recorder.recordText(method === 'error' || method === 'warn' ? 'stderr' : 'stdout', `${line}\n`);
|
|
75
|
+
}
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=command-execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-execution.js","sourceRoot":"","sources":["../../src/harness/command-execution.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAoD,MAAM,qBAAqB,CAAC;AAChI,OAAO,EAAE,4BAA4B,EAAE,MAAM,0BAA0B,CAAC;AAExE,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACjG,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,oEAAoE;AACpE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,OAAqB,EACrB,OAAkC,EAClC,IAAoB,EACpB,OAAuB,EACvB,UAA6B;IAE7B,MAAM,UAAU,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IAC3E,IAAI,UAAU,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACvC,MAAM,IAAI,eAAe,CACxB,gBAAgB,OAAO,CAAC,EAAE,kEAAkE,EAC5F,WAAW,EACX,EAAE,MAAM,EAAE,yBAAyB,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,MAAM,EAAE,EAAE,CAC5G,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QAChC,MAAM,IAAI,eAAe,CAAC,gBAAgB,OAAO,CAAC,EAAE,oCAAoC,EAAE,WAAW,EAAE;YACtG,MAAM,EAAE,mBAAmB;YAC3B,SAAS,EAAE,IAAI;YACf,OAAO,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE;SAC3B,CAAC,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC1D,MAAM,CAAC,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACzH,MAAM,CAAC,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAClE,IAAI,aAAa,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACzC,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU;YAAE,MAAM,IAAI,cAAc,CAC/D,CAAC,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,+CAA+C,EAAE,EAAE,KAAK,EAAE,aAAa,CAAC,MAAM,EAAE,CAC7H,CAAC;QACF,MAAM,aAAa,CAAC,MAAM,CAAC;IAC5B,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU;QAAE,MAAM,YAAY,CAAC,MAAM,CAAC;IAClE,OAAO,aAAa,CAAC,KAAK,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,kBAAkB,CAChC,OAAqB,EACrB,QAA+B;IAE/B,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3D,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;IACtD,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,GAAG,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;IAClF,OAAO,OAAO,CAAC,OAAO,CAAC;QACtB,MAAM,EAAE,MAAM;QACd,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;QACzD,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;YACpC,QAAQ,CAAC,WAAW,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAC9E,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC5B,KAAK,CAAC,QAAQ,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC;YACb,CAAC;YACD,OAAO,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QACD,SAAS,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7E,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC;QACjG,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a command's output goes while an agent host runs it.
|
|
3
|
+
*
|
|
4
|
+
* A command writes two ways, so a host captures two ways: through the `ui`
|
|
5
|
+
* context it is handed, and through the host's own process streams and console,
|
|
6
|
+
* which the runtime's stdio capture lease holds for the command's duration.
|
|
7
|
+
* Both land in one buffer that the host renders with its own surface.
|
|
8
|
+
*
|
|
9
|
+
* It is separate from the boot because it is the same for every host, and because
|
|
10
|
+
* it is a different concern: this module knows how to *capture* and how to report
|
|
11
|
+
* a command that failed, while `agent-host.ts` knows what a runtime is.
|
|
12
|
+
*/
|
|
13
|
+
import { type VibesRuntime } from '@vibesdotdev/kernel';
|
|
14
|
+
import type { CommandOptions, UIContext } from '@vibesdotdev/cli-contracts';
|
|
15
|
+
import { type AgentHostCommandResult, type CliCommandExecute } from './schemas/agent-host.ts';
|
|
16
|
+
/**
|
|
17
|
+
* Collects one command's output for the host that ran it.
|
|
18
|
+
*
|
|
19
|
+
* The recorder is a `UIContext`, so a command that prints through `ui` needs no
|
|
20
|
+
* cooperation to be captured. It refuses the three things a host genuinely cannot
|
|
21
|
+
* do — read a line from stdin, read a secret, ask a yes/no question — with a
|
|
22
|
+
* typed refusal naming the command, rather than pretending to have answered.
|
|
23
|
+
*/
|
|
24
|
+
export declare class CommandOutputRecorder {
|
|
25
|
+
readonly ui: UIContext;
|
|
26
|
+
private readonly out;
|
|
27
|
+
private readonly err;
|
|
28
|
+
private answer;
|
|
29
|
+
constructor(commandId: string);
|
|
30
|
+
/** Text the command wrote through its `ui` context or through a captured log line. */
|
|
31
|
+
recordText(channel: 'stdout' | 'stderr', text: string): void;
|
|
32
|
+
/** Bytes the command wrote straight to a process stream the capture lease held. */
|
|
33
|
+
recordBytes(channel: 'stdout' | 'stderr', bytes: Uint8Array): void;
|
|
34
|
+
/** What the command wrote, and the status it ended with. */
|
|
35
|
+
result(exitCode: number): AgentHostCommandResult;
|
|
36
|
+
/**
|
|
37
|
+
* What the command wrote before it failed, with its message on stderr.
|
|
38
|
+
*
|
|
39
|
+
* The failure itself is not this method's to hold: the caller keeps the
|
|
40
|
+
* value-free facts, so nothing that crossed into the recorder can be
|
|
41
|
+
* re-serialized by accident.
|
|
42
|
+
*/
|
|
43
|
+
failed(message: string): AgentHostCommandResult;
|
|
44
|
+
}
|
|
45
|
+
/** One captured value as a host text surface shows it; a logger never throws at the code it logs for. */
|
|
46
|
+
export declare function renderCapturedValue(value: unknown): string;
|
|
47
|
+
/**
|
|
48
|
+
* Run a command's own implementation and report what it wrote.
|
|
49
|
+
*
|
|
50
|
+
* The host owns presentation and the runtime owns the failure's shape. A command
|
|
51
|
+
* that throws ends with a nonzero status, its own message on stderr, and the
|
|
52
|
+
* value-free facts of the failure in the result — so a host renders the text and
|
|
53
|
+
* a host that wants the failure shape gets one, without either parsing the other
|
|
54
|
+
* back out of the text.
|
|
55
|
+
*/
|
|
56
|
+
export declare function runHostCommand(execute: CliCommandExecute, args: CommandOptions, options: CommandOptions, recorder: CommandOutputRecorder, runtime: VibesRuntime): Promise<AgentHostCommandResult>;
|
|
57
|
+
/** Failures lead with stderr so a clipped host notification retains the diagnosis; partial stdout follows. */
|
|
58
|
+
export declare function commandOutputText(result: AgentHostCommandResult): string;
|
|
59
|
+
//# sourceMappingURL=command-output.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-output.d.ts","sourceRoot":"","sources":["../../src/harness/command-output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAA0D,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEhH,OAAO,KAAK,EAAkB,cAAc,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAC5F,OAAO,EAAkB,KAAK,sBAAsB,EAAE,KAAK,iBAAiB,EAAiB,MAAM,yBAAyB,CAAC;AA4C7H;;;;;;;GAOG;AACH,qBAAa,qBAAqB;IACjC,QAAQ,CAAC,EAAE,EAAE,SAAS,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAgB;IACpC,OAAO,CAAC,MAAM,CAAuB;gBAEzB,SAAS,EAAE,MAAM;IA4C7B,sFAAsF;IACtF,UAAU,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI;IAI5D,mFAAmF;IACnF,WAAW,CAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,EAAE,KAAK,EAAE,UAAU,GAAG,IAAI;IAIlE,4DAA4D;IAC5D,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB;IAMhD;;;;;;OAMG;IACH,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,sBAAsB;CAI/C;AAED,yGAAyG;AACzG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE1D;AAED;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CACnC,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,cAAc,EACpB,OAAO,EAAE,cAAc,EACvB,QAAQ,EAAE,qBAAqB,EAC/B,OAAO,EAAE,YAAY,GACnB,OAAO,CAAC,sBAAsB,CAAC,CAUjC;AAED,8GAA8G;AAC9G,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,sBAAsB,GAAG,MAAM,CAMxE"}
|