@getpaseo/server 0.1.73 → 0.1.75
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/supervisor-entrypoint.js +2 -21
- package/dist/scripts/supervisor-entrypoint.js.map +1 -1
- package/dist/scripts/supervisor-log-config.js +31 -0
- package/dist/scripts/supervisor-log-config.js.map +1 -0
- package/dist/server/server/agent/agent-manager.d.ts +4 -1
- package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
- package/dist/server/server/agent/agent-manager.js +139 -14
- package/dist/server/server/agent/agent-manager.js.map +1 -1
- package/dist/server/server/agent/agent-prompt.d.ts.map +1 -1
- package/dist/server/server/agent/agent-prompt.js +27 -0
- package/dist/server/server/agent/agent-prompt.js.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.d.ts +2 -0
- package/dist/server/server/agent/agent-sdk-types.d.ts.map +1 -1
- package/dist/server/server/agent/agent-sdk-types.js +3 -0
- package/dist/server/server/agent/agent-sdk-types.js.map +1 -1
- package/dist/server/server/agent/foreground-run-state.d.ts +1 -1
- package/dist/server/server/agent/foreground-run-state.d.ts.map +1 -1
- package/dist/server/server/agent/foreground-run-state.js +2 -4
- package/dist/server/server/agent/foreground-run-state.js.map +1 -1
- package/dist/server/server/agent/provider-manifest.d.ts.map +1 -1
- package/dist/server/server/agent/provider-manifest.js +3 -3
- package/dist/server/server/agent/provider-manifest.js.map +1 -1
- package/dist/server/server/agent/provider-registry.d.ts.map +1 -1
- package/dist/server/server/agent/provider-registry.js +13 -5
- package/dist/server/server/agent/provider-registry.js.map +1 -1
- package/dist/server/server/agent/providers/acp-agent.d.ts +39 -1
- package/dist/server/server/agent/providers/acp-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/acp-agent.js +121 -14
- package/dist/server/server/agent/providers/acp-agent.js.map +1 -1
- 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 +80 -24
- package/dist/server/server/agent/providers/claude/agent.js.map +1 -1
- package/dist/server/server/agent/providers/codex/app-server-transport.d.ts +7 -1
- package/dist/server/server/agent/providers/codex/app-server-transport.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex/app-server-transport.js +28 -1
- package/dist/server/server/agent/providers/codex/app-server-transport.js.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-mapper.d.ts.map +1 -1
- package/dist/server/server/agent/providers/codex/tool-call-mapper.js +36 -7
- package/dist/server/server/agent/providers/codex/tool-call-mapper.js.map +1 -1
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +14 -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 +121 -15
- 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 +10 -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 +114 -7
- package/dist/server/server/agent/providers/copilot-acp-agent.js.map +1 -1
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.d.ts +1 -0
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.js +7 -0
- package/dist/server/server/agent/providers/opencode/test-utils/test-opencode-runtime.js.map +1 -1
- package/dist/server/server/agent/providers/opencode-agent.d.ts +10 -33
- package/dist/server/server/agent/providers/opencode-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/opencode-agent.js +140 -448
- package/dist/server/server/agent/providers/opencode-agent.js.map +1 -1
- package/dist/server/server/agent/providers/pi-direct-agent.d.ts +1 -1
- package/dist/server/server/agent/providers/pi-direct-agent.d.ts.map +1 -1
- package/dist/server/server/agent/providers/pi-direct-agent.js +2 -15
- package/dist/server/server/agent/providers/pi-direct-agent.js.map +1 -1
- package/dist/server/server/agent/providers/provider-runner.d.ts +1 -1
- package/dist/server/server/agent/providers/provider-runner.d.ts.map +1 -1
- package/dist/server/server/agent/providers/provider-runner.js +2 -1
- package/dist/server/server/agent/providers/provider-runner.js.map +1 -1
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.d.ts +1 -1
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.d.ts.map +1 -1
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.js +2 -1
- package/dist/server/server/agent/providers/test-utils/session-stream-adapter.js.map +1 -1
- package/dist/server/server/agent/stt-manager.d.ts +5 -1
- package/dist/server/server/agent/stt-manager.d.ts.map +1 -1
- package/dist/server/server/agent/stt-manager.js +3 -2
- package/dist/server/server/agent/stt-manager.js.map +1 -1
- package/dist/server/server/bootstrap.d.ts +5 -0
- package/dist/server/server/bootstrap.d.ts.map +1 -1
- package/dist/server/server/bootstrap.js.map +1 -1
- package/dist/server/server/dictation/dictation-stream-manager.d.ts +2 -0
- package/dist/server/server/dictation/dictation-stream-manager.d.ts.map +1 -1
- package/dist/server/server/dictation/dictation-stream-manager.js +2 -1
- package/dist/server/server/dictation/dictation-stream-manager.js.map +1 -1
- package/dist/server/server/logger.js +1 -1
- package/dist/server/server/logger.js.map +1 -1
- package/dist/server/server/persisted-config.d.ts +18 -0
- package/dist/server/server/persisted-config.d.ts.map +1 -1
- package/dist/server/server/persisted-config.js +2 -0
- package/dist/server/server/persisted-config.js.map +1 -1
- package/dist/server/server/schedule/service.d.ts.map +1 -1
- package/dist/server/server/schedule/service.js +14 -1
- package/dist/server/server/schedule/service.js.map +1 -1
- package/dist/server/server/session.d.ts +3 -0
- package/dist/server/server/session.d.ts.map +1 -1
- package/dist/server/server/session.js +89 -18
- package/dist/server/server/session.js.map +1 -1
- package/dist/server/server/speech/providers/local/config.d.ts +5 -0
- package/dist/server/server/speech/providers/local/config.d.ts.map +1 -1
- package/dist/server/server/speech/providers/local/config.js +35 -0
- package/dist/server/server/speech/providers/local/config.js.map +1 -1
- package/dist/server/server/speech/speech-config-resolver.d.ts.map +1 -1
- package/dist/server/server/speech/speech-config-resolver.js +1 -0
- package/dist/server/server/speech/speech-config-resolver.js.map +1 -1
- package/dist/server/server/speech/speech-runtime.d.ts +2 -0
- package/dist/server/server/speech/speech-runtime.d.ts.map +1 -1
- package/dist/server/server/speech/speech-runtime.js +2 -0
- package/dist/server/server/speech/speech-runtime.js.map +1 -1
- package/dist/server/server/voice/voice-turn-controller.d.ts +1 -0
- package/dist/server/server/voice/voice-turn-controller.d.ts.map +1 -1
- package/dist/server/server/voice/voice-turn-controller.js +1 -1
- package/dist/server/server/voice/voice-turn-controller.js.map +1 -1
- package/dist/server/server/websocket-server.d.ts.map +1 -1
- package/dist/server/server/websocket-server.js +2 -0
- package/dist/server/server/websocket-server.js.map +1 -1
- package/dist/src/server/agent/agent-sdk-types.js +3 -0
- package/dist/src/server/agent/agent-sdk-types.js.map +1 -1
- package/dist/src/server/agent/provider-manifest.js +3 -3
- package/dist/src/server/agent/provider-manifest.js.map +1 -1
- package/dist/src/server/persisted-config.js +2 -0
- package/dist/src/server/persisted-config.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getAgentStreamEventTurnId, } from "../agent-sdk-types.js";
|
|
1
2
|
import { homedir } from "node:os";
|
|
2
3
|
import { randomUUID } from "node:crypto";
|
|
3
4
|
import * as fsSync from "node:fs";
|
|
@@ -13,7 +14,7 @@ import { findExecutable, isCommandAvailable } from "../../../utils/executable.js
|
|
|
13
14
|
import { spawnProcess } from "../../../utils/spawn.js";
|
|
14
15
|
import { extractCodexTerminalSessionId, nonEmptyString } from "./tool-call-mapper-utils.js";
|
|
15
16
|
import { buildCodexFeatures, codexModelSupportsFastMode } from "./codex-feature-definitions.js";
|
|
16
|
-
import { CodexAppServerClient } from "./codex/app-server-transport.js";
|
|
17
|
+
import { CodexAppServerClient, } from "./codex/app-server-transport.js";
|
|
17
18
|
import { renderProviderImageOutputAsAssistantMarkdown, } from "./provider-image-output.js";
|
|
18
19
|
import { formatDiagnosticStatus, formatProviderDiagnostic, formatProviderDiagnosticError, resolveBinaryVersion, toDiagnosticErrorMessage, } from "./diagnostic-utils.js";
|
|
19
20
|
import { runProviderTurn } from "./provider-runner.js";
|
|
@@ -1911,13 +1912,53 @@ function buildCodexAppServerInitializeParams() {
|
|
|
1911
1912
|
},
|
|
1912
1913
|
};
|
|
1913
1914
|
}
|
|
1915
|
+
function normalizeOpenAICompatibleBaseUrl(value) {
|
|
1916
|
+
const trimmed = value.trim();
|
|
1917
|
+
if (!trimmed) {
|
|
1918
|
+
return null;
|
|
1919
|
+
}
|
|
1920
|
+
const withoutTrailingSlashes = trimmed.replace(/\/+$/u, "");
|
|
1921
|
+
if (withoutTrailingSlashes.endsWith("/v1")) {
|
|
1922
|
+
return withoutTrailingSlashes;
|
|
1923
|
+
}
|
|
1924
|
+
return `${withoutTrailingSlashes}/v1`;
|
|
1925
|
+
}
|
|
1926
|
+
function buildCodexCustomProviderConfig(runtimeSettings, customProvider) {
|
|
1927
|
+
if (customProvider?.extends !== CODEX_PROVIDER) {
|
|
1928
|
+
return null;
|
|
1929
|
+
}
|
|
1930
|
+
const baseUrl = runtimeSettings?.env?.OPENAI_BASE_URL;
|
|
1931
|
+
if (typeof baseUrl !== "string") {
|
|
1932
|
+
return null;
|
|
1933
|
+
}
|
|
1934
|
+
const normalizedBaseUrl = normalizeOpenAICompatibleBaseUrl(baseUrl);
|
|
1935
|
+
if (!normalizedBaseUrl) {
|
|
1936
|
+
return null;
|
|
1937
|
+
}
|
|
1938
|
+
const providerConfig = {
|
|
1939
|
+
name: customProvider.label,
|
|
1940
|
+
base_url: normalizedBaseUrl,
|
|
1941
|
+
wire_api: "responses",
|
|
1942
|
+
};
|
|
1943
|
+
if (runtimeSettings?.env?.OPENAI_API_KEY?.trim()) {
|
|
1944
|
+
providerConfig.env_key = "OPENAI_API_KEY";
|
|
1945
|
+
providerConfig.requires_openai_auth = false;
|
|
1946
|
+
}
|
|
1947
|
+
return {
|
|
1948
|
+
model_provider: customProvider.id,
|
|
1949
|
+
model_providers: {
|
|
1950
|
+
[customProvider.id]: providerConfig,
|
|
1951
|
+
},
|
|
1952
|
+
};
|
|
1953
|
+
}
|
|
1914
1954
|
class CodexAppServerAgentSession {
|
|
1915
|
-
constructor(config, resumeHandle, logger, spawnAppServer, deps = {}, ephemeral = false, goalsEnabled = false) {
|
|
1955
|
+
constructor(config, resumeHandle, logger, spawnAppServer, deps = {}, ephemeral = false, goalsEnabled = false, agentId) {
|
|
1916
1956
|
this.resumeHandle = resumeHandle;
|
|
1917
1957
|
this.spawnAppServer = spawnAppServer;
|
|
1918
1958
|
this.deps = deps;
|
|
1919
1959
|
this.ephemeral = ephemeral;
|
|
1920
1960
|
this.goalsEnabled = goalsEnabled;
|
|
1961
|
+
this.agentId = agentId;
|
|
1921
1962
|
this.provider = CODEX_PROVIDER;
|
|
1922
1963
|
this.capabilities = CODEX_APP_SERVER_CAPABILITIES;
|
|
1923
1964
|
this.currentThreadId = null;
|
|
@@ -1956,7 +1997,11 @@ class CodexAppServerAgentSession {
|
|
|
1956
1997
|
this.collaborationModes = [];
|
|
1957
1998
|
this.resolvedCollaborationMode = null;
|
|
1958
1999
|
this.cachedSkills = [];
|
|
1959
|
-
this.logger = logger.child({
|
|
2000
|
+
this.logger = logger.child({
|
|
2001
|
+
module: "agent",
|
|
2002
|
+
provider: CODEX_PROVIDER,
|
|
2003
|
+
agentId: this.agentId,
|
|
2004
|
+
});
|
|
1960
2005
|
if (config.modeId === undefined) {
|
|
1961
2006
|
throw new Error("Codex agent requires modeId to be specified");
|
|
1962
2007
|
}
|
|
@@ -1990,7 +2035,7 @@ class CodexAppServerAgentSession {
|
|
|
1990
2035
|
if (this.connected)
|
|
1991
2036
|
return;
|
|
1992
2037
|
const child = await this.spawnAppServer();
|
|
1993
|
-
this.client = new CodexAppServerClient(child, this.logger);
|
|
2038
|
+
this.client = new CodexAppServerClient(child, this.logger, () => this.traceContext());
|
|
1994
2039
|
this.client.setNotificationHandler((method, params) => this.handleNotification(method, params));
|
|
1995
2040
|
this.registerRequestHandlers();
|
|
1996
2041
|
await this.client.request("initialize", buildCodexAppServerInitializeParams());
|
|
@@ -2003,6 +2048,13 @@ class CodexAppServerAgentSession {
|
|
|
2003
2048
|
}
|
|
2004
2049
|
this.connected = true;
|
|
2005
2050
|
}
|
|
2051
|
+
traceContext() {
|
|
2052
|
+
return {
|
|
2053
|
+
agentId: this.agentId,
|
|
2054
|
+
sessionId: this.currentThreadId ?? undefined,
|
|
2055
|
+
turnId: this.activeForegroundTurnId ?? undefined,
|
|
2056
|
+
};
|
|
2057
|
+
}
|
|
2006
2058
|
async loadCollaborationModes() {
|
|
2007
2059
|
if (!this.client)
|
|
2008
2060
|
return;
|
|
@@ -2023,7 +2075,13 @@ class CodexAppServerAgentSession {
|
|
|
2023
2075
|
});
|
|
2024
2076
|
}
|
|
2025
2077
|
catch (error) {
|
|
2026
|
-
this.logger.trace({
|
|
2078
|
+
this.logger.trace({
|
|
2079
|
+
agentId: this.agentId,
|
|
2080
|
+
provider: CODEX_PROVIDER,
|
|
2081
|
+
sessionId: this.currentThreadId,
|
|
2082
|
+
turnId: this.activeForegroundTurnId ?? undefined,
|
|
2083
|
+
error,
|
|
2084
|
+
}, "provider.codex.metadata.collaboration_modes_failed");
|
|
2027
2085
|
this.collaborationModes = [];
|
|
2028
2086
|
}
|
|
2029
2087
|
this.refreshResolvedCollaborationMode();
|
|
@@ -2054,7 +2112,13 @@ class CodexAppServerAgentSession {
|
|
|
2054
2112
|
this.cachedSkills = skills;
|
|
2055
2113
|
}
|
|
2056
2114
|
catch (error) {
|
|
2057
|
-
this.logger.trace({
|
|
2115
|
+
this.logger.trace({
|
|
2116
|
+
agentId: this.agentId,
|
|
2117
|
+
provider: CODEX_PROVIDER,
|
|
2118
|
+
sessionId: this.currentThreadId,
|
|
2119
|
+
turnId: this.activeForegroundTurnId ?? undefined,
|
|
2120
|
+
error,
|
|
2121
|
+
}, "provider.codex.metadata.skills_failed");
|
|
2058
2122
|
this.cachedSkills = [];
|
|
2059
2123
|
}
|
|
2060
2124
|
}
|
|
@@ -2212,9 +2276,10 @@ class CodexAppServerAgentSession {
|
|
|
2212
2276
|
await this.client.request("thread/resume", params);
|
|
2213
2277
|
}
|
|
2214
2278
|
catch (error) {
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
|
|
2279
|
+
const threadId = this.currentThreadId;
|
|
2280
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
2281
|
+
this.logger.warn({ error, threadId }, "Failed to resume persisted Codex thread");
|
|
2282
|
+
throw new Error(`Failed to resume Codex thread ${threadId}: ${message}`, { cause: error });
|
|
2218
2283
|
}
|
|
2219
2284
|
}
|
|
2220
2285
|
parseSlashCommandInput(text) {
|
|
@@ -2807,6 +2872,9 @@ class CodexAppServerAgentSession {
|
|
|
2807
2872
|
if (this.config.extra?.codex) {
|
|
2808
2873
|
Object.assign(innerConfig, this.config.extra.codex);
|
|
2809
2874
|
}
|
|
2875
|
+
if (this.deps.customCodexConfig) {
|
|
2876
|
+
Object.assign(innerConfig, this.deps.customCodexConfig);
|
|
2877
|
+
}
|
|
2810
2878
|
return Object.keys(innerConfig).length > 0 ? innerConfig : null;
|
|
2811
2879
|
}
|
|
2812
2880
|
async buildUserInput(prompt) {
|
|
@@ -2821,6 +2889,13 @@ class CodexAppServerAgentSession {
|
|
|
2821
2889
|
notifySubscribers(event) {
|
|
2822
2890
|
const turnId = this.activeForegroundTurnId;
|
|
2823
2891
|
const tagged = turnId ? { ...event, turnId } : event;
|
|
2892
|
+
this.logger.trace({
|
|
2893
|
+
agentId: this.agentId,
|
|
2894
|
+
provider: CODEX_PROVIDER,
|
|
2895
|
+
sessionId: this.currentThreadId,
|
|
2896
|
+
turnId: getAgentStreamEventTurnId(tagged),
|
|
2897
|
+
event: tagged,
|
|
2898
|
+
}, "provider.codex.event_emit");
|
|
2824
2899
|
for (const callback of this.subscribers) {
|
|
2825
2900
|
try {
|
|
2826
2901
|
callback(tagged);
|
|
@@ -2835,6 +2910,7 @@ class CodexAppServerAgentSession {
|
|
|
2835
2910
|
}
|
|
2836
2911
|
handleNotification(method, params) {
|
|
2837
2912
|
const parsed = CodexNotificationSchema.parse({ method, params });
|
|
2913
|
+
this.traceParsedNotification(method, params, parsed);
|
|
2838
2914
|
switch (parsed.kind) {
|
|
2839
2915
|
case "thread_started":
|
|
2840
2916
|
this.handleThreadStartedNotification(parsed);
|
|
@@ -2890,6 +2966,17 @@ class CodexAppServerAgentSession {
|
|
|
2890
2966
|
this.warnUnknownNotificationMethod(parsed.method, parsed.params);
|
|
2891
2967
|
}
|
|
2892
2968
|
}
|
|
2969
|
+
traceParsedNotification(method, params, parsed) {
|
|
2970
|
+
this.logger.trace({
|
|
2971
|
+
agentId: this.agentId,
|
|
2972
|
+
provider: CODEX_PROVIDER,
|
|
2973
|
+
sessionId: this.currentThreadId,
|
|
2974
|
+
turnId: this.activeForegroundTurnId ?? undefined,
|
|
2975
|
+
method,
|
|
2976
|
+
params,
|
|
2977
|
+
parsed,
|
|
2978
|
+
}, "provider.codex.parsed_event");
|
|
2979
|
+
}
|
|
2893
2980
|
getSubAgentCallIdForThread(threadId) {
|
|
2894
2981
|
if (!threadId || threadId === this.currentThreadId) {
|
|
2895
2982
|
return null;
|
|
@@ -3385,7 +3472,14 @@ class CodexAppServerAgentSession {
|
|
|
3385
3472
|
return;
|
|
3386
3473
|
}
|
|
3387
3474
|
this.warnedUnknownNotificationMethods.add(method);
|
|
3388
|
-
this.logger.trace({
|
|
3475
|
+
this.logger.trace({
|
|
3476
|
+
agentId: this.agentId,
|
|
3477
|
+
provider: CODEX_PROVIDER,
|
|
3478
|
+
sessionId: this.currentThreadId,
|
|
3479
|
+
turnId: this.activeForegroundTurnId ?? undefined,
|
|
3480
|
+
method,
|
|
3481
|
+
params,
|
|
3482
|
+
}, "provider.codex.event_unhandled");
|
|
3389
3483
|
}
|
|
3390
3484
|
warnInvalidNotificationPayload(method, params) {
|
|
3391
3485
|
const key = method;
|
|
@@ -3618,6 +3712,12 @@ export class CodexAppServerAgentClient {
|
|
|
3618
3712
|
this.capabilities = CODEX_APP_SERVER_CAPABILITIES;
|
|
3619
3713
|
this.goalsEnabledPromise = null;
|
|
3620
3714
|
}
|
|
3715
|
+
sessionDeps() {
|
|
3716
|
+
return {
|
|
3717
|
+
...this.deps,
|
|
3718
|
+
customCodexConfig: buildCodexCustomProviderConfig(this.runtimeSettings, this.deps.customProvider),
|
|
3719
|
+
};
|
|
3720
|
+
}
|
|
3621
3721
|
resolveGoalsEnabled() {
|
|
3622
3722
|
if (!this.goalsEnabledPromise) {
|
|
3623
3723
|
this.goalsEnabledPromise = (async () => {
|
|
@@ -3625,7 +3725,11 @@ export class CodexAppServerAgentClient {
|
|
|
3625
3725
|
const launchPrefix = await resolveCodexLaunchPrefix(this.runtimeSettings);
|
|
3626
3726
|
const versionOutput = await resolveBinaryVersion(launchPrefix.command);
|
|
3627
3727
|
const enabled = codexVersionAtLeast(versionOutput, CODEX_GOALS_MIN_VERSION);
|
|
3628
|
-
this.logger.trace({
|
|
3728
|
+
this.logger.trace({
|
|
3729
|
+
provider: CODEX_PROVIDER,
|
|
3730
|
+
versionOutput,
|
|
3731
|
+
enabled,
|
|
3732
|
+
}, "provider.codex.config.goals_resolved");
|
|
3629
3733
|
return enabled;
|
|
3630
3734
|
}
|
|
3631
3735
|
catch (error) {
|
|
@@ -3643,9 +3747,11 @@ export class CodexAppServerAgentClient {
|
|
|
3643
3747
|
args.push("--enable", "goals");
|
|
3644
3748
|
}
|
|
3645
3749
|
this.logger.trace({
|
|
3750
|
+
agentId: options?.agentId,
|
|
3751
|
+
provider: CODEX_PROVIDER,
|
|
3646
3752
|
launchPrefix,
|
|
3647
3753
|
goalsEnabled: options?.goalsEnabled === true,
|
|
3648
|
-
}, "
|
|
3754
|
+
}, "provider.codex.spawn");
|
|
3649
3755
|
const child = spawnProcess(launchPrefix.command, args, {
|
|
3650
3756
|
detached: process.platform !== "win32",
|
|
3651
3757
|
stdio: ["pipe", "pipe", "pipe"],
|
|
@@ -3665,7 +3771,7 @@ export class CodexAppServerAgentClient {
|
|
|
3665
3771
|
}
|
|
3666
3772
|
const sessionConfig = { ...config, provider: CODEX_PROVIDER };
|
|
3667
3773
|
const goalsEnabled = await this.resolveGoalsEnabled();
|
|
3668
|
-
const session = new CodexAppServerAgentSession(sessionConfig, null, this.logger, () => this.spawnAppServer(launchContext?.env, { goalsEnabled }), this.
|
|
3774
|
+
const session = new CodexAppServerAgentSession(sessionConfig, null, this.logger, () => this.spawnAppServer(launchContext?.env, { goalsEnabled, agentId: launchContext?.agentId }), this.sessionDeps(), options?.persistSession === false, goalsEnabled, launchContext?.agentId);
|
|
3669
3775
|
await session.connect();
|
|
3670
3776
|
return session;
|
|
3671
3777
|
}
|
|
@@ -3678,13 +3784,13 @@ export class CodexAppServerAgentClient {
|
|
|
3678
3784
|
cwd: overrides?.cwd ?? storedConfig.cwd ?? process.cwd(),
|
|
3679
3785
|
};
|
|
3680
3786
|
const goalsEnabled = await this.resolveGoalsEnabled();
|
|
3681
|
-
const session = new CodexAppServerAgentSession(merged, handle, this.logger, () => this.spawnAppServer(launchContext?.env, { goalsEnabled }), this.
|
|
3787
|
+
const session = new CodexAppServerAgentSession(merged, handle, this.logger, () => this.spawnAppServer(launchContext?.env, { goalsEnabled, agentId: launchContext?.agentId }), this.sessionDeps(), false, goalsEnabled, launchContext?.agentId);
|
|
3682
3788
|
await session.connect();
|
|
3683
3789
|
return session;
|
|
3684
3790
|
}
|
|
3685
3791
|
async listPersistedAgents(options) {
|
|
3686
3792
|
const child = await this.spawnAppServer();
|
|
3687
|
-
const client = this.deps._createCodexClient?.(child, this.logger) ??
|
|
3793
|
+
const client = this.deps._createCodexClient?.(child, this.logger, () => ({})) ??
|
|
3688
3794
|
new CodexAppServerClient(child, this.logger);
|
|
3689
3795
|
try {
|
|
3690
3796
|
await client.request("initialize", buildCodexAppServerInitializeParams());
|