openfork 0.6.0 → 1.17.15

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