@the-open-engine/zeroshot 6.15.0 → 6.17.0

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.
Files changed (69) hide show
  1. package/README.md +10 -7
  2. package/cli/commands/providers.js +1 -0
  3. package/cli/index.js +45 -4
  4. package/lib/agent-cli-provider/adapters/codex.d.ts.map +1 -1
  5. package/lib/agent-cli-provider/adapters/codex.js +14 -2
  6. package/lib/agent-cli-provider/adapters/codex.js.map +1 -1
  7. package/lib/agent-cli-provider/adapters/common.d.ts +1 -0
  8. package/lib/agent-cli-provider/adapters/common.d.ts.map +1 -1
  9. package/lib/agent-cli-provider/adapters/common.js +14 -0
  10. package/lib/agent-cli-provider/adapters/common.js.map +1 -1
  11. package/lib/agent-cli-provider/adapters/index.d.ts.map +1 -1
  12. package/lib/agent-cli-provider/adapters/index.js +6 -1
  13. package/lib/agent-cli-provider/adapters/index.js.map +1 -1
  14. package/lib/agent-cli-provider/adapters/omp.d.ts +3 -0
  15. package/lib/agent-cli-provider/adapters/omp.d.ts.map +1 -0
  16. package/lib/agent-cli-provider/adapters/omp.js +356 -0
  17. package/lib/agent-cli-provider/adapters/omp.js.map +1 -0
  18. package/lib/agent-cli-provider/adapters/opencode.d.ts.map +1 -1
  19. package/lib/agent-cli-provider/adapters/opencode.js +52 -3
  20. package/lib/agent-cli-provider/adapters/opencode.js.map +1 -1
  21. package/lib/agent-cli-provider/contract-actions.d.ts.map +1 -1
  22. package/lib/agent-cli-provider/contract-actions.js +19 -8
  23. package/lib/agent-cli-provider/contract-actions.js.map +1 -1
  24. package/lib/agent-cli-provider/contract-fallback.d.ts.map +1 -1
  25. package/lib/agent-cli-provider/contract-fallback.js +9 -0
  26. package/lib/agent-cli-provider/contract-fallback.js.map +1 -1
  27. package/lib/agent-cli-provider/contract-options.d.ts.map +1 -1
  28. package/lib/agent-cli-provider/contract-options.js +7 -0
  29. package/lib/agent-cli-provider/contract-options.js.map +1 -1
  30. package/lib/agent-cli-provider/errors.d.ts +7 -0
  31. package/lib/agent-cli-provider/errors.d.ts.map +1 -1
  32. package/lib/agent-cli-provider/errors.js +14 -0
  33. package/lib/agent-cli-provider/errors.js.map +1 -1
  34. package/lib/agent-cli-provider/index.d.ts +1 -1
  35. package/lib/agent-cli-provider/index.d.ts.map +1 -1
  36. package/lib/agent-cli-provider/index.js.map +1 -1
  37. package/lib/agent-cli-provider/provider-registry.d.ts +66 -3
  38. package/lib/agent-cli-provider/provider-registry.d.ts.map +1 -1
  39. package/lib/agent-cli-provider/provider-registry.js +54 -2
  40. package/lib/agent-cli-provider/provider-registry.js.map +1 -1
  41. package/lib/agent-cli-provider/single-agent-runtime.d.ts +14 -2
  42. package/lib/agent-cli-provider/single-agent-runtime.d.ts.map +1 -1
  43. package/lib/agent-cli-provider/single-agent-runtime.js +97 -22
  44. package/lib/agent-cli-provider/single-agent-runtime.js.map +1 -1
  45. package/lib/agent-cli-provider/types.d.ts +30 -2
  46. package/lib/agent-cli-provider/types.d.ts.map +1 -1
  47. package/lib/agent-cli-provider/types.js.map +1 -1
  48. package/package.json +1 -1
  49. package/src/agent/agent-lifecycle.js +52 -1
  50. package/src/agent/agent-task-executor.js +8 -3
  51. package/src/agent-cli-provider/adapters/codex.ts +23 -2
  52. package/src/agent-cli-provider/adapters/common.ts +14 -0
  53. package/src/agent-cli-provider/adapters/index.ts +16 -2
  54. package/src/agent-cli-provider/adapters/omp.ts +448 -0
  55. package/src/agent-cli-provider/adapters/opencode.ts +60 -4
  56. package/src/agent-cli-provider/contract-actions.ts +20 -9
  57. package/src/agent-cli-provider/contract-fallback.ts +9 -0
  58. package/src/agent-cli-provider/contract-options.ts +7 -0
  59. package/src/agent-cli-provider/errors.ts +14 -0
  60. package/src/agent-cli-provider/index.ts +2 -0
  61. package/src/agent-cli-provider/provider-registry.ts +59 -2
  62. package/src/agent-cli-provider/single-agent-runtime.ts +144 -24
  63. package/src/agent-cli-provider/types.ts +32 -1
  64. package/src/claude-task-runner.js +11 -0
  65. package/src/orchestrator.js +8 -3
  66. package/src/providers/index.js +6 -0
  67. package/src/task-run-model-args.js +58 -40
  68. package/src/task-spawn-cleanup-ownership.js +3 -0
  69. package/src/task-startup-error.js +68 -0
@@ -0,0 +1,356 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ompAdapter = void 0;
4
+ const schema_1 = require("../schema");
5
+ const contract_errors_1 = require("../contract-errors");
6
+ const json_1 = require("../json");
7
+ const common_1 = require("./common");
8
+ const MODEL_CATALOG = {};
9
+ const LEVEL_MAPPING = {
10
+ level1: { rank: 1, model: null, reasoningEffort: 'low' },
11
+ level2: { rank: 2, model: null, reasoningEffort: 'medium' },
12
+ level3: { rank: 3, model: null, reasoningEffort: 'high' },
13
+ };
14
+ const IGNORED_EVENT_TYPES = new Set([
15
+ 'session',
16
+ 'agent_start',
17
+ 'agent_end',
18
+ 'turn_start',
19
+ 'queue_update',
20
+ 'compaction_start',
21
+ 'compaction_end',
22
+ 'auto_retry_start',
23
+ 'auto_retry_end',
24
+ ]);
25
+ function detectCliFeatures(helpText) {
26
+ const help = helpText ?? '';
27
+ const unknown = !help;
28
+ return {
29
+ provider: 'omp',
30
+ supportsModeJson: unknown ? true : /--mode\b/.test(help) && /\bjson\b/.test(help),
31
+ supportsPrint: unknown ? true : /-p\b/.test(help) || /--print\b/.test(help),
32
+ supportsCwd: unknown ? true : /--cwd\b/.test(help),
33
+ supportsAutoApprove: unknown ? true : /--auto-approve\b/.test(help),
34
+ supportsModel: unknown ? true : /--model\b/.test(help),
35
+ supportsThinking: unknown ? true : /--thinking\b/.test(help),
36
+ supportsNoExtensions: unknown ? true : /--no-extensions\b/.test(help),
37
+ supportsNoSkills: unknown ? true : /--no-skills\b/.test(help),
38
+ supportsNoRules: unknown ? true : /--no-rules\b/.test(help),
39
+ supportsNoTitle: unknown ? true : /--no-title\b/.test(help),
40
+ unknown,
41
+ };
42
+ }
43
+ function assertRequiredOmpFeatures(options) {
44
+ const features = (0, common_1.optionFeatures)(options);
45
+ const required = [
46
+ [features.supportsModeJson, '--mode json'],
47
+ [features.supportsPrint, '-p/--print'],
48
+ [features.supportsCwd, '--cwd'],
49
+ [features.supportsAutoApprove, '--auto-approve'],
50
+ ];
51
+ const missing = required.filter(([supported]) => supported === false).map(([, flag]) => flag);
52
+ if (missing.length === 0)
53
+ return;
54
+ throw (0, contract_errors_1.contractError)({
55
+ code: 'unsupported-provider-cli',
56
+ exitCode: 2,
57
+ message: 'omp CLI is missing required non-interactive flag(s): ' +
58
+ missing.join(', ') +
59
+ '. Update/install @oh-my-pi/pi-coding-agent; Zeroshot will not silently fall back to Pi or another provider.',
60
+ });
61
+ }
62
+ function failClosedUnsupportedSessionControl(options) {
63
+ const hasResumeSessionId = options.resumeSessionId !== undefined;
64
+ if (!hasResumeSessionId && !options.continueSession)
65
+ return;
66
+ const field = hasResumeSessionId ? 'options.resumeSessionId' : 'options.continueSession';
67
+ throw (0, contract_errors_1.contractError)({
68
+ code: 'invalid-field',
69
+ field,
70
+ exitCode: 2,
71
+ message: 'OMP CLI does not support resume/continue session control; fail closed and start a fresh run instead.',
72
+ });
73
+ }
74
+ function addOptionalFlags(args, options) {
75
+ const features = (0, common_1.optionFeatures)(options);
76
+ if (features.supportsNoExtensions !== false)
77
+ args.push('--no-extensions');
78
+ if (features.supportsNoSkills !== false)
79
+ args.push('--no-skills');
80
+ if (features.supportsNoRules !== false)
81
+ args.push('--no-rules');
82
+ if (features.supportsNoTitle !== false)
83
+ args.push('--no-title');
84
+ }
85
+ function addModelArgs(args, options) {
86
+ const features = (0, common_1.optionFeatures)(options);
87
+ if (options.modelSpec?.model && features.supportsModel !== false) {
88
+ args.push('--model', options.modelSpec.model);
89
+ }
90
+ if (options.modelSpec?.reasoningEffort && features.supportsThinking !== false) {
91
+ args.push('--thinking', options.modelSpec.reasoningEffort);
92
+ }
93
+ }
94
+ function collectWarnings(options) {
95
+ const features = (0, common_1.optionFeatures)(options);
96
+ const warnings = [];
97
+ if (options.jsonSchema) {
98
+ warnings.push((0, common_1.warning)('omp', 'omp-jsonschema', 'OMP CLI does not support provider-native JSON schema; appending schema instructions to the prompt.'));
99
+ }
100
+ if (options.modelSpec?.model && features.supportsModel === false) {
101
+ warnings.push((0, common_1.warning)('omp', 'omp-model-unsupported', "OMP CLI does not advertise --model; continuing with OMP's own configured model."));
102
+ }
103
+ if (options.modelSpec?.reasoningEffort && features.supportsThinking === false) {
104
+ warnings.push((0, common_1.warning)('omp', 'omp-thinking-unsupported', 'OMP CLI does not advertise --thinking; continuing without a reasoning-effort override.'));
105
+ }
106
+ return warnings;
107
+ }
108
+ function buildCommand(context, options = {}) {
109
+ assertRequiredOmpFeatures(options);
110
+ failClosedUnsupportedSessionControl(options);
111
+ const finalContext = options.jsonSchema
112
+ ? (0, schema_1.appendJsonSchemaPrompt)(context, options.jsonSchema)
113
+ : context;
114
+ const args = ['--mode', 'json', '-p'];
115
+ if (options.cwd)
116
+ args.push('--cwd', options.cwd);
117
+ args.push('--auto-approve');
118
+ addOptionalFlags(args, options);
119
+ addModelArgs(args, options);
120
+ args.push(finalContext);
121
+ return (0, common_1.commandSpec)({
122
+ binary: 'omp',
123
+ args,
124
+ env: {},
125
+ ...(options.cwd === undefined ? {} : { cwd: options.cwd }),
126
+ warnings: collectWarnings(options),
127
+ });
128
+ }
129
+ function createOmpState() {
130
+ return {
131
+ ...(0, common_1.createParserState)('omp'),
132
+ lastAssistantText: '',
133
+ lastAssistantThinking: '',
134
+ };
135
+ }
136
+ function assistantSnapshot(message) {
137
+ if ((0, json_1.getString)(message, 'role') !== 'assistant')
138
+ return { text: '', thinking: '' };
139
+ let text = '';
140
+ let thinking = '';
141
+ for (const item of (0, json_1.getArray)(message, 'content')) {
142
+ if (!(0, json_1.isRecord)(item))
143
+ continue;
144
+ const type = (0, json_1.getString)(item, 'type');
145
+ if (type === 'text') {
146
+ text += (0, json_1.getString)(item, 'text') ?? '';
147
+ }
148
+ else if (type === 'thinking') {
149
+ thinking += (0, json_1.getString)(item, 'thinking') ?? '';
150
+ }
151
+ }
152
+ return { text, thinking };
153
+ }
154
+ function snapshotDelta(previous, current) {
155
+ if (!current)
156
+ return null;
157
+ if (previous === current)
158
+ return null;
159
+ if (current.startsWith(previous))
160
+ return current.slice(previous.length) || null;
161
+ return current;
162
+ }
163
+ function emitAssistantSnapshot(message, state) {
164
+ const snapshot = assistantSnapshot(message);
165
+ const events = [];
166
+ const textDelta = snapshotDelta(state.lastAssistantText ?? '', snapshot.text);
167
+ if (textDelta)
168
+ events.push({ type: 'text', text: textDelta });
169
+ state.lastAssistantText = snapshot.text;
170
+ const thinkingDelta = snapshotDelta(state.lastAssistantThinking ?? '', snapshot.thinking);
171
+ if (thinkingDelta)
172
+ events.push({ type: 'thinking', text: thinkingDelta });
173
+ state.lastAssistantThinking = snapshot.thinking;
174
+ return events;
175
+ }
176
+ function parseAssistantEvent(event, state) {
177
+ const type = (0, json_1.getString)(event, 'type');
178
+ if (type === 'text_delta') {
179
+ const delta = (0, json_1.getString)(event, 'delta');
180
+ if (!delta)
181
+ return null;
182
+ state.lastAssistantText += delta;
183
+ return { type: 'text', text: delta };
184
+ }
185
+ if (type === 'thinking_delta') {
186
+ const delta = (0, json_1.getString)(event, 'delta');
187
+ if (!delta)
188
+ return null;
189
+ state.lastAssistantThinking += delta;
190
+ return { type: 'thinking', text: delta };
191
+ }
192
+ return null;
193
+ }
194
+ function parseToolExecutionStart(event, state) {
195
+ const toolId = (0, json_1.getOptionalString)(event, 'toolCallId');
196
+ state.lastToolId = toolId;
197
+ return {
198
+ type: 'tool_call',
199
+ toolName: (0, json_1.getOptionalString)(event, 'toolName'),
200
+ toolId,
201
+ input: event.args ?? {},
202
+ };
203
+ }
204
+ function parseToolExecutionUpdate(event, state) {
205
+ const toolId = (0, json_1.getOptionalString)(event, 'toolCallId') ?? state.lastToolId;
206
+ if (toolId !== undefined)
207
+ state.lastToolId = toolId;
208
+ if (!Object.prototype.hasOwnProperty.call(event, 'partialResult'))
209
+ return null;
210
+ return {
211
+ type: 'tool_result',
212
+ toolId,
213
+ content: event.partialResult,
214
+ isError: false,
215
+ };
216
+ }
217
+ function parseToolExecutionEnd(event, state) {
218
+ const toolId = (0, json_1.getOptionalString)(event, 'toolCallId') ?? state.lastToolId;
219
+ return {
220
+ type: 'tool_result',
221
+ toolId,
222
+ content: event.result ?? '',
223
+ isError: (0, json_1.getBoolean)(event, 'isError') ?? false,
224
+ };
225
+ }
226
+ function parseTurnEnd(event, state) {
227
+ const message = (0, json_1.getRecord)(event, 'message');
228
+ const events = [];
229
+ if (message !== null) {
230
+ events.push(...emitAssistantSnapshot(message, state));
231
+ }
232
+ const usage = message ? (0, json_1.getRecord)(message, 'usage') ?? {} : {};
233
+ const stopReason = message ? (0, json_1.getString)(message, 'stopReason') : null;
234
+ const errorMessage = message ? (0, json_1.getString)(message, 'errorMessage') : null;
235
+ const snapshot = message ? assistantSnapshot(message) : { text: '', thinking: '' };
236
+ const success = stopReason !== 'error' && stopReason !== 'aborted' && !errorMessage;
237
+ events.push({
238
+ type: 'result',
239
+ success,
240
+ result: success ? snapshot.text || null : null,
241
+ error: success ? null : (errorMessage ?? stopReason ?? 'OMP turn failed'),
242
+ inputTokens: (0, json_1.getNumber)(usage, 'input') ?? 0,
243
+ outputTokens: (0, json_1.getNumber)(usage, 'output') ?? 0,
244
+ cacheReadInputTokens: (0, json_1.getNumber)(usage, 'cacheRead') ?? 0,
245
+ cacheCreationInputTokens: (0, json_1.getNumber)(usage, 'cacheWrite') ?? 0,
246
+ cost: (0, json_1.getRecord)(usage, 'cost') ?? null,
247
+ modelUsage: usage,
248
+ });
249
+ return events;
250
+ }
251
+ function parseMessageEvent(type, event, state) {
252
+ if (type === 'message_start') {
253
+ const message = (0, json_1.getRecord)(event, 'message');
254
+ if (message !== null && (0, json_1.getString)(message, 'role') === 'assistant') {
255
+ state.lastAssistantText = '';
256
+ state.lastAssistantThinking = '';
257
+ }
258
+ return null;
259
+ }
260
+ if (type === 'message_update') {
261
+ const assistantMessageEvent = (0, json_1.getRecord)(event, 'assistantMessageEvent');
262
+ if (assistantMessageEvent !== null) {
263
+ const assistantEvent = parseAssistantEvent(assistantMessageEvent, state);
264
+ if (assistantEvent !== null)
265
+ return assistantEvent;
266
+ }
267
+ const message = (0, json_1.getRecord)(event, 'message');
268
+ return message === null ? null : emitAssistantSnapshot(message, state);
269
+ }
270
+ if (type !== 'message_end')
271
+ return undefined;
272
+ const message = (0, json_1.getRecord)(event, 'message');
273
+ return message === null ? null : emitAssistantSnapshot(message, state);
274
+ }
275
+ function parseToolEvent(type, event, state) {
276
+ if (type === 'tool_execution_start')
277
+ return parseToolExecutionStart(event, state);
278
+ if (type === 'tool_execution_update')
279
+ return parseToolExecutionUpdate(event, state);
280
+ if (type === 'tool_execution_end')
281
+ return parseToolExecutionEnd(event, state);
282
+ return undefined;
283
+ }
284
+ function parseEvent(line, state) {
285
+ const parsed = (0, json_1.tryParseJson)(line);
286
+ if (!(0, json_1.isRecord)(parsed))
287
+ return null;
288
+ const type = (0, json_1.getString)(parsed, 'type');
289
+ if (type === null || IGNORED_EVENT_TYPES.has(type))
290
+ return null;
291
+ const messageEvent = parseMessageEvent(type, parsed, state);
292
+ if (messageEvent !== undefined)
293
+ return messageEvent;
294
+ const toolEvent = parseToolEvent(type, parsed, state);
295
+ if (toolEvent !== undefined)
296
+ return toolEvent;
297
+ if (type === 'turn_end')
298
+ return parseTurnEnd(parsed, state);
299
+ return null;
300
+ }
301
+ function resolveModelSpec(level, overrides) {
302
+ return (0, common_1.resolveModelSpecWithConfig)({
303
+ mapping: LEVEL_MAPPING,
304
+ defaultLevel: 'level2',
305
+ level,
306
+ overrides,
307
+ validateModelId,
308
+ });
309
+ }
310
+ function validateModelId(modelId) {
311
+ if (modelId === undefined || modelId === null)
312
+ return modelId;
313
+ if (typeof modelId !== 'string') {
314
+ throw new Error(`Invalid model "${(0, json_1.unknownToMessage)(modelId)}" for provider "omp".`);
315
+ }
316
+ return modelId;
317
+ }
318
+ function classifyError(error) {
319
+ return (0, common_1.classifyBaseProviderError)(error, [
320
+ /\brate(?:[_ -]?limit| limited)\b/i,
321
+ /\bquota\b/i,
322
+ /\bresource[_ -]?exhausted\b/i,
323
+ /\btemporar(?:y|ily)\b/i,
324
+ /\boverloaded\b/i,
325
+ /\bservice unavailable\b/i,
326
+ ], [
327
+ /\b(cancelled|canceled|aborted|interrupted)\b/i,
328
+ /\brun\s*\/login\b/i,
329
+ /\bmissing api key\b/i,
330
+ /\bno valid authentication\b/i,
331
+ /\bunknown option\b/i,
332
+ /\bfailed to load\b/i,
333
+ /\bcannot find module\b/i,
334
+ /\bno such file or directory\b/i,
335
+ ]);
336
+ }
337
+ exports.ompAdapter = {
338
+ id: 'omp',
339
+ displayName: 'OMP',
340
+ binary: 'omp',
341
+ adapterVersion: '1',
342
+ credentialEnvKeys: [],
343
+ modelCatalog: MODEL_CATALOG,
344
+ levelMapping: LEVEL_MAPPING,
345
+ defaultLevel: 'level2',
346
+ defaultMaxLevel: 'level3',
347
+ defaultMinLevel: 'level1',
348
+ detectCliFeatures,
349
+ buildCommand,
350
+ parseEvent,
351
+ createParserState: createOmpState,
352
+ resolveModelSpec,
353
+ validateModelId,
354
+ classifyError,
355
+ };
356
+ //# sourceMappingURL=omp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"omp.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/omp.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"AASA,OAAO,EAML,KAAK,eAAe,EAErB,MAAM,UAAU,CAAC;AAgMlB,eAAO,MAAM,eAAe,EAAE,eAyB7B,CAAC"}
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"AAWA,OAAO,EAML,KAAK,eAAe,EAErB,MAAM,UAAU,CAAC;AAqPlB,eAAO,MAAM,eAAe,EAAE,eA0B7B,CAAC"}
@@ -1,11 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.opencodeAdapter = void 0;
4
+ const contract_errors_1 = require("../contract-errors");
5
+ const errors_1 = require("../errors");
4
6
  const schema_1 = require("../schema");
5
7
  const json_1 = require("../json");
6
8
  const common_1 = require("./common");
7
9
  const opencode_models_1 = require("./opencode-models");
8
- function detectCliFeatures(helpText) {
10
+ function detectCliFeatures(helpText, versionText) {
9
11
  const help = helpText ?? '';
10
12
  const unknown = !help;
11
13
  return {
@@ -16,6 +18,8 @@ function detectCliFeatures(helpText) {
16
18
  supportsDir: unknown ? false : /--dir\b/.test(help),
17
19
  supportsCwd: unknown ? false : /--cwd\b/.test(help),
18
20
  supportsAutoApprove: false,
21
+ supportsResume: !unknown && /--session\b/.test(help) && /--continue\b/.test(help),
22
+ supportsWebSearch: (0, common_1.isCliVersionAtLeast)(versionText, '1.0.137'),
19
23
  unknown,
20
24
  };
21
25
  }
@@ -43,23 +47,67 @@ function addOpencodeOptionalArgs(args, options) {
43
47
  }
44
48
  function collectOpencodeWarnings(options) {
45
49
  const features = (0, common_1.optionFeatures)(options);
46
- const warnings = (0, common_1.unsupportedSessionControlWarnings)('opencode', options);
50
+ const warnings = [];
47
51
  if (options.modelSpec?.reasoningEffort && features.supportsVariant === false) {
48
52
  warnings.push((0, common_1.warning)('opencode', 'opencode-variant', 'Opencode CLI does not support --variant; skipping reasoningEffort.'));
49
53
  }
50
54
  return warnings;
51
55
  }
56
+ function addSessionArgs(args, options) {
57
+ const hasResumeSessionId = options.resumeSessionId !== undefined;
58
+ if (!hasResumeSessionId && !options.continueSession)
59
+ return;
60
+ const field = hasResumeSessionId ? 'options.resumeSessionId' : 'options.continueSession';
61
+ if (hasResumeSessionId && options.resumeSessionId?.trim().length === 0) {
62
+ throw (0, contract_errors_1.contractError)({
63
+ code: 'invalid-field',
64
+ field,
65
+ exitCode: 2,
66
+ message: 'options.resumeSessionId must be a non-empty OpenCode session ID.',
67
+ });
68
+ }
69
+ if ((0, common_1.optionFeatures)(options).supportsResume === false) {
70
+ throw (0, contract_errors_1.contractError)({
71
+ code: 'invalid-field',
72
+ field,
73
+ exitCode: 2,
74
+ message: 'OpenCode CLI cannot safely run continuation context because this installation lacks run --session/--continue.',
75
+ });
76
+ }
77
+ if (options.resumeSessionId) {
78
+ args.push('--session', options.resumeSessionId);
79
+ }
80
+ else {
81
+ args.push('--continue');
82
+ }
83
+ }
84
+ function webSearchEnv(options) {
85
+ if (options.webSearch !== true)
86
+ return {};
87
+ if ((0, common_1.optionFeatures)(options).supportsWebSearch !== true) {
88
+ throw new errors_1.UnsupportedProviderCapabilityError('opencode', 'webSearch', 'OpenCode web search requires a parseable OpenCode CLI version >= 1.0.137. Update OpenCode or set providerSettings.opencode.webSearch to false.');
89
+ }
90
+ return { OPENCODE_ENABLE_EXA: '1' };
91
+ }
92
+ function extractSessionId(line) {
93
+ const event = (0, json_1.tryParseJson)(line.trim());
94
+ if (!(0, json_1.isRecord)(event))
95
+ return null;
96
+ const sessionId = (0, json_1.getString)(event, 'sessionID') ?? (0, json_1.getString)(event, 'sessionId');
97
+ return sessionId?.trim() || null;
98
+ }
52
99
  function buildCommand(context, options = {}) {
53
100
  const finalContext = options.jsonSchema
54
101
  ? (0, schema_1.appendJsonSchemaPrompt)(context, options.jsonSchema)
55
102
  : context;
56
103
  const args = ['run'];
57
104
  addOpencodeOptionalArgs(args, options);
105
+ addSessionArgs(args, options);
58
106
  args.push(finalContext);
59
107
  return (0, common_1.commandSpec)({
60
108
  binary: 'opencode',
61
109
  args,
62
- env: {},
110
+ env: webSearchEnv(options),
63
111
  ...(options.cwd === undefined ? {} : { cwd: options.cwd }),
64
112
  warnings: collectOpencodeWarnings(options),
65
113
  });
@@ -173,6 +221,7 @@ exports.opencodeAdapter = {
173
221
  defaultMinLevel: 'level1',
174
222
  detectCliFeatures,
175
223
  buildCommand,
224
+ extractSessionId,
176
225
  parseEvent,
177
226
  createParserState: () => (0, common_1.createParserState)('opencode'),
178
227
  resolveModelSpec: opencode_models_1.resolveModelSpec,
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract-actions.d.ts","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-actions.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAsGtD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,aAAa,GACpB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoB9C"}
1
+ {"version":3,"file":"contract-actions.d.ts","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-actions.ts"],"names":[],"mappings":"AAGA,OAAO,EAGL,KAAK,gBAAgB,EAEtB,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAIL,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAK5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAiHtD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,aAAa,GACpB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoB9C"}
@@ -13,6 +13,10 @@ const single_agent_runtime_1 = require("./single-agent-runtime");
13
13
  const json_1 = require("./json");
14
14
  function runBuildCommand(request) {
15
15
  const { adapter, commandSpec, options } = (0, contract_support_1.buildCommandSpec)(request);
16
+ const webSearch = {
17
+ requested: options.webSearch === true,
18
+ effective: options.webSearch === true && options.cliFeatures?.supportsWebSearch === true,
19
+ };
16
20
  return (0, contract_envelope_1.successEnvelope)({
17
21
  command: request.command ?? 'build-command',
18
22
  adapter,
@@ -21,21 +25,27 @@ function runBuildCommand(request) {
21
25
  evidence: {
22
26
  outputFormat: options.outputFormat ?? null,
23
27
  schemaMode: (0, contract_support_1.schemaMode)(options),
28
+ configuration: { webSearch },
24
29
  },
25
30
  result: {
26
31
  commandSpec,
27
32
  outputFormat: options.outputFormat ?? null,
28
33
  schemaMode: (0, contract_support_1.schemaMode)(options),
34
+ configuration: { webSearch },
29
35
  },
30
36
  });
31
37
  }
32
38
  function runProbe(request) {
33
39
  const adapter = (0, contract_support_1.adapterForProvider)(request.provider);
34
40
  const helpText = typeof request.raw.helpText === 'string' ? request.raw.helpText : null;
35
- const runtimeProbe = helpText === null ? (0, single_agent_runtime_1.probeRuntimeProviderCli)(adapter.id) : null;
36
- const capabilities = runtimeProbe === null
37
- ? adapter.detectCliFeatures(helpText)
38
- : runtimeProbe.capabilities;
41
+ const versionText = typeof request.raw.versionText === 'string' ? request.raw.versionText : '';
42
+ const runtimeProbe = helpText === null
43
+ ? (0, single_agent_runtime_1.probeRuntimeProviderCli)(adapter.id)
44
+ : (0, single_agent_runtime_1.probeRuntimeProviderCli)(adapter.id, {
45
+ available: true,
46
+ helpText,
47
+ versionText,
48
+ });
39
49
  return (0, contract_envelope_1.successEnvelope)({
40
50
  command: request.command ?? 'probe',
41
51
  adapter,
@@ -48,10 +58,11 @@ function runProbe(request) {
48
58
  },
49
59
  contractVersion: contract_envelope_1.providerExecutableSchemaVersion,
50
60
  adapterVersion: adapter.adapterVersion,
51
- available: runtimeProbe?.available ?? true,
52
- helpText: runtimeProbe?.helpText ?? helpText,
53
- versionText: runtimeProbe?.versionText ?? null,
54
- capabilities,
61
+ available: runtimeProbe.available,
62
+ helpText: runtimeProbe.helpText,
63
+ versionText: runtimeProbe.versionText,
64
+ capabilities: runtimeProbe.capabilities,
65
+ configuration: runtimeProbe.configuration,
55
66
  credentials: adapter.credentialEnvKeys.map((key) => ({
56
67
  key,
57
68
  present: Boolean(request.env[key] ?? process.env[key]),
@@ -1 +1 @@
1
- {"version":3,"file":"contract-actions.js","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract-actions.js","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-actions.ts"],"names":[],"mappings":";;AAsIA,0CAuBC;AA7JD,yCAAmD;AACnD,iDAAkE;AAClE,uDAAkD;AAClD,2DAK6B;AAC7B,uDAA8C;AAC9C,qDAAkD;AAClD,yDAK4B;AAC5B,qCAA8C;AAC9C,iEAAiE;AACjE,iCAA+D;AAI/D,SAAS,eAAe,CAAC,OAAoB;IAC3C,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,IAAA,mCAAgB,EAAC,OAAO,CAAC,CAAC;IACpE,MAAM,SAAS,GAAG;QAChB,SAAS,EAAE,OAAO,CAAC,SAAS,KAAK,IAAI;QACrC,SAAS,EAAE,OAAO,CAAC,SAAS,KAAK,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,iBAAiB,KAAK,IAAI;KACzF,CAAC;IACF,OAAO,IAAA,mCAAe,EAAC;QACrB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,eAAe;QAC3C,OAAO;QACP,QAAQ,EAAE,WAAW,CAAC,QAAQ;QAC9B,UAAU,EAAE,IAAA,gCAAiB,EAAC,WAAW,CAAC;QAC1C,QAAQ,EAAE;YACR,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;YAC1C,UAAU,EAAE,IAAA,6BAAU,EAAC,OAAO,CAAC;YAC/B,aAAa,EAAE,EAAE,SAAS,EAAE;SAC7B;QACD,MAAM,EAAE;YACN,WAAW;YACX,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,IAAI;YAC1C,UAAU,EAAE,IAAA,6BAAU,EAAC,OAAO,CAAC;YAC/B,aAAa,EAAE,EAAE,SAAS,EAAE;SAC7B;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,QAAQ,CAAC,OAAoB;IACpC,MAAM,OAAO,GAAG,IAAA,qCAAkB,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,OAAO,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACxF,MAAM,WAAW,GAAG,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,YAAY,GAChB,QAAQ,KAAK,IAAI;QACf,CAAC,CAAC,IAAA,8CAAuB,EAAC,OAAO,CAAC,EAAE,CAAC;QACrC,CAAC,CAAC,IAAA,8CAAuB,EAAC,OAAO,CAAC,EAAE,EAAE;YAClC,SAAS,EAAE,IAAI;YACf,QAAQ;YACR,WAAW;SACZ,CAAC,CAAC;IACT,OAAO,IAAA,mCAAe,EAAC;QACrB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,OAAO;QACnC,OAAO;QACP,UAAU,EAAE,IAAA,4BAAa,EAAC,OAAO,CAAC,GAAG,CAAC;QACtC,MAAM,EAAE;YACN,QAAQ,EAAE;gBACR,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,WAAW,EAAE,OAAO,CAAC,WAAW;gBAChC,MAAM,EAAE,OAAO,CAAC,MAAM;aACvB;YACD,eAAe,EAAE,mDAA+B;YAChD,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,SAAS,EAAE,YAAY,CAAC,SAAS;YACjC,QAAQ,EAAE,YAAY,CAAC,QAAQ;YAC/B,WAAW,EAAE,YAAY,CAAC,WAAW;YACrC,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,aAAa,EAAE,YAAY,CAAC,aAAa;YACzC,WAAW,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACnD,GAAG;gBACH,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;aACvD,CAAC,CAAC;SACJ;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAS,yBAAyB,CAAC,cAAmC,EAAE,KAAc;IACpF,MAAM,MAAM,GAAG,IAAA,2BAAkB,EAAC,KAAK,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,MAAM,CAAC;IACpD,IAAI,MAAM,KAAK,GAAG;QAAE,OAAO,YAAY,CAAC;IACxC,MAAM,OAAO,GAAG,IAAA,uBAAgB,EAAC,KAAK,CAAC,CAAC;IACxC,IAAI,sDAAsD,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,MAAM,CAAC;IACxF,IAAI,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,YAAY,CAAC;IAC5E,IAAI,qCAAqC,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,QAAQ,CAAC;IACzE,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC;AAC9D,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,MAAM,QAAQ,GAA4B;QACxC,OAAO,EAAE,IAAA,uBAAgB,EAAC,KAAK,CAAC;KACjC,CAAC;IACF,MAAM,MAAM,GAAG,IAAA,2BAAkB,EAAC,KAAK,CAAC,CAAC;IACzC,IAAI,MAAM,KAAK,IAAI;QAAE,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;IAC9C,IAAI,IAAA,eAAQ,EAAC,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,IAAA,gBAAS,EAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACtC,IAAI,IAAI,KAAK,IAAI;YAAE,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC1C,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAoB;IAC5C,MAAM,OAAO,GAAG,IAAA,qCAAkB,EAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;IAChC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACxB,MAAM,IAAA,+BAAa,EAAC;YAClB,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,oBAAoB;YAC7B,QAAQ,EAAE,CAAC;YACX,KAAK,EAAE,OAAO;SACf,CAAC,CAAC;IACL,CAAC;IACD,MAAM,cAAc,GAAG,IAAA,gCAAqB,EAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAChE,OAAO,IAAA,mCAAe,EAAC;QACrB,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,gBAAgB;QAC5C,OAAO;QACP,UAAU,EAAE,IAAA,4BAAa,EAAC,OAAO,CAAC,GAAG,CAAC;QACtC,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC;QAC9B,MAAM,EAAE;YACN,cAAc;YACd,QAAQ,EAAE,yBAAyB,CAAC,cAAc,EAAE,KAAK,CAAC;YAC1D,QAAQ,EAAE,aAAa,CAAC,KAAK,CAAC;SAC/B;KACF,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,eAAe,CAC7B,OAAoB,EACpB,MAAqB;IAErB,QAAQ,OAAO,CAAC,OAAO,EAAE,CAAC;QACxB,KAAK,OAAO;YACV,OAAO,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3B,KAAK,eAAe;YAClB,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;QAClC,KAAK,cAAc;YACjB,OAAO,IAAA,+BAAc,EAAC,OAAO,CAAC,CAAC;QACjC,KAAK,gBAAgB;YACnB,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACnC,KAAK,QAAQ;YACX,OAAO,IAAA,2BAAS,EAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC;YACE,MAAM,IAAA,+BAAa,EAAC;gBAClB,IAAI,EAAE,iBAAiB;gBACvB,OAAO,EAAE,oBAAoB,OAAO,CAAC,OAAO,IAAI,EAAE,GAAG;gBACrD,QAAQ,EAAE,CAAC;gBACX,KAAK,EAAE,SAAS;aACjB,CAAC,CAAC;IACP,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"contract-fallback.d.ts","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-fallback.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAiB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAe9D;AAiDD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAO5E;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,oBAAoB,GACjC,gBAAgB,CAuBlB"}
1
+ {"version":3,"file":"contract-fallback.d.ts","sourceRoot":"","sources":["../../src/agent-cli-provider/contract-fallback.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAiB,MAAM,mBAAmB,CAAC;AACxE,OAAO,EAGL,KAAK,gBAAgB,EACtB,MAAM,qBAAqB,CAAC;AAK7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,CAe9D;AAiDD,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,oBAAoB,CAe5E;AAED,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,WAAW,EACrB,YAAY,EAAE,oBAAoB,GACjC,gBAAgB,CAuBlB"}
@@ -7,6 +7,7 @@ const adapters_1 = require("./adapters");
7
7
  const contract_env_1 = require("./contract-env");
8
8
  const contract_errors_1 = require("./contract-errors");
9
9
  const contract_envelope_1 = require("./contract-envelope");
10
+ const errors_1 = require("./errors");
10
11
  const json_1 = require("./json");
11
12
  const redaction_1 = require("./redaction");
12
13
  function requestEnvelopeData(input) {
@@ -65,6 +66,14 @@ function errorObject(requestError) {
65
66
  function requestErrorFromUnknown(error) {
66
67
  if (error instanceof contract_errors_1.ContractRequestError)
67
68
  return error;
69
+ if (error instanceof errors_1.UnsupportedProviderCapabilityError) {
70
+ return (0, contract_errors_1.contractError)({
71
+ code: error.code,
72
+ message: error.message,
73
+ exitCode: 4,
74
+ field: 'options.webSearch',
75
+ });
76
+ }
68
77
  return (0, contract_errors_1.contractError)({
69
78
  code: 'internal-error',
70
79
  message: (0, json_1.unknownToMessage)(error),