@the-open-engine/zeroshot 5.4.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 (295) hide show
  1. package/CHANGELOG.md +539 -0
  2. package/LICENSE +21 -0
  3. package/README.md +508 -0
  4. package/cli/commands/inspect-render.js +135 -0
  5. package/cli/commands/inspect.js +294 -0
  6. package/cli/commands/providers.js +149 -0
  7. package/cli/index.js +5431 -0
  8. package/cli/lib/first-run.js +211 -0
  9. package/cli/lib/update-checker.js +281 -0
  10. package/cli/message-formatter-utils.js +75 -0
  11. package/cli/message-formatters-normal.js +275 -0
  12. package/cli/message-formatters-watch.js +185 -0
  13. package/cluster-templates/base-templates/debug-workflow.json +422 -0
  14. package/cluster-templates/base-templates/full-workflow.json +727 -0
  15. package/cluster-templates/base-templates/heavy-validation.json +272 -0
  16. package/cluster-templates/base-templates/quick-validation.json +285 -0
  17. package/cluster-templates/base-templates/single-worker.json +71 -0
  18. package/cluster-templates/base-templates/worker-validator.json +230 -0
  19. package/cluster-templates/conductor-bootstrap.json +130 -0
  20. package/docker/zeroshot-cluster/Dockerfile +153 -0
  21. package/docker/zeroshot-cluster/pre-baked-deps.json +28 -0
  22. package/lib/agent-cli-provider/adapters/claude-parser.d.ts +3 -0
  23. package/lib/agent-cli-provider/adapters/claude-parser.d.ts.map +1 -0
  24. package/lib/agent-cli-provider/adapters/claude-parser.js +122 -0
  25. package/lib/agent-cli-provider/adapters/claude-parser.js.map +1 -0
  26. package/lib/agent-cli-provider/adapters/claude-recovery.d.ts +15 -0
  27. package/lib/agent-cli-provider/adapters/claude-recovery.d.ts.map +1 -0
  28. package/lib/agent-cli-provider/adapters/claude-recovery.js +165 -0
  29. package/lib/agent-cli-provider/adapters/claude-recovery.js.map +1 -0
  30. package/lib/agent-cli-provider/adapters/claude.d.ts +3 -0
  31. package/lib/agent-cli-provider/adapters/claude.d.ts.map +1 -0
  32. package/lib/agent-cli-provider/adapters/claude.js +181 -0
  33. package/lib/agent-cli-provider/adapters/claude.js.map +1 -0
  34. package/lib/agent-cli-provider/adapters/codex-parser.d.ts +3 -0
  35. package/lib/agent-cli-provider/adapters/codex-parser.d.ts.map +1 -0
  36. package/lib/agent-cli-provider/adapters/codex-parser.js +192 -0
  37. package/lib/agent-cli-provider/adapters/codex-parser.js.map +1 -0
  38. package/lib/agent-cli-provider/adapters/codex.d.ts +3 -0
  39. package/lib/agent-cli-provider/adapters/codex.d.ts.map +1 -0
  40. package/lib/agent-cli-provider/adapters/codex.js +151 -0
  41. package/lib/agent-cli-provider/adapters/codex.js.map +1 -0
  42. package/lib/agent-cli-provider/adapters/common.d.ts +28 -0
  43. package/lib/agent-cli-provider/adapters/common.d.ts.map +1 -0
  44. package/lib/agent-cli-provider/adapters/common.js +71 -0
  45. package/lib/agent-cli-provider/adapters/common.js.map +1 -0
  46. package/lib/agent-cli-provider/adapters/gemini.d.ts +3 -0
  47. package/lib/agent-cli-provider/adapters/gemini.d.ts.map +1 -0
  48. package/lib/agent-cli-provider/adapters/gemini.js +176 -0
  49. package/lib/agent-cli-provider/adapters/gemini.js.map +1 -0
  50. package/lib/agent-cli-provider/adapters/index.d.ts +9 -0
  51. package/lib/agent-cli-provider/adapters/index.d.ts.map +1 -0
  52. package/lib/agent-cli-provider/adapters/index.js +95 -0
  53. package/lib/agent-cli-provider/adapters/index.js.map +1 -0
  54. package/lib/agent-cli-provider/adapters/opencode.d.ts +3 -0
  55. package/lib/agent-cli-provider/adapters/opencode.d.ts.map +1 -0
  56. package/lib/agent-cli-provider/adapters/opencode.js +228 -0
  57. package/lib/agent-cli-provider/adapters/opencode.js.map +1 -0
  58. package/lib/agent-cli-provider/contract-actions.d.ts +5 -0
  59. package/lib/agent-cli-provider/contract-actions.d.ts.map +1 -0
  60. package/lib/agent-cli-provider/contract-actions.js +140 -0
  61. package/lib/agent-cli-provider/contract-actions.js.map +1 -0
  62. package/lib/agent-cli-provider/contract-env.d.ts +11 -0
  63. package/lib/agent-cli-provider/contract-env.d.ts.map +1 -0
  64. package/lib/agent-cli-provider/contract-env.js +113 -0
  65. package/lib/agent-cli-provider/contract-env.js.map +1 -0
  66. package/lib/agent-cli-provider/contract-envelope.d.ts +49 -0
  67. package/lib/agent-cli-provider/contract-envelope.d.ts.map +1 -0
  68. package/lib/agent-cli-provider/contract-envelope.js +52 -0
  69. package/lib/agent-cli-provider/contract-envelope.js.map +1 -0
  70. package/lib/agent-cli-provider/contract-errors.d.ts +22 -0
  71. package/lib/agent-cli-provider/contract-errors.d.ts.map +1 -0
  72. package/lib/agent-cli-provider/contract-errors.js +71 -0
  73. package/lib/agent-cli-provider/contract-errors.js.map +1 -0
  74. package/lib/agent-cli-provider/contract-fallback.d.ts +7 -0
  75. package/lib/agent-cli-provider/contract-fallback.d.ts.map +1 -0
  76. package/lib/agent-cli-provider/contract-fallback.js +102 -0
  77. package/lib/agent-cli-provider/contract-fallback.js.map +1 -0
  78. package/lib/agent-cli-provider/contract-invoke.d.ts +5 -0
  79. package/lib/agent-cli-provider/contract-invoke.d.ts.map +1 -0
  80. package/lib/agent-cli-provider/contract-invoke.js +89 -0
  81. package/lib/agent-cli-provider/contract-invoke.js.map +1 -0
  82. package/lib/agent-cli-provider/contract-options.d.ts +3 -0
  83. package/lib/agent-cli-provider/contract-options.d.ts.map +1 -0
  84. package/lib/agent-cli-provider/contract-options.js +140 -0
  85. package/lib/agent-cli-provider/contract-options.js.map +1 -0
  86. package/lib/agent-cli-provider/contract-parse.d.ts +15 -0
  87. package/lib/agent-cli-provider/contract-parse.d.ts.map +1 -0
  88. package/lib/agent-cli-provider/contract-parse.js +81 -0
  89. package/lib/agent-cli-provider/contract-parse.js.map +1 -0
  90. package/lib/agent-cli-provider/contract-support.d.ts +18 -0
  91. package/lib/agent-cli-provider/contract-support.d.ts.map +1 -0
  92. package/lib/agent-cli-provider/contract-support.js +154 -0
  93. package/lib/agent-cli-provider/contract-support.js.map +1 -0
  94. package/lib/agent-cli-provider/contract.d.ts +13 -0
  95. package/lib/agent-cli-provider/contract.d.ts.map +1 -0
  96. package/lib/agent-cli-provider/contract.js +30 -0
  97. package/lib/agent-cli-provider/contract.js.map +1 -0
  98. package/lib/agent-cli-provider/env-safety.d.ts +11 -0
  99. package/lib/agent-cli-provider/env-safety.d.ts.map +1 -0
  100. package/lib/agent-cli-provider/env-safety.js +83 -0
  101. package/lib/agent-cli-provider/env-safety.js.map +1 -0
  102. package/lib/agent-cli-provider/errors.d.ts +5 -0
  103. package/lib/agent-cli-provider/errors.d.ts.map +1 -0
  104. package/lib/agent-cli-provider/errors.js +115 -0
  105. package/lib/agent-cli-provider/errors.js.map +1 -0
  106. package/lib/agent-cli-provider/executable.d.ts +3 -0
  107. package/lib/agent-cli-provider/executable.d.ts.map +1 -0
  108. package/lib/agent-cli-provider/executable.js +24 -0
  109. package/lib/agent-cli-provider/executable.js.map +1 -0
  110. package/lib/agent-cli-provider/index.d.ts +8 -0
  111. package/lib/agent-cli-provider/index.d.ts.map +1 -0
  112. package/lib/agent-cli-provider/index.js +31 -0
  113. package/lib/agent-cli-provider/index.js.map +1 -0
  114. package/lib/agent-cli-provider/invoke-evidence.d.ts +4 -0
  115. package/lib/agent-cli-provider/invoke-evidence.d.ts.map +1 -0
  116. package/lib/agent-cli-provider/invoke-evidence.js +17 -0
  117. package/lib/agent-cli-provider/invoke-evidence.js.map +1 -0
  118. package/lib/agent-cli-provider/json.d.ts +16 -0
  119. package/lib/agent-cli-provider/json.d.ts.map +1 -0
  120. package/lib/agent-cli-provider/json.js +110 -0
  121. package/lib/agent-cli-provider/json.js.map +1 -0
  122. package/lib/agent-cli-provider/log-prefix.d.ts +2 -0
  123. package/lib/agent-cli-provider/log-prefix.d.ts.map +1 -0
  124. package/lib/agent-cli-provider/log-prefix.js +22 -0
  125. package/lib/agent-cli-provider/log-prefix.js.map +1 -0
  126. package/lib/agent-cli-provider/process-runner.d.ts +17 -0
  127. package/lib/agent-cli-provider/process-runner.d.ts.map +1 -0
  128. package/lib/agent-cli-provider/process-runner.js +89 -0
  129. package/lib/agent-cli-provider/process-runner.js.map +1 -0
  130. package/lib/agent-cli-provider/redaction.d.ts +9 -0
  131. package/lib/agent-cli-provider/redaction.d.ts.map +1 -0
  132. package/lib/agent-cli-provider/redaction.js +227 -0
  133. package/lib/agent-cli-provider/redaction.js.map +1 -0
  134. package/lib/agent-cli-provider/schema.d.ts +5 -0
  135. package/lib/agent-cli-provider/schema.d.ts.map +1 -0
  136. package/lib/agent-cli-provider/schema.js +136 -0
  137. package/lib/agent-cli-provider/schema.js.map +1 -0
  138. package/lib/agent-cli-provider/single-agent-runtime.d.ts +15 -0
  139. package/lib/agent-cli-provider/single-agent-runtime.d.ts.map +1 -0
  140. package/lib/agent-cli-provider/single-agent-runtime.js +228 -0
  141. package/lib/agent-cli-provider/single-agent-runtime.js.map +1 -0
  142. package/lib/agent-cli-provider/types.d.ts +194 -0
  143. package/lib/agent-cli-provider/types.d.ts.map +1 -0
  144. package/lib/agent-cli-provider/types.js +12 -0
  145. package/lib/agent-cli-provider/types.js.map +1 -0
  146. package/lib/completion.js +174 -0
  147. package/lib/detached-startup.js +220 -0
  148. package/lib/docker-config.js +220 -0
  149. package/lib/git-remote-utils.js +165 -0
  150. package/lib/id-detector.js +55 -0
  151. package/lib/provider-defaults.js +62 -0
  152. package/lib/provider-detection.js +59 -0
  153. package/lib/provider-names.js +57 -0
  154. package/lib/repo-settings.js +69 -0
  155. package/lib/settings/claude-auth.js +78 -0
  156. package/lib/settings.js +542 -0
  157. package/lib/start-cluster.js +321 -0
  158. package/lib/stream-json-parser.js +67 -0
  159. package/package.json +162 -0
  160. package/scripts/fix-node-pty-permissions.js +75 -0
  161. package/scripts/record-demo.sh +279 -0
  162. package/scripts/setup-merge-queue.sh +170 -0
  163. package/scripts/test-install.sh +40 -0
  164. package/scripts/validate-templates.js +107 -0
  165. package/src/agent/agent-config.js +266 -0
  166. package/src/agent/agent-context-builder.js +189 -0
  167. package/src/agent/agent-context-sections.js +338 -0
  168. package/src/agent/agent-context-sources.js +147 -0
  169. package/src/agent/agent-hook-executor.js +721 -0
  170. package/src/agent/agent-input-injector.js +141 -0
  171. package/src/agent/agent-lifecycle.js +982 -0
  172. package/src/agent/agent-quality-gate-schema.js +93 -0
  173. package/src/agent/agent-quality-gates-context.js +51 -0
  174. package/src/agent/agent-stuck-detector.js +256 -0
  175. package/src/agent/agent-task-executor.js +2028 -0
  176. package/src/agent/agent-trigger-evaluator.js +67 -0
  177. package/src/agent/context-metrics.js +160 -0
  178. package/src/agent/context-pack-builder.js +367 -0
  179. package/src/agent/context-replay-policy.js +51 -0
  180. package/src/agent/guidance-queue.js +77 -0
  181. package/src/agent/output-extraction.js +367 -0
  182. package/src/agent/output-reformatter.js +175 -0
  183. package/src/agent/pr-verification.js +653 -0
  184. package/src/agent/rate-limit-backoff.js +82 -0
  185. package/src/agent/schema-utils.js +146 -0
  186. package/src/agent/validation-platform.js +35 -0
  187. package/src/agent-cli-provider/adapters/claude-parser.ts +133 -0
  188. package/src/agent-cli-provider/adapters/claude-recovery.ts +203 -0
  189. package/src/agent-cli-provider/adapters/claude.ts +247 -0
  190. package/src/agent-cli-provider/adapters/codex-parser.ts +211 -0
  191. package/src/agent-cli-provider/adapters/codex.ts +217 -0
  192. package/src/agent-cli-provider/adapters/common.ts +124 -0
  193. package/src/agent-cli-provider/adapters/gemini.ts +243 -0
  194. package/src/agent-cli-provider/adapters/index.ts +126 -0
  195. package/src/agent-cli-provider/adapters/opencode.ts +286 -0
  196. package/src/agent-cli-provider/contract-actions.ts +150 -0
  197. package/src/agent-cli-provider/contract-env.ts +111 -0
  198. package/src/agent-cli-provider/contract-envelope.ts +110 -0
  199. package/src/agent-cli-provider/contract-errors.ts +66 -0
  200. package/src/agent-cli-provider/contract-fallback.ts +121 -0
  201. package/src/agent-cli-provider/contract-invoke.ts +104 -0
  202. package/src/agent-cli-provider/contract-options.ts +173 -0
  203. package/src/agent-cli-provider/contract-parse.ts +94 -0
  204. package/src/agent-cli-provider/contract-support.ts +167 -0
  205. package/src/agent-cli-provider/contract.ts +56 -0
  206. package/src/agent-cli-provider/env-safety.ts +82 -0
  207. package/src/agent-cli-provider/errors.ts +122 -0
  208. package/src/agent-cli-provider/executable.ts +24 -0
  209. package/src/agent-cli-provider/index.ts +83 -0
  210. package/src/agent-cli-provider/invoke-evidence.ts +18 -0
  211. package/src/agent-cli-provider/json.ts +114 -0
  212. package/src/agent-cli-provider/log-prefix.ts +20 -0
  213. package/src/agent-cli-provider/process-runner.ts +145 -0
  214. package/src/agent-cli-provider/redaction.ts +282 -0
  215. package/src/agent-cli-provider/schema.ts +115 -0
  216. package/src/agent-cli-provider/single-agent-runtime.ts +311 -0
  217. package/src/agent-cli-provider/types.ts +237 -0
  218. package/src/agent-wrapper.js +615 -0
  219. package/src/agents/git-pusher-template.js +705 -0
  220. package/src/attach/attach-client.js +438 -0
  221. package/src/attach/attach-server.js +543 -0
  222. package/src/attach/index.js +37 -0
  223. package/src/attach/protocol.js +220 -0
  224. package/src/attach/ring-buffer.js +121 -0
  225. package/src/attach/send-input.js +88 -0
  226. package/src/attach/socket-discovery.js +267 -0
  227. package/src/claude-task-runner.js +661 -0
  228. package/src/config-router.js +89 -0
  229. package/src/config-validator.js +2202 -0
  230. package/src/copy-worker.js +43 -0
  231. package/src/guidance-topics.js +10 -0
  232. package/src/input-helpers.js +65 -0
  233. package/src/isolation-manager.js +1734 -0
  234. package/src/issue-providers/README.md +305 -0
  235. package/src/issue-providers/azure-devops-provider.js +307 -0
  236. package/src/issue-providers/base-provider.js +232 -0
  237. package/src/issue-providers/github-provider.js +210 -0
  238. package/src/issue-providers/gitlab-provider.js +262 -0
  239. package/src/issue-providers/index.js +196 -0
  240. package/src/issue-providers/jira-provider.js +260 -0
  241. package/src/ledger.js +692 -0
  242. package/src/lib/gc.js +232 -0
  243. package/src/lib/safe-exec.js +88 -0
  244. package/src/logic-engine.js +201 -0
  245. package/src/message-buffer.js +81 -0
  246. package/src/message-bus-bridge.js +144 -0
  247. package/src/message-bus.js +256 -0
  248. package/src/name-generator.js +232 -0
  249. package/src/orchestrator.js +3924 -0
  250. package/src/preflight.js +712 -0
  251. package/src/process-metrics.js +608 -0
  252. package/src/providers/anthropic/index.js +3 -0
  253. package/src/providers/base-provider.js +355 -0
  254. package/src/providers/capabilities.js +60 -0
  255. package/src/providers/google/index.js +3 -0
  256. package/src/providers/index.js +293 -0
  257. package/src/providers/openai/index.js +3 -0
  258. package/src/providers/opencode/index.js +3 -0
  259. package/src/quality-gates.js +143 -0
  260. package/src/schemas/sub-cluster.js +208 -0
  261. package/src/state-snapshot.js +398 -0
  262. package/src/state-snapshotter.js +142 -0
  263. package/src/status-footer.js +1026 -0
  264. package/src/sub-cluster-wrapper.js +693 -0
  265. package/src/task-runner.js +30 -0
  266. package/src/template-resolver.js +425 -0
  267. package/src/template-validation/index.js +338 -0
  268. package/src/template-validation/simulate-consensus-gates.js +324 -0
  269. package/src/template-validation/simulate-random-topology.js +541 -0
  270. package/src/template-validation/simulate-two-stage-validation.js +270 -0
  271. package/src/worktree-claude-config.js +135 -0
  272. package/src/worktree-tooling-env.js +150 -0
  273. package/task-lib/attachable-watcher.js +381 -0
  274. package/task-lib/commands/clean.js +50 -0
  275. package/task-lib/commands/episodes.js +105 -0
  276. package/task-lib/commands/get-log-path.js +23 -0
  277. package/task-lib/commands/kill.js +32 -0
  278. package/task-lib/commands/list.js +105 -0
  279. package/task-lib/commands/logs.js +439 -0
  280. package/task-lib/commands/resume.js +42 -0
  281. package/task-lib/commands/run.js +57 -0
  282. package/task-lib/commands/schedule.js +105 -0
  283. package/task-lib/commands/scheduler-cmd.js +96 -0
  284. package/task-lib/commands/schedules.js +148 -0
  285. package/task-lib/commands/status.js +44 -0
  286. package/task-lib/commands/unschedule.js +16 -0
  287. package/task-lib/completion.js +9 -0
  288. package/task-lib/config.js +11 -0
  289. package/task-lib/name-generator.js +230 -0
  290. package/task-lib/package.json +3 -0
  291. package/task-lib/provider-helper-runtime.js +29 -0
  292. package/task-lib/runner.js +190 -0
  293. package/task-lib/scheduler.js +252 -0
  294. package/task-lib/store.js +529 -0
  295. package/task-lib/watcher.js +305 -0
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.geminiAdapter = void 0;
4
+ const schema_1 = require("../schema");
5
+ const json_1 = require("../json");
6
+ const common_1 = require("./common");
7
+ const MODEL_CATALOG = {
8
+ 'gemini-2.5-pro': { rank: 3 },
9
+ 'gemini-2.0-flash': { rank: 1 },
10
+ };
11
+ const LEVEL_MAPPING = {
12
+ level1: { rank: 1, model: null },
13
+ level2: { rank: 2, model: null },
14
+ level3: { rank: 3, model: null },
15
+ };
16
+ function detectCliFeatures(helpText) {
17
+ const help = helpText ?? '';
18
+ const unknown = !help;
19
+ return {
20
+ provider: 'gemini',
21
+ supportsStreamJson: unknown ? true : /--output-format\b/.test(help),
22
+ supportsAutoApprove: unknown ? true : /--yolo\b/.test(help),
23
+ supportsCwd: unknown ? true : /--cwd\b/.test(help),
24
+ supportsModel: unknown ? true : /\s-m\b/.test(help) || /--model\b/.test(help),
25
+ unknown,
26
+ };
27
+ }
28
+ function addGeminiOptionalArgs(args, options) {
29
+ const features = (0, common_1.optionFeatures)(options);
30
+ if ((options.outputFormat === 'stream-json' || options.outputFormat === 'json') &&
31
+ features.supportsStreamJson) {
32
+ args.push('--output-format', 'stream-json');
33
+ }
34
+ if (options.modelSpec?.model) {
35
+ args.push('-m', options.modelSpec.model);
36
+ }
37
+ if (options.cwd && features.supportsCwd) {
38
+ args.push('--cwd', options.cwd);
39
+ }
40
+ if (options.autoApprove && features.supportsAutoApprove) {
41
+ args.push('--yolo');
42
+ }
43
+ }
44
+ function collectGeminiWarnings(options) {
45
+ const features = (0, common_1.optionFeatures)(options);
46
+ const warnings = (0, common_1.unsupportedSessionControlWarnings)('gemini', options);
47
+ if (options.autoApprove && features.supportsAutoApprove === false) {
48
+ warnings.push((0, common_1.warning)('gemini', 'gemini-auto-approve', 'Gemini CLI does not support --yolo; continuing without auto-approve.'));
49
+ }
50
+ return warnings;
51
+ }
52
+ function buildCommand(context, options = {}) {
53
+ const finalContext = options.jsonSchema
54
+ ? (0, schema_1.appendJsonSchemaPrompt)(context, options.jsonSchema)
55
+ : context;
56
+ const args = ['-p', finalContext];
57
+ addGeminiOptionalArgs(args, options);
58
+ return (0, common_1.commandSpec)({
59
+ binary: 'gemini',
60
+ args,
61
+ env: {},
62
+ ...(options.cwd === undefined ? {} : { cwd: options.cwd }),
63
+ warnings: collectGeminiWarnings(options),
64
+ });
65
+ }
66
+ function normalizeMessageContent(content) {
67
+ if (typeof content === 'string')
68
+ return content;
69
+ if (Array.isArray(content)) {
70
+ return content
71
+ .map((item) => {
72
+ if (typeof item === 'string')
73
+ return item;
74
+ if ((0, json_1.isRecord)(item))
75
+ return (0, json_1.getString)(item, 'text') ?? '';
76
+ return '';
77
+ })
78
+ .join('');
79
+ }
80
+ if ((0, json_1.isRecord)(content))
81
+ return (0, json_1.getString)(content, 'text') ?? '';
82
+ return '';
83
+ }
84
+ function parseMessageEvent(event) {
85
+ if ((0, json_1.getString)(event, 'role') !== 'assistant')
86
+ return null;
87
+ const text = normalizeMessageContent(event.content);
88
+ return text ? { type: 'text', text } : null;
89
+ }
90
+ function parseToolUseEvent(event, state) {
91
+ const toolId = (0, json_1.getOrStringFromKeysWithFallback)(event, ['tool_call_id', 'tool_id', 'id'], state.lastToolId);
92
+ state.lastToolId = toolId;
93
+ return {
94
+ type: 'tool_call',
95
+ toolName: (0, json_1.getOrStringFromKeys)(event, ['tool_name', 'name']),
96
+ toolId,
97
+ input: event.parameters ?? event.input ?? {},
98
+ };
99
+ }
100
+ function parseToolResultEvent(event, state) {
101
+ const toolId = (0, json_1.getOrStringFromKeysWithFallback)(event, ['tool_call_id', 'tool_id', 'id'], state.lastToolId);
102
+ return {
103
+ type: 'tool_result',
104
+ toolId,
105
+ content: event.output ?? event.content ?? '',
106
+ isError: event.success === false,
107
+ };
108
+ }
109
+ function parseResultEvent(event) {
110
+ return {
111
+ type: 'result',
112
+ success: event.success !== false,
113
+ result: event.result || '',
114
+ error: event.success === false ? ((0, json_1.getString)(event, 'error') ?? 'Result failed') : null,
115
+ };
116
+ }
117
+ function parseEvent(line, state) {
118
+ const event = (0, json_1.tryParseJson)(line);
119
+ if (!(0, json_1.isRecord)(event))
120
+ return null;
121
+ switch ((0, json_1.getString)(event, 'type')) {
122
+ case 'init':
123
+ return null;
124
+ case 'message':
125
+ return parseMessageEvent(event);
126
+ case 'tool_use':
127
+ return parseToolUseEvent(event, state);
128
+ case 'tool_result':
129
+ return parseToolResultEvent(event, state);
130
+ case 'result':
131
+ return parseResultEvent(event);
132
+ default:
133
+ return null;
134
+ }
135
+ }
136
+ function resolveModelSpec(level, overrides) {
137
+ return (0, common_1.resolveModelSpecWithConfig)({
138
+ mapping: LEVEL_MAPPING,
139
+ defaultLevel: 'level2',
140
+ level,
141
+ overrides,
142
+ validateModelId,
143
+ });
144
+ }
145
+ function validateModelId(modelId) {
146
+ return (0, common_1.validateModelIdFromCatalog)('gemini', MODEL_CATALOG, modelId);
147
+ }
148
+ function classifyError(error) {
149
+ return (0, common_1.classifyBaseProviderError)(error, [
150
+ /\bRESOURCE_EXHAUSTED\b/i,
151
+ /\bUNAVAILABLE\b/i,
152
+ /\bDEADLINE_EXCEEDED\b/i,
153
+ /No capacity available/i,
154
+ /quota.?exceeded/i,
155
+ ], [/\bINVALID_ARGUMENT\b/i, /\bPERMISSION_DENIED\b/i, /\bNOT_FOUND\b/i]);
156
+ }
157
+ exports.geminiAdapter = {
158
+ id: 'gemini',
159
+ displayName: 'Gemini',
160
+ binary: 'gemini',
161
+ adapterVersion: '1',
162
+ credentialEnvKeys: ['GEMINI_API_KEY', 'GOOGLE_API_KEY'],
163
+ modelCatalog: MODEL_CATALOG,
164
+ levelMapping: LEVEL_MAPPING,
165
+ defaultLevel: 'level2',
166
+ defaultMaxLevel: 'level3',
167
+ defaultMinLevel: 'level1',
168
+ detectCliFeatures,
169
+ buildCommand,
170
+ parseEvent,
171
+ createParserState: () => (0, common_1.createParserState)('gemini'),
172
+ resolveModelSpec,
173
+ validateModelId,
174
+ classifyError,
175
+ };
176
+ //# sourceMappingURL=gemini.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/gemini.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { BuildProviderCommandOptions, CommandSpec, ErrorClassification, KnownProviderName, LevelOverrides, ModelLevel, OutputEvent, ProviderAdapter, ProviderId, ResolvedModelSpec } from '../types';
2
+ export { NO_MESSAGES_RETURNED, STREAMING_MODE_ERROR, detectProviderFatalError, detectProviderStreamingModeError, recoverProviderStructuredOutput, supportsProviderStructuredOutputRecovery, type StreamingModeError, type StructuredOutputRecovery, } from './claude-recovery';
3
+ export declare function getProviderAdapter(name: KnownProviderName | string): ProviderAdapter;
4
+ export declare function listProviderAdapters(): readonly ProviderId[];
5
+ export declare function buildProviderCommand(providerName: KnownProviderName | string, context: string, options?: BuildProviderCommandOptions): CommandSpec;
6
+ export declare function parseProviderChunk(providerName: KnownProviderName | string, chunk: string): readonly OutputEvent[];
7
+ export declare function resolveModelSpec(providerName: KnownProviderName | string, level: ModelLevel, overrides?: LevelOverrides): ResolvedModelSpec;
8
+ export declare function classifyProviderError(providerName: KnownProviderName | string, error: unknown): ErrorClassification;
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,2BAA2B,EAC3B,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,UAAU,EACV,WAAW,EACX,eAAe,EACf,UAAU,EACV,iBAAiB,EAClB,MAAM,UAAU,CAAC;AAElB,OAAO,EACL,oBAAoB,EACpB,oBAAoB,EACpB,wBAAwB,EACxB,gCAAgC,EAChC,+BAA+B,EAC/B,wCAAwC,EACxC,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,GAC9B,MAAM,mBAAmB,CAAC;AA+C3B,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,GAAG,eAAe,CAIpF;AAED,wBAAgB,oBAAoB,IAAI,SAAS,UAAU,EAAE,CAE5D;AAED,wBAAgB,oBAAoB,CAClC,YAAY,EAAE,iBAAiB,GAAG,MAAM,EACxC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,2BAA2B,GACpC,WAAW,CAEb;AAED,wBAAgB,kBAAkB,CAChC,YAAY,EAAE,iBAAiB,GAAG,MAAM,EACxC,KAAK,EAAE,MAAM,GACZ,SAAS,WAAW,EAAE,CAmBxB;AAED,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,iBAAiB,GAAG,MAAM,EACxC,KAAK,EAAE,UAAU,EACjB,SAAS,CAAC,EAAE,cAAc,GACzB,iBAAiB,CAEnB;AAED,wBAAgB,qBAAqB,CACnC,YAAY,EAAE,iBAAiB,GAAG,MAAM,EACxC,KAAK,EAAE,OAAO,GACb,mBAAmB,CAErB"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.supportsProviderStructuredOutputRecovery = exports.recoverProviderStructuredOutput = exports.detectProviderStreamingModeError = exports.detectProviderFatalError = exports.STREAMING_MODE_ERROR = exports.NO_MESSAGES_RETURNED = void 0;
4
+ exports.getProviderAdapter = getProviderAdapter;
5
+ exports.listProviderAdapters = listProviderAdapters;
6
+ exports.buildProviderCommand = buildProviderCommand;
7
+ exports.parseProviderChunk = parseProviderChunk;
8
+ exports.resolveModelSpec = resolveModelSpec;
9
+ exports.classifyProviderError = classifyProviderError;
10
+ const log_prefix_1 = require("../log-prefix");
11
+ const claude_1 = require("./claude");
12
+ var claude_recovery_1 = require("./claude-recovery");
13
+ Object.defineProperty(exports, "NO_MESSAGES_RETURNED", { enumerable: true, get: function () { return claude_recovery_1.NO_MESSAGES_RETURNED; } });
14
+ Object.defineProperty(exports, "STREAMING_MODE_ERROR", { enumerable: true, get: function () { return claude_recovery_1.STREAMING_MODE_ERROR; } });
15
+ Object.defineProperty(exports, "detectProviderFatalError", { enumerable: true, get: function () { return claude_recovery_1.detectProviderFatalError; } });
16
+ Object.defineProperty(exports, "detectProviderStreamingModeError", { enumerable: true, get: function () { return claude_recovery_1.detectProviderStreamingModeError; } });
17
+ Object.defineProperty(exports, "recoverProviderStructuredOutput", { enumerable: true, get: function () { return claude_recovery_1.recoverProviderStructuredOutput; } });
18
+ Object.defineProperty(exports, "supportsProviderStructuredOutputRecovery", { enumerable: true, get: function () { return claude_recovery_1.supportsProviderStructuredOutputRecovery; } });
19
+ const codex_1 = require("./codex");
20
+ const gemini_1 = require("./gemini");
21
+ const opencode_1 = require("./opencode");
22
+ const ADAPTERS = {
23
+ claude: claude_1.claudeAdapter,
24
+ codex: codex_1.codexAdapter,
25
+ gemini: gemini_1.geminiAdapter,
26
+ opencode: opencode_1.opencodeAdapter,
27
+ };
28
+ const PROVIDER_IDS = ['claude', 'codex', 'gemini', 'opencode'];
29
+ function isOutputEventArray(event) {
30
+ return Array.isArray(event);
31
+ }
32
+ function normalizeProviderName(name) {
33
+ const normalized = name.toLowerCase();
34
+ switch (normalized) {
35
+ case 'anthropic':
36
+ case 'claude':
37
+ return 'claude';
38
+ case 'openai':
39
+ case 'codex':
40
+ return 'codex';
41
+ case 'google':
42
+ case 'gemini':
43
+ return 'gemini';
44
+ case 'opencode':
45
+ return 'opencode';
46
+ default:
47
+ return name;
48
+ }
49
+ }
50
+ function adapterForProviderId(provider) {
51
+ return ADAPTERS[provider];
52
+ }
53
+ function isProviderId(name) {
54
+ return name === 'claude' || name === 'codex' || name === 'gemini' || name === 'opencode';
55
+ }
56
+ function getProviderAdapter(name) {
57
+ const normalized = normalizeProviderName(name || '');
58
+ if (isProviderId(normalized))
59
+ return adapterForProviderId(normalized);
60
+ throw new Error(`Unknown provider: ${name}. Valid: ${PROVIDER_IDS.join(', ')}`);
61
+ }
62
+ function listProviderAdapters() {
63
+ return PROVIDER_IDS;
64
+ }
65
+ function buildProviderCommand(providerName, context, options) {
66
+ return getProviderAdapter(providerName).buildCommand(context, options);
67
+ }
68
+ function parseProviderChunk(providerName, chunk) {
69
+ const adapter = getProviderAdapter(providerName || 'claude');
70
+ const state = adapter.createParserState();
71
+ const events = [];
72
+ const lines = chunk.split('\n');
73
+ for (const line of lines) {
74
+ const content = (0, log_prefix_1.stripTimestampPrefix)(line);
75
+ if (!content)
76
+ continue;
77
+ const event = adapter.parseEvent(content, state);
78
+ if (!event)
79
+ continue;
80
+ if (isOutputEventArray(event)) {
81
+ events.push(...event);
82
+ }
83
+ else {
84
+ events.push(event);
85
+ }
86
+ }
87
+ return events;
88
+ }
89
+ function resolveModelSpec(providerName, level, overrides) {
90
+ return getProviderAdapter(providerName).resolveModelSpec(level, overrides);
91
+ }
92
+ function classifyProviderError(providerName, error) {
93
+ return getProviderAdapter(providerName).classifyError(error);
94
+ }
95
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type ProviderAdapter } from '../types';
2
+ export declare const opencodeAdapter: ProviderAdapter;
3
+ //# sourceMappingURL=opencode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"AASA,OAAO,EAUL,KAAK,eAAe,EAGrB,MAAM,UAAU,CAAC;AA+OlB,eAAO,MAAM,eAAe,EAAE,eAwB7B,CAAC"}
@@ -0,0 +1,228 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.opencodeAdapter = void 0;
4
+ const schema_1 = require("../schema");
5
+ const json_1 = require("../json");
6
+ const common_1 = require("./common");
7
+ const MODEL_CATALOG = {
8
+ 'opencode/big-pickle': { rank: 1 },
9
+ 'opencode/glm-4.7-free': { rank: 1 },
10
+ 'opencode/gpt-5-nano': { rank: 1 },
11
+ 'opencode/grok-code': { rank: 1 },
12
+ 'opencode/minimax-m2.1-free': { rank: 1 },
13
+ 'google/gemini-1.5-flash': { rank: 1 },
14
+ 'google/gemini-1.5-flash-8b': { rank: 1 },
15
+ 'google/gemini-1.5-pro': { rank: 1 },
16
+ 'google/gemini-2.0-flash': { rank: 1 },
17
+ 'google/gemini-2.0-flash-lite': { rank: 1 },
18
+ 'google/gemini-2.5-flash': { rank: 1 },
19
+ 'google/gemini-2.5-flash-image': { rank: 1 },
20
+ 'google/gemini-2.5-flash-image-preview': { rank: 1 },
21
+ 'google/gemini-2.5-flash-lite': { rank: 1 },
22
+ 'google/gemini-2.5-flash-lite-preview-06-17': { rank: 1 },
23
+ 'google/gemini-2.5-flash-lite-preview-09-2025': { rank: 1 },
24
+ 'google/gemini-2.5-flash-preview-04-17': { rank: 1 },
25
+ 'google/gemini-2.5-flash-preview-05-20': { rank: 1 },
26
+ 'google/gemini-2.5-flash-preview-09-2025': { rank: 1 },
27
+ 'google/gemini-2.5-flash-preview-tts': { rank: 1 },
28
+ 'google/gemini-2.5-pro': { rank: 1 },
29
+ 'google/gemini-2.5-pro-preview-05-06': { rank: 1 },
30
+ 'google/gemini-2.5-pro-preview-06-05': { rank: 1 },
31
+ 'google/gemini-2.5-pro-preview-tts': { rank: 1 },
32
+ 'google/gemini-3-flash-preview': { rank: 1 },
33
+ 'google/gemini-3-pro-preview': { rank: 1 },
34
+ 'google/gemini-embedding-001': { rank: 1 },
35
+ 'google/gemini-flash-latest': { rank: 1 },
36
+ 'google/gemini-flash-lite-latest': { rank: 1 },
37
+ 'google/gemini-live-2.5-flash': { rank: 1 },
38
+ 'google/gemini-live-2.5-flash-preview-native-audio': { rank: 1 },
39
+ 'openai/gpt-5.1-codex-max': { rank: 1 },
40
+ 'openai/gpt-5.1-codex-mini': { rank: 1 },
41
+ 'openai/gpt-5.2': { rank: 1 },
42
+ 'openai/gpt-5.2-codex': { rank: 1 },
43
+ };
44
+ const LEVEL_MAPPING = {
45
+ level1: { rank: 1, model: null, reasoningEffort: 'low' },
46
+ level2: { rank: 2, model: null, reasoningEffort: 'medium' },
47
+ level3: { rank: 3, model: null, reasoningEffort: 'high' },
48
+ };
49
+ function detectCliFeatures(helpText) {
50
+ const help = helpText ?? '';
51
+ const unknown = !help;
52
+ return {
53
+ provider: 'opencode',
54
+ supportsJson: unknown ? true : /--format\b/.test(help),
55
+ supportsModel: unknown ? true : /--model\b/.test(help),
56
+ supportsVariant: unknown ? true : /--variant\b/.test(help),
57
+ supportsCwd: unknown ? false : /--cwd\b/.test(help),
58
+ supportsAutoApprove: false,
59
+ unknown,
60
+ };
61
+ }
62
+ function addOpencodeOptionalArgs(args, options) {
63
+ const features = (0, common_1.optionFeatures)(options);
64
+ if ((options.outputFormat === 'stream-json' || options.outputFormat === 'json') &&
65
+ features.supportsJson) {
66
+ args.push('--format', 'json');
67
+ }
68
+ if (options.modelSpec?.model) {
69
+ args.push('--model', options.modelSpec.model);
70
+ }
71
+ if (options.modelSpec?.reasoningEffort && features.supportsVariant) {
72
+ args.push('--variant', options.modelSpec.reasoningEffort);
73
+ }
74
+ if (options.cwd && features.supportsCwd) {
75
+ args.push('--cwd', options.cwd);
76
+ }
77
+ }
78
+ function collectOpencodeWarnings(options) {
79
+ const features = (0, common_1.optionFeatures)(options);
80
+ const warnings = (0, common_1.unsupportedSessionControlWarnings)('opencode', options);
81
+ if (options.modelSpec?.reasoningEffort && features.supportsVariant === false) {
82
+ warnings.push((0, common_1.warning)('opencode', 'opencode-variant', 'Opencode CLI does not support --variant; skipping reasoningEffort.'));
83
+ }
84
+ return warnings;
85
+ }
86
+ function buildCommand(context, options = {}) {
87
+ const finalContext = options.jsonSchema
88
+ ? (0, schema_1.appendJsonSchemaPrompt)(context, options.jsonSchema)
89
+ : context;
90
+ const args = ['run'];
91
+ addOpencodeOptionalArgs(args, options);
92
+ args.push(finalContext);
93
+ return (0, common_1.commandSpec)({
94
+ binary: 'opencode',
95
+ args,
96
+ env: {},
97
+ ...(options.cwd === undefined ? {} : { cwd: options.cwd }),
98
+ warnings: collectOpencodeWarnings(options),
99
+ });
100
+ }
101
+ function parseToolPart(part) {
102
+ const state = (0, json_1.getRecord)(part, 'state') ?? {};
103
+ const status = (0, json_1.getString)(state, 'status');
104
+ if (status === 'pending' || status === 'running') {
105
+ return {
106
+ type: 'tool_call',
107
+ toolName: (0, json_1.getOptionalString)(part, 'tool'),
108
+ toolId: (0, json_1.getOptionalString)(part, 'callID'),
109
+ input: state.input ?? {},
110
+ };
111
+ }
112
+ if (status === 'completed') {
113
+ return {
114
+ type: 'tool_result',
115
+ toolId: (0, json_1.getOptionalString)(part, 'callID'),
116
+ content: state.output || '',
117
+ isError: false,
118
+ };
119
+ }
120
+ if (status === 'error') {
121
+ return {
122
+ type: 'tool_result',
123
+ toolId: (0, json_1.getOptionalString)(part, 'callID'),
124
+ content: state.error || '',
125
+ isError: true,
126
+ };
127
+ }
128
+ return null;
129
+ }
130
+ function parseStepFinish(part) {
131
+ const tokens = (0, json_1.getRecord)(part, 'tokens') ?? {};
132
+ return {
133
+ type: 'result',
134
+ success: true,
135
+ inputTokens: (0, json_1.getNumber)(tokens, 'input') ?? 0,
136
+ outputTokens: (0, json_1.getNumber)(tokens, 'output') ?? 0,
137
+ };
138
+ }
139
+ function parsePart(part) {
140
+ if (!(0, json_1.isRecord)(part))
141
+ return null;
142
+ if ((0, json_1.getString)(part, 'type') === 'text') {
143
+ const text = (0, json_1.getString)(part, 'text');
144
+ if (text)
145
+ return { type: 'text', text };
146
+ }
147
+ if ((0, json_1.getString)(part, 'type') === 'reasoning') {
148
+ const text = (0, json_1.getString)(part, 'text');
149
+ if (text)
150
+ return { type: 'thinking', text };
151
+ }
152
+ if ((0, json_1.getString)(part, 'type') === 'tool') {
153
+ return parseToolPart(part);
154
+ }
155
+ if ((0, json_1.getString)(part, 'type') === 'step-finish') {
156
+ return parseStepFinish(part);
157
+ }
158
+ return null;
159
+ }
160
+ function parseErrorEvent(event) {
161
+ const error = (0, json_1.getRecord)(event, 'error') ?? {};
162
+ const data = (0, json_1.getRecord)(error, 'data');
163
+ return {
164
+ type: 'result',
165
+ success: false,
166
+ error: (data ? (0, json_1.getString)(data, 'message') : null) ??
167
+ (0, json_1.getString)(error, 'message') ??
168
+ (0, json_1.getString)(error, 'name') ??
169
+ 'Unknown error',
170
+ };
171
+ }
172
+ function parseEvent(line) {
173
+ const event = (0, json_1.tryParseJson)(line);
174
+ if (!(0, json_1.isRecord)(event))
175
+ return null;
176
+ const type = (0, json_1.getString)(event, 'type');
177
+ if (type === 'error')
178
+ return parseErrorEvent(event);
179
+ if (type === 'text' || type === 'step_start' || type === 'step_finish') {
180
+ return parsePart(event.part ?? event);
181
+ }
182
+ if (type === 'message.part.updated') {
183
+ const properties = (0, json_1.getRecord)(event, 'properties');
184
+ return parsePart(properties?.part);
185
+ }
186
+ return null;
187
+ }
188
+ function resolveModelSpec(level, overrides) {
189
+ return (0, common_1.resolveModelSpecWithConfig)({
190
+ mapping: LEVEL_MAPPING,
191
+ defaultLevel: 'level2',
192
+ level,
193
+ overrides,
194
+ validateModelId,
195
+ });
196
+ }
197
+ function validateModelId(modelId) {
198
+ return (0, common_1.validateModelIdFromCatalog)('opencode', MODEL_CATALOG, modelId);
199
+ }
200
+ function classifyError(error) {
201
+ return (0, common_1.classifyBaseProviderError)(error, [], []);
202
+ }
203
+ exports.opencodeAdapter = {
204
+ id: 'opencode',
205
+ displayName: 'Opencode',
206
+ binary: 'opencode',
207
+ adapterVersion: '1',
208
+ credentialEnvKeys: [
209
+ 'OPENCODE_API_KEY',
210
+ 'OPENAI_API_KEY',
211
+ 'ANTHROPIC_API_KEY',
212
+ 'GEMINI_API_KEY',
213
+ 'GOOGLE_API_KEY',
214
+ ],
215
+ modelCatalog: MODEL_CATALOG,
216
+ levelMapping: LEVEL_MAPPING,
217
+ defaultLevel: 'level2',
218
+ defaultMaxLevel: 'level3',
219
+ defaultMinLevel: 'level1',
220
+ detectCliFeatures,
221
+ buildCommand,
222
+ parseEvent,
223
+ createParserState: () => (0, common_1.createParserState)('opencode'),
224
+ resolveModelSpec,
225
+ validateModelId,
226
+ classifyError,
227
+ };
228
+ //# sourceMappingURL=opencode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../src/agent-cli-provider/adapters/opencode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { type ContractEnvelope } from './contract-envelope';
2
+ import { type RequestData } from './contract-support';
3
+ import type { ProcessRunner } from './process-runner';
4
+ export declare function dispatchRequest(request: RequestData, runner: ProcessRunner): ContractEnvelope | Promise<ContractEnvelope>;
5
+ //# sourceMappingURL=contract-actions.d.ts.map
@@ -0,0 +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;AAI5B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AA0GtD,wBAAgB,eAAe,CAC7B,OAAO,EAAE,WAAW,EACpB,MAAM,EAAE,aAAa,GACpB,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAoB9C"}