@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,257 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Live tool catalog for foreign hosts.
|
|
3
|
+
*
|
|
4
|
+
* The runtime's `tools/tool` registry is the only catalog. This module is the
|
|
5
|
+
* single shared projection hosts use to enumerate it: normalize one registry
|
|
6
|
+
* descriptor (warm-socket query or `vibes tools list --format json` row) into
|
|
7
|
+
* host-neutral tool data, and fetch that data over the CLI transport. Host
|
|
8
|
+
* adapters (Pi, OpenCode) add only their own registration mechanics on top;
|
|
9
|
+
* they never keep a tool list of their own.
|
|
10
|
+
*/
|
|
11
|
+
import * as z from 'zod/v4';
|
|
12
|
+
import { CapabilityError } from '@vibesdotdev/kernel';
|
|
13
|
+
import { JsonValueSchema } from '@vibesdotdev/kernel/schemas/json';
|
|
14
|
+
/** A JSON value as a registry descriptor carries it. */
|
|
15
|
+
const LiveJsonSchema = JsonValueSchema;
|
|
16
|
+
/** Per-action safety classes a descriptor publishes. */
|
|
17
|
+
const ActionSafetySchema = z.record(z.string(), z.string());
|
|
18
|
+
/**
|
|
19
|
+
* Structural descriptor subset a host projection consumes. Satisfied by
|
|
20
|
+
* warm-socket `tools/tool` descriptors and by CLI `tools list` JSON rows;
|
|
21
|
+
* both are just views over the same registry.
|
|
22
|
+
*/
|
|
23
|
+
export const LiveToolDescriptorSchema = z
|
|
24
|
+
.object({
|
|
25
|
+
id: z.string(),
|
|
26
|
+
name: z.string().optional(),
|
|
27
|
+
description: z.string().optional(),
|
|
28
|
+
/** MCP-specific one-liner; external native hosts use the canonical description. */
|
|
29
|
+
mcpDescription: z.string().optional(),
|
|
30
|
+
/** Published input JSON Schema (CLI rows project it via `tools list`). */
|
|
31
|
+
inputSchema: LiveJsonSchema.optional(),
|
|
32
|
+
/** Registry-published schemas (socket descriptors). */
|
|
33
|
+
schemas: z
|
|
34
|
+
.object({ input: LiveJsonSchema.optional(), output: LiveJsonSchema.optional(), actionSafety: ActionSafetySchema.optional() })
|
|
35
|
+
.loose()
|
|
36
|
+
.optional(),
|
|
37
|
+
safety: LiveJsonSchema.optional(),
|
|
38
|
+
requiresApproval: z.boolean().optional(),
|
|
39
|
+
purpose: z.array(z.string()).optional(),
|
|
40
|
+
hardware: z.array(z.string()).optional(),
|
|
41
|
+
enabled: z.boolean().optional(),
|
|
42
|
+
/** CLI list rows tag their origin; `ai/tool` rows are not invokable. */
|
|
43
|
+
source: z.string().optional()
|
|
44
|
+
})
|
|
45
|
+
.loose();
|
|
46
|
+
/** A published object JSON Schema: `type: "object"` and whatever else it declares. */
|
|
47
|
+
const ObjectJsonSchemaSchema = z.object({ type: z.literal('object') }).catchall(LiveJsonSchema);
|
|
48
|
+
/** A string with something other than whitespace, trimmed. */
|
|
49
|
+
const NonBlankSchema = z.string().trim().min(1);
|
|
50
|
+
function nonBlank(value) {
|
|
51
|
+
return NonBlankSchema.safeParse(value).data;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* One registry descriptor becomes one host-neutral tool. Prefers the
|
|
55
|
+
* registry-published input schema (the same projection the native agent loop
|
|
56
|
+
* uses); degrades to an open object and says so in the description rather
|
|
57
|
+
* than silently accepting anything.
|
|
58
|
+
*/
|
|
59
|
+
export function normalizeLiveTool(descriptor) {
|
|
60
|
+
const id = descriptor.id.trim();
|
|
61
|
+
const label = nonBlank(descriptor.name) ?? id;
|
|
62
|
+
const published = [descriptor.inputSchema, descriptor.schemas?.input]
|
|
63
|
+
.map((candidate) => ObjectJsonSchemaSchema.safeParse(candidate).data)
|
|
64
|
+
.find((schema) => schema !== undefined);
|
|
65
|
+
const description = nonBlank(descriptor.mcpDescription) ?? nonBlank(descriptor.description) ?? id;
|
|
66
|
+
const tool = published
|
|
67
|
+
? { id, label, description, inputSchema: published, schemaSource: 'runtime-schema' }
|
|
68
|
+
: {
|
|
69
|
+
id,
|
|
70
|
+
label,
|
|
71
|
+
description: description + ' (untyped input: pass a JSON object)',
|
|
72
|
+
inputSchema: { type: 'object' },
|
|
73
|
+
schemaSource: 'open-object'
|
|
74
|
+
};
|
|
75
|
+
if (descriptor.schemas?.output !== undefined)
|
|
76
|
+
tool.outputSchema = descriptor.schemas.output;
|
|
77
|
+
if (descriptor.safety !== undefined)
|
|
78
|
+
tool.safety = descriptor.safety;
|
|
79
|
+
if (descriptor.requiresApproval !== undefined)
|
|
80
|
+
tool.requiresApproval = descriptor.requiresApproval;
|
|
81
|
+
const actionSafety = descriptor.schemas?.actionSafety;
|
|
82
|
+
if (actionSafety)
|
|
83
|
+
tool.schemas = { actionSafety };
|
|
84
|
+
return tool;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* The hardware a runtime's host declared. Hardware is read from the declared
|
|
88
|
+
* scope, never guessed from the environment; a host with no runtime passes no
|
|
89
|
+
* hardware and the child CLI answers from its own declaration.
|
|
90
|
+
*/
|
|
91
|
+
export function resolveExternalRuntimeHardware(runtime) {
|
|
92
|
+
return runtime.declaredScope.hardware;
|
|
93
|
+
}
|
|
94
|
+
/** Project caller and hardware identity into child CLI processes. */
|
|
95
|
+
export function withExternalHostEnvironment(environment = {}, context = {}) {
|
|
96
|
+
const result = { ...environment };
|
|
97
|
+
// Only an explicit hardware is projected; otherwise the child CLI's own
|
|
98
|
+
// declaration answers.
|
|
99
|
+
if (context.hardware)
|
|
100
|
+
result.VIBES_RUNTIME_HARDWARE = context.hardware;
|
|
101
|
+
const variables = {
|
|
102
|
+
VIBES_AGENT_ID: context.caller?.agentId,
|
|
103
|
+
VIBES_HARNESS: context.caller?.harness,
|
|
104
|
+
VIBES_SESSION_ID: context.caller?.sessionId,
|
|
105
|
+
VIBES_PARTICIPANT_ID: context.caller?.participantId
|
|
106
|
+
};
|
|
107
|
+
for (const [key, value] of Object.entries(variables)) {
|
|
108
|
+
if (value)
|
|
109
|
+
result[key] = value;
|
|
110
|
+
}
|
|
111
|
+
return result;
|
|
112
|
+
}
|
|
113
|
+
/** A host tool call's input as the projection reads it: a JSON object. */
|
|
114
|
+
export const HostToolInputSchema = z.record(z.string(), LiveJsonSchema.optional()).readonly();
|
|
115
|
+
/** A safety declaration: a bare category, or an object naming one. */
|
|
116
|
+
const SafetyCategorySchema = z.union([
|
|
117
|
+
z.string(),
|
|
118
|
+
z.object({ category: z.string() }).loose().transform((safety) => safety.category)
|
|
119
|
+
]);
|
|
120
|
+
/** The first non-blank action name the input carries (`action`, `operation`, `op`), lowercased. */
|
|
121
|
+
function inputAction(input) {
|
|
122
|
+
return [input.action, input.operation, input.op]
|
|
123
|
+
.map((value) => NonBlankSchema.safeParse(value).data)
|
|
124
|
+
.find((value) => value !== undefined)
|
|
125
|
+
?.toLowerCase();
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* One approval decision for every native host projection. Only a declared
|
|
129
|
+
* `read` safety (the selected action's, else the tool's) runs unapproved; a
|
|
130
|
+
* missing or unrecognised declaration requires approval.
|
|
131
|
+
*/
|
|
132
|
+
export function requiresExternalHostApproval(descriptor, input = {}) {
|
|
133
|
+
if (descriptor.requiresApproval === true)
|
|
134
|
+
return true;
|
|
135
|
+
const action = inputAction(input);
|
|
136
|
+
const actionSafety = descriptor.schemas?.actionSafety;
|
|
137
|
+
const selectedSafety = action ? actionSafety?.[action] : undefined;
|
|
138
|
+
if (selectedSafety !== undefined)
|
|
139
|
+
return selectedSafety !== 'read';
|
|
140
|
+
if (!action && actionSafety && Object.values(actionSafety).some((safety) => safety !== 'read'))
|
|
141
|
+
return true;
|
|
142
|
+
return SafetyCategorySchema.safeParse(descriptor.safety).data !== 'read';
|
|
143
|
+
}
|
|
144
|
+
/** Apply the host's scope and identity to the canonical CLI fallback path. */
|
|
145
|
+
export function withExternalHostToolContext(argv, context) {
|
|
146
|
+
if (argv[0] !== 'tools' || (argv[1] !== 'list' && argv[1] !== 'run'))
|
|
147
|
+
return argv;
|
|
148
|
+
const result = [...argv];
|
|
149
|
+
const has = (...flags) => flags.some((flag) => result.some((arg) => arg === flag || arg.startsWith(flag + '=')));
|
|
150
|
+
const add = (flag, value, aliases = []) => {
|
|
151
|
+
if (value && !has(flag, ...aliases))
|
|
152
|
+
result.push(flag, value);
|
|
153
|
+
};
|
|
154
|
+
add('--purpose', context.purpose ?? 'agent');
|
|
155
|
+
if (argv[1] === 'list') {
|
|
156
|
+
add('--scope', context.hardware);
|
|
157
|
+
}
|
|
158
|
+
if (argv[1] === 'run') {
|
|
159
|
+
add('--session', context.caller?.sessionId, ['-s']);
|
|
160
|
+
add('--participant', context.caller?.participantId, ['-p']);
|
|
161
|
+
add('--agent', context.caller?.agentId, ['-a']);
|
|
162
|
+
add('--harness', context.caller?.harness);
|
|
163
|
+
}
|
|
164
|
+
return result;
|
|
165
|
+
}
|
|
166
|
+
/** A catalog that could not be read: `INVALID_INPUT` / `UNAVAILABLE` with `live-catalog-*` reasons. */
|
|
167
|
+
function catalogRefusal(reason, message, details) {
|
|
168
|
+
const options = { reason, retryable: reason !== 'live-catalog-not-json' };
|
|
169
|
+
if (details)
|
|
170
|
+
options.details = details;
|
|
171
|
+
return new CapabilityError(message, reason.endsWith('json') || reason.endsWith('array') ? 'INVALID_INPUT' : 'UNAVAILABLE', options);
|
|
172
|
+
}
|
|
173
|
+
/** One catalog row's id, whether or not the row is otherwise readable. */
|
|
174
|
+
const RowIdSchema = z.object({ id: z.union([z.string(), z.number()]) }).loose();
|
|
175
|
+
/**
|
|
176
|
+
* Parse `vibes tools list --format json` stdout. `--format json` promises one
|
|
177
|
+
* parseable document: a row array on success. Anything else is a loud, typed
|
|
178
|
+
* failure, never an empty catalog masquerading as truth.
|
|
179
|
+
*/
|
|
180
|
+
export function parseLiveToolsOutput(stdout) {
|
|
181
|
+
let decoded;
|
|
182
|
+
try {
|
|
183
|
+
decoded = LiveJsonSchema.parse(JSON.parse(stdout));
|
|
184
|
+
}
|
|
185
|
+
catch (error) {
|
|
186
|
+
throw new CapabilityError('Could not parse the live tool catalog: CLI output was not JSON.', 'INVALID_INPUT', {
|
|
187
|
+
reason: 'live-catalog-not-json',
|
|
188
|
+
retryable: false,
|
|
189
|
+
cause: error
|
|
190
|
+
});
|
|
191
|
+
}
|
|
192
|
+
const rows = z.array(LiveJsonSchema).safeParse(decoded);
|
|
193
|
+
if (!rows.success) {
|
|
194
|
+
throw catalogRefusal('live-catalog-not-array', 'Could not read the live tool catalog: expected a JSON array of tool rows.');
|
|
195
|
+
}
|
|
196
|
+
const tools = [];
|
|
197
|
+
const skipped = [];
|
|
198
|
+
for (const row of rows.data) {
|
|
199
|
+
const id = String(RowIdSchema.safeParse(row).data?.id ?? '').trim();
|
|
200
|
+
const descriptor = LiveToolDescriptorSchema.safeParse(row);
|
|
201
|
+
if (id.length === 0 || !descriptor.success) {
|
|
202
|
+
skipped.push({ id: id || '<missing>', reason: 'missing-id' });
|
|
203
|
+
continue;
|
|
204
|
+
}
|
|
205
|
+
// `vibes tools run` only invokes `tools/tool` rows; `ai/tool` rows are
|
|
206
|
+
// inspect-visible but would fail on every call, so they are not projected.
|
|
207
|
+
if (descriptor.data.source === 'ai/tool') {
|
|
208
|
+
skipped.push({ id, reason: 'not-invokable-source' });
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
tools.push(descriptor.data);
|
|
212
|
+
}
|
|
213
|
+
return { tools, skipped };
|
|
214
|
+
}
|
|
215
|
+
function throwUnlessOk(result, argv) {
|
|
216
|
+
if (result.cancelled) {
|
|
217
|
+
throw catalogRefusal('live-catalog-cancelled', 'Could not read the live tool catalog: the CLI call was cancelled.');
|
|
218
|
+
}
|
|
219
|
+
if (result.exitCode !== 0) {
|
|
220
|
+
const detail = [result.stdout, result.stderr].filter(Boolean).join('\n');
|
|
221
|
+
throw catalogRefusal('live-catalog-cli-failed', 'Could not read the live tool catalog (`' + argv.join(' ') + '` exited ' + result.exitCode + ')' + (detail ? ': ' + detail : '.'), { exitCode: result.exitCode });
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
/** The CLI run options a catalog fetch hands on: only what the caller set. */
|
|
225
|
+
function catalogRunOptions(options) {
|
|
226
|
+
const run = { hostEnv: options.hostEnv };
|
|
227
|
+
if (options.cwd !== undefined)
|
|
228
|
+
run.cwd = options.cwd;
|
|
229
|
+
if (options.signal !== undefined)
|
|
230
|
+
run.signal = options.signal;
|
|
231
|
+
if (options.env !== undefined)
|
|
232
|
+
run.env = options.env;
|
|
233
|
+
return run;
|
|
234
|
+
}
|
|
235
|
+
/** Synchronous variant for hosts that register before they can await. */
|
|
236
|
+
export function fetchLiveToolsViaCliSync(run, options) {
|
|
237
|
+
const argv = withExternalHostToolContext(['tools', 'list', '--format', 'json'], options);
|
|
238
|
+
const { signal: _signal, ...syncOptions } = catalogRunOptions(options);
|
|
239
|
+
const result = run(argv, syncOptions);
|
|
240
|
+
throwUnlessOk(result, argv);
|
|
241
|
+
return parseLiveToolsOutput(result.stdout);
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Ask the local CLI for the live registry. Fails closed with an actionable
|
|
245
|
+
* typed error; hosts register nothing on failure rather than a stale subset.
|
|
246
|
+
*/
|
|
247
|
+
export async function fetchLiveToolsViaCli(run, options) {
|
|
248
|
+
const argv = withExternalHostToolContext(['tools', 'list', '--format', 'json'], options);
|
|
249
|
+
const result = await run(argv, catalogRunOptions(options));
|
|
250
|
+
throwUnlessOk(result, argv);
|
|
251
|
+
return parseLiveToolsOutput(result.stdout);
|
|
252
|
+
}
|
|
253
|
+
/** Read a catalog row through the descriptor schema; `undefined` when it is not one. */
|
|
254
|
+
export function parseLiveToolDescriptor(row) {
|
|
255
|
+
return LiveToolDescriptorSchema.safeParse(row).data;
|
|
256
|
+
}
|
|
257
|
+
//# sourceMappingURL=live-tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"live-tools.js","sourceRoot":"","sources":["../../src/harness/live-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Managed-block ownership primitives.
|
|
3
|
+
*
|
|
4
|
+
* A managed block is a delimited region we wrote inside a file we do not own.
|
|
5
|
+
* The version marker makes an existing install recognizable, so install can
|
|
6
|
+
* migrate it, status can age it, and uninstall can remove exactly our bytes
|
|
7
|
+
* without touching the owner's content.
|
|
8
|
+
*/
|
|
9
|
+
export type ManagedBlock = {
|
|
10
|
+
present: false;
|
|
11
|
+
version: null;
|
|
12
|
+
body: null;
|
|
13
|
+
} | {
|
|
14
|
+
present: true;
|
|
15
|
+
version: number;
|
|
16
|
+
body: string;
|
|
17
|
+
};
|
|
18
|
+
export declare function wrapManagedBlock(kind: string, body: string, version?: number): string;
|
|
19
|
+
export declare function readManagedBlock(text: string, kind: string): ManagedBlock;
|
|
20
|
+
export declare function hasManagedBlock(text: string, kind: string): boolean;
|
|
21
|
+
export declare function managedBlockVersion(text: string, kind: string): number | null;
|
|
22
|
+
/**
|
|
23
|
+
* Put the block in the text. An existing block keeps its position so a file
|
|
24
|
+
* with several managed regions is not shuffled; a new block goes first,
|
|
25
|
+
* because hosts read the harness briefing before the project notes.
|
|
26
|
+
*/
|
|
27
|
+
export declare function replaceManagedBlock(text: string, kind: string, body: string, version?: number): string;
|
|
28
|
+
/** Remove only our block, preserving the owner's surrounding content. */
|
|
29
|
+
export declare function removeManagedBlock(text: string, kind: string): string;
|
|
30
|
+
/** Ownership marker for files we generate outright (the extension module). */
|
|
31
|
+
export declare function managedFileVersion(text: string, kind: string): number | null;
|
|
32
|
+
export declare function isManagedFile(text: string, kind: string): boolean;
|
|
33
|
+
export declare function withManagedFileHeader(kind: string, body: string, version?: number): string;
|
|
34
|
+
//# sourceMappingURL=managed-block.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-block.d.ts","sourceRoot":"","sources":["../../src/harness/managed-block.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAaH,MAAM,MAAM,YAAY,GACrB;IAAE,OAAO,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,IAAI,CAAA;CAAE,GAC7C;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAWpD,wBAAgB,gBAAgB,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAqC,GAC5C,MAAM,CAER;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAIzE;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEnE;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAClC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAqC,GAC5C,MAAM,CAOR;AAED,yEAAyE;AACzE,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMrE;AAED,8EAA8E;AAC9E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG5E;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,wBAAgB,qBAAqB,CACpC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE,MAAqC,GAC5C,MAAM,CAER"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Managed-block ownership primitives.
|
|
3
|
+
*
|
|
4
|
+
* A managed block is a delimited region we wrote inside a file we do not own.
|
|
5
|
+
* The version marker makes an existing install recognizable, so install can
|
|
6
|
+
* migrate it, status can age it, and uninstall can remove exactly our bytes
|
|
7
|
+
* without touching the owner's content.
|
|
8
|
+
*/
|
|
9
|
+
import { VIBES_HARNESS_MARKER_VERSION, managedBlockBegin, managedBlockEnd, managedLineMarker } from "./markers.js";
|
|
10
|
+
function escapeRegExp(value) {
|
|
11
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
12
|
+
}
|
|
13
|
+
const ABSENT = { present: false, version: null, body: null };
|
|
14
|
+
function blockRegExp(kind) {
|
|
15
|
+
return new RegExp(`<!-- vibes:managed:${escapeRegExp(kind)} v=(\\d+) -->\\n([\\s\\S]*?)\\n<!-- /vibes:managed:${escapeRegExp(kind)} -->`, 'g');
|
|
16
|
+
}
|
|
17
|
+
export function wrapManagedBlock(kind, body, version = VIBES_HARNESS_MARKER_VERSION) {
|
|
18
|
+
return `${managedBlockBegin(kind, version)}\n${body.replace(/\n+$/, '')}\n${managedBlockEnd(kind)}`;
|
|
19
|
+
}
|
|
20
|
+
export function readManagedBlock(text, kind) {
|
|
21
|
+
const match = blockRegExp(kind).exec(text);
|
|
22
|
+
if (!match)
|
|
23
|
+
return ABSENT;
|
|
24
|
+
return { present: true, version: Number(match[1]), body: match[2] };
|
|
25
|
+
}
|
|
26
|
+
export function hasManagedBlock(text, kind) {
|
|
27
|
+
return readManagedBlock(text, kind).present;
|
|
28
|
+
}
|
|
29
|
+
export function managedBlockVersion(text, kind) {
|
|
30
|
+
return readManagedBlock(text, kind).version;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Put the block in the text. An existing block keeps its position so a file
|
|
34
|
+
* with several managed regions is not shuffled; a new block goes first,
|
|
35
|
+
* because hosts read the harness briefing before the project notes.
|
|
36
|
+
*/
|
|
37
|
+
export function replaceManagedBlock(text, kind, body, version = VIBES_HARNESS_MARKER_VERSION) {
|
|
38
|
+
const block = wrapManagedBlock(kind, body, version);
|
|
39
|
+
const pattern = blockRegExp(kind);
|
|
40
|
+
if (pattern.test(text))
|
|
41
|
+
return text.replace(pattern, () => block);
|
|
42
|
+
const base = text.replace(/\n+$/, '');
|
|
43
|
+
if (base.length === 0)
|
|
44
|
+
return block + '\n';
|
|
45
|
+
return block + '\n\n' + base + '\n';
|
|
46
|
+
}
|
|
47
|
+
/** Remove only our block, preserving the owner's surrounding content. */
|
|
48
|
+
export function removeManagedBlock(text, kind) {
|
|
49
|
+
const removed = text
|
|
50
|
+
.replace(blockRegExp(kind), '')
|
|
51
|
+
.replace(/\n{3,}/g, '\n\n')
|
|
52
|
+
.replace(/^\n+/, '');
|
|
53
|
+
return removed.length === 0 ? '' : `${removed.replace(/\n+$/, '')}\n`;
|
|
54
|
+
}
|
|
55
|
+
/** Ownership marker for files we generate outright (the extension module). */
|
|
56
|
+
export function managedFileVersion(text, kind) {
|
|
57
|
+
const match = new RegExp(`^// vibes:managed:${escapeRegExp(kind)} v=(\\d+)$`, 'm').exec(text);
|
|
58
|
+
return match ? Number(match[1]) : null;
|
|
59
|
+
}
|
|
60
|
+
export function isManagedFile(text, kind) {
|
|
61
|
+
return managedFileVersion(text, kind) !== null;
|
|
62
|
+
}
|
|
63
|
+
export function withManagedFileHeader(kind, body, version = VIBES_HARNESS_MARKER_VERSION) {
|
|
64
|
+
return `${managedLineMarker(kind, version)}\n${body}`;
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=managed-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"managed-block.js","sourceRoot":"","sources":["../../src/harness/managed-block.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host-neutral ownership markers.
|
|
3
|
+
*
|
|
4
|
+
* Every host projection (Pi, OpenCode, and any later one) writes the same
|
|
5
|
+
* managed-block markers and settings key, so an install is recognizable,
|
|
6
|
+
* migratable, and removable byte-for-byte regardless of which host wrote it.
|
|
7
|
+
* Host file layouts, package specifiers, and tool-policy profiles are
|
|
8
|
+
* provider-native and live in the matching `@vibesdotdev/integrations-*` owner.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Bump when a managed file's shape changes. Written into every managed block so
|
|
12
|
+
* an existing install can be recognized, migrated, and removed exactly.
|
|
13
|
+
*/
|
|
14
|
+
export declare const VIBES_HARNESS_MARKER_VERSION = 1;
|
|
15
|
+
/** settings.json key holding vibes ownership state for that host. */
|
|
16
|
+
export declare const VIBES_MANAGED_SETTINGS_KEY = "vibesManaged";
|
|
17
|
+
/** HTML comment marker pair for managed blocks in Markdown. */
|
|
18
|
+
export declare function managedBlockBegin(kind: string, version?: number): string;
|
|
19
|
+
export declare function managedBlockEnd(kind: string): string;
|
|
20
|
+
/** Line-comment marker for managed TypeScript modules. */
|
|
21
|
+
export declare function managedLineMarker(kind: string, version?: number): string;
|
|
22
|
+
//# sourceMappingURL=markers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markers.d.ts","sourceRoot":"","sources":["../../src/harness/markers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,eAAO,MAAM,4BAA4B,IAAI,CAAC;AAE9C,qEAAqE;AACrE,eAAO,MAAM,0BAA0B,iBAAiB,CAAC;AAEzD,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,SAA+B,GAAG,MAAM,CAE9F;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,0DAA0D;AAC1D,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,SAA+B,GAAG,MAAM,CAE9F"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Host-neutral ownership markers.
|
|
3
|
+
*
|
|
4
|
+
* Every host projection (Pi, OpenCode, and any later one) writes the same
|
|
5
|
+
* managed-block markers and settings key, so an install is recognizable,
|
|
6
|
+
* migratable, and removable byte-for-byte regardless of which host wrote it.
|
|
7
|
+
* Host file layouts, package specifiers, and tool-policy profiles are
|
|
8
|
+
* provider-native and live in the matching `@vibesdotdev/integrations-*` owner.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Bump when a managed file's shape changes. Written into every managed block so
|
|
12
|
+
* an existing install can be recognized, migrated, and removed exactly.
|
|
13
|
+
*/
|
|
14
|
+
export const VIBES_HARNESS_MARKER_VERSION = 1;
|
|
15
|
+
/** settings.json key holding vibes ownership state for that host. */
|
|
16
|
+
export const VIBES_MANAGED_SETTINGS_KEY = 'vibesManaged';
|
|
17
|
+
/** HTML comment marker pair for managed blocks in Markdown. */
|
|
18
|
+
export function managedBlockBegin(kind, version = VIBES_HARNESS_MARKER_VERSION) {
|
|
19
|
+
return `<!-- vibes:managed:${kind} v=${version} -->`;
|
|
20
|
+
}
|
|
21
|
+
export function managedBlockEnd(kind) {
|
|
22
|
+
return `<!-- /vibes:managed:${kind} -->`;
|
|
23
|
+
}
|
|
24
|
+
/** Line-comment marker for managed TypeScript modules. */
|
|
25
|
+
export function managedLineMarker(kind, version = VIBES_HARNESS_MARKER_VERSION) {
|
|
26
|
+
return `// vibes:managed:${kind} v=${version}`;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=markers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markers.js","sourceRoot":"","sources":["../../src/harness/markers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC;AAE9C,qEAAqE;AACrE,MAAM,CAAC,MAAM,0BAA0B,GAAG,cAAc,CAAC;AAEzD,+DAA+D;AAC/D,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAO,GAAG,4BAA4B;IACrF,OAAO,sBAAsB,IAAI,MAAM,OAAO,MAAM,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IAC3C,OAAO,uBAAuB,IAAI,MAAM,CAAC;AAC1C,CAAC;AAED,0DAA0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAO,GAAG,4BAA4B;IACrF,OAAO,oBAAoB,IAAI,MAAM,OAAO,EAAE,CAAC;AAChD,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from './index.ts';
|
|
2
|
+
export { AGENT_HOST_KINDS, VibesAgentHost, agentHostSettingsPlugin } from './agent-host.ts';
|
|
3
|
+
export * from './live-tools.ts';
|
|
4
|
+
export * from './runtime-transport.ts';
|
|
5
|
+
export * from './tool-projection.ts';
|
|
6
|
+
//# sourceMappingURL=node.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/harness/node.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC5F,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * from "./index.js";
|
|
2
|
+
export { AGENT_HOST_KINDS, VibesAgentHost, agentHostSettingsPlugin } from "./agent-host.js";
|
|
3
|
+
export * from "./live-tools.js";
|
|
4
|
+
export * from "./runtime-transport.js";
|
|
5
|
+
export * from "./tool-projection.js";
|
|
6
|
+
//# sourceMappingURL=node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../src/harness/node.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC5F,cAAc,iBAAiB,CAAC;AAChC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Harness system prompt: canonical text plus per-host projections.
|
|
3
|
+
*
|
|
4
|
+
* Prompts never enumerate a hand-maintained tool list. Live briefings are
|
|
5
|
+
* built from the tool names a host actually registered (projected from the
|
|
6
|
+
* runtime `tools/tool` registry at load). Baked files use a generic briefing
|
|
7
|
+
* that names no tools, so they cannot drift from the registry.
|
|
8
|
+
*/
|
|
9
|
+
export declare const VIBES_HARNESS_PROMPT_DESCRIPTOR_IDS: readonly ["overlay.surface.system-agent", "guardrails.session-protocol"];
|
|
10
|
+
export declare const VIBES_HARNESS_PROMPT_PROVENANCE: string;
|
|
11
|
+
/** First line of every harness prompt; also the marker older installs checked. */
|
|
12
|
+
export declare const HARNESS_SYSTEM_PROMPT_PROVENANCE_MARKER = "System prompt provenance:";
|
|
13
|
+
/** One callable tool as the host model should see it. */
|
|
14
|
+
export type HarnessPromptTool = {
|
|
15
|
+
/** Name the model must emit to call this tool in this host. */
|
|
16
|
+
name: string;
|
|
17
|
+
summary: string;
|
|
18
|
+
};
|
|
19
|
+
export type HarnessPromptSurface = {
|
|
20
|
+
/** Namespace label the model should expect, e.g. `vibes_*`. */
|
|
21
|
+
namespace: string;
|
|
22
|
+
tools: readonly HarnessPromptTool[];
|
|
23
|
+
/** Names listed on one compact line instead of their own bullets. */
|
|
24
|
+
alsoCallable?: readonly string[];
|
|
25
|
+
/** Host-specific caveat appended after the tool list. */
|
|
26
|
+
note?: string;
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* The harness system prompt: THE prompts kind's `external.harness.system-prompt`.
|
|
30
|
+
* Hosts build it synchronously at load, before any runtime query, so the
|
|
31
|
+
* descriptor's own manifest renders; the bullets are the host's registered tools.
|
|
32
|
+
*/
|
|
33
|
+
export declare function buildHarnessSystemPrompt(surface: HarnessPromptSurface, workspace?: {
|
|
34
|
+
root: string;
|
|
35
|
+
}): string;
|
|
36
|
+
/**
|
|
37
|
+
* Static briefing for baked files (SYSTEM.md, installer presets). Names no
|
|
38
|
+
* tools, so it cannot drift from the registry; the live hook each host runs
|
|
39
|
+
* at session start carries the exact registered names. Its note is
|
|
40
|
+
* `external.harness.static-briefing-note`.
|
|
41
|
+
*/
|
|
42
|
+
export declare function buildStaticHarnessBriefing(namespace: string): string;
|
|
43
|
+
/** A tool as a host registered it: registry id plus the registered name. */
|
|
44
|
+
export type LivePromptEntry = {
|
|
45
|
+
/** Canonical registry id (e.g. `workspace-fs`). */
|
|
46
|
+
id: string;
|
|
47
|
+
/** Name the model must emit in this host. */
|
|
48
|
+
name: string;
|
|
49
|
+
/** One-line summary; defaults to the registered description's first line. */
|
|
50
|
+
summary?: string;
|
|
51
|
+
};
|
|
52
|
+
/** Live briefing from the names a host actually registered. */
|
|
53
|
+
export declare function livePromptSurface(namespace: string, entries: readonly LivePromptEntry[], note: string): HarnessPromptSurface;
|
|
54
|
+
//# sourceMappingURL=prompt.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../../src/harness/prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAUH,eAAO,MAAM,mCAAmC,0EAGtC,CAAC;AAEX,eAAO,MAAM,+BAA+B,QACiD,CAAC;AAE9F,kFAAkF;AAClF,eAAO,MAAM,uCAAuC,8BAA8B,CAAC;AAEnF,yDAAyD;AACzD,MAAM,MAAM,iBAAiB,GAAG;IAC/B,+DAA+D;IAC/D,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IAClC,+DAA+D;IAC/D,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;IACpC,qEAAqE;IACrE,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,yDAAyD;IACzD,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAIF;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,oBAAoB,EAAE,SAAS,CAAC,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAa5G;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAMpE;AAED,4EAA4E;AAC5E,MAAM,MAAM,eAAe,GAAG;IAC7B,mDAAmD;IACnD,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,IAAI,EAAE,MAAM,CAAC;IACb,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAeF,+DAA+D;AAC/D,wBAAgB,iBAAiB,CAChC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,SAAS,eAAe,EAAE,EACnC,IAAI,EAAE,MAAM,GACV,oBAAoB,CAYtB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Harness system prompt: canonical text plus per-host projections.
|
|
3
|
+
*
|
|
4
|
+
* Prompts never enumerate a hand-maintained tool list. Live briefings are
|
|
5
|
+
* built from the tool names a host actually registered (projected from the
|
|
6
|
+
* runtime `tools/tool` registry at load). Baked files use a generic briefing
|
|
7
|
+
* that names no tools, so they cannot drift from the registry.
|
|
8
|
+
*/
|
|
9
|
+
import { renderPromptManifest } from '@vibesdotdev/ai-schemas';
|
|
10
|
+
import { SESSION_PROTOCOL_PROMPT_ID, SYSTEM_AGENT_SURFACE_PROMPT_ID } from '@vibesdotdev/tools/prompts/ids';
|
|
11
|
+
import staticBriefingNotePrompt from "./prompts/static-briefing-note.prompt.descriptor.js";
|
|
12
|
+
import harnessSystemPrompt from "./prompts/system-prompt.prompt.descriptor.js";
|
|
13
|
+
export const VIBES_HARNESS_PROMPT_DESCRIPTOR_IDS = [
|
|
14
|
+
SYSTEM_AGENT_SURFACE_PROMPT_ID,
|
|
15
|
+
SESSION_PROTOCOL_PROMPT_ID
|
|
16
|
+
];
|
|
17
|
+
export const VIBES_HARNESS_PROMPT_PROVENANCE = `@vibesdotdev/tools harness projection (${VIBES_HARNESS_PROMPT_DESCRIPTOR_IDS.join(' + ')})`;
|
|
18
|
+
/** First line of every harness prompt; also the marker older installs checked. */
|
|
19
|
+
export const HARNESS_SYSTEM_PROMPT_PROVENANCE_MARKER = "System prompt provenance:";
|
|
20
|
+
const EM_DASH = "—";
|
|
21
|
+
/**
|
|
22
|
+
* The harness system prompt: THE prompts kind's `external.harness.system-prompt`.
|
|
23
|
+
* Hosts build it synchronously at load, before any runtime query, so the
|
|
24
|
+
* descriptor's own manifest renders; the bullets are the host's registered tools.
|
|
25
|
+
*/
|
|
26
|
+
export function buildHarnessSystemPrompt(surface, workspace) {
|
|
27
|
+
const toolLines = surface.tools.map((tool) => `- ${tool.name} ${EM_DASH} ${tool.summary}`);
|
|
28
|
+
if (surface.alsoCallable && surface.alsoCallable.length > 0) {
|
|
29
|
+
toolLines.push(`- Also callable: ${surface.alsoCallable.join(', ')}.`);
|
|
30
|
+
}
|
|
31
|
+
return renderPromptManifest(harnessSystemPrompt.manifest, {
|
|
32
|
+
provenanceMarker: HARNESS_SYSTEM_PROMPT_PROVENANCE_MARKER,
|
|
33
|
+
provenance: VIBES_HARNESS_PROMPT_PROVENANCE,
|
|
34
|
+
namespace: surface.namespace,
|
|
35
|
+
workspaceRoot: workspace?.root ?? '',
|
|
36
|
+
toolLines: toolLines.map((line) => `${line}\n`).join(''),
|
|
37
|
+
note: surface.note ?? ''
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Static briefing for baked files (SYSTEM.md, installer presets). Names no
|
|
42
|
+
* tools, so it cannot drift from the registry; the live hook each host runs
|
|
43
|
+
* at session start carries the exact registered names. Its note is
|
|
44
|
+
* `external.harness.static-briefing-note`.
|
|
45
|
+
*/
|
|
46
|
+
export function buildStaticHarnessBriefing(namespace) {
|
|
47
|
+
return buildHarnessSystemPrompt({
|
|
48
|
+
namespace,
|
|
49
|
+
tools: [],
|
|
50
|
+
note: renderPromptManifest(staticBriefingNotePrompt.manifest)
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Registry ids oriented as prompt bullets instead of the callable list. The
|
|
55
|
+
* discovery tools are stable runtime contracts (capability-bridge); everything
|
|
56
|
+
* else is named, never summarized, so prompt bytes track the live catalog.
|
|
57
|
+
*/
|
|
58
|
+
const DISCOVERY_TOOL_IDS = ['tool-search', 'tool-help', 'tool-call', 'workspace-fs', 'session'];
|
|
59
|
+
const DISCOVERY_TOOL_ID_SET = new Set(DISCOVERY_TOOL_IDS);
|
|
60
|
+
function oneLineSummary(entry) {
|
|
61
|
+
const first = (entry.summary ?? '').split('\n')[0]?.trim() ?? '';
|
|
62
|
+
return first.length > 160 ? first.slice(0, 157) + '…' : first;
|
|
63
|
+
}
|
|
64
|
+
/** Live briefing from the names a host actually registered. */
|
|
65
|
+
export function livePromptSurface(namespace, entries, note) {
|
|
66
|
+
const oriented = entries.filter((entry) => DISCOVERY_TOOL_ID_SET.has(entry.id));
|
|
67
|
+
const orientedNames = new Set(oriented.map((entry) => entry.name));
|
|
68
|
+
return {
|
|
69
|
+
namespace,
|
|
70
|
+
tools: oriented.map((entry) => ({
|
|
71
|
+
name: entry.name,
|
|
72
|
+
summary: oneLineSummary(entry) || 'Capability discovery.'
|
|
73
|
+
})),
|
|
74
|
+
alsoCallable: entries.map((entry) => entry.name).filter((name) => !orientedNames.has(name)),
|
|
75
|
+
note
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=prompt.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"prompt.js","sourceRoot":"","sources":["../../src/harness/prompt.ts"],"names":[],"mappings":"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"}
|