@alan-ai-hq/agent-manager 0.1.113 → 0.1.115
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 +88 -0
- package/dist/__tests__/binding-switch-git.test.d.ts +2 -0
- package/dist/__tests__/binding-switch-git.test.d.ts.map +1 -0
- package/dist/__tests__/binding-switch-git.test.js +555 -0
- package/dist/__tests__/binding-switch-git.test.js.map +1 -0
- package/dist/__tests__/cli-ensure-install.test.d.ts +2 -0
- package/dist/__tests__/cli-ensure-install.test.d.ts.map +1 -0
- package/dist/__tests__/cli-ensure-install.test.js +177 -0
- package/dist/__tests__/cli-ensure-install.test.js.map +1 -0
- package/dist/__tests__/cli-executable.test.d.ts +2 -0
- package/dist/__tests__/cli-executable.test.d.ts.map +1 -0
- package/dist/__tests__/cli-executable.test.js +155 -0
- package/dist/__tests__/cli-executable.test.js.map +1 -0
- package/dist/__tests__/cli-executable.windows.test.d.ts +2 -0
- package/dist/__tests__/cli-executable.windows.test.d.ts.map +1 -0
- package/dist/__tests__/cli-executable.windows.test.js +123 -0
- package/dist/__tests__/cli-executable.windows.test.js.map +1 -0
- package/dist/__tests__/cli-help.test.d.ts +2 -0
- package/dist/__tests__/cli-help.test.d.ts.map +1 -0
- package/dist/__tests__/cli-help.test.js +47 -0
- package/dist/__tests__/cli-help.test.js.map +1 -0
- package/dist/__tests__/computer-readiness.test.d.ts +2 -0
- package/dist/__tests__/computer-readiness.test.d.ts.map +1 -0
- package/dist/__tests__/computer-readiness.test.js +63 -0
- package/dist/__tests__/computer-readiness.test.js.map +1 -0
- package/dist/__tests__/core-agent-provider-auth-env.test.d.ts +2 -0
- package/dist/__tests__/core-agent-provider-auth-env.test.d.ts.map +1 -0
- package/dist/__tests__/core-agent-provider-auth-env.test.js +93 -0
- package/dist/__tests__/core-agent-provider-auth-env.test.js.map +1 -0
- package/dist/__tests__/core-agent-workflow-context.test.d.ts +2 -0
- package/dist/__tests__/core-agent-workflow-context.test.d.ts.map +1 -0
- package/dist/__tests__/core-agent-workflow-context.test.js +139 -0
- package/dist/__tests__/core-agent-workflow-context.test.js.map +1 -0
- package/dist/__tests__/daemon-native-hooks.test.d.ts +2 -0
- package/dist/__tests__/daemon-native-hooks.test.d.ts.map +1 -0
- package/dist/__tests__/daemon-native-hooks.test.js +94 -0
- package/dist/__tests__/daemon-native-hooks.test.js.map +1 -0
- package/dist/__tests__/daemon-reconcile-ask.test.d.ts +2 -0
- package/dist/__tests__/daemon-reconcile-ask.test.d.ts.map +1 -0
- package/dist/__tests__/daemon-reconcile-ask.test.js +100 -0
- package/dist/__tests__/daemon-reconcile-ask.test.js.map +1 -0
- package/dist/__tests__/daemon-runner-status.test.d.ts +2 -0
- package/dist/__tests__/daemon-runner-status.test.d.ts.map +1 -0
- package/dist/__tests__/daemon-runner-status.test.js +102 -0
- package/dist/__tests__/daemon-runner-status.test.js.map +1 -0
- package/dist/__tests__/daemon-socket.integration.test.d.ts +2 -0
- package/dist/__tests__/daemon-socket.integration.test.d.ts.map +1 -0
- package/dist/__tests__/daemon-socket.integration.test.js +435 -0
- package/dist/__tests__/daemon-socket.integration.test.js.map +1 -0
- package/dist/__tests__/daemon.test.d.ts +2 -0
- package/dist/__tests__/daemon.test.d.ts.map +1 -0
- package/dist/__tests__/daemon.test.js +4884 -0
- package/dist/__tests__/daemon.test.js.map +1 -0
- package/dist/__tests__/ensure-shared-checkout-branch.test.d.ts +2 -0
- package/dist/__tests__/ensure-shared-checkout-branch.test.d.ts.map +1 -0
- package/dist/__tests__/ensure-shared-checkout-branch.test.js +129 -0
- package/dist/__tests__/ensure-shared-checkout-branch.test.js.map +1 -0
- package/dist/__tests__/event-journal-stress.test.d.ts +2 -0
- package/dist/__tests__/event-journal-stress.test.d.ts.map +1 -0
- package/dist/__tests__/event-journal-stress.test.js +124 -0
- package/dist/__tests__/event-journal-stress.test.js.map +1 -0
- package/dist/__tests__/event-journal.test.d.ts +2 -0
- package/dist/__tests__/event-journal.test.d.ts.map +1 -0
- package/dist/__tests__/event-journal.test.js +264 -0
- package/dist/__tests__/event-journal.test.js.map +1 -0
- package/dist/__tests__/event-outbox-persist-failure.test.d.ts +2 -0
- package/dist/__tests__/event-outbox-persist-failure.test.d.ts.map +1 -0
- package/dist/__tests__/event-outbox-persist-failure.test.js +143 -0
- package/dist/__tests__/event-outbox-persist-failure.test.js.map +1 -0
- package/dist/__tests__/event-outbox.test.d.ts +2 -0
- package/dist/__tests__/event-outbox.test.d.ts.map +1 -0
- package/dist/__tests__/event-outbox.test.js +602 -0
- package/dist/__tests__/event-outbox.test.js.map +1 -0
- package/dist/__tests__/execution-activity-tracker.test.d.ts +2 -0
- package/dist/__tests__/execution-activity-tracker.test.d.ts.map +1 -0
- package/dist/__tests__/execution-activity-tracker.test.js +64 -0
- package/dist/__tests__/execution-activity-tracker.test.js.map +1 -0
- package/dist/__tests__/execution-lease-client.test.d.ts +2 -0
- package/dist/__tests__/execution-lease-client.test.d.ts.map +1 -0
- package/dist/__tests__/execution-lease-client.test.js +274 -0
- package/dist/__tests__/execution-lease-client.test.js.map +1 -0
- package/dist/__tests__/fake-provider-cli.test.d.ts +2 -0
- package/dist/__tests__/fake-provider-cli.test.d.ts.map +1 -0
- package/dist/__tests__/fake-provider-cli.test.js +46 -0
- package/dist/__tests__/fake-provider-cli.test.js.map +1 -0
- package/dist/__tests__/generated-images.test.d.ts +2 -0
- package/dist/__tests__/generated-images.test.d.ts.map +1 -0
- package/dist/__tests__/generated-images.test.js +132 -0
- package/dist/__tests__/generated-images.test.js.map +1 -0
- package/dist/__tests__/helpers/sandbox-outbox.d.ts +3 -0
- package/dist/__tests__/helpers/sandbox-outbox.d.ts.map +1 -0
- package/dist/__tests__/helpers/sandbox-outbox.js +23 -0
- package/dist/__tests__/helpers/sandbox-outbox.js.map +1 -0
- package/dist/__tests__/install-command.test.d.ts +2 -0
- package/dist/__tests__/install-command.test.d.ts.map +1 -0
- package/dist/__tests__/install-command.test.js +185 -0
- package/dist/__tests__/install-command.test.js.map +1 -0
- package/dist/__tests__/integration-cli.test.d.ts +2 -0
- package/dist/__tests__/integration-cli.test.d.ts.map +1 -0
- package/dist/__tests__/integration-cli.test.js +150 -0
- package/dist/__tests__/integration-cli.test.js.map +1 -0
- package/dist/__tests__/lifecycle-contracts.test.d.ts +2 -0
- package/dist/__tests__/lifecycle-contracts.test.d.ts.map +1 -0
- package/dist/__tests__/lifecycle-contracts.test.js +66 -0
- package/dist/__tests__/lifecycle-contracts.test.js.map +1 -0
- package/dist/__tests__/lifecycle-logger.test.d.ts +2 -0
- package/dist/__tests__/lifecycle-logger.test.d.ts.map +1 -0
- package/dist/__tests__/lifecycle-logger.test.js +49 -0
- package/dist/__tests__/lifecycle-logger.test.js.map +1 -0
- package/dist/__tests__/local-daemon-lifecycle.test.d.ts +2 -0
- package/dist/__tests__/local-daemon-lifecycle.test.d.ts.map +1 -0
- package/dist/__tests__/local-daemon-lifecycle.test.js +594 -0
- package/dist/__tests__/local-daemon-lifecycle.test.js.map +1 -0
- package/dist/__tests__/local-git-status.test.d.ts +2 -0
- package/dist/__tests__/local-git-status.test.d.ts.map +1 -0
- package/dist/__tests__/local-git-status.test.js +31 -0
- package/dist/__tests__/local-git-status.test.js.map +1 -0
- package/dist/__tests__/mcp-config-adapters-files.test.d.ts +2 -0
- package/dist/__tests__/mcp-config-adapters-files.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-config-adapters-files.test.js +486 -0
- package/dist/__tests__/mcp-config-adapters-files.test.js.map +1 -0
- package/dist/__tests__/mcp-config-adapters.test.d.ts +2 -0
- package/dist/__tests__/mcp-config-adapters.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-config-adapters.test.js +492 -0
- package/dist/__tests__/mcp-config-adapters.test.js.map +1 -0
- package/dist/__tests__/mcp-sync.test.d.ts +2 -0
- package/dist/__tests__/mcp-sync.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-sync.test.js +21 -0
- package/dist/__tests__/mcp-sync.test.js.map +1 -0
- package/dist/__tests__/model-scan-runner.test.d.ts +2 -0
- package/dist/__tests__/model-scan-runner.test.d.ts.map +1 -0
- package/dist/__tests__/model-scan-runner.test.js +80 -0
- package/dist/__tests__/model-scan-runner.test.js.map +1 -0
- package/dist/__tests__/native-hook-command.test.d.ts +2 -0
- package/dist/__tests__/native-hook-command.test.d.ts.map +1 -0
- package/dist/__tests__/native-hook-command.test.js +386 -0
- package/dist/__tests__/native-hook-command.test.js.map +1 -0
- package/dist/__tests__/native-hook-config.test.d.ts +2 -0
- package/dist/__tests__/native-hook-config.test.d.ts.map +1 -0
- package/dist/__tests__/native-hook-config.test.js +374 -0
- package/dist/__tests__/native-hook-config.test.js.map +1 -0
- package/dist/__tests__/native-hook-drain.test.d.ts +2 -0
- package/dist/__tests__/native-hook-drain.test.d.ts.map +1 -0
- package/dist/__tests__/native-hook-drain.test.js +197 -0
- package/dist/__tests__/native-hook-drain.test.js.map +1 -0
- package/dist/__tests__/native-hook-inbox.test.d.ts +2 -0
- package/dist/__tests__/native-hook-inbox.test.d.ts.map +1 -0
- package/dist/__tests__/native-hook-inbox.test.js +139 -0
- package/dist/__tests__/native-hook-inbox.test.js.map +1 -0
- package/dist/__tests__/native-session.test.d.ts +2 -0
- package/dist/__tests__/native-session.test.d.ts.map +1 -0
- package/dist/__tests__/native-session.test.js +41 -0
- package/dist/__tests__/native-session.test.js.map +1 -0
- package/dist/__tests__/native-stream-outbox.test.d.ts +2 -0
- package/dist/__tests__/native-stream-outbox.test.d.ts.map +1 -0
- package/dist/__tests__/native-stream-outbox.test.js +231 -0
- package/dist/__tests__/native-stream-outbox.test.js.map +1 -0
- package/dist/__tests__/native-stream-platform.test.d.ts +2 -0
- package/dist/__tests__/native-stream-platform.test.d.ts.map +1 -0
- package/dist/__tests__/native-stream-platform.test.js +20 -0
- package/dist/__tests__/native-stream-platform.test.js.map +1 -0
- package/dist/__tests__/native-transcript-cursor.test.d.ts +2 -0
- package/dist/__tests__/native-transcript-cursor.test.d.ts.map +1 -0
- package/dist/__tests__/native-transcript-cursor.test.js +60 -0
- package/dist/__tests__/native-transcript-cursor.test.js.map +1 -0
- package/dist/__tests__/native-transcript-stream.test.d.ts +2 -0
- package/dist/__tests__/native-transcript-stream.test.d.ts.map +1 -0
- package/dist/__tests__/native-transcript-stream.test.js +378 -0
- package/dist/__tests__/native-transcript-stream.test.js.map +1 -0
- package/dist/__tests__/network-diagnostics.test.d.ts +2 -0
- package/dist/__tests__/network-diagnostics.test.d.ts.map +1 -0
- package/dist/__tests__/network-diagnostics.test.js +26 -0
- package/dist/__tests__/network-diagnostics.test.js.map +1 -0
- package/dist/__tests__/observable-map.test.d.ts +2 -0
- package/dist/__tests__/observable-map.test.d.ts.map +1 -0
- package/dist/__tests__/observable-map.test.js +54 -0
- package/dist/__tests__/observable-map.test.js.map +1 -0
- package/dist/__tests__/outbox-baseline.bench.test.d.ts +2 -0
- package/dist/__tests__/outbox-baseline.bench.test.d.ts.map +1 -0
- package/dist/__tests__/outbox-baseline.bench.test.js +108 -0
- package/dist/__tests__/outbox-baseline.bench.test.js.map +1 -0
- package/dist/__tests__/provider-auth-preflight.test.d.ts +2 -0
- package/dist/__tests__/provider-auth-preflight.test.d.ts.map +1 -0
- package/dist/__tests__/provider-auth-preflight.test.js +123 -0
- package/dist/__tests__/provider-auth-preflight.test.js.map +1 -0
- package/dist/__tests__/provider-model-discovery.test.d.ts +2 -0
- package/dist/__tests__/provider-model-discovery.test.d.ts.map +1 -0
- package/dist/__tests__/provider-model-discovery.test.js +1071 -0
- package/dist/__tests__/provider-model-discovery.test.js.map +1 -0
- package/dist/__tests__/resource-diagnostics.test.d.ts +2 -0
- package/dist/__tests__/resource-diagnostics.test.d.ts.map +1 -0
- package/dist/__tests__/resource-diagnostics.test.js +138 -0
- package/dist/__tests__/resource-diagnostics.test.js.map +1 -0
- package/dist/__tests__/resume-fallback-env.test.d.ts +2 -0
- package/dist/__tests__/resume-fallback-env.test.d.ts.map +1 -0
- package/dist/__tests__/resume-fallback-env.test.js +28 -0
- package/dist/__tests__/resume-fallback-env.test.js.map +1 -0
- package/dist/__tests__/run-journal.test.d.ts +2 -0
- package/dist/__tests__/run-journal.test.d.ts.map +1 -0
- package/dist/__tests__/run-journal.test.js +121 -0
- package/dist/__tests__/run-journal.test.js.map +1 -0
- package/dist/__tests__/run-start-gate.test.d.ts +2 -0
- package/dist/__tests__/run-start-gate.test.d.ts.map +1 -0
- package/dist/__tests__/run-start-gate.test.js +18 -0
- package/dist/__tests__/run-start-gate.test.js.map +1 -0
- package/dist/__tests__/runtime-capabilities-sync.test.d.ts +2 -0
- package/dist/__tests__/runtime-capabilities-sync.test.d.ts.map +1 -0
- package/dist/__tests__/runtime-capabilities-sync.test.js +66 -0
- package/dist/__tests__/runtime-capabilities-sync.test.js.map +1 -0
- package/dist/__tests__/runtime-config.test.d.ts +2 -0
- package/dist/__tests__/runtime-config.test.d.ts.map +1 -0
- package/dist/__tests__/runtime-config.test.js +137 -0
- package/dist/__tests__/runtime-config.test.js.map +1 -0
- package/dist/__tests__/runtime-presenter-heartbeat.test.d.ts +2 -0
- package/dist/__tests__/runtime-presenter-heartbeat.test.d.ts.map +1 -0
- package/dist/__tests__/runtime-presenter-heartbeat.test.js +253 -0
- package/dist/__tests__/runtime-presenter-heartbeat.test.js.map +1 -0
- package/dist/__tests__/runtime-registration.test.d.ts +2 -0
- package/dist/__tests__/runtime-registration.test.d.ts.map +1 -0
- package/dist/__tests__/runtime-registration.test.js +109 -0
- package/dist/__tests__/runtime-registration.test.js.map +1 -0
- package/dist/__tests__/sandbox-outbox-storage.test.d.ts +2 -0
- package/dist/__tests__/sandbox-outbox-storage.test.d.ts.map +1 -0
- package/dist/__tests__/sandbox-outbox-storage.test.js +81 -0
- package/dist/__tests__/sandbox-outbox-storage.test.js.map +1 -0
- package/dist/__tests__/sandbox-outbox.test.d.ts +2 -0
- package/dist/__tests__/sandbox-outbox.test.d.ts.map +1 -0
- package/dist/__tests__/sandbox-outbox.test.js +300 -0
- package/dist/__tests__/sandbox-outbox.test.js.map +1 -0
- package/dist/__tests__/sandbox-workflow-context.test.d.ts +2 -0
- package/dist/__tests__/sandbox-workflow-context.test.d.ts.map +1 -0
- package/dist/__tests__/sandbox-workflow-context.test.js +600 -0
- package/dist/__tests__/sandbox-workflow-context.test.js.map +1 -0
- package/dist/__tests__/service-manager-deadline.test.d.ts +2 -0
- package/dist/__tests__/service-manager-deadline.test.d.ts.map +1 -0
- package/dist/__tests__/service-manager-deadline.test.js +36 -0
- package/dist/__tests__/service-manager-deadline.test.js.map +1 -0
- package/dist/__tests__/service-manager.test.d.ts +2 -0
- package/dist/__tests__/service-manager.test.d.ts.map +1 -0
- package/dist/__tests__/service-manager.test.js +769 -0
- package/dist/__tests__/service-manager.test.js.map +1 -0
- package/dist/__tests__/service-stop-ownership.test.d.ts +2 -0
- package/dist/__tests__/service-stop-ownership.test.d.ts.map +1 -0
- package/dist/__tests__/service-stop-ownership.test.js +89 -0
- package/dist/__tests__/service-stop-ownership.test.js.map +1 -0
- package/dist/__tests__/skill-invocation.test.d.ts +2 -0
- package/dist/__tests__/skill-invocation.test.d.ts.map +1 -0
- package/dist/__tests__/skill-invocation.test.js +40 -0
- package/dist/__tests__/skill-invocation.test.js.map +1 -0
- package/dist/__tests__/sleep-inhibitor-real.test.d.ts +2 -0
- package/dist/__tests__/sleep-inhibitor-real.test.d.ts.map +1 -0
- package/dist/__tests__/sleep-inhibitor-real.test.js +68 -0
- package/dist/__tests__/sleep-inhibitor-real.test.js.map +1 -0
- package/dist/__tests__/sleep-inhibitor.test.d.ts +2 -0
- package/dist/__tests__/sleep-inhibitor.test.d.ts.map +1 -0
- package/dist/__tests__/sleep-inhibitor.test.js +236 -0
- package/dist/__tests__/sleep-inhibitor.test.js.map +1 -0
- package/dist/__tests__/status-local-workspace.test.d.ts +2 -0
- package/dist/__tests__/status-local-workspace.test.d.ts.map +1 -0
- package/dist/__tests__/status-local-workspace.test.js +121 -0
- package/dist/__tests__/status-local-workspace.test.js.map +1 -0
- package/dist/__tests__/suspension-detector.test.d.ts +2 -0
- package/dist/__tests__/suspension-detector.test.d.ts.map +1 -0
- package/dist/__tests__/suspension-detector.test.js +112 -0
- package/dist/__tests__/suspension-detector.test.js.map +1 -0
- package/dist/__tests__/web-presenter-parent-events.test.d.ts +2 -0
- package/dist/__tests__/web-presenter-parent-events.test.d.ts.map +1 -0
- package/dist/__tests__/web-presenter-parent-events.test.js +168 -0
- package/dist/__tests__/web-presenter-parent-events.test.js.map +1 -0
- package/dist/__tests__/workspace-probe-concurrency.test.d.ts +2 -0
- package/dist/__tests__/workspace-probe-concurrency.test.d.ts.map +1 -0
- package/dist/__tests__/workspace-probe-concurrency.test.js +54 -0
- package/dist/__tests__/workspace-probe-concurrency.test.js.map +1 -0
- package/dist/__tests__/workspace-relocation.test.d.ts +2 -0
- package/dist/__tests__/workspace-relocation.test.d.ts.map +1 -0
- package/dist/__tests__/workspace-relocation.test.js +66 -0
- package/dist/__tests__/workspace-relocation.test.js.map +1 -0
- package/dist/__tests__/workspace-rpc.test.d.ts +2 -0
- package/dist/__tests__/workspace-rpc.test.d.ts.map +1 -0
- package/dist/__tests__/workspace-rpc.test.js +90 -0
- package/dist/__tests__/workspace-rpc.test.js.map +1 -0
- package/dist/__tests__/workspace-run-lease.test.d.ts +2 -0
- package/dist/__tests__/workspace-run-lease.test.d.ts.map +1 -0
- package/dist/__tests__/workspace-run-lease.test.js +331 -0
- package/dist/__tests__/workspace-run-lease.test.js.map +1 -0
- package/dist/__tests__/ws-client-connection.test.d.ts +2 -0
- package/dist/__tests__/ws-client-connection.test.d.ts.map +1 -0
- package/dist/__tests__/ws-client-connection.test.js +295 -0
- package/dist/__tests__/ws-client-connection.test.js.map +1 -0
- package/dist/__tests__/ws-client-heartbeat-volatile.test.d.ts +2 -0
- package/dist/__tests__/ws-client-heartbeat-volatile.test.d.ts.map +1 -0
- package/dist/__tests__/ws-client-heartbeat-volatile.test.js +63 -0
- package/dist/__tests__/ws-client-heartbeat-volatile.test.js.map +1 -0
- package/dist/__tests__/ws-client-heartbeat.integration.test.d.ts +2 -0
- package/dist/__tests__/ws-client-heartbeat.integration.test.d.ts.map +1 -0
- package/dist/__tests__/ws-client-heartbeat.integration.test.js +236 -0
- package/dist/__tests__/ws-client-heartbeat.integration.test.js.map +1 -0
- package/dist/__tests__/ws-client-user-message-ack.integration.test.d.ts +2 -0
- package/dist/__tests__/ws-client-user-message-ack.integration.test.d.ts.map +1 -0
- package/dist/__tests__/ws-client-user-message-ack.integration.test.js +211 -0
- package/dist/__tests__/ws-client-user-message-ack.integration.test.js.map +1 -0
- package/dist/antigravity-api-key-config.d.ts +2 -0
- package/dist/antigravity-api-key-config.d.ts.map +1 -0
- package/dist/antigravity-api-key-config.js +79 -0
- package/dist/antigravity-api-key-config.js.map +1 -0
- package/dist/binding-switch-git.d.ts +26 -0
- package/dist/binding-switch-git.d.ts.map +1 -0
- package/dist/binding-switch-git.js +871 -0
- package/dist/binding-switch-git.js.map +1 -0
- package/dist/cli-ensure-install.d.ts +34 -0
- package/dist/cli-ensure-install.d.ts.map +1 -0
- package/dist/cli-ensure-install.js +154 -0
- package/dist/cli-ensure-install.js.map +1 -0
- package/dist/cli-executable.d.ts +44 -0
- package/dist/cli-executable.d.ts.map +1 -0
- package/dist/cli-executable.js +435 -0
- package/dist/cli-executable.js.map +1 -0
- package/dist/cli-help.d.ts +11 -0
- package/dist/cli-help.d.ts.map +1 -0
- package/dist/cli-help.js +65 -0
- package/dist/cli-help.js.map +1 -0
- package/dist/computer-readiness.d.ts +41 -0
- package/dist/computer-readiness.d.ts.map +1 -0
- package/dist/computer-readiness.js +191 -0
- package/dist/computer-readiness.js.map +1 -0
- package/dist/core-agent.d.ts +32 -0
- package/dist/core-agent.d.ts.map +1 -0
- package/dist/core-agent.js +331 -0
- package/dist/core-agent.js.map +1 -0
- package/dist/daemon-execute.d.ts +42 -0
- package/dist/daemon-execute.d.ts.map +1 -0
- package/dist/daemon-execute.js +666 -0
- package/dist/daemon-execute.js.map +1 -0
- package/dist/daemon-helpers.d.ts +150 -0
- package/dist/daemon-helpers.d.ts.map +1 -0
- package/dist/daemon-helpers.js +157 -0
- package/dist/daemon-helpers.js.map +1 -0
- package/dist/daemon-local-control.d.ts +208 -0
- package/dist/daemon-local-control.d.ts.map +1 -0
- package/dist/daemon-local-control.js +826 -0
- package/dist/daemon-local-control.js.map +1 -0
- package/dist/daemon-local-http.d.ts +57 -0
- package/dist/daemon-local-http.d.ts.map +1 -0
- package/dist/daemon-local-http.js +375 -0
- package/dist/daemon-local-http.js.map +1 -0
- package/dist/daemon-native-hooks.d.ts +17 -0
- package/dist/daemon-native-hooks.d.ts.map +1 -0
- package/dist/daemon-native-hooks.js +54 -0
- package/dist/daemon-native-hooks.js.map +1 -0
- package/dist/daemon-provider-scan.d.ts +33 -0
- package/dist/daemon-provider-scan.d.ts.map +1 -0
- package/dist/daemon-provider-scan.js +187 -0
- package/dist/daemon-provider-scan.js.map +1 -0
- package/dist/daemon-runner-status.d.ts +164 -0
- package/dist/daemon-runner-status.d.ts.map +1 -0
- package/dist/daemon-runner-status.js +424 -0
- package/dist/daemon-runner-status.js.map +1 -0
- package/dist/daemon-start.d.ts +5 -0
- package/dist/daemon-start.d.ts.map +1 -0
- package/dist/daemon-start.js +1313 -0
- package/dist/daemon-start.js.map +1 -0
- package/dist/daemon-workspace.d.ts +36 -0
- package/dist/daemon-workspace.d.ts.map +1 -0
- package/dist/daemon-workspace.js +154 -0
- package/dist/daemon-workspace.js.map +1 -0
- package/dist/daemon.d.ts +59 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +681 -0
- package/dist/daemon.js.map +1 -0
- package/dist/event-journal-crypto.d.ts +14 -0
- package/dist/event-journal-crypto.d.ts.map +1 -0
- package/dist/event-journal-crypto.js +89 -0
- package/dist/event-journal-crypto.js.map +1 -0
- package/dist/event-journal-paths.d.ts +10 -0
- package/dist/event-journal-paths.d.ts.map +1 -0
- package/dist/event-journal-paths.js +29 -0
- package/dist/event-journal-paths.js.map +1 -0
- package/dist/event-journal-recovery.d.ts +83 -0
- package/dist/event-journal-recovery.d.ts.map +1 -0
- package/dist/event-journal-recovery.js +333 -0
- package/dist/event-journal-recovery.js.map +1 -0
- package/dist/event-journal-types.d.ts +54 -0
- package/dist/event-journal-types.d.ts.map +1 -0
- package/dist/event-journal-types.js +10 -0
- package/dist/event-journal-types.js.map +1 -0
- package/dist/event-journal-writer.d.ts +44 -0
- package/dist/event-journal-writer.d.ts.map +1 -0
- package/dist/event-journal-writer.js +182 -0
- package/dist/event-journal-writer.js.map +1 -0
- package/dist/event-outbox.d.ts +113 -0
- package/dist/event-outbox.d.ts.map +1 -0
- package/dist/event-outbox.js +707 -0
- package/dist/event-outbox.js.map +1 -0
- package/dist/execution-activity-tracker.d.ts +43 -0
- package/dist/execution-activity-tracker.d.ts.map +1 -0
- package/dist/execution-activity-tracker.js +116 -0
- package/dist/execution-activity-tracker.js.map +1 -0
- package/dist/execution-lease-client.d.ts +62 -0
- package/dist/execution-lease-client.d.ts.map +1 -0
- package/dist/execution-lease-client.js +271 -0
- package/dist/execution-lease-client.js.map +1 -0
- package/dist/fake-provider-cli.d.ts +13 -0
- package/dist/fake-provider-cli.d.ts.map +1 -0
- package/dist/fake-provider-cli.js +53 -0
- package/dist/fake-provider-cli.js.map +1 -0
- package/dist/generated-images.d.ts +2 -0
- package/dist/generated-images.d.ts.map +1 -0
- package/dist/generated-images.js +2 -0
- package/dist/generated-images.js.map +1 -0
- package/dist/index.cjs +47033 -45514
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +224 -0
- package/dist/index.js.map +1 -0
- package/dist/install-command.d.ts +2 -0
- package/dist/install-command.d.ts.map +1 -0
- package/dist/install-command.js +96 -0
- package/dist/install-command.js.map +1 -0
- package/dist/integration-cli.d.ts +14 -0
- package/dist/integration-cli.d.ts.map +1 -0
- package/dist/integration-cli.js +80 -0
- package/dist/integration-cli.js.map +1 -0
- package/dist/lifecycle-logger.d.ts +25 -0
- package/dist/lifecycle-logger.d.ts.map +1 -0
- package/dist/lifecycle-logger.js +73 -0
- package/dist/lifecycle-logger.js.map +1 -0
- package/dist/local-daemon-lifecycle.d.ts +112 -0
- package/dist/local-daemon-lifecycle.d.ts.map +1 -0
- package/dist/local-daemon-lifecycle.js +433 -0
- package/dist/local-daemon-lifecycle.js.map +1 -0
- package/dist/local-git-status.d.ts +14 -0
- package/dist/local-git-status.d.ts.map +1 -0
- package/dist/local-git-status.js +43 -0
- package/dist/local-git-status.js.map +1 -0
- package/dist/managed-mcp.d.ts +7 -0
- package/dist/managed-mcp.d.ts.map +1 -0
- package/dist/managed-mcp.js +16 -0
- package/dist/managed-mcp.js.map +1 -0
- package/dist/mcp-config-adapters.d.ts +57 -0
- package/dist/mcp-config-adapters.d.ts.map +1 -0
- package/dist/mcp-config-adapters.js +929 -0
- package/dist/mcp-config-adapters.js.map +1 -0
- package/dist/mcp-sync.d.ts +44 -0
- package/dist/mcp-sync.d.ts.map +1 -0
- package/dist/mcp-sync.js +68 -0
- package/dist/mcp-sync.js.map +1 -0
- package/dist/model-scan-runner.d.ts +15 -0
- package/dist/model-scan-runner.d.ts.map +1 -0
- package/dist/model-scan-runner.js +56 -0
- package/dist/model-scan-runner.js.map +1 -0
- package/dist/native-hook-command.d.ts +31 -0
- package/dist/native-hook-command.d.ts.map +1 -0
- package/dist/native-hook-command.js +289 -0
- package/dist/native-hook-command.js.map +1 -0
- package/dist/native-hook-config.d.ts +43 -0
- package/dist/native-hook-config.d.ts.map +1 -0
- package/dist/native-hook-config.js +601 -0
- package/dist/native-hook-config.js.map +1 -0
- package/dist/native-hook-drain.d.ts +34 -0
- package/dist/native-hook-drain.d.ts.map +1 -0
- package/dist/native-hook-drain.js +83 -0
- package/dist/native-hook-drain.js.map +1 -0
- package/dist/native-hook-inbox.d.ts +40 -0
- package/dist/native-hook-inbox.d.ts.map +1 -0
- package/dist/native-hook-inbox.js +217 -0
- package/dist/native-hook-inbox.js.map +1 -0
- package/dist/native-project-config.d.ts +11 -0
- package/dist/native-project-config.d.ts.map +1 -0
- package/dist/native-project-config.js +49 -0
- package/dist/native-project-config.js.map +1 -0
- package/dist/native-session.d.ts +20 -0
- package/dist/native-session.d.ts.map +1 -0
- package/dist/native-session.js +213 -0
- package/dist/native-session.js.map +1 -0
- package/dist/native-stream-journal.d.ts +22 -0
- package/dist/native-stream-journal.d.ts.map +1 -0
- package/dist/native-stream-journal.js +98 -0
- package/dist/native-stream-journal.js.map +1 -0
- package/dist/native-stream-outbox.d.ts +40 -0
- package/dist/native-stream-outbox.d.ts.map +1 -0
- package/dist/native-stream-outbox.js +358 -0
- package/dist/native-stream-outbox.js.map +1 -0
- package/dist/native-stream-platform.d.ts +4 -0
- package/dist/native-stream-platform.d.ts.map +1 -0
- package/dist/native-stream-platform.js +11 -0
- package/dist/native-stream-platform.js.map +1 -0
- package/dist/native-transcript-cursor.d.ts +33 -0
- package/dist/native-transcript-cursor.d.ts.map +1 -0
- package/dist/native-transcript-cursor.js +108 -0
- package/dist/native-transcript-cursor.js.map +1 -0
- package/dist/native-transcript-stream.d.ts +20 -0
- package/dist/native-transcript-stream.d.ts.map +1 -0
- package/dist/native-transcript-stream.js +438 -0
- package/dist/native-transcript-stream.js.map +1 -0
- package/dist/network-diagnostics.d.ts +8 -0
- package/dist/network-diagnostics.d.ts.map +1 -0
- package/dist/network-diagnostics.js +56 -0
- package/dist/network-diagnostics.js.map +1 -0
- package/dist/observable-map.d.ts +13 -0
- package/dist/observable-map.d.ts.map +1 -0
- package/dist/observable-map.js +30 -0
- package/dist/observable-map.js.map +1 -0
- package/dist/provider-auth-preflight.d.ts +19 -0
- package/dist/provider-auth-preflight.d.ts.map +1 -0
- package/dist/provider-auth-preflight.js +107 -0
- package/dist/provider-auth-preflight.js.map +1 -0
- package/dist/provider-model-discovery.d.ts +33 -0
- package/dist/provider-model-discovery.d.ts.map +1 -0
- package/dist/provider-model-discovery.js +731 -0
- package/dist/provider-model-discovery.js.map +1 -0
- package/dist/resource-diagnostics.d.ts +21 -0
- package/dist/resource-diagnostics.d.ts.map +1 -0
- package/dist/resource-diagnostics.js +161 -0
- package/dist/resource-diagnostics.js.map +1 -0
- package/dist/resume-fallback-env.d.ts +3 -0
- package/dist/resume-fallback-env.d.ts.map +1 -0
- package/dist/resume-fallback-env.js +14 -0
- package/dist/resume-fallback-env.js.map +1 -0
- package/dist/run-journal.d.ts +51 -0
- package/dist/run-journal.d.ts.map +1 -0
- package/dist/run-journal.js +193 -0
- package/dist/run-journal.js.map +1 -0
- package/dist/runtime-backends.d.ts +2 -0
- package/dist/runtime-backends.d.ts.map +1 -0
- package/dist/runtime-backends.js +2 -0
- package/dist/runtime-backends.js.map +1 -0
- package/dist/runtime-capabilities-sync.d.ts +40 -0
- package/dist/runtime-capabilities-sync.d.ts.map +1 -0
- package/dist/runtime-capabilities-sync.js +56 -0
- package/dist/runtime-capabilities-sync.js.map +1 -0
- package/dist/runtime-config.d.ts +26 -0
- package/dist/runtime-config.d.ts.map +1 -0
- package/dist/runtime-config.js +170 -0
- package/dist/runtime-config.js.map +1 -0
- package/dist/runtime-presenter.d.ts +81 -0
- package/dist/runtime-presenter.d.ts.map +1 -0
- package/dist/runtime-presenter.js +422 -0
- package/dist/runtime-presenter.js.map +1 -0
- package/dist/runtime-registration.d.ts +40 -0
- package/dist/runtime-registration.d.ts.map +1 -0
- package/dist/runtime-registration.js +143 -0
- package/dist/runtime-registration.js.map +1 -0
- package/dist/sandbox-outbox-storage.d.ts +13 -0
- package/dist/sandbox-outbox-storage.d.ts.map +1 -0
- package/dist/sandbox-outbox-storage.js +98 -0
- package/dist/sandbox-outbox-storage.js.map +1 -0
- package/dist/sandbox-outbox.d.ts +115 -0
- package/dist/sandbox-outbox.d.ts.map +1 -0
- package/dist/sandbox-outbox.js +213 -0
- package/dist/sandbox-outbox.js.map +1 -0
- package/dist/sandbox.d.ts +34 -0
- package/dist/sandbox.d.ts.map +1 -0
- package/dist/sandbox.js +469 -0
- package/dist/sandbox.js.map +1 -0
- package/dist/service-manager.d.ts +113 -0
- package/dist/service-manager.d.ts.map +1 -0
- package/dist/service-manager.js +1065 -0
- package/dist/service-manager.js.map +1 -0
- package/dist/skills/__tests__/local-skill-source.test.d.ts +2 -0
- package/dist/skills/__tests__/local-skill-source.test.d.ts.map +1 -0
- package/dist/skills/__tests__/local-skill-source.test.js +373 -0
- package/dist/skills/__tests__/local-skill-source.test.js.map +1 -0
- package/dist/skills/__tests__/managed-skill-store.test.d.ts +2 -0
- package/dist/skills/__tests__/managed-skill-store.test.d.ts.map +1 -0
- package/dist/skills/__tests__/managed-skill-store.test.js +114 -0
- package/dist/skills/__tests__/managed-skill-store.test.js.map +1 -0
- package/dist/skills/__tests__/runtime-skill-coordinator.test.d.ts +2 -0
- package/dist/skills/__tests__/runtime-skill-coordinator.test.d.ts.map +1 -0
- package/dist/skills/__tests__/runtime-skill-coordinator.test.js +251 -0
- package/dist/skills/__tests__/runtime-skill-coordinator.test.js.map +1 -0
- package/dist/skills/__tests__/runtime-skill-manager.test.d.ts +2 -0
- package/dist/skills/__tests__/runtime-skill-manager.test.d.ts.map +1 -0
- package/dist/skills/__tests__/runtime-skill-manager.test.js +664 -0
- package/dist/skills/__tests__/runtime-skill-manager.test.js.map +1 -0
- package/dist/skills/__tests__/skill-bundle.test.d.ts +2 -0
- package/dist/skills/__tests__/skill-bundle.test.d.ts.map +1 -0
- package/dist/skills/__tests__/skill-bundle.test.js +42 -0
- package/dist/skills/__tests__/skill-bundle.test.js.map +1 -0
- package/dist/skills/__tests__/skill-control-client.test.d.ts +2 -0
- package/dist/skills/__tests__/skill-control-client.test.d.ts.map +1 -0
- package/dist/skills/__tests__/skill-control-client.test.js +49 -0
- package/dist/skills/__tests__/skill-control-client.test.js.map +1 -0
- package/dist/skills/__tests__/skill-source-config.test.d.ts +2 -0
- package/dist/skills/__tests__/skill-source-config.test.d.ts.map +1 -0
- package/dist/skills/__tests__/skill-source-config.test.js +295 -0
- package/dist/skills/__tests__/skill-source-config.test.js.map +1 -0
- package/dist/skills/local-skill-source.d.ts +77 -0
- package/dist/skills/local-skill-source.d.ts.map +1 -0
- package/dist/skills/local-skill-source.js +660 -0
- package/dist/skills/local-skill-source.js.map +1 -0
- package/dist/skills/managed-skill-store.d.ts +44 -0
- package/dist/skills/managed-skill-store.d.ts.map +1 -0
- package/dist/skills/managed-skill-store.js +160 -0
- package/dist/skills/managed-skill-store.js.map +1 -0
- package/dist/skills/runtime-skill-coordinator.d.ts +35 -0
- package/dist/skills/runtime-skill-coordinator.d.ts.map +1 -0
- package/dist/skills/runtime-skill-coordinator.js +166 -0
- package/dist/skills/runtime-skill-coordinator.js.map +1 -0
- package/dist/skills/runtime-skill-manager.d.ts +89 -0
- package/dist/skills/runtime-skill-manager.d.ts.map +1 -0
- package/dist/skills/runtime-skill-manager.js +934 -0
- package/dist/skills/runtime-skill-manager.js.map +1 -0
- package/dist/skills/skill-bundle.d.ts +2 -0
- package/dist/skills/skill-bundle.d.ts.map +1 -0
- package/dist/skills/skill-bundle.js +2 -0
- package/dist/skills/skill-bundle.js.map +1 -0
- package/dist/skills/skill-cli.d.ts +2 -0
- package/dist/skills/skill-cli.d.ts.map +1 -0
- package/dist/skills/skill-cli.js +81 -0
- package/dist/skills/skill-cli.js.map +1 -0
- package/dist/skills/skill-control-client.d.ts +20 -0
- package/dist/skills/skill-control-client.d.ts.map +1 -0
- package/dist/skills/skill-control-client.js +56 -0
- package/dist/skills/skill-control-client.js.map +1 -0
- package/dist/skills/skill-invocation.d.ts +10 -0
- package/dist/skills/skill-invocation.d.ts.map +1 -0
- package/dist/skills/skill-invocation.js +24 -0
- package/dist/skills/skill-invocation.js.map +1 -0
- package/dist/sleep-inhibitor.d.ts +32 -0
- package/dist/sleep-inhibitor.d.ts.map +1 -0
- package/dist/sleep-inhibitor.js +297 -0
- package/dist/sleep-inhibitor.js.map +1 -0
- package/dist/suspension-detector.d.ts +24 -0
- package/dist/suspension-detector.d.ts.map +1 -0
- package/dist/suspension-detector.js +59 -0
- package/dist/suspension-detector.js.map +1 -0
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +2 -0
- package/dist/version.js.map +1 -0
- package/dist/web-presenter.d.ts +52 -0
- package/dist/web-presenter.d.ts.map +1 -0
- package/dist/web-presenter.js +264 -0
- package/dist/web-presenter.js.map +1 -0
- package/dist/workspace-relocation.d.ts +22 -0
- package/dist/workspace-relocation.d.ts.map +1 -0
- package/dist/workspace-relocation.js +90 -0
- package/dist/workspace-relocation.js.map +1 -0
- package/dist/workspace-rpc.d.ts +2 -0
- package/dist/workspace-rpc.d.ts.map +1 -0
- package/dist/workspace-rpc.js +15 -0
- package/dist/workspace-rpc.js.map +1 -0
- package/dist/workspace-run-lease.d.ts +116 -0
- package/dist/workspace-run-lease.d.ts.map +1 -0
- package/dist/workspace-run-lease.js +320 -0
- package/dist/workspace-run-lease.js.map +1 -0
- package/dist/ws-client.d.ts +168 -0
- package/dist/ws-client.d.ts.map +1 -0
- package/dist/ws-client.js +440 -0
- package/dist/ws-client.js.map +1 -0
- package/package.json +4 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hook-config.js","sourceRoot":"","sources":["../src/native-hook-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { NativeAgentRunBinding, NativeAgentSourceEvent } from "@alan-ai/shared/native-agent-session";
|
|
2
|
+
import type { EncryptedNativeHookInbox, NativeHookDrainResult } from "./native-hook-inbox.js";
|
|
3
|
+
import type { NativeHookEnvelope } from "./native-session.js";
|
|
4
|
+
import type { NativeTranscriptStreamer } from "./native-transcript-stream.js";
|
|
5
|
+
export interface NativeHookEventSink {
|
|
6
|
+
deliver(envelope: NativeHookEnvelope | NativeAgentSourceEvent, sourceHook?: NativeHookEnvelope): Promise<boolean | NativeHookDeliveryResult>;
|
|
7
|
+
deliverCanonical?(binding: NativeAgentRunBinding, event: NativeAgentSourceEvent): Promise<boolean>;
|
|
8
|
+
}
|
|
9
|
+
export interface NativeHookDeliveryResult {
|
|
10
|
+
accepted: boolean;
|
|
11
|
+
binding?: NativeAgentRunBinding;
|
|
12
|
+
}
|
|
13
|
+
export declare class PermanentNativeHookDeliveryError extends Error {
|
|
14
|
+
constructor(message: string);
|
|
15
|
+
}
|
|
16
|
+
export declare function drainNativeHookInbox(input: {
|
|
17
|
+
inbox: EncryptedNativeHookInbox;
|
|
18
|
+
sink: NativeHookEventSink;
|
|
19
|
+
transcriptStreamer?: NativeTranscriptStreamer;
|
|
20
|
+
onTranscriptError?: (input: {
|
|
21
|
+
envelope: NativeHookEnvelope;
|
|
22
|
+
error: Error;
|
|
23
|
+
}) => void;
|
|
24
|
+
/**
|
|
25
|
+
* A provider may remove its transcript before the daemon sees a delayed
|
|
26
|
+
* hook. Retry briefly for create/rename races, then deliver the lifecycle
|
|
27
|
+
* envelope without transcript replay so one vanished file cannot block the
|
|
28
|
+
* entire ordered inbox forever.
|
|
29
|
+
*/
|
|
30
|
+
missingTranscriptGraceMs?: number;
|
|
31
|
+
now?: () => number;
|
|
32
|
+
limit?: number;
|
|
33
|
+
}): Promise<NativeHookDrainResult>;
|
|
34
|
+
//# sourceMappingURL=native-hook-drain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hook-drain.d.ts","sourceRoot":"","sources":["../src/native-hook-drain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAC9F,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAE9E,MAAM,WAAW,mBAAmB;IAClC,OAAO,CACL,QAAQ,EAAE,kBAAkB,GAAG,sBAAsB,EACrD,UAAU,CAAC,EAAE,kBAAkB,GAC9B,OAAO,CAAC,OAAO,GAAG,wBAAwB,CAAC,CAAC;IAC/C,gBAAgB,CAAC,CACf,OAAO,EAAE,qBAAqB,EAC9B,KAAK,EAAE,sBAAsB,GAC5B,OAAO,CAAC,OAAO,CAAC,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,qBAAqB,CAAC;CACjC;AAED,qBAAa,gCAAiC,SAAQ,KAAK;gBAC7C,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,oBAAoB,CAAC,KAAK,EAAE;IAChD,KAAK,EAAE,wBAAwB,CAAC;IAChC,IAAI,EAAE,mBAAmB,CAAC;IAC1B,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IAC9C,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,kBAAkB,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IACpF;;;;;OAKG;IACH,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAsEjC"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
export class PermanentNativeHookDeliveryError extends Error {
|
|
2
|
+
constructor(message) {
|
|
3
|
+
super(message);
|
|
4
|
+
this.name = "PermanentNativeHookDeliveryError";
|
|
5
|
+
}
|
|
6
|
+
}
|
|
7
|
+
export async function drainNativeHookInbox(input) {
|
|
8
|
+
return input.inbox.drain(async (envelope) => {
|
|
9
|
+
const isStart = envelope.eventType === "session_start" || envelope.eventType === "subagent_start";
|
|
10
|
+
const isTerminal = envelope.eventType === "stop" ||
|
|
11
|
+
envelope.eventType === "session_end" ||
|
|
12
|
+
envelope.eventType === "subagent_end";
|
|
13
|
+
let binding = envelope.eventType === "user_prompt"
|
|
14
|
+
? undefined
|
|
15
|
+
: await input.transcriptStreamer?.bindingFor?.(envelope);
|
|
16
|
+
const streamTranscript = async () => {
|
|
17
|
+
if (isStart || !input.transcriptStreamer || !envelope.transcriptPath) {
|
|
18
|
+
return "unavailable";
|
|
19
|
+
}
|
|
20
|
+
try {
|
|
21
|
+
const streamed = await input.transcriptStreamer.stream(envelope, async (event) => {
|
|
22
|
+
if (binding && input.sink.deliverCanonical) {
|
|
23
|
+
return input.sink.deliverCanonical(binding, event);
|
|
24
|
+
}
|
|
25
|
+
return accepted(await input.sink.deliver(event, envelope));
|
|
26
|
+
});
|
|
27
|
+
return streamed.complete
|
|
28
|
+
? streamed.assistantOutputDelivered
|
|
29
|
+
? "replayed"
|
|
30
|
+
: "unavailable"
|
|
31
|
+
: "deferred";
|
|
32
|
+
}
|
|
33
|
+
catch (error) {
|
|
34
|
+
if (error instanceof PermanentNativeHookDeliveryError)
|
|
35
|
+
throw error;
|
|
36
|
+
const normalizedError = error instanceof Error ? error : new Error(String(error));
|
|
37
|
+
input.onTranscriptError?.({
|
|
38
|
+
envelope,
|
|
39
|
+
error: normalizedError,
|
|
40
|
+
});
|
|
41
|
+
if (isMissingTranscriptError(normalizedError) &&
|
|
42
|
+
transcriptGraceExpired(envelope.observedAt, input.now?.() ?? Date.now(), input.missingTranscriptGraceMs ?? 10_000)) {
|
|
43
|
+
return "unavailable";
|
|
44
|
+
}
|
|
45
|
+
return "deferred";
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
// Starts/prompts establish the run before transcript deltas. Terminal hooks
|
|
49
|
+
// close it only after every final transcript byte has been acknowledged.
|
|
50
|
+
if (isTerminal) {
|
|
51
|
+
const transcriptReplay = await streamTranscript();
|
|
52
|
+
if (transcriptReplay === "deferred")
|
|
53
|
+
return false;
|
|
54
|
+
return accepted(await input.sink.deliver(transcriptReplay === "replayed"
|
|
55
|
+
? { ...envelope, assistantOutputReplayed: true }
|
|
56
|
+
: envelope));
|
|
57
|
+
}
|
|
58
|
+
const lifecycleDelivery = normalizeDelivery(await input.sink.deliver(envelope));
|
|
59
|
+
if (!lifecycleDelivery.accepted)
|
|
60
|
+
return false;
|
|
61
|
+
if (envelope.eventType === "user_prompt") {
|
|
62
|
+
binding = lifecycleDelivery.binding;
|
|
63
|
+
await input.transcriptStreamer?.setBinding?.(envelope, binding);
|
|
64
|
+
}
|
|
65
|
+
return (await streamTranscript()) !== "deferred";
|
|
66
|
+
}, input.limit);
|
|
67
|
+
}
|
|
68
|
+
function normalizeDelivery(result) {
|
|
69
|
+
return typeof result === "boolean" ? { accepted: result } : result;
|
|
70
|
+
}
|
|
71
|
+
function accepted(result) {
|
|
72
|
+
return normalizeDelivery(result).accepted;
|
|
73
|
+
}
|
|
74
|
+
function isMissingTranscriptError(error) {
|
|
75
|
+
return error.code === "ENOENT";
|
|
76
|
+
}
|
|
77
|
+
function transcriptGraceExpired(observedAt, now, graceMs) {
|
|
78
|
+
const observedAtMs = Date.parse(observedAt);
|
|
79
|
+
if (!Number.isFinite(observedAtMs))
|
|
80
|
+
return true;
|
|
81
|
+
return now - observedAtMs >= Math.max(0, graceMs);
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=native-hook-drain.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hook-drain.js","sourceRoot":"","sources":["../src/native-hook-drain.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { NativeHookEnvelope } from "./native-session.js";
|
|
2
|
+
export interface NativeHookInboxOptions {
|
|
3
|
+
maxBytes?: number;
|
|
4
|
+
maxEntries?: number;
|
|
5
|
+
recoverClaims?: boolean;
|
|
6
|
+
concurrency?: number;
|
|
7
|
+
onQuarantine?: (input: {
|
|
8
|
+
fileName: string;
|
|
9
|
+
error: Error;
|
|
10
|
+
}) => void;
|
|
11
|
+
}
|
|
12
|
+
export interface NativeHookDrainResult {
|
|
13
|
+
attempted: number;
|
|
14
|
+
acknowledged: number;
|
|
15
|
+
deferred: number;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* A file-per-event inbox keeps hook writers lock-free across short-lived CLI
|
|
19
|
+
* processes. Each entry is encrypted to a temp file and atomically renamed;
|
|
20
|
+
* the daemon claims entries with another rename before delivery.
|
|
21
|
+
*/
|
|
22
|
+
export declare class EncryptedNativeHookInbox {
|
|
23
|
+
private readonly path;
|
|
24
|
+
private readonly key;
|
|
25
|
+
private readonly concurrency;
|
|
26
|
+
private draining;
|
|
27
|
+
private readonly maxBytes;
|
|
28
|
+
private readonly maxEntries;
|
|
29
|
+
private readonly onQuarantine?;
|
|
30
|
+
constructor(path: string, encodedKey: string, options?: NativeHookInboxOptions);
|
|
31
|
+
enqueue(envelope: NativeHookEnvelope): void;
|
|
32
|
+
size(): number;
|
|
33
|
+
drain(consume: (envelope: NativeHookEnvelope) => Promise<boolean>, limit?: number): Promise<NativeHookDrainResult>;
|
|
34
|
+
private drainFair;
|
|
35
|
+
private readEntry;
|
|
36
|
+
private recoverClaims;
|
|
37
|
+
private enforceBounds;
|
|
38
|
+
}
|
|
39
|
+
export declare function nativeHookInboxPath(configPath: string): string;
|
|
40
|
+
//# sourceMappingURL=native-hook-inbox.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hook-inbox.d.ts","sourceRoot":"","sources":["../src/native-hook-inbox.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAa9D,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;CACpE;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAeD;;;;GAIG;AACH,qBAAa,wBAAwB;IASjC,OAAO,CAAC,QAAQ,CAAC,IAAI;IARvB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAC7B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IACrC,OAAO,CAAC,QAAQ,CAA+C;IAC/D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAyC;gBAGpD,IAAI,EAAE,MAAM,EAC7B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,sBAA2B;IAoBtC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI;IA6B3C,IAAI,IAAI,MAAM;IAIR,KAAK,CACT,OAAO,EAAE,CAAC,QAAQ,EAAE,kBAAkB,KAAK,OAAO,CAAC,OAAO,CAAC,EAC3D,KAAK,SAAM,GACV,OAAO,CAAC,qBAAqB,CAAC;YAQnB,SAAS;IAmFvB,OAAO,CAAC,SAAS;IAYjB,OAAO,CAAC,aAAa;IAYrB,OAAO,CAAC,aAAa;CAWtB;AAED,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE9D"}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
import { createCipheriv, createDecipheriv, randomBytes, randomUUID } from "node:crypto";
|
|
2
|
+
import { chmodSync, existsSync, mkdirSync, readdirSync, readFileSync, renameSync, rmSync, statSync, writeFileSync, } from "node:fs";
|
|
3
|
+
import { dirname, join } from "node:path";
|
|
4
|
+
const INBOX_FILE_VERSION = 1;
|
|
5
|
+
const DEFAULT_MAX_BYTES = 64 * 1024 * 1024;
|
|
6
|
+
const DEFAULT_MAX_ENTRIES = 10_000;
|
|
7
|
+
function decodeKey(encodedKey) {
|
|
8
|
+
const key = Buffer.from(encodedKey, "base64url");
|
|
9
|
+
if (key.length !== 32)
|
|
10
|
+
throw new Error("native hook inbox key must contain exactly 32 bytes");
|
|
11
|
+
return key;
|
|
12
|
+
}
|
|
13
|
+
function encryptedEntryNames(path) {
|
|
14
|
+
if (!existsSync(path))
|
|
15
|
+
return [];
|
|
16
|
+
return readdirSync(path)
|
|
17
|
+
.filter((name) => name.endsWith(".event") || name.includes(".processing-"))
|
|
18
|
+
.sort();
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* A file-per-event inbox keeps hook writers lock-free across short-lived CLI
|
|
22
|
+
* processes. Each entry is encrypted to a temp file and atomically renamed;
|
|
23
|
+
* the daemon claims entries with another rename before delivery.
|
|
24
|
+
*/
|
|
25
|
+
export class EncryptedNativeHookInbox {
|
|
26
|
+
path;
|
|
27
|
+
key;
|
|
28
|
+
concurrency;
|
|
29
|
+
draining = null;
|
|
30
|
+
maxBytes;
|
|
31
|
+
maxEntries;
|
|
32
|
+
onQuarantine;
|
|
33
|
+
constructor(path, encodedKey, options = {}) {
|
|
34
|
+
this.path = path;
|
|
35
|
+
this.key = decodeKey(encodedKey);
|
|
36
|
+
this.concurrency = options.concurrency ?? 1;
|
|
37
|
+
if (![1, 2].includes(this.concurrency))
|
|
38
|
+
throw new Error("native hook concurrency must be 1 or 2");
|
|
39
|
+
this.maxBytes = options.maxBytes ?? DEFAULT_MAX_BYTES;
|
|
40
|
+
this.maxEntries = options.maxEntries ?? DEFAULT_MAX_ENTRIES;
|
|
41
|
+
this.onQuarantine = options.onQuarantine;
|
|
42
|
+
if (!Number.isSafeInteger(this.maxBytes) || this.maxBytes <= 0) {
|
|
43
|
+
throw new Error("native hook inbox maxBytes must be a positive integer");
|
|
44
|
+
}
|
|
45
|
+
if (!Number.isSafeInteger(this.maxEntries) || this.maxEntries <= 0) {
|
|
46
|
+
throw new Error("native hook inbox maxEntries must be a positive integer");
|
|
47
|
+
}
|
|
48
|
+
mkdirSync(this.path, { recursive: true, mode: 0o700 });
|
|
49
|
+
chmodSync(this.path, 0o700);
|
|
50
|
+
if (options.recoverClaims)
|
|
51
|
+
this.recoverClaims();
|
|
52
|
+
}
|
|
53
|
+
enqueue(envelope) {
|
|
54
|
+
const plaintext = Buffer.from(JSON.stringify(envelope), "utf8");
|
|
55
|
+
const iv = randomBytes(12);
|
|
56
|
+
const cipher = createCipheriv("aes-256-gcm", this.key, iv);
|
|
57
|
+
const ciphertext = Buffer.concat([cipher.update(plaintext), cipher.final()]);
|
|
58
|
+
const file = {
|
|
59
|
+
version: INBOX_FILE_VERSION,
|
|
60
|
+
iv: iv.toString("base64url"),
|
|
61
|
+
authTag: cipher.getAuthTag().toString("base64url"),
|
|
62
|
+
ciphertext: ciphertext.toString("base64url"),
|
|
63
|
+
};
|
|
64
|
+
// Date.now() alone collides under bursty hooks, and a random event id does
|
|
65
|
+
// not preserve causality. Node's monotonic clock has a shared OS epoch, so
|
|
66
|
+
// it orders same-millisecond writers even when hooks run in separate CLIs.
|
|
67
|
+
const monotonic = process.hrtime.bigint().toString().padStart(20, "0");
|
|
68
|
+
const prefix = `${String(Date.now()).padStart(13, "0")}-${monotonic}-${envelope.eventId}`;
|
|
69
|
+
const temporaryPath = join(this.path, `.${prefix}-${randomUUID()}.tmp`);
|
|
70
|
+
const finalPath = join(this.path, `${prefix}.event`);
|
|
71
|
+
writeFileSync(temporaryPath, JSON.stringify(file), { mode: 0o600, flag: "wx" });
|
|
72
|
+
chmodSync(temporaryPath, 0o600);
|
|
73
|
+
renameSync(temporaryPath, finalPath);
|
|
74
|
+
try {
|
|
75
|
+
this.enforceBounds();
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
rmSync(finalPath, { force: true });
|
|
79
|
+
throw error;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
size() {
|
|
83
|
+
return encryptedEntryNames(this.path).length;
|
|
84
|
+
}
|
|
85
|
+
async drain(consume, limit = 100) {
|
|
86
|
+
if (this.draining)
|
|
87
|
+
return this.draining;
|
|
88
|
+
this.draining = this.drainFair(consume, limit).finally(() => {
|
|
89
|
+
this.draining = null;
|
|
90
|
+
});
|
|
91
|
+
return this.draining;
|
|
92
|
+
}
|
|
93
|
+
async drainFair(consume, limit) {
|
|
94
|
+
const result = { attempted: 0, acknowledged: 0, deferred: 0 };
|
|
95
|
+
const names = encryptedEntryNames(this.path).filter((name) => name.endsWith(".event"));
|
|
96
|
+
const groups = new Map();
|
|
97
|
+
const parents = new Map();
|
|
98
|
+
const identities = new Map();
|
|
99
|
+
for (const name of names) {
|
|
100
|
+
try {
|
|
101
|
+
const envelope = this.readEntry(join(this.path, name));
|
|
102
|
+
const key = `${envelope.provider}:${envelope.externalSessionId}`;
|
|
103
|
+
identities.set(name, key);
|
|
104
|
+
if (envelope.parentExternalSessionId)
|
|
105
|
+
parents.set(key, `${envelope.provider}:${envelope.parentExternalSessionId}`);
|
|
106
|
+
}
|
|
107
|
+
catch {
|
|
108
|
+
identities.set(name, name);
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
for (const name of names) {
|
|
112
|
+
let key = identities.get(name);
|
|
113
|
+
const seen = new Set();
|
|
114
|
+
while (parents.has(key) && !seen.has(key)) {
|
|
115
|
+
seen.add(key);
|
|
116
|
+
key = parents.get(key);
|
|
117
|
+
}
|
|
118
|
+
const group = groups.get(key) ?? [];
|
|
119
|
+
group.push(name);
|
|
120
|
+
groups.set(key, group);
|
|
121
|
+
}
|
|
122
|
+
const ready = [...groups.values()];
|
|
123
|
+
const deliver = async (name) => {
|
|
124
|
+
const sourcePath = join(this.path, name);
|
|
125
|
+
const claimedName = `${name.slice(0, -".event".length)}.processing-${randomUUID()}`;
|
|
126
|
+
const claimedPath = join(this.path, claimedName);
|
|
127
|
+
try {
|
|
128
|
+
renameSync(sourcePath, claimedPath);
|
|
129
|
+
}
|
|
130
|
+
catch {
|
|
131
|
+
return true;
|
|
132
|
+
}
|
|
133
|
+
result.attempted += 1;
|
|
134
|
+
try {
|
|
135
|
+
const envelope = this.readEntry(claimedPath);
|
|
136
|
+
if (await consume(envelope)) {
|
|
137
|
+
rmSync(claimedPath, { force: true });
|
|
138
|
+
result.acknowledged += 1;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
renameSync(claimedPath, sourcePath);
|
|
142
|
+
result.deferred += 1;
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
catch (error) {
|
|
147
|
+
// A decrypt/schema failure is permanent for this entry. Preserve it for
|
|
148
|
+
// diagnosis without letting one corrupt file head-of-line block every
|
|
149
|
+
// later session event forever. Delivery failures return false above and
|
|
150
|
+
// are restored to the live queue instead of reaching this branch.
|
|
151
|
+
if (existsSync(claimedPath)) {
|
|
152
|
+
const quarantinedPath = `${claimedPath}.quarantine`;
|
|
153
|
+
renameSync(claimedPath, quarantinedPath);
|
|
154
|
+
this.onQuarantine?.({
|
|
155
|
+
fileName: quarantinedPath.slice(quarantinedPath.lastIndexOf("/") + 1),
|
|
156
|
+
error: error instanceof Error ? error : new Error(String(error)),
|
|
157
|
+
});
|
|
158
|
+
}
|
|
159
|
+
result.deferred += 1;
|
|
160
|
+
return false;
|
|
161
|
+
}
|
|
162
|
+
return true;
|
|
163
|
+
};
|
|
164
|
+
const lane = async () => {
|
|
165
|
+
while (ready.length && result.attempted < Math.max(0, limit)) {
|
|
166
|
+
const group = ready.shift();
|
|
167
|
+
const name = group.shift();
|
|
168
|
+
if (await deliver(name)) {
|
|
169
|
+
if (group.length)
|
|
170
|
+
ready.push(group);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
};
|
|
174
|
+
await Promise.all(Array.from({ length: this.concurrency }, lane));
|
|
175
|
+
return result;
|
|
176
|
+
}
|
|
177
|
+
readEntry(path) {
|
|
178
|
+
const file = JSON.parse(readFileSync(path, "utf8"));
|
|
179
|
+
if (file.version !== INBOX_FILE_VERSION)
|
|
180
|
+
throw new Error("unsupported native hook inbox entry");
|
|
181
|
+
const decipher = createDecipheriv("aes-256-gcm", this.key, Buffer.from(file.iv, "base64url"));
|
|
182
|
+
decipher.setAuthTag(Buffer.from(file.authTag, "base64url"));
|
|
183
|
+
const plaintext = Buffer.concat([
|
|
184
|
+
decipher.update(Buffer.from(file.ciphertext, "base64url")),
|
|
185
|
+
decipher.final(),
|
|
186
|
+
]);
|
|
187
|
+
return JSON.parse(plaintext.toString("utf8"));
|
|
188
|
+
}
|
|
189
|
+
recoverClaims() {
|
|
190
|
+
for (const name of encryptedEntryNames(this.path)) {
|
|
191
|
+
if (name.endsWith(".quarantine"))
|
|
192
|
+
continue;
|
|
193
|
+
const marker = name.indexOf(".processing-");
|
|
194
|
+
if (marker === -1)
|
|
195
|
+
continue;
|
|
196
|
+
const claimedPath = join(this.path, name);
|
|
197
|
+
const eventPath = join(this.path, `${name.slice(0, marker)}.event`);
|
|
198
|
+
if (existsSync(eventPath))
|
|
199
|
+
rmSync(claimedPath, { force: true });
|
|
200
|
+
else
|
|
201
|
+
renameSync(claimedPath, eventPath);
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
enforceBounds() {
|
|
205
|
+
const entries = encryptedEntryNames(this.path)
|
|
206
|
+
.filter((name) => name.endsWith(".event"))
|
|
207
|
+
.map((name) => ({ name, bytes: statSync(join(this.path, name)).size }));
|
|
208
|
+
const totalBytes = entries.reduce((sum, entry) => sum + entry.bytes, 0);
|
|
209
|
+
if (entries.length > this.maxEntries || totalBytes > this.maxBytes) {
|
|
210
|
+
throw new Error(`native hook inbox capacity exceeded (${entries.length} entries, ${totalBytes} bytes)`);
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
export function nativeHookInboxPath(configPath) {
|
|
215
|
+
return join(dirname(configPath), "native-hook-inbox");
|
|
216
|
+
}
|
|
217
|
+
//# sourceMappingURL=native-hook-inbox.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-hook-inbox.js","sourceRoot":"","sources":["../src/native-hook-inbox.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface AlanProjectPin {
|
|
2
|
+
organization: string;
|
|
3
|
+
team: string;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Project configuration is optional enrichment. A missing or invalid file must
|
|
7
|
+
* never prevent the provider CLI from starting or the native session from
|
|
8
|
+
* streaming under its authenticated user.
|
|
9
|
+
*/
|
|
10
|
+
export declare function readAlanProjectPin(cwd: string): AlanProjectPin | undefined;
|
|
11
|
+
//# sourceMappingURL=native-project-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-project-config.d.ts","sourceRoot":"","sources":["../src/native-project-config.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAqC1E"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { closeSync, constants, fstatSync, openSync, readSync } from "node:fs";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
const MAX_ALAN_PROJECT_CONFIG_BYTES = 64 * 1024;
|
|
4
|
+
const ORGANIZATION_SLUG_PATTERN = /^[a-z0-9-]+$/;
|
|
5
|
+
const TEAM_IDENTIFIER_PATTERN = /^[A-Z0-9]{2,4}$/i;
|
|
6
|
+
/**
|
|
7
|
+
* Project configuration is optional enrichment. A missing or invalid file must
|
|
8
|
+
* never prevent the provider CLI from starting or the native session from
|
|
9
|
+
* streaming under its authenticated user.
|
|
10
|
+
*/
|
|
11
|
+
export function readAlanProjectPin(cwd) {
|
|
12
|
+
let fd;
|
|
13
|
+
try {
|
|
14
|
+
fd = openSync(join(cwd, "alan.json"), constants.O_RDONLY | constants.O_NONBLOCK | (constants.O_NOFOLLOW ?? 0));
|
|
15
|
+
const stat = fstatSync(fd);
|
|
16
|
+
if (!stat.isFile() || stat.size > MAX_ALAN_PROJECT_CONFIG_BYTES)
|
|
17
|
+
return undefined;
|
|
18
|
+
const buffer = Buffer.allocUnsafe(MAX_ALAN_PROJECT_CONFIG_BYTES + 1);
|
|
19
|
+
const bytesRead = readSync(fd, buffer, 0, buffer.byteLength, 0);
|
|
20
|
+
if (bytesRead > MAX_ALAN_PROJECT_CONFIG_BYTES)
|
|
21
|
+
return undefined;
|
|
22
|
+
const parsed = JSON.parse(buffer.subarray(0, bytesRead).toString("utf8"));
|
|
23
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed))
|
|
24
|
+
return undefined;
|
|
25
|
+
const config = parsed;
|
|
26
|
+
const organization = typeof config.organization === "string" ? config.organization.trim().toLowerCase() : "";
|
|
27
|
+
const team = typeof config.team === "string" ? config.team.trim().toUpperCase() : "";
|
|
28
|
+
if (organization.length > 50 ||
|
|
29
|
+
!ORGANIZATION_SLUG_PATTERN.test(organization) ||
|
|
30
|
+
!TEAM_IDENTIFIER_PATTERN.test(team)) {
|
|
31
|
+
return undefined;
|
|
32
|
+
}
|
|
33
|
+
return { organization, team };
|
|
34
|
+
}
|
|
35
|
+
catch {
|
|
36
|
+
return undefined;
|
|
37
|
+
}
|
|
38
|
+
finally {
|
|
39
|
+
if (fd !== undefined) {
|
|
40
|
+
try {
|
|
41
|
+
closeSync(fd);
|
|
42
|
+
}
|
|
43
|
+
catch {
|
|
44
|
+
// Optional enrichment must never fail the provider hook.
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=native-project-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-project-config.js","sourceRoot":"","sources":["../src/native-project-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC9E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,MAAM,6BAA6B,GAAG,EAAE,GAAG,IAAI,CAAC;AAChD,MAAM,yBAAyB,GAAG,cAAc,CAAC;AACjD,MAAM,uBAAuB,GAAG,kBAAkB,CAAC;AAOnD;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,IAAI,EAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,EAAE,GAAG,QAAQ,CACX,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,EACtB,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,UAAU,GAAG,CAAC,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC,CACxE,CAAC;QACF,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,CAAC;QAC3B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,6BAA6B;YAAE,OAAO,SAAS,CAAC;QAClF,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,6BAA6B,GAAG,CAAC,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAChE,IAAI,SAAS,GAAG,6BAA6B;YAAE,OAAO,SAAS,CAAC;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAY,CAAC;QACrF,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,SAAS,CAAC;QACrF,MAAM,MAAM,GAAG,MAAiC,CAAC;QACjD,MAAM,YAAY,GAChB,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1F,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrF,IACE,YAAY,CAAC,MAAM,GAAG,EAAE;YACxB,CAAC,yBAAyB,CAAC,IAAI,CAAC,YAAY,CAAC;YAC7C,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,EACnC,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;QACD,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;YAAS,CAAC;QACT,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,SAAS,CAAC,EAAE,CAAC,CAAC;YAChB,CAAC;YAAC,MAAM,CAAC;gBACP,yDAAyD;YAC3D,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { NativeAgentHookEvent, NativeAgentProvider, NativeAgentSessionCapabilities } from "@alan-ai/shared/native-agent-session";
|
|
2
|
+
export type NativeSessionProviderKind = "claude_cli" | "codex_app_server" | "copilot_cli" | "cursor_agent_cli" | "antigravity_cli" | "kimi_cli" | "command_code_cli" | "grok_cli" | "opencode_cli" | "droid_cli" | "supatest_cli";
|
|
3
|
+
export type NativeSessionHookCoverage = "lifecycle" | "notification" | "none";
|
|
4
|
+
export interface NativeSessionProviderCapability {
|
|
5
|
+
providerKind: NativeSessionProviderKind;
|
|
6
|
+
provider: NativeAgentProvider;
|
|
7
|
+
command: string;
|
|
8
|
+
capabilities: NativeAgentSessionCapabilities;
|
|
9
|
+
supportedHookEvents: readonly string[];
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Capability is explicit rather than inferred from whether a CLI binary is
|
|
13
|
+
* installed. This prevents installers from writing speculative hook config for
|
|
14
|
+
* providers that only support MCP or whose notification payload is incomplete.
|
|
15
|
+
*/
|
|
16
|
+
export declare const NATIVE_SESSION_PROVIDER_CAPABILITIES: readonly NativeSessionProviderCapability[];
|
|
17
|
+
export declare function isNativeSessionProviderKind(value: string): value is NativeSessionProviderKind;
|
|
18
|
+
export declare function nativeSessionProviderCapability(providerKind: NativeSessionProviderKind): NativeSessionProviderCapability;
|
|
19
|
+
export type NativeHookEnvelope = NativeAgentHookEvent;
|
|
20
|
+
//# sourceMappingURL=native-session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"native-session.d.ts","sourceRoot":"","sources":["../src/native-session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,8BAA8B,EAC/B,MAAM,sCAAsC,CAAC;AAE9C,MAAM,MAAM,yBAAyB,GACjC,YAAY,GACZ,kBAAkB,GAClB,aAAa,GACb,kBAAkB,GAClB,iBAAiB,GACjB,UAAU,GACV,kBAAkB,GAClB,UAAU,GACV,cAAc,GACd,WAAW,GACX,cAAc,CAAC;AAEnB,MAAM,MAAM,yBAAyB,GAAG,WAAW,GAAG,cAAc,GAAG,MAAM,CAAC;AAE9E,MAAM,WAAW,+BAA+B;IAC9C,YAAY,EAAE,yBAAyB,CAAC;IACxC,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,8BAA8B,CAAC;IAC7C,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED;;;;GAIG;AACH,eAAO,MAAM,oCAAoC,EAAE,SAAS,+BAA+B,EA6LjF,CAAC;AAkBX,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,yBAAyB,CAE7F;AAED,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,yBAAyB,GACtC,+BAA+B,CAIjC;AAED,MAAM,MAAM,kBAAkB,GAAG,oBAAoB,CAAC"}
|