@aiden-ade/sandbox-agent 0.1.59 → 0.1.60
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/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 +610 -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 +109 -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 +129 -0
- package/dist/__tests__/cli-executable.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 +34 -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-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-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 +86 -0
- package/dist/__tests__/daemon-reconcile-ask.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 +450 -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 +3975 -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-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 +84 -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 +256 -0
- package/dist/__tests__/event-outbox.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__/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-skill-scan.test.d.ts +2 -0
- package/dist/__tests__/local-skill-scan.test.d.ts.map +1 -0
- package/dist/__tests__/local-skill-scan.test.js +91 -0
- package/dist/__tests__/local-skill-scan.test.js.map +1 -0
- package/dist/__tests__/local-workspace-migration.test.d.ts +2 -0
- package/dist/__tests__/local-workspace-migration.test.d.ts.map +1 -0
- package/dist/__tests__/local-workspace-migration.test.js +195 -0
- package/dist/__tests__/local-workspace-migration.test.js.map +1 -0
- package/dist/__tests__/mcp-inspect-timeout.test.d.ts +2 -0
- package/dist/__tests__/mcp-inspect-timeout.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-inspect-timeout.test.js +97 -0
- package/dist/__tests__/mcp-inspect-timeout.test.js.map +1 -0
- package/dist/__tests__/mcp-readiness.test.d.ts +2 -0
- package/dist/__tests__/mcp-readiness.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-readiness.test.js +267 -0
- package/dist/__tests__/mcp-readiness.test.js.map +1 -0
- package/dist/__tests__/mcp-registration-cli.test.d.ts +2 -0
- package/dist/__tests__/mcp-registration-cli.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-registration-cli.test.js +71 -0
- package/dist/__tests__/mcp-registration-cli.test.js.map +1 -0
- package/dist/__tests__/mcp-registration.test.d.ts +2 -0
- package/dist/__tests__/mcp-registration.test.d.ts.map +1 -0
- package/dist/__tests__/mcp-registration.test.js +426 -0
- package/dist/__tests__/mcp-registration.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 +67 -0
- package/dist/__tests__/model-scan-runner.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__/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 +472 -0
- package/dist/__tests__/provider-model-discovery.test.js.map +1 -0
- package/dist/__tests__/remove-worktrees-if-clean.test.d.ts +2 -0
- package/dist/__tests__/remove-worktrees-if-clean.test.d.ts.map +1 -0
- package/dist/__tests__/remove-worktrees-if-clean.test.js +221 -0
- package/dist/__tests__/remove-worktrees-if-clean.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 +29 -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 +102 -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 +159 -0
- package/dist/__tests__/runtime-presenter-heartbeat.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 +214 -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 +396 -0
- package/dist/__tests__/sandbox-workflow-context.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 +50 -0
- package/dist/__tests__/service-manager.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 +130 -0
- package/dist/__tests__/web-presenter-parent-events.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-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 +230 -0
- package/dist/__tests__/workspace-run-lease.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 +61 -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 +109 -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 +167 -0
- package/dist/__tests__/ws-client-user-message-ack.integration.test.js.map +1 -0
- package/dist/aiden-system-prompt.d.ts +6 -0
- package/dist/aiden-system-prompt.d.ts.map +1 -0
- package/dist/aiden-system-prompt.js +6 -0
- package/dist/aiden-system-prompt.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 +973 -0
- package/dist/binding-switch-git.js.map +1 -0
- package/dist/cli-ensure-install.d.ts +39 -0
- package/dist/cli-ensure-install.d.ts.map +1 -0
- package/dist/cli-ensure-install.js +133 -0
- package/dist/cli-ensure-install.js.map +1 -0
- package/dist/cli-executable.d.ts +97 -0
- package/dist/cli-executable.d.ts.map +1 -0
- package/dist/cli-executable.js +432 -0
- package/dist/cli-executable.js.map +1 -0
- package/dist/cli-help.d.ts +7 -0
- package/dist/cli-help.d.ts.map +1 -0
- package/dist/cli-help.js +49 -0
- package/dist/cli-help.js.map +1 -0
- package/dist/computer-readiness.d.ts +42 -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 +47 -0
- package/dist/core-agent.d.ts.map +1 -0
- package/dist/core-agent.js +364 -0
- package/dist/core-agent.js.map +1 -0
- package/dist/daemon.d.ts +392 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +4711 -0
- package/dist/daemon.js.map +1 -0
- package/dist/event-outbox.d.ts +83 -0
- package/dist/event-outbox.d.ts.map +1 -0
- package/dist/event-outbox.js +440 -0
- package/dist/event-outbox.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 +129 -29
- package/dist/index.d.ts +6 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +209 -0
- package/dist/index.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-skill-scan.d.ts +21 -0
- package/dist/local-skill-scan.d.ts.map +1 -0
- package/dist/local-skill-scan.js +109 -0
- package/dist/local-skill-scan.js.map +1 -0
- package/dist/local-workspace-migration.d.ts +68 -0
- package/dist/local-workspace-migration.d.ts.map +1 -0
- package/dist/local-workspace-migration.js +157 -0
- package/dist/local-workspace-migration.js.map +1 -0
- package/dist/mcp-readiness.d.ts +59 -0
- package/dist/mcp-readiness.d.ts.map +1 -0
- package/dist/mcp-readiness.js +202 -0
- package/dist/mcp-readiness.js.map +1 -0
- package/dist/mcp-registration.d.ts +75 -0
- package/dist/mcp-registration.d.ts.map +1 -0
- package/dist/mcp-registration.js +563 -0
- package/dist/mcp-registration.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 +51 -0
- package/dist/model-scan-runner.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 +25 -0
- package/dist/observable-map.d.ts.map +1 -0
- package/dist/observable-map.js +42 -0
- package/dist/observable-map.js.map +1 -0
- package/dist/provider-auth-preflight.d.ts +22 -0
- package/dist/provider-auth-preflight.d.ts.map +1 -0
- package/dist/provider-auth-preflight.js +110 -0
- package/dist/provider-auth-preflight.js.map +1 -0
- package/dist/provider-model-discovery.d.ts +38 -0
- package/dist/provider-model-discovery.d.ts.map +1 -0
- package/dist/provider-model-discovery.js +519 -0
- package/dist/provider-model-discovery.js.map +1 -0
- package/dist/resume-fallback-env.d.ts +20 -0
- package/dist/resume-fallback-env.d.ts.map +1 -0
- package/dist/resume-fallback-env.js +30 -0
- package/dist/resume-fallback-env.js.map +1 -0
- package/dist/run-journal.d.ts +53 -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/run-start-gate.d.ts +9 -0
- package/dist/run-start-gate.d.ts.map +1 -0
- package/dist/run-start-gate.js +24 -0
- package/dist/run-start-gate.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 +33 -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 +24 -0
- package/dist/runtime-config.d.ts.map +1 -0
- package/dist/runtime-config.js +124 -0
- package/dist/runtime-config.js.map +1 -0
- package/dist/sandbox-outbox.d.ts +122 -0
- package/dist/sandbox-outbox.d.ts.map +1 -0
- package/dist/sandbox-outbox.js +180 -0
- package/dist/sandbox-outbox.js.map +1 -0
- package/dist/sandbox.d.ts +44 -0
- package/dist/sandbox.d.ts.map +1 -0
- package/dist/sandbox.js +438 -0
- package/dist/sandbox.js.map +1 -0
- package/dist/service-manager.d.ts +28 -0
- package/dist/service-manager.d.ts.map +1 -0
- package/dist/service-manager.js +259 -0
- package/dist/service-manager.js.map +1 -0
- package/dist/sleep-inhibitor.d.ts +111 -0
- package/dist/sleep-inhibitor.d.ts.map +1 -0
- package/dist/sleep-inhibitor.js +412 -0
- package/dist/sleep-inhibitor.js.map +1 -0
- package/dist/suspension-detector.d.ts +48 -0
- package/dist/suspension-detector.d.ts.map +1 -0
- package/dist/suspension-detector.js +89 -0
- package/dist/suspension-detector.js.map +1 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +6 -0
- package/dist/types.js.map +1 -0
- package/dist/updater.d.ts +15 -0
- package/dist/updater.d.ts.map +1 -0
- package/dist/updater.js +50 -0
- package/dist/updater.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 +55 -0
- package/dist/web-presenter.d.ts.map +1 -0
- package/dist/web-presenter.js +265 -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-run-lease.d.ts +97 -0
- package/dist/workspace-run-lease.d.ts.map +1 -0
- package/dist/workspace-run-lease.js +241 -0
- package/dist/workspace-run-lease.js.map +1 -0
- package/dist/ws-client.d.ts +194 -0
- package/dist/ws-client.d.ts.map +1 -0
- package/dist/ws-client.js +282 -0
- package/dist/ws-client.js.map +1 -0
- package/package.json +1 -1
package/dist/daemon.d.ts
ADDED
|
@@ -0,0 +1,392 @@
|
|
|
1
|
+
import { type AgentRunStage, type RuntimeRunnerStatus } from "@alan-ai/shared/runtime-runner-status";
|
|
2
|
+
import { type Socket } from "socket.io-client";
|
|
3
|
+
import { CoreAgent } from "./core-agent.js";
|
|
4
|
+
import { EncryptedEventOutbox } from "./event-outbox.js";
|
|
5
|
+
import { type DirtyWorkspaceAction } from "./local-workspace-migration.js";
|
|
6
|
+
export { registerSleepInhibitorBackend, SLEEP_PREVENTION_DISABLED_ENV, type SleepInhibitorBackend, } from "./sleep-inhibitor.js";
|
|
7
|
+
import type { AgentActivityEvidence, AgentConfig, AgentPresenter, AgentResult, ApplicationProblemCode, ExitPlanModeInput, GeneratedImagePayload, SessionMediaPayload, UsageUpdate } from "./types.js";
|
|
8
|
+
import { WorkspaceRunLease, type WorkspaceRunLeaseFailure } from "./workspace-run-lease.js";
|
|
9
|
+
interface AgentCapability {
|
|
10
|
+
provider: string;
|
|
11
|
+
available: boolean;
|
|
12
|
+
version?: string;
|
|
13
|
+
models?: string[];
|
|
14
|
+
lastCheckedAt: string;
|
|
15
|
+
}
|
|
16
|
+
interface RuntimeCapabilities {
|
|
17
|
+
agents: AgentCapability[];
|
|
18
|
+
hasGit: boolean;
|
|
19
|
+
hasTerminal: boolean;
|
|
20
|
+
supportsFilesystem: boolean;
|
|
21
|
+
}
|
|
22
|
+
type EndpointProfile = "production" | "local" | "staging" | "custom";
|
|
23
|
+
interface RuntimeExecutePayload {
|
|
24
|
+
conversationId: string;
|
|
25
|
+
content: string;
|
|
26
|
+
runId: string;
|
|
27
|
+
/** Per-run Alan MCP registration (broker reference, no long-lived PAT) from the API. */
|
|
28
|
+
alanMcp?: import("@alan-ai/shared/agent").AlanMcpRegistration;
|
|
29
|
+
messageId?: string;
|
|
30
|
+
taskId?: string;
|
|
31
|
+
cloudEnvironmentId?: string;
|
|
32
|
+
images?: AgentConfig["images"];
|
|
33
|
+
files?: AgentConfig["files"];
|
|
34
|
+
model?: string;
|
|
35
|
+
selectedContextWindow?: string | null;
|
|
36
|
+
selectedEffortLevel?: string | null;
|
|
37
|
+
backendKind?: string;
|
|
38
|
+
agentId?: string | null;
|
|
39
|
+
agentPrompt?: string | null;
|
|
40
|
+
mode?: string;
|
|
41
|
+
maxIterations?: number;
|
|
42
|
+
providerSessionId?: string;
|
|
43
|
+
/** Compact recent transcript for rehydrating a fresh session if resume fails. */
|
|
44
|
+
resumeFallbackContext?: string;
|
|
45
|
+
providerApiKey?: string;
|
|
46
|
+
taskMeta?: AgentConfig["taskMeta"];
|
|
47
|
+
prMeta?: AgentConfig["prMeta"];
|
|
48
|
+
currentUser?: AgentConfig["currentUser"];
|
|
49
|
+
workflowTools?: AgentConfig["workflowTools"];
|
|
50
|
+
teamId?: string;
|
|
51
|
+
projectPath?: string;
|
|
52
|
+
repoLocalPaths?: Array<{
|
|
53
|
+
repoId?: string;
|
|
54
|
+
repoUrl: string;
|
|
55
|
+
localPath: string;
|
|
56
|
+
branch?: string;
|
|
57
|
+
}>;
|
|
58
|
+
localRepoUrls?: string[];
|
|
59
|
+
approvedWorkspacePaths?: string[];
|
|
60
|
+
worktreeInfo?: {
|
|
61
|
+
branchName?: string;
|
|
62
|
+
worktreePath?: string;
|
|
63
|
+
allWorktrees?: Array<{
|
|
64
|
+
worktreePath: string;
|
|
65
|
+
branchName?: string;
|
|
66
|
+
}>;
|
|
67
|
+
};
|
|
68
|
+
sharedCheckout?: {
|
|
69
|
+
branchName: string;
|
|
70
|
+
baseBranch?: string;
|
|
71
|
+
repoPaths?: string[];
|
|
72
|
+
repos?: Array<{
|
|
73
|
+
repoPath: string;
|
|
74
|
+
baseBranch?: string | null;
|
|
75
|
+
}>;
|
|
76
|
+
};
|
|
77
|
+
}
|
|
78
|
+
interface DirtyWorkspaceResolutionParams {
|
|
79
|
+
sourceAction?: DirtyWorkspaceAction;
|
|
80
|
+
destinationAction?: DirtyWorkspaceAction;
|
|
81
|
+
sourceCommitMessage?: string;
|
|
82
|
+
destinationCommitMessage?: string;
|
|
83
|
+
confirmDiscard?: boolean;
|
|
84
|
+
}
|
|
85
|
+
declare function git(cwd: string, args: string[]): string;
|
|
86
|
+
export declare function resolveProjectWorktreePaths(projectPath: string, gitRoot: string, gitWorktreePath: string): {
|
|
87
|
+
repoPath: string;
|
|
88
|
+
projectPath: string;
|
|
89
|
+
};
|
|
90
|
+
export declare function preflightLocalWorkspaceMigration(params: Record<string, unknown>): {
|
|
91
|
+
direction: string;
|
|
92
|
+
source: import("./local-workspace-migration.js").GitTreePreflight;
|
|
93
|
+
destination: import("./local-workspace-migration.js").GitTreePreflight | null;
|
|
94
|
+
requiresResolution: boolean;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Read-only git probe for the binding-switch "Current checkout" card. Accepts any
|
|
98
|
+
* checkout root — a task worktree or the shared Project checkout — and reports a
|
|
99
|
+
* dirty *count* only: porcelain paths deliberately never cross the relay.
|
|
100
|
+
*/
|
|
101
|
+
export declare function statusLocalWorkspace(params: Record<string, unknown>): {
|
|
102
|
+
branch: string | null;
|
|
103
|
+
headSha: string | null;
|
|
104
|
+
dirty: boolean;
|
|
105
|
+
filesChanged: number;
|
|
106
|
+
ahead: number | null;
|
|
107
|
+
behind: number | null;
|
|
108
|
+
hasUpstream: boolean;
|
|
109
|
+
};
|
|
110
|
+
export declare function ensureWorktree(params: Record<string, unknown>): {
|
|
111
|
+
dirtyResolution?: DirtyWorkspaceResolutionParams | undefined;
|
|
112
|
+
worktrees: {
|
|
113
|
+
repoId: string | null;
|
|
114
|
+
repoUrl: string;
|
|
115
|
+
worktreePath: string;
|
|
116
|
+
branchName: string;
|
|
117
|
+
baseBranch: string;
|
|
118
|
+
}[];
|
|
119
|
+
} | {
|
|
120
|
+
dirtyResolution?: DirtyWorkspaceResolutionParams | undefined;
|
|
121
|
+
worktrees: {
|
|
122
|
+
worktreePath: string;
|
|
123
|
+
branchName: string;
|
|
124
|
+
baseBranch: string;
|
|
125
|
+
}[];
|
|
126
|
+
};
|
|
127
|
+
/**
|
|
128
|
+
* Remove stale task worktrees only after every target passes a non-destructive
|
|
129
|
+
* preflight. The server supplies persisted worktree paths; the daemon derives
|
|
130
|
+
* each linked worktree root from Git registration instead of trusting those
|
|
131
|
+
* paths as removal roots.
|
|
132
|
+
*
|
|
133
|
+
* A retry after successful removal is accepted only when the now-missing path
|
|
134
|
+
* is under an Alan-managed worktree directory.
|
|
135
|
+
*/
|
|
136
|
+
export declare function removeWorktreesIfClean(params: Record<string, unknown>, removeGit?: typeof git): {
|
|
137
|
+
ok: boolean;
|
|
138
|
+
removed: {
|
|
139
|
+
worktreePath: string;
|
|
140
|
+
branchName: string;
|
|
141
|
+
replayed: boolean;
|
|
142
|
+
}[];
|
|
143
|
+
};
|
|
144
|
+
/**
|
|
145
|
+
* Move one clean task worktree back to its Project checkout.
|
|
146
|
+
*
|
|
147
|
+
* Paths may point at the Project's configured subdirectory rather than either
|
|
148
|
+
* Git root. The daemon resolves and compares both relative subpaths before
|
|
149
|
+
* mutation. A retry after a successful remove+checkout is idempotent, which
|
|
150
|
+
* lets the API durably persist its prepared receipt after the filesystem move.
|
|
151
|
+
*/
|
|
152
|
+
export declare function migrateWorktreeToCheckout(params: Record<string, unknown>, removeGit?: (cwd: string, args: string[]) => string): {
|
|
153
|
+
dirtyResolution?: DirtyWorkspaceResolutionParams | undefined;
|
|
154
|
+
ok: boolean;
|
|
155
|
+
replayed: boolean;
|
|
156
|
+
migrated: {
|
|
157
|
+
projectPath: string;
|
|
158
|
+
worktreePath: string;
|
|
159
|
+
branch: string;
|
|
160
|
+
}[];
|
|
161
|
+
};
|
|
162
|
+
/**
|
|
163
|
+
* Put a shared checkout onto the task's working branch (cut from baseBranch)
|
|
164
|
+
* without creating a worktree. Best-effort and non-destructive: it never
|
|
165
|
+
* touches a dirty tree and never aborts the run — if it cannot switch cleanly
|
|
166
|
+
* the caller logs the reason and the agent runs on the current branch.
|
|
167
|
+
*/
|
|
168
|
+
export declare function ensureSharedCheckoutBranch(input: {
|
|
169
|
+
repoPath: string;
|
|
170
|
+
branchName: string;
|
|
171
|
+
baseBranch: string;
|
|
172
|
+
}): {
|
|
173
|
+
checkedOut: boolean;
|
|
174
|
+
reason?: string;
|
|
175
|
+
};
|
|
176
|
+
export declare function resolveSharedCheckoutTargets(input: {
|
|
177
|
+
cwd: string;
|
|
178
|
+
sharedCheckout: NonNullable<RuntimeExecutePayload["sharedCheckout"]>;
|
|
179
|
+
}): Array<{
|
|
180
|
+
repoPath: string;
|
|
181
|
+
baseBranch: string;
|
|
182
|
+
}>;
|
|
183
|
+
export declare function resolveRuntimeCwd(payload: RuntimeExecutePayload): string;
|
|
184
|
+
export interface DaemonController {
|
|
185
|
+
runtimeId: string;
|
|
186
|
+
wsUrl: string;
|
|
187
|
+
localApiPort: number;
|
|
188
|
+
localApiToken: string;
|
|
189
|
+
stop: () => Promise<void>;
|
|
190
|
+
/** Invoked after POST /shutdown completes (e.g. `alan-agent stop`). */
|
|
191
|
+
whenExternallyStopped?: () => void;
|
|
192
|
+
}
|
|
193
|
+
export interface LocalDaemonStatus {
|
|
194
|
+
configured: boolean;
|
|
195
|
+
runtimeId: string;
|
|
196
|
+
wsUrl: string;
|
|
197
|
+
connected: boolean;
|
|
198
|
+
activeRunIds: string[];
|
|
199
|
+
activeRunCount?: number;
|
|
200
|
+
acceptingRuns?: boolean;
|
|
201
|
+
recovering?: boolean;
|
|
202
|
+
restartRecommended?: boolean;
|
|
203
|
+
staleRunCount?: number;
|
|
204
|
+
lastRunActivityAtMs?: number | null;
|
|
205
|
+
disconnectedSinceMs?: number | null;
|
|
206
|
+
lastConnectError?: string | null;
|
|
207
|
+
lastConnectErrorCode?: string | null;
|
|
208
|
+
localApiPort: number;
|
|
209
|
+
localServiceId?: string;
|
|
210
|
+
version: string;
|
|
211
|
+
daemonSessionId?: string;
|
|
212
|
+
heartbeatSeq?: number;
|
|
213
|
+
endpointProfile?: EndpointProfile;
|
|
214
|
+
configPath?: string;
|
|
215
|
+
runnerStatus?: RuntimeRunnerStatus;
|
|
216
|
+
computerReadiness?: RuntimeRunnerStatus["computerReadiness"];
|
|
217
|
+
/** Localhost-only path used by the desktop native permission recovery flow. */
|
|
218
|
+
workspaceRecoveryPath?: string | null;
|
|
219
|
+
}
|
|
220
|
+
export interface LocalDaemonRecoveryStatus {
|
|
221
|
+
configured?: boolean;
|
|
222
|
+
running?: boolean;
|
|
223
|
+
connected?: boolean;
|
|
224
|
+
recovering?: boolean;
|
|
225
|
+
restartRecommended?: boolean;
|
|
226
|
+
activeRunCount?: number;
|
|
227
|
+
activeRunIds?: string[];
|
|
228
|
+
staleRunCount?: number;
|
|
229
|
+
recoveryCode?: string;
|
|
230
|
+
error?: string;
|
|
231
|
+
}
|
|
232
|
+
export interface LocalDaemonRecoveryOptions {
|
|
233
|
+
connectTimeoutMs?: number;
|
|
234
|
+
pollMs?: number;
|
|
235
|
+
}
|
|
236
|
+
export declare function runLocalDaemonRecoveryLadder<T extends LocalDaemonRecoveryStatus>(input: {
|
|
237
|
+
initialStatus: T;
|
|
238
|
+
getStatus: () => Promise<T>;
|
|
239
|
+
redial: () => Promise<boolean>;
|
|
240
|
+
restart: () => Promise<T>;
|
|
241
|
+
blockingRunCount: (status: T) => number;
|
|
242
|
+
stopWaiting?: (status: T) => boolean;
|
|
243
|
+
options?: LocalDaemonRecoveryOptions;
|
|
244
|
+
}): Promise<T>;
|
|
245
|
+
export declare function probeLocalDaemon(port: number, token: string, timeoutMs?: number): Promise<LocalDaemonStatus | null>;
|
|
246
|
+
/**
|
|
247
|
+
* Reclaims local control only when this config proves it owns the incumbent
|
|
248
|
+
* daemon. A process that merely occupies the port cannot trigger replacement
|
|
249
|
+
* or learn the bearer token.
|
|
250
|
+
*/
|
|
251
|
+
export declare function adoptConfiguredLocalDaemon(args?: string[]): Promise<LocalDaemonStatus | null>;
|
|
252
|
+
export declare function isLocalDaemonListening(port: number, token?: string): Promise<boolean>;
|
|
253
|
+
export interface LocalDaemonMaintenanceLease {
|
|
254
|
+
version: 1;
|
|
255
|
+
id: string;
|
|
256
|
+
reason: "credential_cleanup" | "daemon_startup" | "watchdog";
|
|
257
|
+
/** Credential cleanup is durable until retry completes; watchdog leases remain finite. */
|
|
258
|
+
expiresAtMs: number | null;
|
|
259
|
+
}
|
|
260
|
+
export declare function readLocalDaemonMaintenanceLease(configPath: string, nowMs?: number): LocalDaemonMaintenanceLease | null;
|
|
261
|
+
export declare function acquireLocalDaemonMaintenanceLease(configPath: string, reason: LocalDaemonMaintenanceLease["reason"], ttlMs?: number): {
|
|
262
|
+
acquired: boolean;
|
|
263
|
+
lease: LocalDaemonMaintenanceLease;
|
|
264
|
+
};
|
|
265
|
+
export declare function releaseLocalDaemonMaintenanceLease(configPath: string, leaseId: string): void;
|
|
266
|
+
export declare function inspectLocalDaemonRunJournal(configPath: string): {
|
|
267
|
+
safeToRestart: boolean;
|
|
268
|
+
activeRunCount: number;
|
|
269
|
+
};
|
|
270
|
+
export declare const VERSION_REFRESH_INTERVAL_MS: number;
|
|
271
|
+
export declare function refreshProviderVersions(): Promise<void>;
|
|
272
|
+
export declare function refreshProviderModels(providers?: string[]): Promise<void>;
|
|
273
|
+
/** One-shot capability scan for cloud boot hooks and `alan-agent scan-models`. */
|
|
274
|
+
export declare function scanAgentCapabilities(providers?: string[]): Promise<RuntimeCapabilities>;
|
|
275
|
+
export declare function printScanModels(args: string[]): Promise<void>;
|
|
276
|
+
export declare function discoverCapabilities(): RuntimeCapabilities;
|
|
277
|
+
interface ActiveAgentEntry {
|
|
278
|
+
agent: CoreAgent;
|
|
279
|
+
presenter: RuntimePresenter;
|
|
280
|
+
lastActivityAtMs: number;
|
|
281
|
+
acceptedAtMs: number;
|
|
282
|
+
stage: AgentRunStage;
|
|
283
|
+
providerPid: number | null;
|
|
284
|
+
conversationId: string;
|
|
285
|
+
workspaceLease: WorkspaceRunLease | null;
|
|
286
|
+
/**
|
|
287
|
+
* Consecutive-transient-failure gate for the workspace lease monitor. A single
|
|
288
|
+
* slow `git` probe (OS timer coalescing while backgrounded / disk-IO
|
|
289
|
+
* contention) must not fail a healthy run, so transient probe failures are
|
|
290
|
+
* counted and only fail the run after N in a row; `nextCheckAtMs` backs the
|
|
291
|
+
* probe cadence off under sustained transient failure. Lazily initialized.
|
|
292
|
+
*/
|
|
293
|
+
leaseCheck?: {
|
|
294
|
+
transientStreak: number;
|
|
295
|
+
nextCheckAtMs: number;
|
|
296
|
+
};
|
|
297
|
+
}
|
|
298
|
+
/**
|
|
299
|
+
* On reconnect: replay the real events buffered for each run that produced activity while the
|
|
300
|
+
* socket was down (Gap 1), then emit the generic delivery_lost session_error ONLY for runs the
|
|
301
|
+
* daemon can no longer account for — i.e. gone from `activeAgents` with no buffered terminal.
|
|
302
|
+
*
|
|
303
|
+
* A run still present in `activeAgents` is alive by definition: the daemon is still executing it,
|
|
304
|
+
* its remaining output will stream and terminate normally. Emitting a synthetic delivery_lost for
|
|
305
|
+
* such a run fails a live run on the server and wipes the API accumulator mid-turn — the rest of
|
|
306
|
+
* the turn then streams live but is never persisted (issue #3). Those runs are skipped here and
|
|
307
|
+
* their stage is restored so a later disconnect re-tracks them.
|
|
308
|
+
*/
|
|
309
|
+
export declare function flushPendingDeliveryLostEvents(input: {
|
|
310
|
+
socket: Socket;
|
|
311
|
+
activeAgents: Map<string, ActiveAgentEntry>;
|
|
312
|
+
pending: Array<{
|
|
313
|
+
conversationId: string;
|
|
314
|
+
runId: string;
|
|
315
|
+
}>;
|
|
316
|
+
eventOutbox: EncryptedEventOutbox;
|
|
317
|
+
pushLog: (message: string) => void;
|
|
318
|
+
}): void;
|
|
319
|
+
/** Exported for unit tests — periodic stale/dead-provider reconciliation. */
|
|
320
|
+
export declare function reconcileActiveRuns(input: {
|
|
321
|
+
activeAgents: Map<string, ActiveAgentEntry>;
|
|
322
|
+
nowMs?: number;
|
|
323
|
+
pushLog?: (message: string) => void;
|
|
324
|
+
}): void;
|
|
325
|
+
export declare class RuntimePresenter implements AgentPresenter {
|
|
326
|
+
private readonly socket;
|
|
327
|
+
private readonly conversationId;
|
|
328
|
+
private readonly runId;
|
|
329
|
+
private readonly eventOutbox;
|
|
330
|
+
private readonly cwd?;
|
|
331
|
+
private readonly touchRunnerActivity?;
|
|
332
|
+
private readonly onRunComplete?;
|
|
333
|
+
private readonly onRunStarted?;
|
|
334
|
+
private readonly verifyWorkspaceLease?;
|
|
335
|
+
/** Drop sticky provider-auth ready when the CLI reports a clear sign-out. */
|
|
336
|
+
private readonly onProviderAuthFailure?;
|
|
337
|
+
private readonly backendKind;
|
|
338
|
+
pendingAskUserToolIds?: Set<string>;
|
|
339
|
+
private readonly emittedGeneratedImageKeys;
|
|
340
|
+
private readonly emittedSessionMediaKeys;
|
|
341
|
+
private readonly toolNamesById;
|
|
342
|
+
private readonly toolInputsById;
|
|
343
|
+
private readonly browserRecordingPathHints;
|
|
344
|
+
private applicationProblem;
|
|
345
|
+
private terminalFenced;
|
|
346
|
+
constructor(socket: Socket, conversationId: string, runId: string, eventOutbox: EncryptedEventOutbox, cwd?: string | undefined, touchRunnerActivity?: (() => void) | undefined, onRunComplete?: (() => void) | undefined, onRunStarted?: (() => void) | undefined, verifyWorkspaceLease?: (() => boolean) | undefined,
|
|
347
|
+
/** Drop sticky provider-auth ready when the CLI reports a clear sign-out. */
|
|
348
|
+
onProviderAuthFailure?: (() => void) | undefined, backendKind?: string);
|
|
349
|
+
private emitEvent;
|
|
350
|
+
failWorkspaceLease(failure: WorkspaceRunLeaseFailure): boolean;
|
|
351
|
+
failApplicationProblem(input: {
|
|
352
|
+
code: ApplicationProblemCode;
|
|
353
|
+
detail: string;
|
|
354
|
+
component: string;
|
|
355
|
+
phase: "dispatch" | "delivery";
|
|
356
|
+
}): boolean;
|
|
357
|
+
isTerminalFenced(): boolean;
|
|
358
|
+
onStart(config: AgentConfig): void;
|
|
359
|
+
onLog(message: string): void;
|
|
360
|
+
onNotice(kind: string, message: string): void;
|
|
361
|
+
onAssistantText(text: string, parentToolUseId?: string | null): void;
|
|
362
|
+
onThinking(text: string, parentToolUseId?: string | null): void;
|
|
363
|
+
onToolUse(tool: string, input: unknown, toolId: string, parentToolUseId?: string | null): void;
|
|
364
|
+
onToolResult(toolId: string, content: string, isError?: boolean, parentToolUseId?: string | null): void;
|
|
365
|
+
onGeneratedImage(image: GeneratedImagePayload): void;
|
|
366
|
+
private emitGeneratedImage;
|
|
367
|
+
onSessionMedia(media: SessionMediaPayload): void;
|
|
368
|
+
private emitSessionMedia;
|
|
369
|
+
onTurnComplete(content: unknown[]): void;
|
|
370
|
+
onUsageUpdate(usage: UsageUpdate): void;
|
|
371
|
+
onAskUser(id: string, questions: unknown[]): void;
|
|
372
|
+
onTodoWrite(todos: unknown[]): void;
|
|
373
|
+
onExitPlanMode(id: string, input: ExitPlanModeInput, planFilePath?: string): void;
|
|
374
|
+
onCheckpoint(id: string): void;
|
|
375
|
+
onActivity(status: string, evidence?: AgentActivityEvidence): void;
|
|
376
|
+
onOpenBrowserTab(browserId: string, url?: string): void;
|
|
377
|
+
recordRawTranscript(): void;
|
|
378
|
+
onError(message: string, isAgentError?: boolean): void;
|
|
379
|
+
onComplete(result: AgentResult): void;
|
|
380
|
+
}
|
|
381
|
+
export declare function setupDaemon(args: string[]): Promise<void>;
|
|
382
|
+
export declare function loginWithDeviceCode(args: string[]): Promise<void>;
|
|
383
|
+
export declare function startDaemon(args: string[]): Promise<DaemonController>;
|
|
384
|
+
export declare function stopDaemon(args: string[]): Promise<void>;
|
|
385
|
+
export declare function runDaemon(args: string[]): Promise<void>;
|
|
386
|
+
export declare function recoverDaemonConnection(args?: string[], options?: LocalDaemonRecoveryOptions): Promise<LocalDaemonRecoveryStatus>;
|
|
387
|
+
export declare function rotateRuntimeToken(args: string[]): Promise<void>;
|
|
388
|
+
export declare function revokeRuntimeToken(args: string[]): Promise<void>;
|
|
389
|
+
export declare function logoutDaemon(args?: string[]): Promise<void>;
|
|
390
|
+
export declare function printStatus(args?: string[]): Promise<void>;
|
|
391
|
+
export declare function printDoctor(args?: string[]): Promise<void>;
|
|
392
|
+
//# sourceMappingURL=daemon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
|