@seawork/server 1.0.18-rc.2 → 1.0.18-rc.3

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.
@@ -15,6 +15,12 @@ export declare class CodexExternalMigrationUnavailableError extends Error {
15
15
  probeError?: string | null;
16
16
  });
17
17
  }
18
+ type CodexSkillEntry = {
19
+ name: string;
20
+ description: string;
21
+ path: string;
22
+ };
23
+ declare function listCodexSkillEntries(cwd: string): Promise<CodexSkillEntry[]>;
18
24
  declare function toAgentUsage(tokenUsage: unknown): AgentUsage | undefined;
19
25
  declare function planStepsToMarkdown(steps: Array<{
20
26
  step: string;
@@ -61,6 +67,9 @@ declare function threadItemToTimeline(item: any, options?: {
61
67
  }): AgentTimelineItem | null;
62
68
  export declare function codexAppServerTurnInputFromPrompt(prompt: AgentPromptInput, logger: Logger): Promise<unknown[]>;
63
69
  declare function buildCodexAppServerEnv(runtimeSettings?: ProviderRuntimeSettings, launchEnv?: Record<string, string>): Record<string, string | undefined>;
70
+ declare function buildCodexSeaworkProviderConfig(env: Record<string, string | undefined>): Record<string, unknown> | null;
71
+ declare function mergeCodexConfig(base: Record<string, unknown> | undefined, override: Record<string, unknown> | null): Record<string, unknown> | undefined;
72
+ declare function withManagedCodexConfig(config: AgentSessionConfig, runtimeSettings?: ProviderRuntimeSettings, launchEnv?: Record<string, string>): AgentSessionConfig;
64
73
  declare class CodexAppServerAgentSession implements AgentSession {
65
74
  private readonly resumeHandle;
66
75
  private readonly spawnAppServer;
@@ -169,6 +178,7 @@ declare class CodexAppServerAgentSession implements AgentSession {
169
178
  private rememberTerminalProcessForCommand;
170
179
  private shouldEmitTerminalInteractionKey;
171
180
  private warnOnIncompleteEditToolCall;
181
+ private shouldAutoAcceptToolApprovals;
172
182
  private handleCommandApprovalRequest;
173
183
  private handleFileChangeApprovalRequest;
174
184
  private handleToolApprovalRequest;
@@ -202,9 +212,13 @@ export declare class CodexAppServerAgentClient implements AgentClient {
202
212
  }
203
213
  export declare const __codexAppServerInternals: {
204
214
  buildCodexAppServerEnv: typeof buildCodexAppServerEnv;
215
+ buildCodexSeaworkProviderConfig: typeof buildCodexSeaworkProviderConfig;
205
216
  codexModelSupportsFastMode: typeof codexModelSupportsFastMode;
206
217
  CodexAppServerAgentSession: typeof CodexAppServerAgentSession;
218
+ listCodexSkillEntries: typeof listCodexSkillEntries;
207
219
  formatCodexQuestionPrompts: typeof formatCodexQuestionPrompts;
220
+ mergeCodexConfig: typeof mergeCodexConfig;
221
+ withManagedCodexConfig: typeof withManagedCodexConfig;
208
222
  mapCodexQuestionRequestToToolCall: typeof mapCodexQuestionRequestToToolCall;
209
223
  mapCodexPatchNotificationToToolCall: typeof mapCodexPatchNotificationToToolCall;
210
224
  planStepsToMarkdown: typeof planStepsToMarkdown;
@@ -1 +1 @@
1
- {"version":3,"file":"codex-app-server-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/codex-app-server-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex-app-server-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/codex-app-server-agent.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ const DEFAULT_TIMEOUT_MS = 14 * 24 * 60 * 60 * 1000;
21
21
  const TURN_START_TIMEOUT_MS = 90 * 1000;
22
22
  const CODEX_EXTERNAL_MIGRATION_MIN_VERSION = "0.128.0";
23
23
  const CODEX_PROVIDER = "codex";
24
+ const CODEX_SEAWORK_PROVIDER_ID = "seawork";
24
25
  const CODEX_IMAGE_ATTACHMENT_DIR = "seawork-attachments";
25
26
  const CODEX_PLAN_IMPLEMENTATION_PROMPT_PREFIX = "The user approved the plan. Implement it now. Do not restate or revise the plan unless blocked.";
26
27
  const CODEX_APP_SERVER_CAPABILITIES = {
@@ -181,6 +182,11 @@ function isVersionAtLeast(raw, minimum) {
181
182
  function readStringMetadata(value) {
182
183
  return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
183
184
  }
185
+ function readStringRecord(value) {
186
+ return value && typeof value === "object" && !Array.isArray(value)
187
+ ? value
188
+ : {};
189
+ }
184
190
  async function waitForCondition(predicate, timeoutMs, intervalMs) {
185
191
  const deadline = Date.now() + timeoutMs;
186
192
  while (!predicate()) {
@@ -326,10 +332,12 @@ async function listCodexCustomPrompts() {
326
332
  }
327
333
  return commands.sort((a, b) => a.name.localeCompare(b.name));
328
334
  }
329
- async function listCodexSkills(cwd) {
335
+ async function listCodexSkillEntries(cwd) {
330
336
  const candidates = [];
331
337
  candidates.push(path.join(cwd, ".codex", "skills"));
332
338
  candidates.push(path.join(cwd, ".agents", "skills"));
339
+ candidates.push(path.join(cwd, ".claude", "skills"));
340
+ candidates.push(path.join(cwd, "skills"));
333
341
  const repoRoot = (() => {
334
342
  try {
335
343
  const output = execSync("git rev-parse --show-toplevel", {
@@ -347,13 +355,17 @@ async function listCodexSkills(cwd) {
347
355
  if (repoRoot) {
348
356
  candidates.push(path.join(path.dirname(cwd), ".codex", "skills"));
349
357
  candidates.push(path.join(path.dirname(cwd), ".agents", "skills"));
358
+ candidates.push(path.join(path.dirname(cwd), ".claude", "skills"));
359
+ candidates.push(path.join(path.dirname(cwd), "skills"));
350
360
  candidates.push(path.join(repoRoot, ".codex", "skills"));
351
361
  candidates.push(path.join(repoRoot, ".agents", "skills"));
362
+ candidates.push(path.join(repoRoot, ".claude", "skills"));
363
+ candidates.push(path.join(repoRoot, "skills"));
352
364
  }
353
365
  candidates.push(path.join(resolveCodexHomeDir(), "skills"));
354
366
  candidates.push(path.join(os.homedir(), ".agents", "skills"));
355
- const commandsByName = new Map();
356
- for (const dir of candidates) {
367
+ const skillsByName = new Map();
368
+ for (const dir of Array.from(new Set(candidates))) {
357
369
  let entries;
358
370
  try {
359
371
  entries = await fs.readdir(dir, { withFileTypes: true });
@@ -380,16 +392,16 @@ async function listCodexSkills(cwd) {
380
392
  if (!name || !description) {
381
393
  continue;
382
394
  }
383
- if (!commandsByName.has(name)) {
384
- commandsByName.set(name, {
395
+ if (!skillsByName.has(name)) {
396
+ skillsByName.set(name, {
385
397
  name,
386
398
  description,
387
- argumentHint: "",
399
+ path: skillPath,
388
400
  });
389
401
  }
390
402
  }
391
403
  }
392
- return Array.from(commandsByName.values()).sort((a, b) => a.name.localeCompare(b.name));
404
+ return Array.from(skillsByName.values()).sort((a, b) => a.name.localeCompare(b.name));
393
405
  }
394
406
  function escapeRegExp(value) {
395
407
  return value.replace(/[.*+?^${}()|[\]\\]/g, "\\$&");
@@ -1976,12 +1988,64 @@ function buildCodexAppServerEnv(runtimeSettings, launchEnv) {
1976
1988
  env.https_proxy = "";
1977
1989
  env.HTTP_PROXY = "";
1978
1990
  env.HTTPS_PROXY = "";
1979
- if (!launchEnv) {
1980
- return env;
1991
+ const merged = launchEnv
1992
+ ? {
1993
+ ...env,
1994
+ ...launchEnv,
1995
+ }
1996
+ : env;
1997
+ if (readStringMetadata(merged.OPENAI_BASE_URL)) {
1998
+ merged.SEAWORK_API_KEY = merged.OPENAI_API_KEY ?? "";
1999
+ }
2000
+ return merged;
2001
+ }
2002
+ function codexProviderBaseUrl(baseUrl) {
2003
+ const normalized = baseUrl.replace(/\/+$/, "");
2004
+ return normalized.endsWith("/v1") ? normalized : `${normalized}/v1`;
2005
+ }
2006
+ function buildCodexSeaworkProviderConfig(env) {
2007
+ const baseUrl = readStringMetadata(env.OPENAI_BASE_URL);
2008
+ if (!baseUrl) {
2009
+ return null;
2010
+ }
2011
+ return {
2012
+ model_provider: CODEX_SEAWORK_PROVIDER_ID,
2013
+ model_providers: {
2014
+ [CODEX_SEAWORK_PROVIDER_ID]: {
2015
+ name: "Seawork",
2016
+ base_url: codexProviderBaseUrl(baseUrl),
2017
+ env_key: "SEAWORK_API_KEY",
2018
+ },
2019
+ },
2020
+ };
2021
+ }
2022
+ function mergeCodexConfig(base, override) {
2023
+ if (!override) {
2024
+ return base;
2025
+ }
2026
+ const baseProviders = readStringRecord(base?.model_providers);
2027
+ const overrideProviders = readStringRecord(override.model_providers);
2028
+ return {
2029
+ ...(base ?? {}),
2030
+ ...override,
2031
+ model_providers: {
2032
+ ...baseProviders,
2033
+ ...overrideProviders,
2034
+ },
2035
+ };
2036
+ }
2037
+ function withManagedCodexConfig(config, runtimeSettings, launchEnv) {
2038
+ const env = buildCodexAppServerEnv(runtimeSettings, launchEnv);
2039
+ const managedConfig = buildCodexSeaworkProviderConfig(env);
2040
+ if (!managedConfig) {
2041
+ return config;
1981
2042
  }
1982
2043
  return {
1983
- ...env,
1984
- ...launchEnv,
2044
+ ...config,
2045
+ extra: {
2046
+ ...(config.extra ?? {}),
2047
+ codex: mergeCodexConfig(config.extra?.codex, managedConfig),
2048
+ },
1985
2049
  };
1986
2050
  }
1987
2051
  function buildCodexAppServerInitializeParams() {
@@ -2103,32 +2167,37 @@ class CodexAppServerAgentSession {
2103
2167
  this.refreshResolvedCollaborationMode();
2104
2168
  }
2105
2169
  async loadSkills() {
2106
- if (!this.client)
2107
- return;
2170
+ const skillsByName = new Map();
2171
+ const projectSkills = await listCodexSkillEntries(this.config.cwd);
2172
+ for (const skill of projectSkills) {
2173
+ skillsByName.set(skill.name, skill);
2174
+ }
2108
2175
  try {
2109
- const response = (await this.client.request("skills/list", {
2110
- cwd: [this.config.cwd],
2111
- }));
2112
- const entries = Array.isArray(response?.data) ? response.data : [];
2113
- const skills = [];
2114
- for (const entry of entries) {
2115
- const list = Array.isArray(entry.skills) ? entry.skills : [];
2116
- for (const skill of list) {
2117
- if (!skill?.name || !skill?.path)
2118
- continue;
2119
- skills.push({
2120
- name: skill.name,
2121
- description: skill.description ?? skill.shortDescription ?? "Skill",
2122
- path: skill.path,
2123
- });
2176
+ if (this.client) {
2177
+ const response = (await this.client.request("skills/list", {
2178
+ cwd: [this.config.cwd],
2179
+ }));
2180
+ const entries = Array.isArray(response?.data) ? response.data : [];
2181
+ for (const entry of entries) {
2182
+ const list = Array.isArray(entry.skills) ? entry.skills : [];
2183
+ for (const skill of list) {
2184
+ if (!skill?.name || !skill?.path)
2185
+ continue;
2186
+ if (skillsByName.has(skill.name))
2187
+ continue;
2188
+ skillsByName.set(skill.name, {
2189
+ name: skill.name,
2190
+ description: skill.description ?? skill.shortDescription ?? "Skill",
2191
+ path: skill.path,
2192
+ });
2193
+ }
2124
2194
  }
2125
2195
  }
2126
- this.cachedSkills = skills;
2127
2196
  }
2128
2197
  catch (error) {
2129
2198
  this.logger.trace({ error }, "Failed to load skills list");
2130
- this.cachedSkills = [];
2131
2199
  }
2200
+ this.cachedSkills = Array.from(skillsByName.values()).sort((a, b) => a.name.localeCompare(b.name));
2132
2201
  }
2133
2202
  findCollaborationMode(target) {
2134
2203
  if (this.collaborationModes.length === 0)
@@ -2777,8 +2846,7 @@ class CodexAppServerAgentSession {
2777
2846
  description: skill.description,
2778
2847
  argumentHint: "",
2779
2848
  }));
2780
- const fallbackSkills = appServerSkills.length === 0 ? await listCodexSkills(this.config.cwd) : [];
2781
- return [...appServerSkills, ...fallbackSkills, ...prompts].sort((a, b) => a.name.localeCompare(b.name));
2849
+ return [...appServerSkills, ...prompts].sort((a, b) => a.name.localeCompare(b.name));
2782
2850
  }
2783
2851
  async ensureThread() {
2784
2852
  if (!this.client)
@@ -3288,8 +3356,16 @@ class CodexAppServerAgentSession {
3288
3356
  payload,
3289
3357
  }, "Codex edit tool call is missing diff/content fields");
3290
3358
  }
3359
+ shouldAutoAcceptToolApprovals() {
3360
+ const preset = MODE_PRESETS[this.currentMode] ?? MODE_PRESETS[DEFAULT_CODEX_MODE_ID];
3361
+ const approvalPolicy = this.config.approvalPolicy ?? preset.approvalPolicy;
3362
+ return approvalPolicy === "never";
3363
+ }
3291
3364
  handleCommandApprovalRequest(params) {
3292
3365
  const parsed = params;
3366
+ if (this.shouldAutoAcceptToolApprovals()) {
3367
+ return Promise.resolve({ decision: "accept" });
3368
+ }
3293
3369
  const commandPreview = mapCodexExecNotificationToToolCall({
3294
3370
  callId: parsed.itemId,
3295
3371
  command: parsed.command,
@@ -3332,6 +3408,9 @@ class CodexAppServerAgentSession {
3332
3408
  handleFileChangeApprovalRequest(params) {
3333
3409
  const parsed = params;
3334
3410
  const requestId = `permission-${parsed.itemId}`;
3411
+ if (this.shouldAutoAcceptToolApprovals()) {
3412
+ return Promise.resolve({ decision: "accept" });
3413
+ }
3335
3414
  const request = {
3336
3415
  id: requestId,
3337
3416
  provider: CODEX_PROVIDER,
@@ -3424,10 +3503,11 @@ export class CodexAppServerAgentClient {
3424
3503
  // If a Seawork-managed base URL is available, inject a "seawork" provider
3425
3504
  // via -c flags to override any user config.
3426
3505
  const extraArgs = [];
3427
- const seaworkBaseUrl = codexEnv.OPENAI_BASE_URL;
3428
- if (seaworkBaseUrl) {
3429
- extraArgs.push("-c", `model_provider="seawork"`, "-c", `model_providers.seawork.name="Seawork"`, "-c", `model_providers.seawork.base_url="${seaworkBaseUrl}/v1"`, "-c", `model_providers.seawork.env_key="SEAWORK_API_KEY"`, "--disable", "js_repl");
3430
- codexEnv.SEAWORK_API_KEY = codexEnv.OPENAI_API_KEY ?? "";
3506
+ const seaworkConfig = buildCodexSeaworkProviderConfig(codexEnv);
3507
+ const seaworkProvider = readStringRecord(readStringRecord(seaworkConfig?.model_providers)[CODEX_SEAWORK_PROVIDER_ID]);
3508
+ const seaworkBaseUrl = readStringMetadata(seaworkProvider.base_url);
3509
+ if (seaworkConfig && seaworkBaseUrl) {
3510
+ extraArgs.push("-c", `model_provider="${CODEX_SEAWORK_PROVIDER_ID}"`, "-c", `model_providers.${CODEX_SEAWORK_PROVIDER_ID}.name="Seawork"`, "-c", `model_providers.${CODEX_SEAWORK_PROVIDER_ID}.base_url="${seaworkBaseUrl}"`, "-c", `model_providers.${CODEX_SEAWORK_PROVIDER_ID}.env_key="SEAWORK_API_KEY"`, "--disable", "js_repl");
3431
3511
  }
3432
3512
  let command = launchPrefix.command;
3433
3513
  let fullArgs = [
@@ -3732,7 +3812,7 @@ export class CodexAppServerAgentClient {
3732
3812
  return readStringMetadata(matchingRecords[0]?.imported_thread_id);
3733
3813
  }
3734
3814
  async createSession(config, launchContext) {
3735
- const sessionConfig = { ...config, provider: CODEX_PROVIDER };
3815
+ const sessionConfig = withManagedCodexConfig({ ...config, provider: CODEX_PROVIDER }, this.runtimeSettings, launchContext?.env);
3736
3816
  const session = new CodexAppServerAgentSession(sessionConfig, null, this.logger, () => this.spawnAppServer({ launchEnv: launchContext?.env }));
3737
3817
  await session.connect();
3738
3818
  return session;
@@ -3746,7 +3826,8 @@ export class CodexAppServerAgentClient {
3746
3826
  cwd: overrides?.cwd ?? storedConfig.cwd ?? process.cwd(),
3747
3827
  modeId: overrides?.modeId ?? storedConfig.modeId ?? "auto",
3748
3828
  };
3749
- const session = new CodexAppServerAgentSession(merged, handle, this.logger, () => this.spawnAppServer({ launchEnv: launchContext?.env }));
3829
+ const sessionConfig = withManagedCodexConfig(merged, this.runtimeSettings, launchContext?.env);
3830
+ const session = new CodexAppServerAgentSession(sessionConfig, handle, this.logger, () => this.spawnAppServer({ launchEnv: launchContext?.env }));
3750
3831
  await session.connect();
3751
3832
  return session;
3752
3833
  }
@@ -3869,9 +3950,13 @@ export class CodexAppServerAgentClient {
3869
3950
  }
3870
3951
  export const __codexAppServerInternals = {
3871
3952
  buildCodexAppServerEnv,
3953
+ buildCodexSeaworkProviderConfig,
3872
3954
  codexModelSupportsFastMode,
3873
3955
  CodexAppServerAgentSession,
3956
+ listCodexSkillEntries,
3874
3957
  formatCodexQuestionPrompts,
3958
+ mergeCodexConfig,
3959
+ withManagedCodexConfig,
3875
3960
  mapCodexQuestionRequestToToolCall,
3876
3961
  mapCodexPatchNotificationToToolCall,
3877
3962
  planStepsToMarkdown,