@getpaseo/server 0.1.59 → 0.1.61
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/scripts/dev-runner.js +26 -7
- package/dist/scripts/dev-runner.js.map +1 -1
- package/dist/server/client/daemon-client-runtime-metrics.d.ts +39 -0
- package/dist/server/client/daemon-client-runtime-metrics.d.ts.map +1 -0
- package/dist/server/client/daemon-client-runtime-metrics.js +173 -0
- package/dist/server/client/daemon-client-runtime-metrics.js.map +1 -0
- package/dist/server/client/daemon-client.d.ts +58 -9
- package/dist/server/client/daemon-client.d.ts.map +1 -1
- package/dist/server/client/daemon-client.js +151 -10
- package/dist/server/client/daemon-client.js.map +1 -1
- package/dist/server/server/agent/agent-manager.d.ts +55 -48
- package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
- package/dist/server/server/agent/agent-manager.js +541 -331
- package/dist/server/server/agent/agent-manager.js.map +1 -1
- package/dist/server/server/agent/agent-metadata-generator.d.ts +3 -2
- package/dist/server/server/agent/agent-metadata-generator.d.ts.map +1 -1
- package/dist/server/server/agent/agent-metadata-generator.js +31 -16
- package/dist/server/server/agent/agent-metadata-generator.js.map +1 -1
- package/dist/server/server/agent/agent-projections.d.ts +2 -1
- package/dist/server/server/agent/agent-projections.d.ts.map +1 -1
- package/dist/server/server/agent/agent-projections.js +29 -1
- package/dist/server/server/agent/agent-projections.js.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.d.ts +9 -5
- package/dist/server/server/agent/agent-sdk-types.d.ts.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.js.map +1 -1
- package/dist/server/server/agent/agent-storage.d.ts +76 -69
- package/dist/server/server/agent/agent-storage.d.ts.map +1 -1
- package/dist/server/server/agent/agent-storage.js +13 -6
- package/dist/server/server/agent/agent-storage.js.map +1 -1
- package/dist/server/server/agent/agent-stream-coalescer.d.ts +41 -0
- package/dist/server/server/agent/agent-stream-coalescer.d.ts.map +1 -0
- package/dist/server/server/agent/agent-stream-coalescer.js +166 -0
- package/dist/server/server/agent/agent-stream-coalescer.js.map +1 -0
- package/dist/server/server/agent/agent-timeline-store-types.d.ts +54 -0
- package/dist/server/server/agent/agent-timeline-store-types.d.ts.map +1 -0
- package/dist/server/server/agent/agent-timeline-store-types.js +2 -0
- package/dist/server/server/agent/agent-timeline-store-types.js.map +1 -0
- package/dist/server/server/agent/agent-timeline-store.d.ts +32 -0
- package/dist/server/server/agent/agent-timeline-store.d.ts.map +1 -0
- package/dist/server/server/agent/agent-timeline-store.js +245 -0
- package/dist/server/server/agent/agent-timeline-store.js.map +1 -0
- package/dist/server/server/agent/mcp-server.d.ts +12 -1
- package/dist/server/server/agent/mcp-server.d.ts.map +1 -1
- package/dist/server/server/agent/mcp-server.js +276 -65
- package/dist/server/server/agent/mcp-server.js.map +1 -1
- package/dist/server/server/agent/mcp-shared.d.ts +196 -152
- package/dist/server/server/agent/mcp-shared.d.ts.map +1 -1
- package/dist/server/server/agent/mcp-shared.js +40 -42
- package/dist/server/server/agent/mcp-shared.js.map +1 -1
- package/dist/server/server/agent/model-resolver.d.ts.map +1 -1
- package/dist/server/server/agent/model-resolver.js +3 -1
- package/dist/server/server/agent/model-resolver.js.map +1 -1
- package/dist/server/server/agent/prompt-attachments.d.ts +6 -0
- package/dist/server/server/agent/prompt-attachments.d.ts.map +1 -0
- package/dist/server/server/agent/prompt-attachments.js +31 -0
- package/dist/server/server/agent/prompt-attachments.js.map +1 -0
- package/dist/server/server/agent/provider-launch-config.d.ts +78 -8
- package/dist/server/server/agent/provider-launch-config.d.ts.map +1 -1
- package/dist/server/server/agent/provider-launch-config.js +35 -0
- package/dist/server/server/agent/provider-launch-config.js.map +1 -1
- package/dist/server/server/agent/provider-manifest.d.ts +1 -0
- package/dist/server/server/agent/provider-manifest.d.ts.map +1 -1
- package/dist/server/server/agent/provider-manifest.js +22 -1
- package/dist/server/server/agent/provider-manifest.js.map +1 -1
- package/dist/server/server/agent/provider-registry.d.ts +5 -2
- package/dist/server/server/agent/provider-registry.d.ts.map +1 -1
- package/dist/server/server/agent/provider-registry.js +61 -17
- package/dist/server/server/agent/provider-registry.js.map +1 -1
- package/dist/server/server/agent/provider-snapshot-manager.d.ts +17 -5
- package/dist/server/server/agent/provider-snapshot-manager.d.ts.map +1 -1
- package/dist/server/server/agent/provider-snapshot-manager.js +150 -61
- package/dist/server/server/agent/provider-snapshot-manager.js.map +1 -1
- package/dist/server/server/agent/providers/acp-agent.d.ts +8 -4
- package/dist/server/server/agent/providers/acp-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/acp-agent.js +73 -8
- package/dist/server/server/agent/providers/acp-agent.js.map +1 -1
- package/dist/server/server/agent/providers/claude/task-notification-tool-call.d.ts +2 -2
- package/dist/server/server/agent/providers/claude-agent.d.ts +1 -1
- package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/claude-agent.js +8 -7
- package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +37 -4
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.js +61 -31
- package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
- package/dist/server/server/agent/providers/copilot-acp-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/copilot-acp-agent.js +3 -2
- package/dist/server/server/agent/providers/copilot-acp-agent.js.map +1 -1
- package/dist/server/server/agent/providers/mock-load-test-agent.d.ts +64 -0
- package/dist/server/server/agent/providers/mock-load-test-agent.d.ts.map +1 -0
- package/dist/server/server/agent/providers/mock-load-test-agent.js +585 -0
- package/dist/server/server/agent/providers/mock-load-test-agent.js.map +1 -0
- package/dist/server/server/agent/providers/opencode-agent.d.ts +19 -4
- package/dist/server/server/agent/providers/opencode-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode-agent.js +227 -118
- package/dist/server/server/agent/providers/opencode-agent.js.map +1 -1
- package/dist/server/server/agent/providers/pi-direct-agent.d.ts +69 -0
- package/dist/server/server/agent/providers/pi-direct-agent.d.ts.map +1 -0
- package/dist/server/server/agent/providers/pi-direct-agent.js +1171 -0
- package/dist/server/server/agent/providers/pi-direct-agent.js.map +1 -0
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +7 -4
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts.map +1 -1
- package/dist/server/server/agent-attention-policy.d.ts +13 -13
- package/dist/server/server/agent-attention-policy.d.ts.map +1 -1
- package/dist/server/server/agent-attention-policy.js +20 -36
- package/dist/server/server/agent-attention-policy.js.map +1 -1
- package/dist/server/server/bootstrap.d.ts +6 -0
- package/dist/server/server/bootstrap.d.ts.map +1 -1
- package/dist/server/server/bootstrap.js +113 -11
- package/dist/server/server/bootstrap.js.map +1 -1
- package/dist/server/server/chat/chat-rpc-schemas.d.ts +44 -44
- package/dist/server/server/chat/chat-types.d.ts +6 -6
- package/dist/server/server/checkout-diff-manager.d.ts +0 -1
- package/dist/server/server/checkout-diff-manager.d.ts.map +1 -1
- package/dist/server/server/checkout-diff-manager.js +6 -4
- package/dist/server/server/checkout-diff-manager.js.map +1 -1
- package/dist/server/server/config.d.ts.map +1 -1
- package/dist/server/server/config.js +1 -0
- package/dist/server/server/config.js.map +1 -1
- package/dist/server/server/file-explorer/service.d.ts.map +1 -1
- package/dist/server/server/file-explorer/service.js +2 -1
- package/dist/server/server/file-explorer/service.js.map +1 -1
- package/dist/server/server/loop/rpc-schemas.d.ts +392 -392
- package/dist/server/server/loop-service.d.ts +52 -52
- package/dist/server/server/paseo-worktree-archive-service.d.ts +41 -0
- package/dist/server/server/paseo-worktree-archive-service.d.ts.map +1 -0
- package/dist/server/server/paseo-worktree-archive-service.js +137 -0
- package/dist/server/server/paseo-worktree-archive-service.js.map +1 -0
- package/dist/server/server/paseo-worktree-service.d.ts +24 -0
- package/dist/server/server/paseo-worktree-service.d.ts.map +1 -0
- package/dist/server/server/paseo-worktree-service.js +94 -0
- package/dist/server/server/paseo-worktree-service.js.map +1 -0
- package/dist/server/server/path-utils.d.ts +1 -0
- package/dist/server/server/path-utils.d.ts.map +1 -1
- package/dist/server/server/path-utils.js +9 -0
- package/dist/server/server/path-utils.js.map +1 -1
- package/dist/server/server/persisted-config.d.ts +195 -67
- package/dist/server/server/persisted-config.d.ts.map +1 -1
- package/dist/server/server/persistence-hooks.d.ts.map +1 -1
- package/dist/server/server/persistence-hooks.js +3 -0
- package/dist/server/server/persistence-hooks.js.map +1 -1
- package/dist/server/server/resolve-worktree-creation-intent.d.ts +30 -0
- package/dist/server/server/resolve-worktree-creation-intent.d.ts.map +1 -0
- package/dist/server/server/resolve-worktree-creation-intent.js +163 -0
- package/dist/server/server/resolve-worktree-creation-intent.js.map +1 -0
- package/dist/server/server/schedule/rpc-schemas.d.ts +192 -192
- package/dist/server/server/schedule/service.d.ts +1 -1
- package/dist/server/server/schedule/service.d.ts.map +1 -1
- package/dist/server/server/schedule/types.d.ts +44 -44
- package/dist/server/server/script-health-monitor.d.ts +39 -0
- package/dist/server/server/script-health-monitor.d.ts.map +1 -0
- package/dist/server/server/script-health-monitor.js +158 -0
- package/dist/server/server/script-health-monitor.js.map +1 -0
- package/dist/server/server/script-proxy.d.ts +40 -0
- package/dist/server/server/script-proxy.d.ts.map +1 -0
- package/dist/server/server/script-proxy.js +245 -0
- package/dist/server/server/script-proxy.js.map +1 -0
- package/dist/server/server/script-route-branch-handler.d.ts +10 -0
- package/dist/server/server/script-route-branch-handler.d.ts.map +1 -0
- package/dist/server/server/script-route-branch-handler.js +45 -0
- package/dist/server/server/script-route-branch-handler.js.map +1 -0
- package/dist/server/server/script-status-projection.d.ts +29 -0
- package/dist/server/server/script-status-projection.d.ts.map +1 -0
- package/dist/server/server/script-status-projection.js +133 -0
- package/dist/server/server/script-status-projection.js.map +1 -0
- package/dist/server/server/session.d.ts +77 -13
- package/dist/server/server/session.d.ts.map +1 -1
- package/dist/server/server/session.js +1290 -548
- package/dist/server/server/session.js.map +1 -1
- package/dist/server/server/websocket-server.d.ts +27 -3
- package/dist/server/server/websocket-server.d.ts.map +1 -1
- package/dist/server/server/websocket-server.js +112 -29
- package/dist/server/server/websocket-server.js.map +1 -1
- package/dist/server/server/workspace-archive-service.d.ts +8 -0
- package/dist/server/server/workspace-archive-service.d.ts.map +1 -0
- package/dist/server/server/workspace-archive-service.js +17 -0
- package/dist/server/server/workspace-archive-service.js.map +1 -0
- package/dist/server/server/workspace-git-metadata.d.ts +24 -0
- package/dist/server/server/workspace-git-metadata.d.ts.map +1 -0
- package/dist/server/server/workspace-git-metadata.js +78 -0
- package/dist/server/server/workspace-git-metadata.js.map +1 -0
- package/dist/server/server/workspace-git-service.d.ts +104 -5
- package/dist/server/server/workspace-git-service.d.ts.map +1 -1
- package/dist/server/server/workspace-git-service.js +442 -56
- package/dist/server/server/workspace-git-service.js.map +1 -1
- package/dist/server/server/workspace-reconciliation-service.d.ts +54 -0
- package/dist/server/server/workspace-reconciliation-service.d.ts.map +1 -0
- package/dist/server/server/workspace-reconciliation-service.js +176 -0
- package/dist/server/server/workspace-reconciliation-service.js.map +1 -0
- package/dist/server/server/workspace-registry-bootstrap.d.ts.map +1 -1
- package/dist/server/server/workspace-registry-bootstrap.js +4 -3
- package/dist/server/server/workspace-registry-bootstrap.js.map +1 -1
- package/dist/server/server/workspace-registry.d.ts +8 -8
- package/dist/server/server/workspace-registry.test-helpers.d.ts +37 -0
- package/dist/server/server/workspace-registry.test-helpers.d.ts.map +1 -0
- package/dist/server/server/workspace-registry.test-helpers.js +121 -0
- package/dist/server/server/workspace-registry.test-helpers.js.map +1 -0
- package/dist/server/server/workspace-script-runtime-store.d.ts +28 -0
- package/dist/server/server/workspace-script-runtime-store.d.ts.map +1 -0
- package/dist/server/server/workspace-script-runtime-store.js +78 -0
- package/dist/server/server/workspace-script-runtime-store.js.map +1 -0
- package/dist/server/server/workspace-service-env.d.ts +17 -0
- package/dist/server/server/workspace-service-env.d.ts.map +1 -0
- package/dist/server/server/workspace-service-env.js +80 -0
- package/dist/server/server/workspace-service-env.js.map +1 -0
- package/dist/server/server/workspace-service-port-registry.d.ts +19 -0
- package/dist/server/server/workspace-service-port-registry.d.ts.map +1 -0
- package/dist/server/server/workspace-service-port-registry.js +59 -0
- package/dist/server/server/workspace-service-port-registry.js.map +1 -0
- package/dist/server/server/worktree-bootstrap.d.ts +55 -10
- package/dist/server/server/worktree-bootstrap.d.ts.map +1 -1
- package/dist/server/server/worktree-bootstrap.js +290 -112
- package/dist/server/server/worktree-bootstrap.js.map +1 -1
- package/dist/server/server/worktree-core.d.ts +25 -0
- package/dist/server/server/worktree-core.d.ts.map +1 -0
- package/dist/server/server/worktree-core.js +75 -0
- package/dist/server/server/worktree-core.js.map +1 -0
- package/dist/server/server/worktree-errors.d.ts +12 -0
- package/dist/server/server/worktree-errors.d.ts.map +1 -0
- package/dist/server/server/worktree-errors.js +31 -0
- package/dist/server/server/worktree-errors.js.map +1 -0
- package/dist/server/server/worktree-session.d.ts +56 -70
- package/dist/server/server/worktree-session.d.ts.map +1 -1
- package/dist/server/server/worktree-session.js +176 -251
- package/dist/server/server/worktree-session.js.map +1 -1
- package/dist/server/services/github-service.d.ts +225 -0
- package/dist/server/services/github-service.d.ts.map +1 -0
- package/dist/server/services/github-service.js +1381 -0
- package/dist/server/services/github-service.js.map +1 -0
- package/dist/server/shared/messages.d.ts +29408 -12268
- package/dist/server/shared/messages.d.ts.map +1 -1
- package/dist/server/shared/messages.js +391 -65
- package/dist/server/shared/messages.js.map +1 -1
- package/dist/server/terminal/shell-integration/zsh/.zshenv +17 -0
- package/dist/server/terminal/shell-integration/zsh/paseo-integration.zsh +32 -0
- package/dist/server/terminal/terminal-manager.d.ts +9 -0
- package/dist/server/terminal/terminal-manager.d.ts.map +1 -1
- package/dist/server/terminal/terminal-manager.js +27 -0
- package/dist/server/terminal/terminal-manager.js.map +1 -1
- package/dist/server/terminal/terminal-output-coalescer.d.ts +30 -0
- package/dist/server/terminal/terminal-output-coalescer.d.ts.map +1 -0
- package/dist/server/terminal/terminal-output-coalescer.js +55 -0
- package/dist/server/terminal/terminal-output-coalescer.js.map +1 -0
- package/dist/server/terminal/terminal.d.ts +32 -1
- package/dist/server/terminal/terminal.d.ts.map +1 -1
- package/dist/server/terminal/terminal.js +397 -17
- package/dist/server/terminal/terminal.js.map +1 -1
- package/dist/server/utils/checkout-git.d.ts +63 -10
- package/dist/server/utils/checkout-git.d.ts.map +1 -1
- package/dist/server/utils/checkout-git.js +321 -229
- package/dist/server/utils/checkout-git.js.map +1 -1
- package/dist/server/utils/promise-timeout.d.ts +9 -0
- package/dist/server/utils/promise-timeout.d.ts.map +1 -0
- package/dist/server/utils/promise-timeout.js +25 -0
- package/dist/server/utils/promise-timeout.js.map +1 -0
- package/dist/server/utils/script-hostname.d.ts +8 -0
- package/dist/server/utils/script-hostname.d.ts.map +1 -0
- package/dist/server/utils/script-hostname.js +14 -0
- package/dist/server/utils/script-hostname.js.map +1 -0
- package/dist/server/utils/string-command-shell.d.ts +10 -0
- package/dist/server/utils/string-command-shell.d.ts.map +1 -0
- package/dist/server/utils/string-command-shell.js +21 -0
- package/dist/server/utils/string-command-shell.js.map +1 -0
- package/dist/server/utils/worktree.d.ts +54 -7
- package/dist/server/utils/worktree.d.ts.map +1 -1
- package/dist/server/utils/worktree.js +434 -129
- package/dist/server/utils/worktree.js.map +1 -1
- package/dist/src/terminal/shell-integration/zsh/.zshenv +17 -0
- package/dist/src/terminal/shell-integration/zsh/paseo-integration.zsh +32 -0
- package/package.json +11 -14
- package/dist/server/server/agent/providers/pi-acp-agent.d.ts +0 -28
- package/dist/server/server/agent/providers/pi-acp-agent.d.ts.map +0 -1
- package/dist/server/server/agent/providers/pi-acp-agent.js +0 -302
- package/dist/server/server/agent/providers/pi-acp-agent.js.map +0 -1
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import type { Logger } from "pino";
|
|
2
2
|
import type { AgentProvider, ProviderSnapshotEntry } from "./agent-sdk-types.js";
|
|
3
3
|
import type { ProviderDefinition } from "./provider-registry.js";
|
|
4
|
-
type ProviderSnapshotChangeListener = (entries: ProviderSnapshotEntry[], cwd
|
|
4
|
+
type ProviderSnapshotChangeListener = (entries: ProviderSnapshotEntry[], cwd: string) => void;
|
|
5
5
|
type ProviderSnapshotManagerOptions = {
|
|
6
6
|
ttlMs?: number;
|
|
7
|
+
refreshTimeoutMs?: number;
|
|
7
8
|
now?: () => number;
|
|
8
9
|
};
|
|
9
10
|
type ProviderSnapshotRefreshOptions = {
|
|
10
|
-
cwd
|
|
11
|
+
cwd: string;
|
|
11
12
|
providers?: AgentProvider[];
|
|
12
13
|
};
|
|
13
14
|
export declare class ProviderSnapshotManager {
|
|
@@ -15,20 +16,30 @@ export declare class ProviderSnapshotManager {
|
|
|
15
16
|
private readonly logger;
|
|
16
17
|
private readonly snapshots;
|
|
17
18
|
private readonly lastCheckedAts;
|
|
18
|
-
private readonly
|
|
19
|
+
private readonly providerLoads;
|
|
19
20
|
private readonly events;
|
|
20
21
|
private destroyed;
|
|
21
22
|
private readonly ttlMs;
|
|
23
|
+
private readonly refreshTimeoutMs;
|
|
22
24
|
private readonly now;
|
|
23
25
|
constructor(providerRegistry: Record<AgentProvider, ProviderDefinition>, logger: Logger, options?: ProviderSnapshotManagerOptions);
|
|
24
|
-
getSnapshot(
|
|
25
|
-
|
|
26
|
+
getSnapshot(_cwd?: string): ProviderSnapshotEntry[];
|
|
27
|
+
refreshSnapshotForCwd(options: ProviderSnapshotRefreshOptions): Promise<void>;
|
|
28
|
+
refreshSettingsSnapshot(options?: Omit<ProviderSnapshotRefreshOptions, "cwd">): Promise<void>;
|
|
29
|
+
warmUpSnapshotForCwd(options: ProviderSnapshotRefreshOptions): Promise<void>;
|
|
30
|
+
refresh(options: ProviderSnapshotRefreshOptions): Promise<void>;
|
|
26
31
|
on(event: "change", listener: ProviderSnapshotChangeListener): this;
|
|
27
32
|
off(event: "change", listener: ProviderSnapshotChangeListener): this;
|
|
28
33
|
destroy(): void;
|
|
29
34
|
private createLoadingEntries;
|
|
30
35
|
private warmUp;
|
|
36
|
+
private refreshProviders;
|
|
37
|
+
private loadProviders;
|
|
38
|
+
private loadProvider;
|
|
31
39
|
private refreshProvider;
|
|
40
|
+
private getProviderLoad;
|
|
41
|
+
private setProviderLoad;
|
|
42
|
+
private isCurrentProviderLoad;
|
|
32
43
|
private emitChange;
|
|
33
44
|
private shouldRevalidate;
|
|
34
45
|
private getOrCreateSnapshot;
|
|
@@ -36,5 +47,6 @@ export declare class ProviderSnapshotManager {
|
|
|
36
47
|
private getProviderIds;
|
|
37
48
|
private resolveRefreshProviders;
|
|
38
49
|
}
|
|
50
|
+
export declare function resolveSnapshotCwd(cwd?: string | null): string;
|
|
39
51
|
export {};
|
|
40
52
|
//# sourceMappingURL=provider-snapshot-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-snapshot-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/agent/provider-snapshot-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"provider-snapshot-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/agent/provider-snapshot-manager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAGnC,OAAO,KAAK,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAKjE,KAAK,8BAA8B,GAAG,CAAC,OAAO,EAAE,qBAAqB,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;AAC9F,KAAK,8BAA8B,GAAG;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB,CAAC;AACF,KAAK,8BAA8B,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC;CAC7B,CAAC;AAUF,qBAAa,uBAAuB;IAWhC,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IACjC,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgE;IAC1F,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA6B;IAC5D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuD;IACrF,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsB;IAC7C,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAe;gBAGhB,gBAAgB,EAAE,MAAM,CAAC,aAAa,EAAE,kBAAkB,CAAC,EAC3D,MAAM,EAAE,MAAM,EAC/B,OAAO,GAAE,8BAAmC;IAO9C,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,qBAAqB,EAAE;IA0B7C,qBAAqB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAW7E,uBAAuB,CAC3B,OAAO,GAAE,IAAI,CAAC,8BAA8B,EAAE,KAAK,CAAM,GACxD,OAAO,CAAC,IAAI,CAAC;IAaV,oBAAoB,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAoB5E,OAAO,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrE,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,8BAA8B,GAAG,IAAI;IAKnE,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,8BAA8B,GAAG,IAAI;IAKpE,OAAO,IAAI,IAAI;IAQf,OAAO,CAAC,oBAAoB;YAed,MAAM;YAaN,gBAAgB;YAIhB,aAAa;IAM3B,OAAO,CAAC,YAAY;YAqCN,eAAe;IAwE7B,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,eAAe;IASvB,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,UAAU;IAWlB,OAAO,CAAC,gBAAgB;IAWxB,OAAO,CAAC,mBAAmB;IAW3B,OAAO,CAAC,sBAAsB;IA6B9B,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,uBAAuB;CAQhC;AAED,wBAAgB,kBAAkB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAQ9D"}
|
|
@@ -1,44 +1,88 @@
|
|
|
1
1
|
import { EventEmitter } from "node:events";
|
|
2
|
+
import { homedir } from "node:os";
|
|
2
3
|
import { resolve } from "node:path";
|
|
3
|
-
|
|
4
|
+
import { withTimeout } from "../../utils/promise-timeout.js";
|
|
4
5
|
const DEFAULT_SNAPSHOT_TTL_MS = 300000;
|
|
6
|
+
const DEFAULT_REFRESH_TIMEOUT_MS = 30000;
|
|
5
7
|
export class ProviderSnapshotManager {
|
|
6
8
|
constructor(providerRegistry, logger, options = {}) {
|
|
7
9
|
this.providerRegistry = providerRegistry;
|
|
8
10
|
this.logger = logger;
|
|
9
11
|
this.snapshots = new Map();
|
|
10
12
|
this.lastCheckedAts = new Map();
|
|
11
|
-
this.
|
|
13
|
+
this.providerLoads = new Map();
|
|
12
14
|
this.events = new EventEmitter();
|
|
13
15
|
this.destroyed = false;
|
|
14
16
|
this.ttlMs = options.ttlMs ?? DEFAULT_SNAPSHOT_TTL_MS;
|
|
17
|
+
this.refreshTimeoutMs = options.refreshTimeoutMs ?? DEFAULT_REFRESH_TIMEOUT_MS;
|
|
15
18
|
this.now = options.now ?? Date.now;
|
|
16
19
|
}
|
|
17
|
-
getSnapshot(
|
|
18
|
-
const
|
|
19
|
-
const entries = this.snapshots.get(
|
|
20
|
+
getSnapshot(_cwd) {
|
|
21
|
+
const resolvedCwd = resolveGlobalSnapshotCwd();
|
|
22
|
+
const entries = this.snapshots.get(resolvedCwd);
|
|
20
23
|
if (!entries) {
|
|
21
|
-
const loadingEntries = this.resetSnapshotToLoading(
|
|
22
|
-
void this.warmUp(
|
|
24
|
+
const loadingEntries = this.resetSnapshotToLoading(resolvedCwd);
|
|
25
|
+
void this.warmUp(resolvedCwd);
|
|
23
26
|
return entriesToArray(loadingEntries);
|
|
24
27
|
}
|
|
25
|
-
|
|
26
|
-
|
|
28
|
+
const missingProviders = this.getProviderIds().filter((provider) => !entries.has(provider));
|
|
29
|
+
if (missingProviders.length > 0) {
|
|
30
|
+
this.resetSnapshotToLoading(resolvedCwd, missingProviders);
|
|
31
|
+
void this.warmUp(resolvedCwd, missingProviders);
|
|
32
|
+
}
|
|
33
|
+
const providerLoads = this.providerLoads.get(resolvedCwd);
|
|
34
|
+
const loadingProviders = Array.from(entries.values())
|
|
35
|
+
.filter((entry) => entry.status === "loading" && !providerLoads?.has(entry.provider))
|
|
36
|
+
.map((entry) => entry.provider);
|
|
37
|
+
if (loadingProviders.length > 0) {
|
|
38
|
+
void this.warmUp(resolvedCwd, loadingProviders);
|
|
39
|
+
}
|
|
40
|
+
if (this.shouldRevalidate(resolvedCwd)) {
|
|
41
|
+
void this.warmUp(resolvedCwd);
|
|
27
42
|
}
|
|
28
43
|
return entriesToArray(entries);
|
|
29
44
|
}
|
|
30
|
-
async
|
|
31
|
-
const
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
45
|
+
async refreshSnapshotForCwd(options) {
|
|
46
|
+
const snapshotCwd = resolveGlobalSnapshotCwd();
|
|
47
|
+
const providers = this.resolveRefreshProviders(options.providers);
|
|
48
|
+
this.resetSnapshotToLoading(snapshotCwd, providers);
|
|
49
|
+
this.emitChange(snapshotCwd);
|
|
50
|
+
await this.refreshProviders(snapshotCwd, providers ?? this.getProviderIds());
|
|
51
|
+
if (!providers) {
|
|
52
|
+
this.lastCheckedAts.set(snapshotCwd, this.now());
|
|
37
53
|
}
|
|
54
|
+
}
|
|
55
|
+
async refreshSettingsSnapshot(options = {}) {
|
|
56
|
+
const homeCwd = resolveGlobalSnapshotCwd();
|
|
38
57
|
const providers = this.resolveRefreshProviders(options.providers);
|
|
39
|
-
this.
|
|
40
|
-
this.
|
|
41
|
-
|
|
58
|
+
const providersToRefresh = providers ?? this.getProviderIds();
|
|
59
|
+
this.resetSnapshotToLoading(homeCwd, providers);
|
|
60
|
+
this.emitChange(homeCwd);
|
|
61
|
+
await this.refreshProviders(homeCwd, providersToRefresh);
|
|
62
|
+
if (!providers) {
|
|
63
|
+
this.lastCheckedAts.set(homeCwd, this.now());
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
async warmUpSnapshotForCwd(options) {
|
|
67
|
+
const snapshotCwd = resolveGlobalSnapshotCwd();
|
|
68
|
+
const providers = this.resolveRefreshProviders(options.providers);
|
|
69
|
+
if (options.providers && providers?.length === 0) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const snapshot = this.snapshots.get(snapshotCwd);
|
|
73
|
+
if (!snapshot) {
|
|
74
|
+
this.resetSnapshotToLoading(snapshotCwd, providers);
|
|
75
|
+
}
|
|
76
|
+
else if (providers) {
|
|
77
|
+
const missingProviders = providers.filter((provider) => !snapshot.has(provider));
|
|
78
|
+
if (missingProviders.length > 0) {
|
|
79
|
+
this.resetSnapshotToLoading(snapshotCwd, missingProviders);
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
await this.warmUp(snapshotCwd, providers);
|
|
83
|
+
}
|
|
84
|
+
async refresh(options) {
|
|
85
|
+
await this.refreshSnapshotForCwd(options);
|
|
42
86
|
}
|
|
43
87
|
on(event, listener) {
|
|
44
88
|
this.events.on(event, listener);
|
|
@@ -53,7 +97,7 @@ export class ProviderSnapshotManager {
|
|
|
53
97
|
this.events.removeAllListeners();
|
|
54
98
|
this.snapshots.clear();
|
|
55
99
|
this.lastCheckedAts.clear();
|
|
56
|
-
this.
|
|
100
|
+
this.providerLoads.clear();
|
|
57
101
|
}
|
|
58
102
|
createLoadingEntries() {
|
|
59
103
|
const entries = new Map();
|
|
@@ -70,37 +114,64 @@ export class ProviderSnapshotManager {
|
|
|
70
114
|
return entries;
|
|
71
115
|
}
|
|
72
116
|
async warmUp(cwd, providers) {
|
|
73
|
-
const cwdKey = normalizeCwdKey(cwd);
|
|
74
|
-
const inFlight = this.warmUps.get(cwdKey);
|
|
75
|
-
if (inFlight) {
|
|
76
|
-
return inFlight;
|
|
77
|
-
}
|
|
78
117
|
const providersToRefresh = providers ?? this.getProviderIds();
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
118
|
+
await this.loadProviders({
|
|
119
|
+
cwd,
|
|
120
|
+
providers: providersToRefresh,
|
|
121
|
+
force: false,
|
|
83
122
|
});
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
await warmUpPromise;
|
|
87
|
-
}
|
|
88
|
-
finally {
|
|
89
|
-
if (this.warmUps.get(cwdKey) === warmUpPromise) {
|
|
90
|
-
this.warmUps.delete(cwdKey);
|
|
91
|
-
}
|
|
123
|
+
if (!providers) {
|
|
124
|
+
this.lastCheckedAts.set(cwd, this.now());
|
|
92
125
|
}
|
|
93
126
|
}
|
|
94
|
-
async
|
|
95
|
-
|
|
127
|
+
async refreshProviders(cwd, providers) {
|
|
128
|
+
await this.loadProviders({ cwd, providers, force: true });
|
|
129
|
+
}
|
|
130
|
+
async loadProviders(options) {
|
|
131
|
+
await Promise.allSettled(options.providers.map((provider) => this.loadProvider({ ...options, provider })));
|
|
132
|
+
}
|
|
133
|
+
loadProvider(options) {
|
|
134
|
+
const definition = this.providerRegistry[options.provider];
|
|
96
135
|
if (!definition) {
|
|
97
|
-
return;
|
|
136
|
+
return Promise.resolve();
|
|
98
137
|
}
|
|
99
|
-
const
|
|
138
|
+
const existingLoad = this.getProviderLoad(options.cwd, options.provider);
|
|
139
|
+
if (existingLoad && !options.force) {
|
|
140
|
+
return existingLoad.promise;
|
|
141
|
+
}
|
|
142
|
+
const load = {
|
|
143
|
+
promise: Promise.resolve(),
|
|
144
|
+
};
|
|
145
|
+
this.setProviderLoad(options.cwd, options.provider, load);
|
|
146
|
+
load.promise = Promise.resolve()
|
|
147
|
+
.then(() => this.refreshProvider({
|
|
148
|
+
cwd: options.cwd,
|
|
149
|
+
provider: options.provider,
|
|
150
|
+
definition,
|
|
151
|
+
load,
|
|
152
|
+
force: options.force,
|
|
153
|
+
}))
|
|
154
|
+
.finally(() => {
|
|
155
|
+
const providerLoads = this.providerLoads.get(options.cwd);
|
|
156
|
+
if (providerLoads?.get(options.provider) === load) {
|
|
157
|
+
providerLoads.delete(options.provider);
|
|
158
|
+
}
|
|
159
|
+
if (providerLoads?.size === 0) {
|
|
160
|
+
this.providerLoads.delete(options.cwd);
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
return load.promise;
|
|
164
|
+
}
|
|
165
|
+
async refreshProvider(options) {
|
|
166
|
+
const { cwd, provider, definition, load, force } = options;
|
|
167
|
+
const snapshot = this.getOrCreateSnapshot(options.cwd);
|
|
100
168
|
try {
|
|
101
169
|
const client = definition.createClient(this.logger);
|
|
102
|
-
const available = await client.isAvailable();
|
|
170
|
+
const available = await withTimeout(client.isAvailable(), this.refreshTimeoutMs, `Timed out checking ${definition.label} availability after ${this.refreshTimeoutMs}ms`);
|
|
103
171
|
if (!available) {
|
|
172
|
+
if (!this.isCurrentProviderLoad(cwd, provider, load)) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
104
175
|
snapshot.set(provider, {
|
|
105
176
|
provider,
|
|
106
177
|
status: "unavailable",
|
|
@@ -108,13 +179,16 @@ export class ProviderSnapshotManager {
|
|
|
108
179
|
description: definition.description,
|
|
109
180
|
defaultModeId: definition.defaultModeId,
|
|
110
181
|
});
|
|
111
|
-
this.emitChange(
|
|
182
|
+
this.emitChange(cwd);
|
|
183
|
+
return;
|
|
184
|
+
}
|
|
185
|
+
const [models, modes] = await withTimeout(Promise.all([
|
|
186
|
+
definition.fetchModels({ cwd, force }),
|
|
187
|
+
definition.fetchModes({ cwd, force }),
|
|
188
|
+
]), this.refreshTimeoutMs, `Timed out refreshing ${definition.label} after ${this.refreshTimeoutMs}ms`);
|
|
189
|
+
if (!this.isCurrentProviderLoad(cwd, provider, load)) {
|
|
112
190
|
return;
|
|
113
191
|
}
|
|
114
|
-
const [models, modes] = await Promise.all([
|
|
115
|
-
definition.fetchModels({ cwd }),
|
|
116
|
-
definition.fetchModes({ cwd }),
|
|
117
|
-
]);
|
|
118
192
|
snapshot.set(provider, {
|
|
119
193
|
provider,
|
|
120
194
|
status: "ready",
|
|
@@ -125,9 +199,12 @@ export class ProviderSnapshotManager {
|
|
|
125
199
|
description: definition.description,
|
|
126
200
|
defaultModeId: definition.defaultModeId,
|
|
127
201
|
});
|
|
128
|
-
this.emitChange(
|
|
202
|
+
this.emitChange(cwd);
|
|
129
203
|
}
|
|
130
204
|
catch (error) {
|
|
205
|
+
if (!this.isCurrentProviderLoad(cwd, provider, load)) {
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
131
208
|
snapshot.set(provider, {
|
|
132
209
|
provider,
|
|
133
210
|
status: "error",
|
|
@@ -136,10 +213,24 @@ export class ProviderSnapshotManager {
|
|
|
136
213
|
description: definition.description,
|
|
137
214
|
defaultModeId: definition.defaultModeId,
|
|
138
215
|
});
|
|
139
|
-
this.logger.warn({ err: error, provider, cwd
|
|
140
|
-
this.emitChange(
|
|
216
|
+
this.logger.warn({ err: error, provider, cwd }, "Failed to refresh provider snapshot");
|
|
217
|
+
this.emitChange(cwd);
|
|
141
218
|
}
|
|
142
219
|
}
|
|
220
|
+
getProviderLoad(cwdKey, provider) {
|
|
221
|
+
return this.providerLoads.get(cwdKey)?.get(provider);
|
|
222
|
+
}
|
|
223
|
+
setProviderLoad(cwdKey, provider, load) {
|
|
224
|
+
let providerLoads = this.providerLoads.get(cwdKey);
|
|
225
|
+
if (!providerLoads) {
|
|
226
|
+
providerLoads = new Map();
|
|
227
|
+
this.providerLoads.set(cwdKey, providerLoads);
|
|
228
|
+
}
|
|
229
|
+
providerLoads.set(provider, load);
|
|
230
|
+
}
|
|
231
|
+
isCurrentProviderLoad(cwdKey, provider, load) {
|
|
232
|
+
return this.providerLoads.get(cwdKey)?.get(provider) === load;
|
|
233
|
+
}
|
|
143
234
|
emitChange(cwdKey) {
|
|
144
235
|
if (this.destroyed) {
|
|
145
236
|
return;
|
|
@@ -148,10 +239,10 @@ export class ProviderSnapshotManager {
|
|
|
148
239
|
if (!snapshot) {
|
|
149
240
|
return;
|
|
150
241
|
}
|
|
151
|
-
this.events.emit("change", entriesToArray(snapshot),
|
|
242
|
+
this.events.emit("change", entriesToArray(snapshot), cwdKey);
|
|
152
243
|
}
|
|
153
244
|
shouldRevalidate(cwdKey) {
|
|
154
|
-
if (this.
|
|
245
|
+
if (this.providerLoads.has(cwdKey)) {
|
|
155
246
|
return false;
|
|
156
247
|
}
|
|
157
248
|
const lastCheckedAt = this.lastCheckedAts.get(cwdKey);
|
|
@@ -204,18 +295,16 @@ export class ProviderSnapshotManager {
|
|
|
204
295
|
return Array.from(new Set(providers)).filter((provider) => providerIds.has(provider));
|
|
205
296
|
}
|
|
206
297
|
}
|
|
207
|
-
function
|
|
208
|
-
|
|
209
|
-
return DEFAULT_CWD_KEY;
|
|
210
|
-
}
|
|
211
|
-
const trimmed = cwd.trim();
|
|
298
|
+
export function resolveSnapshotCwd(cwd) {
|
|
299
|
+
const trimmed = cwd?.trim();
|
|
212
300
|
if (!trimmed) {
|
|
213
|
-
return
|
|
301
|
+
return homedir();
|
|
214
302
|
}
|
|
215
|
-
|
|
303
|
+
const expanded = trimmed === "~" || trimmed.startsWith("~/") ? `${homedir()}${trimmed.slice(1)}` : trimmed;
|
|
304
|
+
return resolve(expanded);
|
|
216
305
|
}
|
|
217
|
-
function
|
|
218
|
-
return
|
|
306
|
+
function resolveGlobalSnapshotCwd() {
|
|
307
|
+
return resolveSnapshotCwd();
|
|
219
308
|
}
|
|
220
309
|
function entriesToArray(entries) {
|
|
221
310
|
return Array.from(entries.values(), cloneEntry);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-snapshot-manager.js","sourceRoot":"","sources":["../../../../src/server/agent/provider-snapshot-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provider-snapshot-manager.js","sourceRoot":"","sources":["../../../../src/server/agent/provider-snapshot-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
import { type ChildProcessWithoutNullStreams } from "node:child_process";
|
|
2
|
-
import { ClientSideConnection, type Client as ACPClient, type CreateTerminalRequest, type InitializeResponse, type KillTerminalRequest, type LoadSessionResponse, type NewSessionResponse, type ReadTextFileRequest, type RequestPermissionRequest, type RequestPermissionResponse, type ResumeSessionResponse, type SessionConfigOption, type SessionMode, type SessionModelState, type SessionNotification, type TerminalOutputRequest, type TerminalOutputResponse, type ToolCallContent, type ToolCallLocation, type ToolCallStatus, type ToolKind, type Usage, type WaitForTerminalExitRequest, type WriteTextFileRequest } from "@agentclientprotocol/sdk";
|
|
2
|
+
import { ClientSideConnection, type Client as ACPClient, type CreateTerminalRequest, type InitializeResponse, type KillTerminalRequest, type LoadSessionResponse, type NewSessionResponse, type ReadTextFileRequest, type RequestPermissionRequest, type RequestPermissionResponse, type ResumeSessionResponse, type SessionConfigOption, type SessionMode, type SessionModelState, type SessionNotification, type TerminalOutputRequest, type TerminalOutputResponse, type ToolCallContent, type ToolCallLocation, type ToolCallStatus, type ToolKind, type Usage, type WaitForTerminalExitRequest, type WriteTextFileRequest, type Stream as ACPStream } from "@agentclientprotocol/sdk";
|
|
3
3
|
import type { Logger } from "pino";
|
|
4
4
|
import type { AgentCapabilityFlags, AgentClient, AgentLaunchContext, AgentMode, AgentModelDefinition, AgentPermissionRequest, AgentPermissionResponse, AgentPersistenceHandle, AgentPromptInput, AgentRunOptions, AgentRunResult, AgentRuntimeInfo, AgentSession, AgentSessionConfig, AgentSlashCommand, AgentStreamEvent, AgentUsage, ListModesOptions, ListModelsOptions, ListPersistedAgentsOptions, PersistedAgentDescriptor } from "../agent-sdk-types.js";
|
|
5
5
|
import { type ProviderRuntimeSettings } from "../provider-launch-config.js";
|
|
6
|
+
export declare function createLoggedNdJsonStream(output: WritableStream<Uint8Array>, input: ReadableStream<Uint8Array>, options: {
|
|
7
|
+
logger: Logger;
|
|
8
|
+
provider: string;
|
|
9
|
+
}): ACPStream;
|
|
6
10
|
type ACPAgentClientOptions = {
|
|
7
11
|
provider: string;
|
|
8
12
|
logger: Logger;
|
|
@@ -33,7 +37,7 @@ type ACPAgentSessionOptions = {
|
|
|
33
37
|
waitForInitialCommands?: boolean;
|
|
34
38
|
initialCommandsWaitTimeoutMs?: number;
|
|
35
39
|
};
|
|
36
|
-
type SpawnedACPProcess = {
|
|
40
|
+
export type SpawnedACPProcess = {
|
|
37
41
|
child: ChildProcessWithoutNullStreams;
|
|
38
42
|
connection: ClientSideConnection;
|
|
39
43
|
initialize: InitializeResponse;
|
|
@@ -78,8 +82,8 @@ export declare class ACPAgentClient implements AgentClient {
|
|
|
78
82
|
constructor(options: ACPAgentClientOptions);
|
|
79
83
|
createSession(config: AgentSessionConfig, launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
80
84
|
resumeSession(handle: AgentPersistenceHandle, overrides?: Partial<AgentSessionConfig>, launchContext?: AgentLaunchContext): Promise<AgentSession>;
|
|
81
|
-
listModels(options
|
|
82
|
-
listModes(options
|
|
85
|
+
listModels(options: ListModelsOptions): Promise<AgentModelDefinition[]>;
|
|
86
|
+
listModes(options: ListModesOptions): Promise<AgentMode[]>;
|
|
83
87
|
listPersistedAgents(options?: ListPersistedAgentsOptions): Promise<PersistedAgentDescriptor[]>;
|
|
84
88
|
isAvailable(): Promise<boolean>;
|
|
85
89
|
protected spawnProcess(launchEnv?: Record<string, string>): Promise<SpawnedACPProcess>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/acp-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,8BAA8B,EAAE,MAAM,oBAAoB,CAAC;AAK5F,OAAO,EACL,oBAAoB,EAIpB,KAAK,MAAM,IAAI,SAAS,EAIxB,KAAK,qBAAqB,EAG1B,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EAExB,KAAK,mBAAmB,EAExB,KAAK,kBAAkB,EAIvB,KAAK,mBAAmB,EACxB,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAExB,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,mBAAmB,EAExB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAE3B,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EAEnB,KAAK,QAAQ,EACb,KAAK,KAAK,EAEV,KAAK,0BAA0B,EAC/B,KAAK,oBAAoB,
|
|
1
|
+
{"version":3,"file":"acp-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/acp-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,9 @@ import { randomUUID } from "node:crypto";
|
|
|
2
2
|
import fs from "node:fs/promises";
|
|
3
3
|
import path from "node:path";
|
|
4
4
|
import { Readable, Writable } from "node:stream";
|
|
5
|
-
import { ClientSideConnection, PROTOCOL_VERSION,
|
|
5
|
+
import { ClientSideConnection, PROTOCOL_VERSION, } from "@agentclientprotocol/sdk";
|
|
6
6
|
import { applyProviderEnv, resolveProviderCommandPrefix, } from "../provider-launch-config.js";
|
|
7
|
+
import { renderPromptAttachmentAsText } from "../prompt-attachments.js";
|
|
7
8
|
import { findExecutable } from "../../../utils/executable.js";
|
|
8
9
|
import { spawnProcess } from "../../../utils/spawn.js";
|
|
9
10
|
const DEFAULT_ACP_CAPABILITIES = {
|
|
@@ -22,6 +23,67 @@ const ACP_CLIENT_CAPABILITIES = {
|
|
|
22
23
|
terminal: true,
|
|
23
24
|
};
|
|
24
25
|
const COPILOT_AUTOPILOT_MODE = "https://agentclientprotocol.com/protocol/session-modes#autopilot";
|
|
26
|
+
// Suppress interactive auth side-effects (e.g. Gemini CLI opening a Google
|
|
27
|
+
// sign-in URL in the browser) when probing an ACP agent for models/modes.
|
|
28
|
+
// NO_BROWSER is honored by Gemini CLI; other ACP agents ignore it.
|
|
29
|
+
const PROBE_ENV = { NO_BROWSER: "true" };
|
|
30
|
+
export function createLoggedNdJsonStream(output, input, options) {
|
|
31
|
+
const textEncoder = new TextEncoder();
|
|
32
|
+
const textDecoder = new TextDecoder();
|
|
33
|
+
const readable = new ReadableStream({
|
|
34
|
+
async start(controller) {
|
|
35
|
+
let content = "";
|
|
36
|
+
const reader = input.getReader();
|
|
37
|
+
try {
|
|
38
|
+
while (true) {
|
|
39
|
+
const { value, done } = await reader.read();
|
|
40
|
+
if (done) {
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
if (!value) {
|
|
44
|
+
continue;
|
|
45
|
+
}
|
|
46
|
+
content += textDecoder.decode(value, { stream: true });
|
|
47
|
+
const lines = content.split("\n");
|
|
48
|
+
content = lines.pop() || "";
|
|
49
|
+
for (const line of lines) {
|
|
50
|
+
const trimmedLine = line.trim();
|
|
51
|
+
if (!trimmedLine) {
|
|
52
|
+
continue;
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
55
|
+
const message = JSON.parse(trimmedLine);
|
|
56
|
+
controller.enqueue(message);
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
options.logger.warn({
|
|
60
|
+
err: error,
|
|
61
|
+
provider: options.provider,
|
|
62
|
+
linePreview: trimmedLine.length > 500 ? `${trimmedLine.slice(0, 500)}...` : trimmedLine,
|
|
63
|
+
}, "ACP agent emitted non-JSON stdout; ignoring line");
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
finally {
|
|
69
|
+
reader.releaseLock();
|
|
70
|
+
controller.close();
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
});
|
|
74
|
+
const writable = new WritableStream({
|
|
75
|
+
async write(message) {
|
|
76
|
+
const writer = output.getWriter();
|
|
77
|
+
try {
|
|
78
|
+
await writer.write(textEncoder.encode(`${JSON.stringify(message)}\n`));
|
|
79
|
+
}
|
|
80
|
+
finally {
|
|
81
|
+
writer.releaseLock();
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
});
|
|
85
|
+
return { readable, writable };
|
|
86
|
+
}
|
|
25
87
|
export function mapACPUsage(usage) {
|
|
26
88
|
if (!usage) {
|
|
27
89
|
return undefined;
|
|
@@ -156,8 +218,8 @@ export class ACPAgentClient {
|
|
|
156
218
|
return session;
|
|
157
219
|
}
|
|
158
220
|
async listModels(options) {
|
|
159
|
-
const cwd = options
|
|
160
|
-
const probe = await this.spawnProcess(
|
|
221
|
+
const { cwd } = options;
|
|
222
|
+
const probe = await this.spawnProcess(PROBE_ENV);
|
|
161
223
|
try {
|
|
162
224
|
const response = await probe.connection.newSession({
|
|
163
225
|
cwd,
|
|
@@ -172,8 +234,8 @@ export class ACPAgentClient {
|
|
|
172
234
|
}
|
|
173
235
|
}
|
|
174
236
|
async listModes(options) {
|
|
175
|
-
const cwd = options
|
|
176
|
-
const probe = await this.spawnProcess(
|
|
237
|
+
const { cwd } = options;
|
|
238
|
+
const probe = await this.spawnProcess(PROBE_ENV);
|
|
177
239
|
try {
|
|
178
240
|
const response = await probe.connection.newSession({
|
|
179
241
|
cwd,
|
|
@@ -188,7 +250,7 @@ export class ACPAgentClient {
|
|
|
188
250
|
}
|
|
189
251
|
}
|
|
190
252
|
async listPersistedAgents(options) {
|
|
191
|
-
const probe = await this.spawnProcess(
|
|
253
|
+
const probe = await this.spawnProcess(PROBE_ENV);
|
|
192
254
|
try {
|
|
193
255
|
if (!probe.initialize.agentCapabilities?.sessionCapabilities?.list) {
|
|
194
256
|
return [];
|
|
@@ -259,7 +321,7 @@ export class ACPAgentClient {
|
|
|
259
321
|
if (!child.stdin || !child.stdout) {
|
|
260
322
|
throw new Error(`${this.provider} ACP process did not expose stdio pipes`);
|
|
261
323
|
}
|
|
262
|
-
const stream =
|
|
324
|
+
const stream = createLoggedNdJsonStream(Writable.toWeb(child.stdin), Readable.toWeb(child.stdout), { logger: this.logger, provider: this.provider });
|
|
263
325
|
const connection = new ClientSideConnection(() => this.buildProbeClient(), stream);
|
|
264
326
|
const initialize = (await Promise.race([
|
|
265
327
|
connection.initialize({
|
|
@@ -984,7 +1046,7 @@ export class ACPAgentSession {
|
|
|
984
1046
|
if (!child.stdin || !child.stdout) {
|
|
985
1047
|
throw new Error(`${this.provider} ACP process did not expose stdio pipes`);
|
|
986
1048
|
}
|
|
987
|
-
const stream =
|
|
1049
|
+
const stream = createLoggedNdJsonStream(Writable.toWeb(child.stdin), Readable.toWeb(child.stdout), { logger: this.logger, provider: this.provider });
|
|
988
1050
|
const connection = new ClientSideConnection(() => this, stream);
|
|
989
1051
|
const initialize = await connection.initialize({
|
|
990
1052
|
protocolVersion: PROTOCOL_VERSION,
|
|
@@ -1296,6 +1358,9 @@ function toACPContentBlocks(prompt) {
|
|
|
1296
1358
|
if (block.type === "text") {
|
|
1297
1359
|
return { type: "text", text: block.text };
|
|
1298
1360
|
}
|
|
1361
|
+
if (block.type === "github_pr" || block.type === "github_issue") {
|
|
1362
|
+
return { type: "text", text: renderPromptAttachmentAsText(block) };
|
|
1363
|
+
}
|
|
1299
1364
|
return {
|
|
1300
1365
|
type: "image",
|
|
1301
1366
|
data: block.data,
|