opencode-qoder-bridge 0.1.9 → 0.1.11

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-actions.js","sourceRoot":"","sources":["../src/command-actions.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,MAAM,EAAQ,MAAM,qBAAqB,CAAC;AA8DjF,QAAA,MAAM,MAAM,EAAE,MA2Ob,CAAC;AAEF,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,MAAM,EAAQ,MAAM,qBAAqB,CAAC;AAoFjF,QAAA,MAAM,MAAM,EAAE,MAibb,CAAC;AAEF,eAAe,MAAM,CAAC"}
package/dist/index.js CHANGED
@@ -1,18 +1,20 @@
1
1
  import { tool } from "@opencode-ai/plugin";
2
- import { listSessions } from "@qoder-ai/qoder-agent-sdk";
2
+ import { forkSession, listSessions } from "@qoder-ai/qoder-agent-sdk";
3
3
  import { FALLBACK_MODELS, fetchDynamicModels, getCachedDynamicModels, listModels } from "./models.js";
4
4
  import { hasQoderCredential, QODER_PAT_ENV } from "./sdk-auth.js";
5
5
  import { bridgeMcpServers } from "./mcp-bridge.js";
6
6
  import { getLiveUsage, formatUsageReport } from "./usage.js";
7
7
  import { summarize, formatCost } from "./cost.js";
8
8
  import { ensureTuiRegistered } from "./tui-register.js";
9
- import { clearAllSessions, deleteQoderSessionForCwd } from "./session-store.js";
9
+ import { clearAllSessions, deleteQoderSessionForCwd, getQoderSessionForCwd } from "./session-store.js";
10
10
  import { debug, describeError, isDebugEnabled, warn } from "./logger.js";
11
+ import { formatMcpStatuses, openSdkControlSession, withMcpControlTimeout } from "./sdk-control.js";
11
12
  const PROVIDER_URL = new URL("./provider.js", import.meta.url).href;
12
13
  const UNSAFE_KEYS = new Set(["__proto__", "prototype", "constructor"]);
13
- const MODEL_REFRESH_INTERVAL_MS = 60_000;
14
+ const MODEL_STARTUP_DISCOVERY_TIMEOUT_MS = 10_000;
15
+ const MCP_AUTH_TTL_MS = 10 * 60 * 1000;
14
16
  const CONTROL_CHARS = /[\u0000-\u001f\u007f-\u009f]/g;
15
- let lastModelRefreshAt = 0;
17
+ const CONTROL_CHAR_TEST = /[\u0000-\u001f\u007f-\u009f]/;
16
18
  function isRecord(value) {
17
19
  return typeof value === "object" && value !== null && !Array.isArray(value);
18
20
  }
@@ -22,6 +24,28 @@ function safeDisplay(value, fallback, maxLength = 512) {
22
24
  const clean = value.replace(CONTROL_CHARS, " ").slice(0, maxLength);
23
25
  return clean || fallback;
24
26
  }
27
+ function discoveryEnvironment(value) {
28
+ const environment = { ...process.env };
29
+ if (!isRecord(value))
30
+ return environment;
31
+ for (const [key, item] of Object.entries(value)) {
32
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(key))
33
+ continue;
34
+ if (typeof item === "string" || item === undefined)
35
+ environment[key] = item;
36
+ }
37
+ return environment;
38
+ }
39
+ function discoveryOptions(options) {
40
+ const result = { timeoutMs: MODEL_STARTUP_DISCOVERY_TIMEOUT_MS };
41
+ if (typeof options.proxy === "string" && options.proxy.trim())
42
+ result.proxy = options.proxy;
43
+ if (typeof options.vpcEndpoint === "string" && options.vpcEndpoint.trim())
44
+ result.vpcEndpoint = options.vpcEndpoint;
45
+ if (typeof options.cwd === "string" && options.cwd.trim())
46
+ result.cwd = options.cwd;
47
+ return result;
48
+ }
25
49
  function buildFallbackEntry(m) {
26
50
  return {
27
51
  name: m.name,
@@ -61,6 +85,38 @@ const plugin = async (input) => {
61
85
  let configuredSessionKey;
62
86
  let configuredSessionId;
63
87
  let configuredCwd = workspaceCwd ?? process.cwd();
88
+ let configuredBridgeOptions = {};
89
+ let modelEnvironment = { ...process.env };
90
+ let modelOptions = { timeoutMs: MODEL_STARTUP_DISCOVERY_TIMEOUT_MS };
91
+ const pendingMcpAuth = new Map();
92
+ const closePendingMcpAuth = async (serverName) => {
93
+ const pending = pendingMcpAuth.get(serverName);
94
+ if (!pending)
95
+ return;
96
+ pendingMcpAuth.delete(serverName);
97
+ clearTimeout(pending.timer);
98
+ await pending.close();
99
+ };
100
+ const savePendingMcpAuth = async (serverName, session) => {
101
+ await closePendingMcpAuth(serverName);
102
+ const pending = {
103
+ query: session.query,
104
+ close: session.close,
105
+ timer: undefined,
106
+ };
107
+ const timer = setTimeout(() => {
108
+ if (pendingMcpAuth.get(serverName) !== pending)
109
+ return;
110
+ pendingMcpAuth.delete(serverName);
111
+ void pending.close().catch((error) => {
112
+ debug("Could not close expired MCP auth session:", describeError(error));
113
+ });
114
+ }, MCP_AUTH_TTL_MS);
115
+ if (typeof timer.unref === "function")
116
+ timer.unref();
117
+ pending.timer = timer;
118
+ pendingMcpAuth.set(serverName, pending);
119
+ };
64
120
  if (input) {
65
121
  if (isDebugEnabled())
66
122
  debug("Plugin initializing");
@@ -78,10 +134,25 @@ const plugin = async (input) => {
78
134
  async config(config) {
79
135
  config.provider ??= {};
80
136
  const existing = isRecord(config.provider.qoder) ? config.provider.qoder : {};
137
+ const existingOptions = isRecord(existing.options) ? existing.options : {};
138
+ const environment = discoveryEnvironment(existingOptions.env);
139
+ const discoveryConfig = discoveryOptions(existingOptions);
140
+ modelEnvironment = environment;
141
+ modelOptions = discoveryConfig;
142
+ // OpenCode snapshots provider models while this hook runs. Complete one
143
+ // bounded live discovery before returning so a fresh install exposes the
144
+ // current account catalog immediately; retain cache/fallback behavior if
145
+ // Qoder is offline, unauthenticated, or slower than the startup budget.
146
+ let dynamic = getCachedDynamicModels(environment, discoveryConfig);
147
+ try {
148
+ const refreshed = await fetchDynamicModels(true, environment, discoveryConfig);
149
+ if (refreshed)
150
+ dynamic = refreshed;
151
+ }
152
+ catch (error) {
153
+ debug("Startup model discovery unavailable; using cached/fallback models:", describeError(error));
154
+ }
81
155
  const builtinModels = {};
82
- // Use cached/fallback models immediately. Refresh the catalog in the
83
- // background so OpenCode startup never waits on network/auth discovery.
84
- const dynamic = getCachedDynamicModels();
85
156
  if (dynamic) {
86
157
  for (const m of dynamic) {
87
158
  if (!UNSAFE_KEYS.has(m.id))
@@ -94,16 +165,9 @@ const plugin = async (input) => {
94
165
  if (!UNSAFE_KEYS.has(m.id) && !builtinModels[m.id])
95
166
  builtinModels[m.id] = buildFallbackEntry(m);
96
167
  }
97
- if (Date.now() - lastModelRefreshAt >= MODEL_REFRESH_INTERVAL_MS) {
98
- lastModelRefreshAt = Date.now();
99
- void fetchDynamicModels(true).catch((error) => {
100
- debug("Background model refresh failed:", describeError(error));
101
- });
102
- }
103
168
  const existingModels = isRecord(existing.models) ? existing.models : {};
104
169
  const mergedModels = { ...builtinModels, ...existingModels };
105
170
  const bridgedMcp = bridgeMcpServers(config.mcp);
106
- const existingOptions = isRecord(existing.options) ? existing.options : {};
107
171
  const mergedOptions = { ...existingOptions };
108
172
  if (workspaceCwd && (typeof mergedOptions.cwd !== "string" || !mergedOptions.cwd.trim())) {
109
173
  mergedOptions.cwd = workspaceCwd;
@@ -118,6 +182,7 @@ const plugin = async (input) => {
118
182
  ...bridgedMcp,
119
183
  };
120
184
  }
185
+ configuredBridgeOptions = mergedOptions;
121
186
  config.provider.qoder = {
122
187
  ...existing,
123
188
  npm: existing.npm ?? PROVIDER_URL,
@@ -179,7 +244,7 @@ const plugin = async (input) => {
179
244
  description: "List known Qoder models, capabilities, limits, and price multipliers.",
180
245
  args: {},
181
246
  async execute() {
182
- const models = listModels();
247
+ const models = listModels(modelEnvironment, modelOptions);
183
248
  const lines = ["Qoder Models"];
184
249
  for (const model of models) {
185
250
  lines.push(` ${safeDisplay(model.id, "unknown", 256)}: ${safeDisplay(model.name, "unknown", 512)}`);
@@ -258,6 +323,158 @@ const plugin = async (input) => {
258
323
  }
259
324
  },
260
325
  }),
326
+ qoder_session_fork: tool({
327
+ description: "Fork a persisted Qoder session into a new independent session without changing the active session mapping.",
328
+ args: {
329
+ sessionId: tool.schema.string().optional().describe("Source Qoder session ID (defaults to the configured/resumed session)."),
330
+ dir: tool.schema.string().optional().describe("Working directory containing the session transcript (optional, defaults to the active project)."),
331
+ title: tool.schema.string().optional().describe("Optional title for the fork."),
332
+ upToMessageId: tool.schema.string().optional().describe("Optional transcript message UUID; fork only the history through this message."),
333
+ },
334
+ async execute(args) {
335
+ try {
336
+ const requestedId = typeof args.sessionId === "string" ? args.sessionId.trim() : "";
337
+ const dir = typeof args.dir === "string" && args.dir.trim() ? args.dir.trim() : configuredCwd;
338
+ let sourceId = requestedId || configuredSessionId;
339
+ if (!sourceId && configuredSessionKey) {
340
+ const persisted = await getQoderSessionForCwd(configuredSessionKey, dir);
341
+ sourceId = persisted?.qoderSessionId;
342
+ }
343
+ if (!sourceId) {
344
+ return {
345
+ title: "Qoder Session Fork",
346
+ output: "No source session ID is available. Provide sessionId or configure session persistence first.",
347
+ };
348
+ }
349
+ const title = typeof args.title === "string" && args.title.trim() ? args.title.trim() : undefined;
350
+ const upToMessageId = typeof args.upToMessageId === "string" && args.upToMessageId.trim()
351
+ ? args.upToMessageId.trim()
352
+ : undefined;
353
+ const forked = await forkSession(sourceId, {
354
+ dir,
355
+ ...(title ? { title } : {}),
356
+ ...(upToMessageId ? { upToMessageId } : {}),
357
+ });
358
+ return {
359
+ title: "Qoder Session Fork",
360
+ output: [
361
+ `Forked session ${safeDisplay(sourceId, "unknown", 256)}.`,
362
+ `New session ID: ${safeDisplay(forked.sessionId, "unknown", 256)}`,
363
+ "The active provider mapping was left unchanged; use the new ID as sessionId when you want to continue the fork.",
364
+ ].join("\n"),
365
+ };
366
+ }
367
+ catch (error) {
368
+ return { title: "Qoder Session Fork", output: `Failed to fork session: ${describeError(error)}` };
369
+ }
370
+ },
371
+ }),
372
+ qoder_mcp_status: tool({
373
+ description: "Inspect Qoder MCP server connection and OAuth status without sending a model turn.",
374
+ args: {},
375
+ async execute() {
376
+ let control;
377
+ try {
378
+ control = await openSdkControlSession(configuredBridgeOptions, configuredCwd);
379
+ const statuses = await withMcpControlTimeout(control.query.mcpServerStatus(), "status request");
380
+ return { title: "Qoder MCP Status", output: formatMcpStatuses(statuses) };
381
+ }
382
+ catch (error) {
383
+ return { title: "Qoder MCP Status", output: `Failed to inspect MCP status: ${describeError(error)}` };
384
+ }
385
+ finally {
386
+ if (control)
387
+ await control.close();
388
+ }
389
+ },
390
+ }),
391
+ qoder_mcp_auth: tool({
392
+ description: "Start or complete OAuth authentication for a configured Qoder MCP server.",
393
+ args: {
394
+ server: tool.schema.string().describe("Configured MCP server name."),
395
+ callbackUrl: tool.schema.string().optional().describe("OAuth callback URL copied after authorizing (omit to start the flow)."),
396
+ redirectUri: tool.schema.string().optional().describe("Optional redirect URI to use when starting OAuth."),
397
+ },
398
+ async execute(args) {
399
+ const serverName = typeof args.server === "string" ? args.server.trim() : "";
400
+ const callbackUrl = typeof args.callbackUrl === "string" ? args.callbackUrl.trim() : "";
401
+ const redirectUri = typeof args.redirectUri === "string" ? args.redirectUri.trim() : "";
402
+ if (!serverName || serverName.length > 256 || CONTROL_CHAR_TEST.test(serverName)) {
403
+ return { title: "Qoder MCP OAuth", output: "Provide a valid MCP server name." };
404
+ }
405
+ if (callbackUrl && (callbackUrl.length > 16_384 || CONTROL_CHAR_TEST.test(callbackUrl))) {
406
+ return { title: "Qoder MCP OAuth", output: "The callback URL is invalid or too long." };
407
+ }
408
+ if (redirectUri && (redirectUri.length > 16_384 || CONTROL_CHAR_TEST.test(redirectUri))) {
409
+ return { title: "Qoder MCP OAuth", output: "The redirect URI is invalid or too long." };
410
+ }
411
+ const pending = pendingMcpAuth.get(serverName);
412
+ if (callbackUrl && !pending) {
413
+ return {
414
+ title: "Qoder MCP OAuth",
415
+ output: `No pending OAuth flow for ${safeDisplay(serverName, "unknown")}. Call qoder_mcp_auth without callbackUrl first, then authorize using the returned URL.`,
416
+ };
417
+ }
418
+ if (callbackUrl && pending) {
419
+ try {
420
+ await withMcpControlTimeout(pending.query.mcpSubmitOAuthCallbackUrl(serverName, callbackUrl), "OAuth callback");
421
+ pendingMcpAuth.delete(serverName);
422
+ clearTimeout(pending.timer);
423
+ await pending.close();
424
+ return {
425
+ title: "Qoder MCP OAuth",
426
+ output: `OAuth authentication completed for ${safeDisplay(serverName, "unknown")}. Run qoder_mcp_status to verify the connection.`,
427
+ };
428
+ }
429
+ catch (error) {
430
+ return {
431
+ title: "Qoder MCP OAuth",
432
+ output: `OAuth callback failed: ${describeError(error)} The pending flow was retained for another callback attempt.`,
433
+ };
434
+ }
435
+ }
436
+ await closePendingMcpAuth(serverName);
437
+ let control;
438
+ try {
439
+ control = await openSdkControlSession(configuredBridgeOptions, configuredCwd);
440
+ const result = await withMcpControlTimeout(control.query.mcpAuthenticate(serverName, redirectUri || undefined), "OAuth authentication");
441
+ if (!result.requiresUserAction) {
442
+ await control.close();
443
+ control = undefined;
444
+ return {
445
+ title: "Qoder MCP OAuth",
446
+ output: `${safeDisplay(serverName, "unknown")} is already authenticated (or was refreshed silently).`,
447
+ };
448
+ }
449
+ if (!result.authUrl) {
450
+ await control.close();
451
+ control = undefined;
452
+ return {
453
+ title: "Qoder MCP OAuth",
454
+ output: `Qoder requires user action for ${safeDisplay(serverName, "unknown")}, but did not return an authorization URL.`,
455
+ };
456
+ }
457
+ await savePendingMcpAuth(serverName, control);
458
+ control = undefined;
459
+ return {
460
+ title: "Qoder MCP OAuth",
461
+ output: [
462
+ `Authorize ${safeDisplay(serverName, "unknown")} by opening this URL:`,
463
+ safeDisplay(result.authUrl, "(authorization URL unavailable)", 16_384),
464
+ "After the redirect, call qoder_mcp_auth again with the same server and the complete callbackUrl.",
465
+ `The pending flow expires in ${Math.round(MCP_AUTH_TTL_MS / 60_000)} minutes.`,
466
+ ].join("\n"),
467
+ };
468
+ }
469
+ catch (error) {
470
+ return { title: "Qoder MCP OAuth", output: `Failed to start OAuth: ${describeError(error)}` };
471
+ }
472
+ finally {
473
+ if (control)
474
+ await control.close();
475
+ }
476
+ },
477
+ }),
261
478
  qoder_plan_mode: tool({
262
479
  description: "Explain Qoder Plan Mode status and configuration in OpenCode.",
263
480
  args: {},
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { LanguageModelV3, LanguageModelV3CallOptions, LanguageModelV3GenerateResult, LanguageModelV3StreamPart, LanguageModelV3StreamResult } from "@ai-sdk/provider";
2
2
  import type { SDKArtifactInfo, SDKPlanModeSnapshot } from "@qoder-ai/qoder-agent-sdk";
3
+ import type { ModelDiscoveryOptions } from "./models.js";
3
4
  import type { QoderBridgeOptions } from "./types.js";
4
5
  type StreamController = ReadableStreamDefaultController<LanguageModelV3StreamPart>;
5
6
  type OpenBlock = {
@@ -46,6 +47,8 @@ interface StreamState {
46
47
  artifacts: SDKArtifactInfo[];
47
48
  planMode?: SDKPlanModeSnapshot;
48
49
  skillEvolution?: Record<string, unknown>;
50
+ modelEnvironment?: Record<string, string | undefined>;
51
+ modelDiscoveryOptions?: ModelDiscoveryOptions;
49
52
  }
50
53
  export declare function isProviderExecutedTool(name: string, functionToolNames: ReadonlySet<string>): boolean;
51
54
  export declare class QoderLanguageModel implements LanguageModelV3 {
@@ -1 +1 @@
1
- {"version":3,"file":"language-model.d.ts","sourceRoot":"","sources":["../src/language-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"language-model.d.ts","sourceRoot":"","sources":["../src/language-model.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,12 @@ import { deleteQoderSession, ensureQoderSession, getQoderSessionForCwd, getQoder
11
11
  import { hasQoderCredential, qoderAuth } from "./sdk-auth.js";
12
12
  import { QoderAuthError, QoderSdkResultError } from "./errors.js";
13
13
  import { debug, describeError, redactSensitiveText } from "./logger.js";
14
+ import { withTimeout } from "./async-utils.js";
14
15
  const UNSAFE_METADATA_KEYS = new Set(["__proto__", "prototype", "constructor"]);
15
16
  const DEFAULT_REQUEST_TIMEOUT_MS = 30 * 60 * 1000;
16
17
  const MAX_REQUEST_TIMEOUT_MS = 24 * 60 * 60 * 1000;
17
18
  const CLEANUP_GRACE_MS = 5_000;
19
+ const BACKGROUND_FLUSH_TIMEOUT_MS = 10_000;
18
20
  const MAX_SEEN_MESSAGE_IDS = 100_000;
19
21
  const MAX_TOOL_INPUT_CHARS = 4_000_000;
20
22
  const MAX_OUTPUT_CHARS = 8_000_000;
@@ -59,6 +61,25 @@ const QODER_BUILTIN_NAMES = {
59
61
  notebook_edit: "NotebookEdit",
60
62
  notebookedit: "NotebookEdit",
61
63
  };
64
+ async function flushSdkBackgroundWork(activeQuery, bridgeOptions) {
65
+ const operations = [];
66
+ if (bridgeOptions.memory && Object.keys(bridgeOptions.memory).length > 0) {
67
+ operations.push(["memory", () => activeQuery.flushMemory()]);
68
+ }
69
+ if (bridgeOptions.evolution) {
70
+ operations.push(["skill evolution", () => activeQuery.flushSkillEvolution()]);
71
+ }
72
+ await Promise.all(operations.map(async ([label, operation]) => {
73
+ try {
74
+ await withTimeout(operation(), BACKGROUND_FLUSH_TIMEOUT_MS, `Qoder ${label} background work exceeded ${BACKGROUND_FLUSH_TIMEOUT_MS}ms`);
75
+ }
76
+ catch (error) {
77
+ // Background enrichment must never turn a successful user turn into a
78
+ // failed generation. The SDK/CLI remains authoritative for its result.
79
+ debug(`Could not flush Qoder ${label} background work:`, describeError(error));
80
+ }
81
+ }));
82
+ }
62
83
  function toJsonValue(value, depth = 0, budget = { remaining: MAX_METADATA_NODES }) {
63
84
  if (depth > 8)
64
85
  return undefined;
@@ -228,7 +249,15 @@ function resolveCwd(value) {
228
249
  }
229
250
  }
230
251
  function qoderEnvironment(environment) {
231
- return environment ? { ...process.env, ...environment } : process.env;
252
+ if (!environment)
253
+ return process.env;
254
+ const merged = { ...process.env, ...environment };
255
+ // Windows exposes the inherited variable as `Path` on some Node builds,
256
+ // while SDK callers and child tools commonly address the POSIX spelling.
257
+ if (process.platform === "win32" && merged.PATH === undefined && merged.Path !== undefined) {
258
+ merged.PATH = merged.Path;
259
+ }
260
+ return merged;
232
261
  }
233
262
  const sessionTails = new Map();
234
263
  function waitForTurn(previous, signal) {
@@ -422,8 +451,14 @@ export class QoderLanguageModel {
422
451
  if (!hasQoderCredential(childEnvironment)) {
423
452
  throw new QoderAuthError("No Qoder credentials found. Run `qoder login` or set QODER_PERSONAL_ACCESS_TOKEN.");
424
453
  }
425
- const resolved = getModel(this.modelId);
426
- const model = resolved ?? getModel(DEFAULT_MODEL_ID);
454
+ const cwd = resolveCwd(this.bridgeOptions.cwd);
455
+ const modelDiscoveryOptions = { cwd };
456
+ if (this.bridgeOptions.proxy)
457
+ modelDiscoveryOptions.proxy = this.bridgeOptions.proxy;
458
+ if (this.bridgeOptions.vpcEndpoint)
459
+ modelDiscoveryOptions.vpcEndpoint = this.bridgeOptions.vpcEndpoint;
460
+ const resolved = getModel(this.modelId, childEnvironment, modelDiscoveryOptions);
461
+ const model = resolved ?? getModel(DEFAULT_MODEL_ID, childEnvironment, modelDiscoveryOptions);
427
462
  if (!resolved) {
428
463
  // Use the default catalog entry only for conservative prompt limits.
429
464
  // Preserve the requested ID on the SDK call so an unknown model is not
@@ -431,7 +466,6 @@ export class QoderLanguageModel {
431
466
  debug(`Unknown model id "${this.modelId}"; forwarding it with default prompt limits`);
432
467
  }
433
468
  const sessionKey = this.bridgeOptions.sessionKey ?? this.bridgeOptions.sessionId;
434
- const cwd = resolveCwd(this.bridgeOptions.cwd);
435
469
  const functionToolNames = new Set((options.tools ?? [])
436
470
  .filter((t) => t.type === "function")
437
471
  .map((t) => normalizeToolName(t.name)));
@@ -525,6 +559,8 @@ export class QoderLanguageModel {
525
559
  artifacts: [],
526
560
  planMode: undefined,
527
561
  skillEvolution: undefined,
562
+ modelEnvironment: childEnvironment,
563
+ modelDiscoveryOptions,
528
564
  };
529
565
  safeEnqueue(controller, { type: "stream-start", warnings: [] });
530
566
  try {
@@ -599,6 +635,16 @@ export class QoderLanguageModel {
599
635
  if (!externallyAborted && !state.resultReceived && !state.finished) {
600
636
  throw new QoderSdkResultError("incomplete_stream", "Qoder ended the stream before sending a result message");
601
637
  }
638
+ // Qoder schedules memory/evolution work after a completed turn.
639
+ // Drain it before closing the query so the result metadata and
640
+ // persisted session are not raced by background enrichment.
641
+ if (!externallyAborted
642
+ && !timedOut
643
+ && !state.failed
644
+ && state.resultReceived
645
+ && !abortController.signal.aborted) {
646
+ await flushSdkBackgroundWork(activeQuery, this.bridgeOptions);
647
+ }
602
648
  if (!externallyAborted && !state.failed && !abortController.signal.aborted && this.bridgeOptions.sessionPersistence && sessionKey) {
603
649
  try {
604
650
  await ensureQoderSession(sessionKey, sessionId, cwd, resetEpoch);
@@ -700,6 +746,10 @@ export class QoderLanguageModel {
700
746
  const proxy = this.bridgeOptions.proxy ?? process.env.HTTPS_PROXY ?? process.env.HTTP_PROXY;
701
747
  if (proxy)
702
748
  opts.proxy = proxy;
749
+ if (this.bridgeOptions.memory)
750
+ opts.memory = this.bridgeOptions.memory;
751
+ if (this.bridgeOptions.securityScan)
752
+ opts.securityScan = this.bridgeOptions.securityScan;
703
753
  if (this.bridgeOptions.evolution)
704
754
  opts.evolution = this.bridgeOptions.evolution;
705
755
  const persistSession = Boolean(this.bridgeOptions.sessionId || (this.bridgeOptions.sessionPersistence && sessionKey));
@@ -768,7 +818,7 @@ function handleSystem(m, state) {
768
818
  }
769
819
  else if (subtype === "available_models_update" && Array.isArray(m.models)) {
770
820
  debug(`Received live available_models_update with ${m.models.length} models`);
771
- applyLiveModelUpdates(m.models);
821
+ applyLiveModelUpdates(m.models, state.modelEnvironment, state.modelDiscoveryOptions);
772
822
  }
773
823
  else if (subtype === "artifacts_update" && Array.isArray(m.artifacts)) {
774
824
  const incoming = m.artifacts.slice(0, 1_000);