artificial-code 1.17.13

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 (749) hide show
  1. package/AGENTS.md +131 -0
  2. package/Dockerfile +18 -0
  3. package/README.md +15 -0
  4. package/bin/ac +199 -0
  5. package/bunfig.toml +7 -0
  6. package/git +0 -0
  7. package/migration/20260511173437_session-metadata/migration.sql +1 -0
  8. package/migration/20260511173437_session-metadata/snapshot.json +1500 -0
  9. package/package.json +156 -0
  10. package/parsers-config.ts +1 -0
  11. package/script/bench-search.ts +94 -0
  12. package/script/bench-test-suite.ts +52 -0
  13. package/script/build.ts +243 -0
  14. package/script/generate.ts +14 -0
  15. package/script/httpapi-exercise.ts +1 -0
  16. package/script/postinstall.mjs +189 -0
  17. package/script/profile-test-files.ts +42 -0
  18. package/script/publish.ts +213 -0
  19. package/script/run-workspace-server +106 -0
  20. package/script/schema.ts +77 -0
  21. package/script/time.ts +6 -0
  22. package/script/trace-imports.ts +153 -0
  23. package/specs/effect/error-boundaries-plan.md +235 -0
  24. package/specs/effect/errors.md +207 -0
  25. package/specs/effect/facades.md +218 -0
  26. package/specs/effect/guide.md +247 -0
  27. package/specs/effect/instance-context.md +13 -0
  28. package/specs/effect/loose-ends.md +30 -0
  29. package/specs/effect/migration.md +62 -0
  30. package/specs/effect/routes.md +61 -0
  31. package/specs/effect/schema.md +88 -0
  32. package/specs/effect/server-package.md +58 -0
  33. package/specs/effect/todo.md +241 -0
  34. package/specs/effect/tools.md +88 -0
  35. package/specs/openapi-translation-cleanup.md +204 -0
  36. package/specs/tui-plugins.md +544 -0
  37. package/specs/v2/api.ts +67 -0
  38. package/specs/v2/message-shape.md +136 -0
  39. package/specs/v2/notifications.md +13 -0
  40. package/specs/v2/tui-command-shim.md +67 -0
  41. package/src/account/account.ts +461 -0
  42. package/src/account/repo.ts +171 -0
  43. package/src/account/schema.ts +99 -0
  44. package/src/account/url.ts +8 -0
  45. package/src/acp/agent.ts +95 -0
  46. package/src/acp/config-option.ts +203 -0
  47. package/src/acp/content.ts +269 -0
  48. package/src/acp/directory.ts +212 -0
  49. package/src/acp/error.ts +97 -0
  50. package/src/acp/event.ts +342 -0
  51. package/src/acp/permission.ts +254 -0
  52. package/src/acp/profile.ts +42 -0
  53. package/src/acp/service.ts +1097 -0
  54. package/src/acp/session.ts +232 -0
  55. package/src/acp/tool.ts +364 -0
  56. package/src/acp/usage.ts +239 -0
  57. package/src/agent/agent.ts +453 -0
  58. package/src/agent/generate.txt +75 -0
  59. package/src/agent/prompt/compaction.txt +9 -0
  60. package/src/agent/prompt/explore.txt +18 -0
  61. package/src/agent/prompt/summary.txt +11 -0
  62. package/src/agent/prompt/title.txt +44 -0
  63. package/src/agent/subagent-permissions.ts +27 -0
  64. package/src/audio.d.ts +14 -0
  65. package/src/auth/index.ts +97 -0
  66. package/src/background/job.ts +37 -0
  67. package/src/bus/global.ts +22 -0
  68. package/src/cli/bootstrap.ts +11 -0
  69. package/src/cli/cmd/account.ts +264 -0
  70. package/src/cli/cmd/acp.ts +73 -0
  71. package/src/cli/cmd/agent.ts +259 -0
  72. package/src/cli/cmd/attach.ts +148 -0
  73. package/src/cli/cmd/cmd.ts +7 -0
  74. package/src/cli/cmd/db.ts +62 -0
  75. package/src/cli/cmd/debug/agent.handler.ts +193 -0
  76. package/src/cli/cmd/debug/agent.ts +27 -0
  77. package/src/cli/cmd/debug/config.ts +14 -0
  78. package/src/cli/cmd/debug/file.ts +73 -0
  79. package/src/cli/cmd/debug/index.ts +87 -0
  80. package/src/cli/cmd/debug/lsp.ts +50 -0
  81. package/src/cli/cmd/debug/ripgrep.ts +79 -0
  82. package/src/cli/cmd/debug/scrap.ts +16 -0
  83. package/src/cli/cmd/debug/skill.ts +15 -0
  84. package/src/cli/cmd/debug/snapshot.ts +50 -0
  85. package/src/cli/cmd/debug/startup.ts +11 -0
  86. package/src/cli/cmd/debug/v2.ts +42 -0
  87. package/src/cli/cmd/export.ts +292 -0
  88. package/src/cli/cmd/generate.ts +54 -0
  89. package/src/cli/cmd/github.handler.ts +1593 -0
  90. package/src/cli/cmd/github.shared.ts +30 -0
  91. package/src/cli/cmd/github.ts +42 -0
  92. package/src/cli/cmd/import.ts +224 -0
  93. package/src/cli/cmd/mcp.ts +840 -0
  94. package/src/cli/cmd/models.ts +66 -0
  95. package/src/cli/cmd/plug.ts +230 -0
  96. package/src/cli/cmd/pr.ts +115 -0
  97. package/src/cli/cmd/prompt-display.ts +1 -0
  98. package/src/cli/cmd/providers.ts +534 -0
  99. package/src/cli/cmd/run/demo.ts +1274 -0
  100. package/src/cli/cmd/run/entry.body.ts +205 -0
  101. package/src/cli/cmd/run/footer.command.tsx +1064 -0
  102. package/src/cli/cmd/run/footer.menu.tsx +351 -0
  103. package/src/cli/cmd/run/footer.permission.tsx +472 -0
  104. package/src/cli/cmd/run/footer.prompt.tsx +1306 -0
  105. package/src/cli/cmd/run/footer.question.tsx +573 -0
  106. package/src/cli/cmd/run/footer.subagent.tsx +173 -0
  107. package/src/cli/cmd/run/footer.ts +1129 -0
  108. package/src/cli/cmd/run/footer.view.tsx +943 -0
  109. package/src/cli/cmd/run/footer.width.ts +27 -0
  110. package/src/cli/cmd/run/permission.shared.ts +256 -0
  111. package/src/cli/cmd/run/prompt.editor.ts +157 -0
  112. package/src/cli/cmd/run/prompt.shared.ts +153 -0
  113. package/src/cli/cmd/run/question.shared.ts +340 -0
  114. package/src/cli/cmd/run/runtime.boot.ts +202 -0
  115. package/src/cli/cmd/run/runtime.lifecycle.ts +406 -0
  116. package/src/cli/cmd/run/runtime.queue.ts +349 -0
  117. package/src/cli/cmd/run/runtime.shared.ts +17 -0
  118. package/src/cli/cmd/run/runtime.stdin.ts +37 -0
  119. package/src/cli/cmd/run/runtime.ts +814 -0
  120. package/src/cli/cmd/run/scrollback.shared.ts +92 -0
  121. package/src/cli/cmd/run/scrollback.surface.ts +431 -0
  122. package/src/cli/cmd/run/scrollback.writer.tsx +352 -0
  123. package/src/cli/cmd/run/session-data.ts +1113 -0
  124. package/src/cli/cmd/run/session-replay.ts +374 -0
  125. package/src/cli/cmd/run/session.shared.ts +196 -0
  126. package/src/cli/cmd/run/splash.ts +280 -0
  127. package/src/cli/cmd/run/stream.transport.ts +1462 -0
  128. package/src/cli/cmd/run/stream.ts +175 -0
  129. package/src/cli/cmd/run/subagent-data.ts +876 -0
  130. package/src/cli/cmd/run/theme.ts +690 -0
  131. package/src/cli/cmd/run/tool.ts +1486 -0
  132. package/src/cli/cmd/run/trace.ts +94 -0
  133. package/src/cli/cmd/run/turn-summary.ts +47 -0
  134. package/src/cli/cmd/run/types.ts +350 -0
  135. package/src/cli/cmd/run/variant.shared.ts +216 -0
  136. package/src/cli/cmd/run.ts +1011 -0
  137. package/src/cli/cmd/serve.ts +24 -0
  138. package/src/cli/cmd/session.ts +147 -0
  139. package/src/cli/cmd/stats.ts +393 -0
  140. package/src/cli/cmd/tui.ts +305 -0
  141. package/src/cli/cmd/uninstall.ts +353 -0
  142. package/src/cli/cmd/upgrade.ts +74 -0
  143. package/src/cli/cmd/web.ts +84 -0
  144. package/src/cli/effect/prompt.ts +37 -0
  145. package/src/cli/effect-cmd.ts +96 -0
  146. package/src/cli/error.ts +130 -0
  147. package/src/cli/heap.ts +45 -0
  148. package/src/cli/logo.ts +1 -0
  149. package/src/cli/network.ts +80 -0
  150. package/src/cli/tui/layer.ts +8 -0
  151. package/src/cli/tui/validate-session.ts +29 -0
  152. package/src/cli/tui/worker.ts +80 -0
  153. package/src/cli/ui.ts +132 -0
  154. package/src/cli/upgrade.ts +53 -0
  155. package/src/command/index.ts +177 -0
  156. package/src/command/template/initialize.txt +66 -0
  157. package/src/command/template/review.txt +101 -0
  158. package/src/config/agent.ts +59 -0
  159. package/src/config/command.ts +39 -0
  160. package/src/config/config.ts +680 -0
  161. package/src/config/entry-name.ts +19 -0
  162. package/src/config/managed.ts +69 -0
  163. package/src/config/markdown.ts +36 -0
  164. package/src/config/parse.ts +79 -0
  165. package/src/config/paths.ts +45 -0
  166. package/src/config/plugin.ts +79 -0
  167. package/src/config/tui-cwd.ts +5 -0
  168. package/src/config/tui-host-attention.ts +21 -0
  169. package/src/config/tui-migrate.ts +132 -0
  170. package/src/config/tui.ts +276 -0
  171. package/src/config/variable.ts +91 -0
  172. package/src/control-plane/adapters/index.ts +41 -0
  173. package/src/control-plane/adapters/worktree.ts +96 -0
  174. package/src/control-plane/dev/README.md +19 -0
  175. package/src/control-plane/dev/debug-workspace-plugin.ts +73 -0
  176. package/src/control-plane/types.ts +59 -0
  177. package/src/control-plane/util.ts +39 -0
  178. package/src/control-plane/workspace-adapter-runtime.ts +51 -0
  179. package/src/control-plane/workspace-context.ts +26 -0
  180. package/src/control-plane/workspace.ts +964 -0
  181. package/src/effect/app-node-builder-v1.ts +12 -0
  182. package/src/effect/app-runtime.ts +135 -0
  183. package/src/effect/bootstrap-runtime.ts +19 -0
  184. package/src/effect/bridge.ts +84 -0
  185. package/src/effect/config-service.ts +67 -0
  186. package/src/effect/instance-ref.ts +11 -0
  187. package/src/effect/instance-registry.ts +12 -0
  188. package/src/effect/instance-state.ts +69 -0
  189. package/src/effect/promise.ts +17 -0
  190. package/src/effect/run-service.ts +47 -0
  191. package/src/effect/runner.ts +217 -0
  192. package/src/effect/runtime-flags.ts +77 -0
  193. package/src/env/index.ts +41 -0
  194. package/src/event-manifest.ts +3 -0
  195. package/src/event-v2-bridge.ts +71 -0
  196. package/src/format/formatter.ts +404 -0
  197. package/src/format/index.ts +203 -0
  198. package/src/git/index.ts +348 -0
  199. package/src/id/id.ts +80 -0
  200. package/src/ide/index.ts +54 -0
  201. package/src/image/image.ts +172 -0
  202. package/src/index.ts +142 -0
  203. package/src/installation/index.ts +336 -0
  204. package/src/lsp/client.ts +650 -0
  205. package/src/lsp/diagnostic.ts +29 -0
  206. package/src/lsp/language.ts +121 -0
  207. package/src/lsp/launch.ts +21 -0
  208. package/src/lsp/lsp.ts +507 -0
  209. package/src/lsp/server.ts +1983 -0
  210. package/src/markdown.d.ts +4 -0
  211. package/src/mcp/auth.ts +163 -0
  212. package/src/mcp/catalog.ts +170 -0
  213. package/src/mcp/index.ts +1012 -0
  214. package/src/mcp/oauth-callback.ts +194 -0
  215. package/src/mcp/oauth-provider.ts +259 -0
  216. package/src/node.ts +4 -0
  217. package/src/patch/index.ts +686 -0
  218. package/src/permission/arity.ts +163 -0
  219. package/src/permission/evaluate.ts +1 -0
  220. package/src/permission/index.ts +218 -0
  221. package/src/plugin/azure.ts +26 -0
  222. package/src/plugin/cloudflare.ts +76 -0
  223. package/src/plugin/digitalocean.ts +325 -0
  224. package/src/plugin/github-copilot/copilot.ts +414 -0
  225. package/src/plugin/github-copilot/models.ts +246 -0
  226. package/src/plugin/index.ts +314 -0
  227. package/src/plugin/install.ts +439 -0
  228. package/src/plugin/loader.ts +237 -0
  229. package/src/plugin/meta.ts +188 -0
  230. package/src/plugin/openai/README.md +31 -0
  231. package/src/plugin/openai/codex.ts +556 -0
  232. package/src/plugin/openai/ws-pool.ts +270 -0
  233. package/src/plugin/openai/ws.ts +381 -0
  234. package/src/plugin/pty-environment.ts +24 -0
  235. package/src/plugin/shared.ts +323 -0
  236. package/src/plugin/snowflake-cortex.ts +507 -0
  237. package/src/plugin/tui/internal.ts +10 -0
  238. package/src/plugin/tui/runtime.ts +1131 -0
  239. package/src/plugin/xai.ts +626 -0
  240. package/src/project/bootstrap-service.ts +9 -0
  241. package/src/project/bootstrap.ts +58 -0
  242. package/src/project/instance-context.ts +24 -0
  243. package/src/project/instance-runtime.ts +16 -0
  244. package/src/project/instance-store.ts +213 -0
  245. package/src/project/project.ts +483 -0
  246. package/src/project/vcs.ts +423 -0
  247. package/src/provider/auth.ts +229 -0
  248. package/src/provider/error.ts +188 -0
  249. package/src/provider/model-status.ts +8 -0
  250. package/src/provider/provider.ts +1977 -0
  251. package/src/provider/transform.ts +1561 -0
  252. package/src/question/index.ts +161 -0
  253. package/src/question/schema.ts +4 -0
  254. package/src/server/auth.ts +48 -0
  255. package/src/server/event.ts +10 -0
  256. package/src/server/global-lifecycle.ts +28 -0
  257. package/src/server/init-projectors.ts +3 -0
  258. package/src/server/mdns.ts +47 -0
  259. package/src/server/projectors.ts +1 -0
  260. package/src/server/proxy-util.ts +48 -0
  261. package/src/server/routes/instance/httpapi/AGENTS.md +39 -0
  262. package/src/server/routes/instance/httpapi/api.ts +97 -0
  263. package/src/server/routes/instance/httpapi/errors.ts +193 -0
  264. package/src/server/routes/instance/httpapi/groups/config.ts +65 -0
  265. package/src/server/routes/instance/httpapi/groups/control-plane.ts +35 -0
  266. package/src/server/routes/instance/httpapi/groups/control.ts +76 -0
  267. package/src/server/routes/instance/httpapi/groups/event.ts +29 -0
  268. package/src/server/routes/instance/httpapi/groups/experimental.ts +275 -0
  269. package/src/server/routes/instance/httpapi/groups/file.ts +185 -0
  270. package/src/server/routes/instance/httpapi/groups/global.ts +136 -0
  271. package/src/server/routes/instance/httpapi/groups/instance.ts +206 -0
  272. package/src/server/routes/instance/httpapi/groups/mcp.ts +156 -0
  273. package/src/server/routes/instance/httpapi/groups/metadata.ts +18 -0
  274. package/src/server/routes/instance/httpapi/groups/permission.ts +61 -0
  275. package/src/server/routes/instance/httpapi/groups/project-copy.ts +32 -0
  276. package/src/server/routes/instance/httpapi/groups/project.ts +93 -0
  277. package/src/server/routes/instance/httpapi/groups/provider.ts +101 -0
  278. package/src/server/routes/instance/httpapi/groups/pty.ts +172 -0
  279. package/src/server/routes/instance/httpapi/groups/query.ts +12 -0
  280. package/src/server/routes/instance/httpapi/groups/question.ts +74 -0
  281. package/src/server/routes/instance/httpapi/groups/session.ts +462 -0
  282. package/src/server/routes/instance/httpapi/groups/sync.ts +113 -0
  283. package/src/server/routes/instance/httpapi/groups/tui.ts +208 -0
  284. package/src/server/routes/instance/httpapi/groups/workspace.ts +141 -0
  285. package/src/server/routes/instance/httpapi/handlers/config.ts +34 -0
  286. package/src/server/routes/instance/httpapi/handlers/control-plane.ts +37 -0
  287. package/src/server/routes/instance/httpapi/handlers/control.ts +43 -0
  288. package/src/server/routes/instance/httpapi/handlers/event.ts +99 -0
  289. package/src/server/routes/instance/httpapi/handlers/experimental.ts +193 -0
  290. package/src/server/routes/instance/httpapi/handlers/file.ts +139 -0
  291. package/src/server/routes/instance/httpapi/handlers/global.ts +156 -0
  292. package/src/server/routes/instance/httpapi/handlers/instance.ts +110 -0
  293. package/src/server/routes/instance/httpapi/handlers/mcp.ts +111 -0
  294. package/src/server/routes/instance/httpapi/handlers/permission.ts +41 -0
  295. package/src/server/routes/instance/httpapi/handlers/project-copy.ts +83 -0
  296. package/src/server/routes/instance/httpapi/handlers/project.ts +63 -0
  297. package/src/server/routes/instance/httpapi/handlers/provider.ts +113 -0
  298. package/src/server/routes/instance/httpapi/handlers/pty.ts +273 -0
  299. package/src/server/routes/instance/httpapi/handlers/question.ts +54 -0
  300. package/src/server/routes/instance/httpapi/handlers/session-errors.ts +21 -0
  301. package/src/server/routes/instance/httpapi/handlers/session.ts +442 -0
  302. package/src/server/routes/instance/httpapi/handlers/sync.ts +89 -0
  303. package/src/server/routes/instance/httpapi/handlers/tui.ts +131 -0
  304. package/src/server/routes/instance/httpapi/handlers/workspace.ts +102 -0
  305. package/src/server/routes/instance/httpapi/lifecycle.ts +54 -0
  306. package/src/server/routes/instance/httpapi/middleware/authorization.ts +150 -0
  307. package/src/server/routes/instance/httpapi/middleware/compression.ts +64 -0
  308. package/src/server/routes/instance/httpapi/middleware/cors-vary.ts +29 -0
  309. package/src/server/routes/instance/httpapi/middleware/error.ts +43 -0
  310. package/src/server/routes/instance/httpapi/middleware/fence.ts +25 -0
  311. package/src/server/routes/instance/httpapi/middleware/instance-context.ts +43 -0
  312. package/src/server/routes/instance/httpapi/middleware/proxy.ts +108 -0
  313. package/src/server/routes/instance/httpapi/middleware/schema-error.ts +41 -0
  314. package/src/server/routes/instance/httpapi/middleware/workspace-routing.ts +250 -0
  315. package/src/server/routes/instance/httpapi/public.ts +537 -0
  316. package/src/server/routes/instance/httpapi/server.ts +322 -0
  317. package/src/server/routes/instance/httpapi/websocket-tracker.ts +60 -0
  318. package/src/server/server.ts +226 -0
  319. package/src/server/shared/fence.ts +60 -0
  320. package/src/server/shared/pty-ticket.ts +15 -0
  321. package/src/server/shared/public-ui.ts +12 -0
  322. package/src/server/shared/tui-control.ts +28 -0
  323. package/src/server/shared/ui.ts +108 -0
  324. package/src/server/shared/workspace-routing.ts +38 -0
  325. package/src/server/tui-event.ts +1 -0
  326. package/src/session/compaction.ts +562 -0
  327. package/src/session/instruction.ts +237 -0
  328. package/src/session/llm/AGENTS.md +90 -0
  329. package/src/session/llm/ai-sdk.ts +288 -0
  330. package/src/session/llm/native-request.ts +196 -0
  331. package/src/session/llm/native-runtime.ts +195 -0
  332. package/src/session/llm/request.ts +226 -0
  333. package/src/session/llm.ts +404 -0
  334. package/src/session/message-error.ts +14 -0
  335. package/src/session/message-v2.ts +734 -0
  336. package/src/session/message.ts +148 -0
  337. package/src/session/overflow.ts +34 -0
  338. package/src/session/processor.ts +716 -0
  339. package/src/session/prompt/anthropic.txt +105 -0
  340. package/src/session/prompt/beast.txt +147 -0
  341. package/src/session/prompt/build-switch.txt +5 -0
  342. package/src/session/prompt/codex.txt +79 -0
  343. package/src/session/prompt/copilot-gpt-5.txt +143 -0
  344. package/src/session/prompt/default.txt +95 -0
  345. package/src/session/prompt/gemini.txt +155 -0
  346. package/src/session/prompt/gpt.txt +107 -0
  347. package/src/session/prompt/kimi.txt +95 -0
  348. package/src/session/prompt/plan-mode.txt +70 -0
  349. package/src/session/prompt/plan-reminder-anthropic.txt +67 -0
  350. package/src/session/prompt/plan.txt +26 -0
  351. package/src/session/prompt/trinity.txt +97 -0
  352. package/src/session/prompt.ts +1630 -0
  353. package/src/session/reminders.ts +92 -0
  354. package/src/session/retry.ts +201 -0
  355. package/src/session/revert.ts +146 -0
  356. package/src/session/run-state.ts +151 -0
  357. package/src/session/schema.ts +26 -0
  358. package/src/session/session.ts +1018 -0
  359. package/src/session/status.ts +56 -0
  360. package/src/session/summary.ts +160 -0
  361. package/src/session/system.ts +143 -0
  362. package/src/session/todo.ts +74 -0
  363. package/src/session/tools.ts +583 -0
  364. package/src/share/session.ts +58 -0
  365. package/src/share/share-next.ts +371 -0
  366. package/src/skill/discovery.ts +140 -0
  367. package/src/skill/index.ts +354 -0
  368. package/src/snapshot/index.ts +807 -0
  369. package/src/sql.d.ts +4 -0
  370. package/src/storage/schema.ts +5 -0
  371. package/src/storage/storage.ts +327 -0
  372. package/src/sync/README.md +179 -0
  373. package/src/sync/schema.ts +11 -0
  374. package/src/temporary.ts +31 -0
  375. package/src/tool/apply_patch.ts +313 -0
  376. package/src/tool/apply_patch.txt +33 -0
  377. package/src/tool/edit.ts +737 -0
  378. package/src/tool/edit.txt +10 -0
  379. package/src/tool/external-directory.ts +49 -0
  380. package/src/tool/glob.ts +76 -0
  381. package/src/tool/glob.txt +6 -0
  382. package/src/tool/grep.ts +112 -0
  383. package/src/tool/grep.txt +8 -0
  384. package/src/tool/invalid.ts +21 -0
  385. package/src/tool/json-schema.ts +164 -0
  386. package/src/tool/lsp.ts +113 -0
  387. package/src/tool/lsp.txt +24 -0
  388. package/src/tool/mcp-websearch.ts +96 -0
  389. package/src/tool/plan-enter.txt +14 -0
  390. package/src/tool/plan-exit.txt +13 -0
  391. package/src/tool/plan.ts +79 -0
  392. package/src/tool/question.ts +44 -0
  393. package/src/tool/question.txt +10 -0
  394. package/src/tool/read.ts +386 -0
  395. package/src/tool/read.txt +14 -0
  396. package/src/tool/registry.ts +420 -0
  397. package/src/tool/schema.ts +14 -0
  398. package/src/tool/shell/id.ts +19 -0
  399. package/src/tool/shell/prompt.ts +293 -0
  400. package/src/tool/shell/shell.txt +21 -0
  401. package/src/tool/shell.ts +645 -0
  402. package/src/tool/skill.ts +70 -0
  403. package/src/tool/skill.txt +5 -0
  404. package/src/tool/task.ts +346 -0
  405. package/src/tool/task.txt +19 -0
  406. package/src/tool/todo.ts +46 -0
  407. package/src/tool/todowrite.txt +44 -0
  408. package/src/tool/tool.ts +183 -0
  409. package/src/tool/truncate.ts +156 -0
  410. package/src/tool/truncation-dir.ts +4 -0
  411. package/src/tool/webfetch.ts +192 -0
  412. package/src/tool/webfetch.txt +13 -0
  413. package/src/tool/websearch.ts +143 -0
  414. package/src/tool/websearch.txt +14 -0
  415. package/src/tool/write.ts +104 -0
  416. package/src/tool/write.txt +8 -0
  417. package/src/util/archive.ts +17 -0
  418. package/src/util/bom.ts +27 -0
  419. package/src/util/data-url.ts +9 -0
  420. package/src/util/defer.ts +10 -0
  421. package/src/util/effect-http-client.ts +11 -0
  422. package/src/util/error.ts +1 -0
  423. package/src/util/filesystem.ts +251 -0
  424. package/src/util/html.ts +8 -0
  425. package/src/util/iife.ts +3 -0
  426. package/src/util/lazy.ts +20 -0
  427. package/src/util/local-context.ts +25 -0
  428. package/src/util/locale.ts +2 -0
  429. package/src/util/media.ts +26 -0
  430. package/src/util/process.ts +177 -0
  431. package/src/util/proxy-env.ts +72 -0
  432. package/src/util/queue.ts +32 -0
  433. package/src/util/record.ts +1 -0
  434. package/src/util/repository.ts +232 -0
  435. package/src/util/rpc.ts +66 -0
  436. package/src/util/signal.ts +12 -0
  437. package/src/util/timeout.ts +13 -0
  438. package/src/util/token.ts +1 -0
  439. package/src/util/wildcard.ts +59 -0
  440. package/src/worktree/index.ts +623 -0
  441. package/test/AGENTS.md +204 -0
  442. package/test/EFFECT_TEST_MIGRATION.md +169 -0
  443. package/test/account/repo.test.ts +355 -0
  444. package/test/account/service.test.ts +456 -0
  445. package/test/acp/config-option.test.ts +229 -0
  446. package/test/acp/content.test.ts +235 -0
  447. package/test/acp/directory.test.ts +188 -0
  448. package/test/acp/error.test.ts +67 -0
  449. package/test/acp/event.test.ts +751 -0
  450. package/test/acp/permission.test.ts +401 -0
  451. package/test/acp/service-session.test.ts +1248 -0
  452. package/test/acp/session.test.ts +201 -0
  453. package/test/acp/tool.test.ts +298 -0
  454. package/test/acp/usage.test.ts +318 -0
  455. package/test/agent/agent.test.ts +755 -0
  456. package/test/agent/plan-mode-subagent-bypass.test.ts +160 -0
  457. package/test/agent/plugin-agent-regression.test.ts +51 -0
  458. package/test/auth/auth.test.ts +75 -0
  459. package/test/background/job.test.ts +244 -0
  460. package/test/cli/account.test.ts +30 -0
  461. package/test/cli/acp/acp-test-client.ts +97 -0
  462. package/test/cli/acp/config-options.test.ts +103 -0
  463. package/test/cli/acp/helpers.ts +96 -0
  464. package/test/cli/acp/initialize-auth.test.ts +61 -0
  465. package/test/cli/acp/lifecycle.test.ts +118 -0
  466. package/test/cli/acp/prompt-content.test.ts +97 -0
  467. package/test/cli/acp/skills.test.ts +38 -0
  468. package/test/cli/cmd/tui/attention.test.ts +484 -0
  469. package/test/cli/effect-cmd-instance-als.test.ts +40 -0
  470. package/test/cli/error.test.ts +95 -0
  471. package/test/cli/github-action.test.ts +199 -0
  472. package/test/cli/github-remote.test.ts +90 -0
  473. package/test/cli/help/__snapshots__/help-snapshots.test.ts.snap +623 -0
  474. package/test/cli/help/help-snapshots.test.ts +140 -0
  475. package/test/cli/import.test.ts +54 -0
  476. package/test/cli/mcp-add.test.ts +74 -0
  477. package/test/cli/plugin-auth-picker.test.ts +120 -0
  478. package/test/cli/run/entry.body.test.ts +536 -0
  479. package/test/cli/run/footer.menu.test.ts +43 -0
  480. package/test/cli/run/footer.view.test.tsx +1375 -0
  481. package/test/cli/run/footer.width.test.ts +35 -0
  482. package/test/cli/run/permission.shared.test.ts +144 -0
  483. package/test/cli/run/prompt.editor.test.ts +101 -0
  484. package/test/cli/run/prompt.shared.test.ts +101 -0
  485. package/test/cli/run/question.shared.test.ts +115 -0
  486. package/test/cli/run/run-process.test.ts +331 -0
  487. package/test/cli/run/runtime.boot.test.ts +283 -0
  488. package/test/cli/run/runtime.queue.test.ts +481 -0
  489. package/test/cli/run/runtime.stdin.test.ts +71 -0
  490. package/test/cli/run/runtime.test.ts +238 -0
  491. package/test/cli/run/scrollback.surface.test.ts +1092 -0
  492. package/test/cli/run/session-data.test.ts +593 -0
  493. package/test/cli/run/session-replay.test.ts +691 -0
  494. package/test/cli/run/session.shared.test.ts +247 -0
  495. package/test/cli/run/stream.test.ts +56 -0
  496. package/test/cli/run/stream.transport.test.ts +2363 -0
  497. package/test/cli/run/subagent-data.test.ts +547 -0
  498. package/test/cli/run/theme.test.ts +177 -0
  499. package/test/cli/run/variant.shared.test.ts +218 -0
  500. package/test/cli/serve/serve-process.test.ts +61 -0
  501. package/test/cli/smokes/read-only.test.ts +115 -0
  502. package/test/cli/tui/attach.test.ts +11 -0
  503. package/test/cli/tui/editor-context-zed.test.ts +379 -0
  504. package/test/cli/tui/editor-context.test.tsx +297 -0
  505. package/test/cli/tui/plugin-add.test.ts +110 -0
  506. package/test/cli/tui/plugin-install.test.ts +87 -0
  507. package/test/cli/tui/plugin-lifecycle.test.ts +224 -0
  508. package/test/cli/tui/plugin-loader-entrypoint.test.ts +485 -0
  509. package/test/cli/tui/plugin-loader-pure.test.ts +72 -0
  510. package/test/cli/tui/plugin-loader.test.ts +1332 -0
  511. package/test/cli/tui/plugin-toggle.test.ts +264 -0
  512. package/test/cli/tui/thread.test.ts +95 -0
  513. package/test/config/agent-color.test.ts +47 -0
  514. package/test/config/config.test.ts +2027 -0
  515. package/test/config/entry-name.test.ts +57 -0
  516. package/test/config/fixtures/empty-frontmatter.md +4 -0
  517. package/test/config/fixtures/frontmatter.md +28 -0
  518. package/test/config/fixtures/markdown-header.md +11 -0
  519. package/test/config/fixtures/no-frontmatter.md +1 -0
  520. package/test/config/fixtures/weird-model-id.md +13 -0
  521. package/test/config/lsp.test.ts +69 -0
  522. package/test/config/markdown.test.ts +228 -0
  523. package/test/config/plugin.test.ts +0 -0
  524. package/test/config/tui.test.ts +894 -0
  525. package/test/control-plane/adapters.test.ts +71 -0
  526. package/test/control-plane/workspace.test.ts +1701 -0
  527. package/test/effect/app-runtime-logger.test.ts +101 -0
  528. package/test/effect/config-service.test.ts +65 -0
  529. package/test/effect/instance-state.test.ts +392 -0
  530. package/test/effect/run-service.test.ts +89 -0
  531. package/test/effect/runner.test.ts +514 -0
  532. package/test/effect/runtime-flags.test.ts +374 -0
  533. package/test/event-manifest.test.ts +24 -0
  534. package/test/fake/account.ts +9 -0
  535. package/test/fake/auth.ts +8 -0
  536. package/test/fake/npm.ts +8 -0
  537. package/test/fake/provider.ts +82 -0
  538. package/test/fake/skill.ts +8 -0
  539. package/test/filesystem/filesystem.test.ts +318 -0
  540. package/test/fixture/agent-plugin.constants.ts +6 -0
  541. package/test/fixture/agent-plugin.ts +12 -0
  542. package/test/fixture/config.ts +23 -0
  543. package/test/fixture/db.ts +11 -0
  544. package/test/fixture/fixture.test.ts +26 -0
  545. package/test/fixture/fixture.ts +228 -0
  546. package/test/fixture/flag.ts +20 -0
  547. package/test/fixture/flock-worker.ts +72 -0
  548. package/test/fixture/lsp/fake-lsp-server.js +249 -0
  549. package/test/fixture/mcp-session-recovery.ts +50 -0
  550. package/test/fixture/plug-worker.ts +93 -0
  551. package/test/fixture/plugin-meta-worker.ts +19 -0
  552. package/test/fixture/plugin.ts +10 -0
  553. package/test/fixture/skills/agents-sdk/SKILL.md +152 -0
  554. package/test/fixture/skills/agents-sdk/references/callable.md +92 -0
  555. package/test/fixture/skills/cloudflare/SKILL.md +211 -0
  556. package/test/fixture/skills/index.json +6 -0
  557. package/test/fixture/tui-environment.tsx +32 -0
  558. package/test/fixture/tui-plugin.ts +355 -0
  559. package/test/fixture/tui-runtime.ts +56 -0
  560. package/test/fixture/tui-sdk.ts +82 -0
  561. package/test/fixture/workspace.ts +34 -0
  562. package/test/fixtures/recordings/session/native-anthropic-tool-loop.json +49 -0
  563. package/test/fixtures/recordings/session/native-openai-oauth-tool-loop.json +45 -0
  564. package/test/fixtures/recordings/session/native-zen-tool-loop.json +49 -0
  565. package/test/format/format.test.ts +235 -0
  566. package/test/git/git.test.ts +179 -0
  567. package/test/ide/ide.test.ts +82 -0
  568. package/test/image/fixtures/picture-5mb-base64.png +0 -0
  569. package/test/image/image.test.ts +121 -0
  570. package/test/installation/installation.test.ts +240 -0
  571. package/test/lib/cli-process.ts +535 -0
  572. package/test/lib/effect.ts +177 -0
  573. package/test/lib/filesystem.ts +10 -0
  574. package/test/lib/llm-server.ts +779 -0
  575. package/test/lib/snapshot.ts +73 -0
  576. package/test/lib/test-provider.ts +37 -0
  577. package/test/lib/websocket.ts +46 -0
  578. package/test/lsp/client.test.ts +488 -0
  579. package/test/lsp/index.test.ts +231 -0
  580. package/test/lsp/jdtls-root.test.ts +459 -0
  581. package/test/lsp/launch.test.ts +22 -0
  582. package/test/lsp/lifecycle.test.ts +160 -0
  583. package/test/mcp/auth.test.ts +78 -0
  584. package/test/mcp/catalog.test.ts +47 -0
  585. package/test/mcp/headers.test.ts +127 -0
  586. package/test/mcp/lifecycle.test.ts +1304 -0
  587. package/test/mcp/oauth-auto-connect.test.ts +367 -0
  588. package/test/mcp/oauth-browser.test.ts +243 -0
  589. package/test/mcp/oauth-callback.test.ts +114 -0
  590. package/test/mcp/oauth-provider.test.ts +102 -0
  591. package/test/mcp/session-recovery.test.ts +27 -0
  592. package/test/patch/patch.test.ts +384 -0
  593. package/test/permission/arity.test.ts +33 -0
  594. package/test/permission/next.test.ts +1174 -0
  595. package/test/permission-task.test.ts +319 -0
  596. package/test/plugin/auth-override.test.ts +101 -0
  597. package/test/plugin/cloudflare.test.ts +68 -0
  598. package/test/plugin/codex.test.ts +256 -0
  599. package/test/plugin/github-copilot-models.test.ts +332 -0
  600. package/test/plugin/install-concurrency.test.ts +140 -0
  601. package/test/plugin/install.test.ts +570 -0
  602. package/test/plugin/loader-shared.test.ts +1306 -0
  603. package/test/plugin/meta.test.ts +137 -0
  604. package/test/plugin/openai-rollout.test.ts +17 -0
  605. package/test/plugin/openai-ws.test.ts +884 -0
  606. package/test/plugin/shared.test.ts +88 -0
  607. package/test/plugin/snowflake-cortex.test.ts +278 -0
  608. package/test/plugin/trigger.test.ts +108 -0
  609. package/test/plugin/workspace-adapter.test.ts +111 -0
  610. package/test/plugin/xai.test.ts +620 -0
  611. package/test/preload.ts +92 -0
  612. package/test/project/instance-bootstrap.test.ts +115 -0
  613. package/test/project/instance.test.ts +248 -0
  614. package/test/project/migrate-global.test.ts +168 -0
  615. package/test/project/project-directory.test.ts +202 -0
  616. package/test/project/project.test.ts +808 -0
  617. package/test/project/vcs.test.ts +335 -0
  618. package/test/project/worktree-remove.test.ts +128 -0
  619. package/test/project/worktree.test.ts +324 -0
  620. package/test/provider/amazon-bedrock.test.ts +361 -0
  621. package/test/provider/cf-ai-gateway-e2e.test.ts +132 -0
  622. package/test/provider/digitalocean.test.ts +124 -0
  623. package/test/provider/gitlab-duo.test.ts +412 -0
  624. package/test/provider/header-timeout.test.ts +234 -0
  625. package/test/provider/model-status.test.ts +61 -0
  626. package/test/provider/provider.test.ts +1912 -0
  627. package/test/provider/transform.test.ts +4742 -0
  628. package/test/question/question.test.ts +459 -0
  629. package/test/server/AGENTS.md +15 -0
  630. package/test/server/auth.test.ts +59 -0
  631. package/test/server/global-bus.ts +31 -0
  632. package/test/server/global-session-list.test.ts +108 -0
  633. package/test/server/httpapi-authorization.test.ts +174 -0
  634. package/test/server/httpapi-compression.test.ts +151 -0
  635. package/test/server/httpapi-config.test.ts +110 -0
  636. package/test/server/httpapi-control-plane.test.ts +63 -0
  637. package/test/server/httpapi-cors-vary.test.ts +63 -0
  638. package/test/server/httpapi-cors.test.ts +122 -0
  639. package/test/server/httpapi-error-middleware.test.ts +101 -0
  640. package/test/server/httpapi-event.test.ts +94 -0
  641. package/test/server/httpapi-exercise/assertions.ts +64 -0
  642. package/test/server/httpapi-exercise/backend.ts +144 -0
  643. package/test/server/httpapi-exercise/dsl.ts +210 -0
  644. package/test/server/httpapi-exercise/environment.ts +40 -0
  645. package/test/server/httpapi-exercise/index.ts +1814 -0
  646. package/test/server/httpapi-exercise/report.ts +66 -0
  647. package/test/server/httpapi-exercise/routing.ts +96 -0
  648. package/test/server/httpapi-exercise/runner.ts +267 -0
  649. package/test/server/httpapi-exercise/runtime.ts +52 -0
  650. package/test/server/httpapi-exercise/types.ts +127 -0
  651. package/test/server/httpapi-experimental.test.ts +298 -0
  652. package/test/server/httpapi-file.test.ts +83 -0
  653. package/test/server/httpapi-global.test.ts +66 -0
  654. package/test/server/httpapi-instance-context.test.ts +337 -0
  655. package/test/server/httpapi-instance-route-auth.test.ts +81 -0
  656. package/test/server/httpapi-instance.test.ts +265 -0
  657. package/test/server/httpapi-layer.ts +33 -0
  658. package/test/server/httpapi-listen.test.ts +465 -0
  659. package/test/server/httpapi-mcp-oauth.test.ts +73 -0
  660. package/test/server/httpapi-mcp.test.ts +223 -0
  661. package/test/server/httpapi-mdns.test.ts +79 -0
  662. package/test/server/httpapi-promptasync-context.test.ts +212 -0
  663. package/test/server/httpapi-provider.test.ts +401 -0
  664. package/test/server/httpapi-pty.test.ts +299 -0
  665. package/test/server/httpapi-public-openapi.test.ts +350 -0
  666. package/test/server/httpapi-query-schema-drift.test.ts +330 -0
  667. package/test/server/httpapi-reference.test.ts +63 -0
  668. package/test/server/httpapi-schema-error-body.test.ts +166 -0
  669. package/test/server/httpapi-sdk.test.ts +913 -0
  670. package/test/server/httpapi-session.test.ts +1090 -0
  671. package/test/server/httpapi-sync.test.ts +149 -0
  672. package/test/server/httpapi-ui.test.ts +456 -0
  673. package/test/server/httpapi-v2-location.test.ts +126 -0
  674. package/test/server/httpapi-v2-pty.test.ts +250 -0
  675. package/test/server/httpapi-workspace-routing.test.ts +552 -0
  676. package/test/server/httpapi-workspace.test.ts +506 -0
  677. package/test/server/negative-tokens-regression.test.ts +84 -0
  678. package/test/server/project-copy.test.ts +127 -0
  679. package/test/server/project-init-git.test.ts +118 -0
  680. package/test/server/proxy-util.test.ts +113 -0
  681. package/test/server/sdk-error-shape.test.ts +81 -0
  682. package/test/server/sdk-v1-smoke.test.ts +57 -0
  683. package/test/server/session-actions.test.ts +110 -0
  684. package/test/server/session-diff-missing-patch.test.ts +97 -0
  685. package/test/server/session-list.test.ts +302 -0
  686. package/test/server/session-messages.test.ts +180 -0
  687. package/test/server/session-select.test.ts +67 -0
  688. package/test/server/workspace-proxy.test.ts +181 -0
  689. package/test/server/workspace-routing.test.ts +94 -0
  690. package/test/server/worktree-endpoint-repro.test.ts +307 -0
  691. package/test/session/compaction.test.ts +1819 -0
  692. package/test/session/instruction.test.ts +264 -0
  693. package/test/session/llm-native-recorded.test.ts +413 -0
  694. package/test/session/llm-native.test.ts +761 -0
  695. package/test/session/llm.test.ts +2003 -0
  696. package/test/session/message-v2.test.ts +1661 -0
  697. package/test/session/messages-pagination.test.ts +1057 -0
  698. package/test/session/processor-effect.test.ts +1067 -0
  699. package/test/session/prompt.test.ts +2402 -0
  700. package/test/session/retry.test.ts +440 -0
  701. package/test/session/revert-compact.test.ts +638 -0
  702. package/test/session/schema-decoding.test.ts +313 -0
  703. package/test/session/session-schema.test.ts +78 -0
  704. package/test/session/session.test.ts +253 -0
  705. package/test/session/snapshot-tool-race.test.ts +189 -0
  706. package/test/session/structured-output-integration.test.ts +235 -0
  707. package/test/session/structured-output.test.ts +387 -0
  708. package/test/session/system.test.ts +142 -0
  709. package/test/share/share-next.test.ts +324 -0
  710. package/test/skill/discovery.test.ts +186 -0
  711. package/test/skill/skill.test.ts +585 -0
  712. package/test/snapshot/snapshot.test.ts +1218 -0
  713. package/test/storage/storage.test.ts +297 -0
  714. package/test/tool/__snapshots__/parameters.test.ts.snap +466 -0
  715. package/test/tool/__snapshots__/tool.test.ts.snap +9 -0
  716. package/test/tool/apply_patch.test.ts +529 -0
  717. package/test/tool/edit.test.ts +574 -0
  718. package/test/tool/external-directory.test.ts +156 -0
  719. package/test/tool/fixtures/large-image.png +0 -0
  720. package/test/tool/fixtures/models-api.json +117299 -0
  721. package/test/tool/glob.test.ts +132 -0
  722. package/test/tool/grep.test.ts +221 -0
  723. package/test/tool/lsp.test.ts +184 -0
  724. package/test/tool/parameters.test.ts +290 -0
  725. package/test/tool/question.test.ts +133 -0
  726. package/test/tool/read.test.ts +608 -0
  727. package/test/tool/registry.test.ts +493 -0
  728. package/test/tool/shell.test.ts +1199 -0
  729. package/test/tool/skill.test.ts +134 -0
  730. package/test/tool/task.test.ts +905 -0
  731. package/test/tool/tool-define.test.ts +154 -0
  732. package/test/tool/truncation.test.ts +264 -0
  733. package/test/tool/webfetch.test.ts +119 -0
  734. package/test/tool/websearch.test.ts +99 -0
  735. package/test/tool/write.test.ts +279 -0
  736. package/test/util/data-url.test.ts +14 -0
  737. package/test/util/error.test.ts +16 -0
  738. package/test/util/filesystem.test.ts +656 -0
  739. package/test/util/glob.test.ts +164 -0
  740. package/test/util/html.test.ts +15 -0
  741. package/test/util/iife.test.ts +36 -0
  742. package/test/util/lazy.test.ts +50 -0
  743. package/test/util/module.test.ts +59 -0
  744. package/test/util/process.test.ts +128 -0
  745. package/test/util/repository.test.ts +93 -0
  746. package/test/util/timeout.test.ts +21 -0
  747. package/test/util/wildcard.test.ts +90 -0
  748. package/test/v2/session-message-updater.test.ts +269 -0
  749. package/tsconfig.json +16 -0
@@ -0,0 +1,623 @@
1
+ // Bun Snapshot v1, https://bun.sh/docs/test/snapshots
2
+
3
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode acp --help 1`] = `
4
+ "opencode acp
5
+
6
+ start ACP (Agent Client Protocol) server
7
+
8
+ Options:
9
+ -h, --help show help [boolean]
10
+ -v, --version show version number [boolean]
11
+ --print-logs print logs to stderr [boolean]
12
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
13
+ --pure run without external plugins [boolean]
14
+ --port port to listen on [number] [default: 0]
15
+ --hostname hostname to listen on [string] [default: "127.0.0.1"]
16
+ --mdns enable mDNS service discovery (defaults hostname to 0.0.0.0)
17
+ [boolean] [default: false]
18
+ --mdns-domain custom domain name for mDNS service (default: opencode.local)
19
+ [string] [default: "opencode.local"]
20
+ --cors additional domains to allow for CORS [array] [default: []]
21
+ --cwd working directory [string] [default: "<HOME>"]"
22
+ `;
23
+
24
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode mcp --help 1`] = `
25
+ "opencode mcp
26
+
27
+ manage MCP (Model Context Protocol) servers
28
+
29
+ Commands:
30
+ opencode mcp add [name] add an MCP server
31
+ opencode mcp list list MCP servers and their status [aliases: ls]
32
+ opencode mcp auth [name] authenticate with an OAuth-enabled MCP server
33
+ opencode mcp logout [name] remove OAuth credentials for an MCP server
34
+ opencode mcp debug <name> debug OAuth connection for an MCP server
35
+
36
+ Options:
37
+ -h, --help show help [boolean]
38
+ -v, --version show version number [boolean]
39
+ --print-logs print logs to stderr [boolean]
40
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
41
+ --pure run without external plugins [boolean]"
42
+ `;
43
+
44
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode attach --help 1`] = `
45
+ "opencode attach <url>
46
+
47
+ attach to a running opencode server
48
+
49
+ Positionals:
50
+ url http://localhost:4096 [string] [required]
51
+
52
+ Options:
53
+ -h, --help show help [boolean]
54
+ -v, --version show version number [boolean]
55
+ --print-logs print logs to stderr [boolean]
56
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
57
+ --pure run without external plugins [boolean]
58
+ --dir directory to run in [string]
59
+ -c, --continue continue the last session [boolean]
60
+ -s, --session session id to continue [string]
61
+ --fork fork the session when continuing (use with --continue or --session) [boolean]
62
+ -p, --password basic auth password (defaults to OPENCODE_SERVER_PASSWORD) [string]
63
+ -u, --username basic auth username (defaults to OPENCODE_SERVER_USERNAME or 'opencode')
64
+ [string]
65
+ --mini start the minimal interactive interface [boolean] [default: false]
66
+ --no-replay disable mini session history replay on resume and after resize [boolean]
67
+ --replay-limit cap visible mini replay to the newest N messages [number]"
68
+ `;
69
+
70
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode run --help 1`] = `
71
+ "opencode run [message..]
72
+
73
+ run opencode with a message
74
+
75
+ Positionals:
76
+ message message to send [array] [default: []]
77
+
78
+ Options:
79
+ -h, --help show help [boolean]
80
+ -v, --version show version number [boolean]
81
+ --print-logs print logs to stderr [boolean]
82
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
83
+ --pure run without external plugins [boolean]
84
+ --command the command to run, use message for args [string]
85
+ -c, --continue continue the last session [boolean]
86
+ -s, --session session id to continue [string]
87
+ --fork fork the session before continuing (requires --continue or --session) [boolean]
88
+ --share share the session [boolean]
89
+ -m, --model model to use in the format of provider/model [string]
90
+ --agent agent to use [string]
91
+ --format format: default (formatted) or json (raw JSON events)
92
+ [string] [choices: "default", "json"] [default: "default"]
93
+ -f, --file file(s) to attach to message [array]
94
+ --title title for the session (uses truncated prompt if no value provided) [string]
95
+ --attach attach to a running opencode server (e.g., http://localhost:4096) [string]
96
+ -p, --password basic auth password (defaults to OPENCODE_SERVER_PASSWORD) [string]
97
+ -u, --username basic auth username (defaults to OPENCODE_SERVER_USERNAME or 'opencode')
98
+ [string]
99
+ --dir directory to run in, path on remote server if attaching [string]
100
+ --port port for the local server (defaults to random port if no value provided)
101
+ [number]
102
+ --variant model variant (provider-specific reasoning effort, e.g., high, max, minimal)
103
+ [string]
104
+ --thinking show thinking blocks [boolean]
105
+ -i, --interactive run in direct interactive split-footer mode [boolean] [default: false]
106
+ --auto auto-approve permissions that are not explicitly denied (dangerous!)
107
+ [boolean] [default: false]"
108
+ `;
109
+
110
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode debug --help 1`] = `
111
+ "opencode debug
112
+
113
+ debugging and troubleshooting tools
114
+
115
+ Commands:
116
+ opencode debug config show resolved configuration
117
+ opencode debug lsp LSP debugging utilities
118
+ opencode debug rg ripgrep debugging utilities
119
+ opencode debug file file system debugging utilities
120
+ opencode debug scrap list all known projects
121
+ opencode debug skill list all available skills
122
+ opencode debug snapshot snapshot debugging utilities
123
+ opencode debug startup print startup timing
124
+ opencode debug agent <name> show agent configuration details
125
+ opencode debug v2 debug v2 catalog and built-in plugins
126
+ opencode debug info show debug information
127
+ opencode debug paths show global paths (data, config, cache, state)
128
+ opencode debug wait wait indefinitely (for debugging)
129
+
130
+ Options:
131
+ -h, --help show help [boolean]
132
+ -v, --version show version number [boolean]
133
+ --print-logs print logs to stderr [boolean]
134
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
135
+ --pure run without external plugins [boolean]"
136
+ `;
137
+
138
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode providers --help 1`] = `
139
+ "opencode providers
140
+
141
+ manage AI providers and credentials
142
+
143
+ Commands:
144
+ opencode providers list list providers and credentials [aliases: ls]
145
+ opencode providers login [url] log in to a provider
146
+ opencode providers logout [provider] log out from a configured provider
147
+
148
+ Options:
149
+ -h, --help show help [boolean]
150
+ -v, --version show version number [boolean]
151
+ --print-logs print logs to stderr [boolean]
152
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
153
+ --pure run without external plugins [boolean]"
154
+ `;
155
+
156
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode agent --help 1`] = `
157
+ "opencode agent
158
+
159
+ manage agents
160
+
161
+ Commands:
162
+ opencode agent create create a new agent
163
+ opencode agent list list all available agents
164
+
165
+ Options:
166
+ -h, --help show help [boolean]
167
+ -v, --version show version number [boolean]
168
+ --print-logs print logs to stderr [boolean]
169
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
170
+ --pure run without external plugins [boolean]"
171
+ `;
172
+
173
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode upgrade --help 1`] = `
174
+ "opencode upgrade [target]
175
+
176
+ upgrade opencode to the latest or a specific version
177
+
178
+ Positionals:
179
+ target version to upgrade to, for ex '0.1.48' or 'v0.1.48' [string]
180
+
181
+ Options:
182
+ -h, --help show help [boolean]
183
+ -v, --version show version number [boolean]
184
+ --print-logs print logs to stderr [boolean]
185
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
186
+ --pure run without external plugins [boolean]
187
+ -m, --method installation method to use
188
+ [string] [choices: "curl", "npm", "pnpm", "bun", "brew", "choco", "scoop"]"
189
+ `;
190
+
191
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode uninstall --help 1`] = `
192
+ "opencode uninstall
193
+
194
+ uninstall opencode and remove all related files
195
+
196
+ Options:
197
+ -h, --help show help [boolean]
198
+ -v, --version show version number [boolean]
199
+ --print-logs print logs to stderr [boolean]
200
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
201
+ --pure run without external plugins [boolean]
202
+ -c, --keep-config keep configuration files [boolean] [default: false]
203
+ -d, --keep-data keep session data and snapshots [boolean] [default: false]
204
+ --dry-run show what would be removed without removing [boolean] [default: false]
205
+ -f, --force skip confirmation prompts [boolean] [default: false]"
206
+ `;
207
+
208
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode serve --help 1`] = `
209
+ "opencode serve
210
+
211
+ starts a headless opencode server
212
+
213
+ Options:
214
+ -h, --help show help [boolean]
215
+ -v, --version show version number [boolean]
216
+ --print-logs print logs to stderr [boolean]
217
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
218
+ --pure run without external plugins [boolean]
219
+ --port port to listen on [number] [default: 0]
220
+ --hostname hostname to listen on [string] [default: "127.0.0.1"]
221
+ --mdns enable mDNS service discovery (defaults hostname to 0.0.0.0)
222
+ [boolean] [default: false]
223
+ --mdns-domain custom domain name for mDNS service (default: opencode.local)
224
+ [string] [default: "opencode.local"]
225
+ --cors additional domains to allow for CORS [array] [default: []]"
226
+ `;
227
+
228
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode web --help 1`] = `
229
+ "opencode web
230
+
231
+ start opencode server and open web interface
232
+
233
+ Options:
234
+ -h, --help show help [boolean]
235
+ -v, --version show version number [boolean]
236
+ --print-logs print logs to stderr [boolean]
237
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
238
+ --pure run without external plugins [boolean]
239
+ --port port to listen on [number] [default: 0]
240
+ --hostname hostname to listen on [string] [default: "127.0.0.1"]
241
+ --mdns enable mDNS service discovery (defaults hostname to 0.0.0.0)
242
+ [boolean] [default: false]
243
+ --mdns-domain custom domain name for mDNS service (default: opencode.local)
244
+ [string] [default: "opencode.local"]
245
+ --cors additional domains to allow for CORS [array] [default: []]"
246
+ `;
247
+
248
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode models --help 1`] = `
249
+ "opencode models [provider]
250
+
251
+ list all available models
252
+
253
+ Positionals:
254
+ provider provider ID to filter models by [string]
255
+
256
+ Options:
257
+ -h, --help show help [boolean]
258
+ -v, --version show version number [boolean]
259
+ --print-logs print logs to stderr [boolean]
260
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
261
+ --pure run without external plugins [boolean]
262
+ --verbose use more verbose model output (includes metadata like costs) [boolean]
263
+ --refresh refresh the models cache from models.dev [boolean]"
264
+ `;
265
+
266
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode stats --help 1`] = `
267
+ "opencode stats
268
+
269
+ show token usage and cost statistics
270
+
271
+ Options:
272
+ -h, --help show help [boolean]
273
+ -v, --version show version number [boolean]
274
+ --print-logs print logs to stderr [boolean]
275
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
276
+ --pure run without external plugins [boolean]
277
+ --days show stats for the last N days (default: all time) [number]
278
+ --tools number of tools to show (default: all) [number]
279
+ --models show model statistics (default: hidden). Pass a number to show top N, otherwise
280
+ shows all
281
+ --project filter by project (default: all projects, empty string: current project)[string]"
282
+ `;
283
+
284
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode export --help 1`] = `
285
+ "opencode export [sessionID]
286
+
287
+ export session data as JSON
288
+
289
+ Positionals:
290
+ sessionID session id to export [string]
291
+
292
+ Options:
293
+ -h, --help show help [boolean]
294
+ -v, --version show version number [boolean]
295
+ --print-logs print logs to stderr [boolean]
296
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
297
+ --pure run without external plugins [boolean]
298
+ --sanitize redact sensitive transcript and file data [boolean]"
299
+ `;
300
+
301
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode import --help 1`] = `
302
+ "opencode import <file>
303
+
304
+ import session data from JSON file or URL
305
+
306
+ Positionals:
307
+ file path to JSON file or share URL [string] [required]
308
+
309
+ Options:
310
+ -h, --help show help [boolean]
311
+ -v, --version show version number [boolean]
312
+ --print-logs print logs to stderr [boolean]
313
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
314
+ --pure run without external plugins [boolean]"
315
+ `;
316
+
317
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode github --help 1`] = `
318
+ "opencode github
319
+
320
+ manage GitHub agent
321
+
322
+ Commands:
323
+ opencode github install install the GitHub agent
324
+ opencode github run run the GitHub agent
325
+
326
+ Options:
327
+ -h, --help show help [boolean]
328
+ -v, --version show version number [boolean]
329
+ --print-logs print logs to stderr [boolean]
330
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
331
+ --pure run without external plugins [boolean]"
332
+ `;
333
+
334
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode pr --help 1`] = `
335
+ "opencode pr <number>
336
+
337
+ fetch and checkout a GitHub PR branch, then run opencode
338
+
339
+ Positionals:
340
+ number PR number to checkout [number] [required]
341
+
342
+ Options:
343
+ -h, --help show help [boolean]
344
+ -v, --version show version number [boolean]
345
+ --print-logs print logs to stderr [boolean]
346
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
347
+ --pure run without external plugins [boolean]"
348
+ `;
349
+
350
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode session --help 1`] = `
351
+ "opencode session
352
+
353
+ manage sessions
354
+
355
+ Commands:
356
+ opencode session list list sessions
357
+ opencode session delete <sessionID> delete a session
358
+
359
+ Options:
360
+ -h, --help show help [boolean]
361
+ -v, --version show version number [boolean]
362
+ --print-logs print logs to stderr [boolean]
363
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
364
+ --pure run without external plugins [boolean]"
365
+ `;
366
+
367
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode plugin --help 1`] = `
368
+ "opencode plugin <module>
369
+
370
+ install plugin and update config
371
+
372
+ Positionals:
373
+ module npm module name [string] [required]
374
+
375
+ Options:
376
+ -h, --help show help [boolean]
377
+ -v, --version show version number [boolean]
378
+ --print-logs print logs to stderr [boolean]
379
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
380
+ --pure run without external plugins [boolean]
381
+ -g, --global install in global config [boolean] [default: false]
382
+ -f, --force replace existing plugin version [boolean] [default: false]"
383
+ `;
384
+
385
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode db --help 1`] = `
386
+ "opencode db
387
+
388
+ database tools
389
+
390
+ Commands:
391
+ opencode db [query] open an interactive sqlite3 shell or run a query [default]
392
+ opencode db path print the database path
393
+
394
+ Positionals:
395
+ query SQL query to execute [string]
396
+
397
+ Options:
398
+ -h, --help show help [boolean]
399
+ -v, --version show version number [boolean]
400
+ --print-logs print logs to stderr [boolean]
401
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
402
+ --pure run without external plugins [boolean]
403
+ --format Output format [string] [choices: "json", "tsv"] [default: "tsv"]"
404
+ `;
405
+
406
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode mcp list --help 1`] = `
407
+ "opencode mcp list
408
+
409
+ list MCP servers and their status
410
+
411
+ Options:
412
+ -h, --help show help [boolean]
413
+ -v, --version show version number [boolean]
414
+ --print-logs print logs to stderr [boolean]
415
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
416
+ --pure run without external plugins [boolean]"
417
+ `;
418
+
419
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode mcp add --help 1`] = `
420
+ "opencode mcp add [name]
421
+
422
+ add an MCP server
423
+
424
+ Positionals:
425
+ name name of the MCP server [string]
426
+
427
+ Options:
428
+ -h, --help show help [boolean]
429
+ -v, --version show version number [boolean]
430
+ --print-logs print logs to stderr [boolean]
431
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
432
+ --pure run without external plugins [boolean]
433
+ --url URL for a remote MCP server [string]
434
+ --env environment variable for a local MCP server (KEY=VALUE) [array]
435
+ --header HTTP header for a remote MCP server (KEY=VALUE) [array]"
436
+ `;
437
+
438
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode mcp auth --help 1`] = `
439
+ "opencode mcp auth [name]
440
+
441
+ authenticate with an OAuth-enabled MCP server
442
+
443
+ Commands:
444
+ opencode mcp auth list list OAuth-capable MCP servers and their auth status [aliases: ls]
445
+
446
+ Positionals:
447
+ name name of the MCP server [string]
448
+
449
+ Options:
450
+ -h, --help show help [boolean]
451
+ -v, --version show version number [boolean]
452
+ --print-logs print logs to stderr [boolean]
453
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
454
+ --pure run without external plugins [boolean]"
455
+ `;
456
+
457
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode mcp logout --help 1`] = `
458
+ "opencode mcp logout [name]
459
+
460
+ remove OAuth credentials for an MCP server
461
+
462
+ Positionals:
463
+ name name of the MCP server [string]
464
+
465
+ Options:
466
+ -h, --help show help [boolean]
467
+ -v, --version show version number [boolean]
468
+ --print-logs print logs to stderr [boolean]
469
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
470
+ --pure run without external plugins [boolean]"
471
+ `;
472
+
473
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode providers list --help 1`] = `
474
+ "opencode providers list
475
+
476
+ list providers and credentials
477
+
478
+ Options:
479
+ -h, --help show help [boolean]
480
+ -v, --version show version number [boolean]
481
+ --print-logs print logs to stderr [boolean]
482
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
483
+ --pure run without external plugins [boolean]"
484
+ `;
485
+
486
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode providers login --help 1`] = `
487
+ "opencode providers login [url]
488
+
489
+ log in to a provider
490
+
491
+ Positionals:
492
+ url opencode auth provider [string]
493
+
494
+ Options:
495
+ -h, --help show help [boolean]
496
+ -v, --version show version number [boolean]
497
+ --print-logs print logs to stderr [boolean]
498
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
499
+ --pure run without external plugins [boolean]
500
+ -p, --provider provider id or name to log in to (skips provider selection) [string]
501
+ -m, --method login method label (skips method selection) [string]"
502
+ `;
503
+
504
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode providers logout --help 1`] = `
505
+ "opencode providers logout [provider]
506
+
507
+ log out from a configured provider
508
+
509
+ Positionals:
510
+ provider provider id or name to log out from [string]
511
+
512
+ Options:
513
+ -h, --help show help [boolean]
514
+ -v, --version show version number [boolean]
515
+ --print-logs print logs to stderr [boolean]
516
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
517
+ --pure run without external plugins [boolean]"
518
+ `;
519
+
520
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode agent create --help 1`] = `
521
+ "opencode agent create
522
+
523
+ create a new agent
524
+
525
+ Options:
526
+ -h, --help show help [boolean]
527
+ -v, --version show version number [boolean]
528
+ --print-logs print logs to stderr [boolean]
529
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
530
+ --pure run without external plugins [boolean]
531
+ --path directory path to generate the agent file [string]
532
+ --description what the agent should do [string]
533
+ --mode agent mode [string] [choices: "all", "primary", "subagent"]
534
+ --permissions, --tools comma-separated list of permissions to allow (default: all).
535
+ Available: "bash, read, edit, glob, grep, webfetch, task, todowrite,
536
+ websearch, lsp, skill" [string]
537
+ -m, --model model to use in the format of provider/model [string]"
538
+ `;
539
+
540
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode agent list --help 1`] = `
541
+ "opencode agent list
542
+
543
+ list all available agents
544
+
545
+ Options:
546
+ -h, --help show help [boolean]
547
+ -v, --version show version number [boolean]
548
+ --print-logs print logs to stderr [boolean]
549
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
550
+ --pure run without external plugins [boolean]"
551
+ `;
552
+
553
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode session list --help 1`] = `
554
+ "opencode session list
555
+
556
+ list sessions
557
+
558
+ Options:
559
+ -h, --help show help [boolean]
560
+ -v, --version show version number [boolean]
561
+ --print-logs print logs to stderr [boolean]
562
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
563
+ --pure run without external plugins [boolean]
564
+ -n, --max-count limit to N most recent sessions [number]
565
+ --format output format [string] [choices: "table", "json"] [default: "table"]"
566
+ `;
567
+
568
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode session delete --help 1`] = `
569
+ "opencode session delete <sessionID>
570
+
571
+ delete a session
572
+
573
+ Positionals:
574
+ sessionID session ID to delete [string] [required]
575
+
576
+ Options:
577
+ -h, --help show help [boolean]
578
+ -v, --version show version number [boolean]
579
+ --print-logs print logs to stderr [boolean]
580
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
581
+ --pure run without external plugins [boolean]"
582
+ `;
583
+
584
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode github install --help 1`] = `
585
+ "opencode github install
586
+
587
+ install the GitHub agent
588
+
589
+ Options:
590
+ -h, --help show help [boolean]
591
+ -v, --version show version number [boolean]
592
+ --print-logs print logs to stderr [boolean]
593
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
594
+ --pure run without external plugins [boolean]"
595
+ `;
596
+
597
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode github run --help 1`] = `
598
+ "opencode github run
599
+
600
+ run the GitHub agent
601
+
602
+ Options:
603
+ -h, --help show help [boolean]
604
+ -v, --version show version number [boolean]
605
+ --print-logs print logs to stderr [boolean]
606
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
607
+ --pure run without external plugins [boolean]
608
+ --event GitHub mock event to run the agent for [string]
609
+ --token GitHub personal access token (github_pat_********) [string]"
610
+ `;
611
+
612
+ exports[`opencode CLI help-text snapshots every documented command emits stable help text: opencode db path --help 1`] = `
613
+ "opencode db path
614
+
615
+ print the database path
616
+
617
+ Options:
618
+ -h, --help show help [boolean]
619
+ -v, --version show version number [boolean]
620
+ --print-logs print logs to stderr [boolean]
621
+ --log-level log level [string] [choices: "DEBUG", "INFO", "WARN", "ERROR"]
622
+ --pure run without external plugins [boolean]"
623
+ `;