@wular/coder 0.3.18 → 0.4.1

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 (473) hide show
  1. package/README.md +18 -16
  2. package/bin/coder.mjs +3 -1
  3. package/dist/actions-Mk3FSlpJ.js +20 -0
  4. package/dist/adapter-B0oYCI0S.js +1 -0
  5. package/dist/adapter-BKVzTDnn.js +1 -0
  6. package/dist/adapter-DPInwbJG.js +1 -0
  7. package/dist/adapter-DaiJMOYo.js +1 -0
  8. package/dist/adapter-PeKziOUg.js +1 -0
  9. package/dist/add-BxpLHnvD.js +1 -0
  10. package/dist/add-CE-70LFs.js +1 -0
  11. package/dist/add-U-pty9qJ.js +6 -0
  12. package/dist/add-ej0X9e3a.js +1 -0
  13. package/dist/add-json-CEa-6luW.js +1 -0
  14. package/dist/agent-BsYx3Odz.js +3 -0
  15. package/dist/agent-JdtZozvP.js +1 -0
  16. package/dist/alias-DX-Bm86x.js +2 -0
  17. package/dist/app-BT5f7zL5.js +1 -0
  18. package/dist/approvals-C-AvFt6s.js +2 -0
  19. package/dist/approve-DOmpQRNd.js +2 -0
  20. package/dist/apps-CjfrZyM5.js +1 -0
  21. package/dist/archive-BUB8gFKD.js +4 -0
  22. package/dist/archive-BziJ1rQ-.js +3 -0
  23. package/dist/archive-sweep-CtBcARgN.js +1 -0
  24. package/dist/args-BOEEdpWk.js +1 -0
  25. package/dist/ask-dE3U3ss2.js +4 -0
  26. package/dist/auth-BFny--17.js +1 -0
  27. package/dist/auth-DWHIzqbA.js +1 -0
  28. package/dist/builtin/coder/agent.json +24 -0
  29. package/dist/builtin/coder/system.md +17 -0
  30. package/dist/chat-3Znsevah.js +1 -0
  31. package/dist/chat-B_yhNTo0.js +13 -0
  32. package/dist/chat-bridge-BS9WtP3X.js +2 -0
  33. package/dist/cli-BilSDkvE.js +9 -0
  34. package/dist/cli.d.ts +71 -1
  35. package/dist/cli.js +1 -91
  36. package/dist/client-D9IoAuDD.js +1 -0
  37. package/dist/config-Da_cwoxI.js +3 -0
  38. package/dist/create-C_iMJV4Y.js +1 -0
  39. package/dist/credentials-B1jv6dkg.js +1 -0
  40. package/dist/dash/manifest.json +3427 -0
  41. package/dist/dash/public/assets/apple-touch-icon.png +0 -0
  42. package/dist/dash/public/assets/chunks/agent-pills-c9c4ac4d4a10df83.js +1 -0
  43. package/dist/dash/public/assets/chunks/agent-settings-form-8be2ddab074aba6d.js +1 -0
  44. package/dist/dash/public/assets/chunks/agents-grid-951584b6f4c4314e.js +1 -0
  45. package/dist/dash/public/assets/chunks/badge-676b01e0c615bf7b.js +1 -0
  46. package/dist/dash/public/assets/chunks/card-e0901d68b79dfa93.js +1 -0
  47. package/dist/dash/public/assets/chunks/combo-41234c24668b1db1.js +1 -0
  48. package/dist/dash/public/assets/chunks/composer-5534be50bc12385e.js +1 -0
  49. package/dist/dash/public/assets/chunks/composer-d10d4b1d54c4f751.js +1 -0
  50. package/dist/dash/public/assets/chunks/composer-data-6f7608fed13f3dd7.js +1 -0
  51. package/dist/dash/public/assets/chunks/confirm-f2fe4ba9905a89c6.js +1 -0
  52. package/dist/dash/public/assets/chunks/connect-apps-aa2a3d82e48ed8c3.js +1 -0
  53. package/dist/dash/public/assets/chunks/connect-repositories-5389ec8701a3deac.js +1 -0
  54. package/dist/dash/public/assets/chunks/credentials-list-bc5bfcab058176c5.js +2 -0
  55. package/dist/dash/public/assets/chunks/custom-range-4761ab14f05149df.js +1 -0
  56. package/dist/dash/public/assets/chunks/editor-bfe8cd854f8001be.js +7 -0
  57. package/dist/dash/public/assets/chunks/engines-list-f1191390f5715b39.js +1 -0
  58. package/dist/dash/public/assets/chunks/field-901f1f35c18c39c9.js +1 -0
  59. package/dist/dash/public/assets/chunks/format-eb03fc9d9744d960.js +1 -0
  60. package/dist/dash/public/assets/chunks/heads-f3bcd289663d48fa.js +1 -0
  61. package/dist/dash/public/assets/chunks/instructions-052fa45a9daf6db6.js +2 -0
  62. package/dist/dash/public/assets/chunks/instructions-d0a4b0d95009c262.js +1 -0
  63. package/dist/dash/public/assets/chunks/list-1d259660d7612c5f.js +1 -0
  64. package/dist/dash/public/assets/chunks/mcp-list-e3bebbbe831393b8.js +1 -0
  65. package/dist/dash/public/assets/chunks/model-options-15c53331a2f28a4f.js +1 -0
  66. package/dist/dash/public/assets/chunks/models-list-44f857a469ca04d5.js +1 -0
  67. package/dist/dash/public/assets/chunks/paged-bc6fa0c2b9d52ed7.js +1 -0
  68. package/dist/dash/public/assets/chunks/platform-actions-d1426602049926d2.js +1 -0
  69. package/dist/dash/public/assets/chunks/runners-list-1901af8a5dea1f09.js +1 -0
  70. package/dist/dash/public/assets/chunks/runtime-246221e985d863e5-1.js +2 -0
  71. package/dist/dash/public/assets/chunks/segmented-358ff2b4992b8384.js +1 -0
  72. package/dist/dash/public/assets/chunks/select-7ae25fd8a7d6c338.js +1 -0
  73. package/dist/dash/public/assets/chunks/sentinel-c972a33dc69a5135.js +1 -0
  74. package/dist/dash/public/assets/chunks/shared-init-246221e985d863e5-2.js +1 -0
  75. package/dist/dash/public/assets/chunks/shared-init-88cce66bb3cfe1e5.js +5 -0
  76. package/dist/dash/public/assets/chunks/shared-init-8f2ac936c95a7f7b.js +1 -0
  77. package/dist/dash/public/assets/chunks/shared-init-ffb3397e494137c9.js +2 -0
  78. package/dist/dash/public/assets/chunks/tail-7c27aab8ba268bd9.js +1 -0
  79. package/dist/dash/public/assets/chunks/task-actions-8e1d93c788d001df.js +1 -0
  80. package/dist/dash/public/assets/chunks/task-fa8b82e95e771c4a.js +1 -0
  81. package/dist/dash/public/assets/chunks/task-view-6d7618d2820a5cb4.js +3 -0
  82. package/dist/dash/public/assets/chunks/tasks-list-f4784e5cbd0ed785.js +1 -0
  83. package/dist/dash/public/assets/chunks/toolbar-a75d2570f07cbb70.js +1 -0
  84. package/dist/dash/public/assets/chunks/versions-list-fc2e0d2a7382e049.js +1 -0
  85. package/dist/dash/public/assets/chunks/wular-pnext-246221e985d863e5-0.js +1 -0
  86. package/dist/dash/public/assets/connect-382b1729a7ae7808.css +1 -0
  87. package/dist/dash/public/assets/dash-9e02d5d1a6d42ee3.css +1 -0
  88. package/dist/dash/public/assets/dash-account-04859899c1838ada.css +1 -0
  89. package/dist/dash/public/assets/dash-agents-9e678137267dec07.css +1 -0
  90. package/dist/dash/public/assets/dash-agents-new-26fa27b17ef9b8d8.css +1 -0
  91. package/dist/dash/public/assets/dash-agents-param-slug-b975c48f8abf3444.css +1 -0
  92. package/dist/dash/public/assets/dash-agents-param-slug-edit-e13fda599bb04843.css +1 -0
  93. package/dist/dash/public/assets/dash-agents-param-slug-platforms-70292932cb27bc96.css +1 -0
  94. package/dist/dash/public/assets/dash-agents-param-slug-settings-71f9a86251723fcc.css +1 -0
  95. package/dist/dash/public/assets/dash-agents-param-slug-tasks-fb8eb2ed71006601.css +1 -0
  96. package/dist/dash/public/assets/dash-agents-param-slug-usage-7c8740f1cdd52c71.css +1 -0
  97. package/dist/dash/public/assets/dash-settings-8eb818da462227e8.css +1 -0
  98. package/dist/dash/public/assets/dash-settings-param-tab-849a1a9542e273f5.css +1 -0
  99. package/dist/dash/public/assets/dash-tasks-81e510e0b6931b42.css +1 -0
  100. package/dist/dash/public/assets/dash-tasks-param-id-bbd2a83342f2ec10.css +1 -0
  101. package/dist/dash/public/assets/dash-usage-8e0259e03eaed1bd.css +1 -0
  102. package/dist/dash/public/assets/favicon.ico +0 -0
  103. package/dist/dash/public/assets/favicon.svg +1 -0
  104. package/dist/dash/public/assets/fonts/LICENSE-fira-code +93 -0
  105. package/dist/dash/public/assets/fonts/fira-code-latin-400-normal-717ee080.woff2 +0 -0
  106. package/dist/dash/public/assets/fonts/fira-code-latin-500-normal-530b6706.woff2 +0 -0
  107. package/dist/dash/public/assets/fonts/fira-code-latin-700-normal-98730669.woff2 +0 -0
  108. package/dist/dash/public/assets/global-d2adbf01910d9df5.css +1 -0
  109. package/dist/dash/public/assets/login-c129b1ce237be260.css +1 -0
  110. package/dist/dash/public/assets/pnext-client-03b03b254e525e82.js +1 -0
  111. package/dist/dash/public/assets/pnext-client-1b9ab0963a8ff77b.js +1 -0
  112. package/dist/dash/public/assets/pnext-client-1c7859bb888f4ef0.js +1 -0
  113. package/dist/dash/public/assets/pnext-client-3c748afe963fb05d.js +1 -0
  114. package/dist/dash/public/assets/pnext-client-4f47c2cae220f107.js +1 -0
  115. package/dist/dash/public/assets/pnext-client-6ab9fd9b53b794d2.js +1 -0
  116. package/dist/dash/public/assets/pnext-client-6c241786342498e4.js +1 -0
  117. package/dist/dash/public/assets/pnext-client-80b56d420f02b808.js +1 -0
  118. package/dist/dash/public/assets/pnext-client-83135c17bae850a3.js +1 -0
  119. package/dist/dash/public/assets/pnext-client-8e6fa4302ae0396f.js +1 -0
  120. package/dist/dash/public/assets/pnext-client-932c9d8cc0717fc8.js +1 -0
  121. package/dist/dash/public/assets/pnext-client-a42ae63d4de113f9.js +1 -0
  122. package/dist/dash/public/assets/pnext-client-d2ee6f8c1e337032.js +1 -0
  123. package/dist/dash/public/assets/pnext-client-d513f65ec23b7f20.js +1 -0
  124. package/dist/dash/public/assets/pnext-client-ecb88e2a8a109954.js +1 -0
  125. package/dist/dash/public/assets/pnext-client-f1545ee6270bbf9a.js +1 -0
  126. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/boot-B2MFTRO2.js +30 -0
  127. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/build-tier-XJJSL5FR.js +2704 -0
  128. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-2HFY3DQT.js +208 -0
  129. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-2ICEVELW.js +834 -0
  130. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-3UPROT2C.js +35 -0
  131. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-4P5CMIYT.js +1582 -0
  132. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-4TKZKZ3Q.js +131 -0
  133. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-5RDEILQB.js +437 -0
  134. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-62KEQM43.js +25 -0
  135. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-6KQSWT6D.js +831 -0
  136. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-7DCNCW6O.js +724 -0
  137. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-B4THCTQP.js +22 -0
  138. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-C2LIV2MM.js +172 -0
  139. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-CCATPVTW.js +378 -0
  140. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-COXJAPTU.js +89 -0
  141. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-E6IXL2NJ.js +6270 -0
  142. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-FLGRBFAH.js +1198 -0
  143. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-FTJVHFWD.js +61 -0
  144. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-H523KSIH.js +5151 -0
  145. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-HT6KKX6A.js +20 -0
  146. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-JESFYECC.js +438 -0
  147. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-JRPJM2XY.js +17 -0
  148. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-L2IWDUXG.js +107 -0
  149. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-L5P4Y4UC.js +183 -0
  150. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-NQE46AZN.js +647 -0
  151. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-PA4QEARJ.js +129 -0
  152. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-PZ5AXOLW.js +7146 -0
  153. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-SNVPTULL.js +2397 -0
  154. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-T3QZT3PG.js +220 -0
  155. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-VC5O2SDP.js +72 -0
  156. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-WZX4V6CM.js +231 -0
  157. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-XUUIDXY5.js +627 -0
  158. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/chunk-ZHFDO3PR.js +265 -0
  159. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/compile-CE2DN7ZA.js +18 -0
  160. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/config-UREY7XJT.js +16 -0
  161. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/config-loader-UI2XE3PZ.js +17 -0
  162. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/entry.js +219 -0
  163. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/generate-I2PPTDFD.js +16 -0
  164. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/modules-UVOCE4C2.js +48 -0
  165. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/pipeline-UW47K537.js +963 -0
  166. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/proxy-ITGOVJBW.js +26 -0
  167. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/register-4SA55SWT.js +12579 -0
  168. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/router-JNKHLBCZ.js +505 -0
  169. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/routes-PD6J2NXW.js +54 -0
  170. package/dist/dash/server/bundle-0.1.5-1508b6c99c0d1e68/tsconfig-defaults-ZXEH7RQK.js +15 -0
  171. package/dist/default-Bobztoxf.js +1 -0
  172. package/dist/default-vYPT26DR.js +1 -0
  173. package/dist/delete-D8gEwoOj.js +4 -0
  174. package/dist/delete-z1_86nf6.js +2 -0
  175. package/dist/disable-DVKd-0Xb.js +1 -0
  176. package/dist/discover-Df-a8K4R.js +3 -0
  177. package/dist/discover-Dvr_3_Xr.js +1 -0
  178. package/dist/dispatch-BKeAch9E.js +14 -0
  179. package/dist/docs-BX65z2Iu.js +2 -0
  180. package/dist/docs-DKJnqZqt.js +2 -0
  181. package/dist/enable-C8Zf_wpN.js +1 -0
  182. package/dist/env-CRf6wkM2.js +1 -0
  183. package/dist/exec-RZFLclKX.js +11 -0
  184. package/dist/executor-BvAA7Cgw.js +10 -0
  185. package/dist/flow/builtin/review.d.ts +157 -0
  186. package/dist/flow/builtin/review.js +19 -0
  187. package/dist/flow/index.d.ts +1 -1
  188. package/dist/flow/index.js +1 -1
  189. package/dist/flow-17k25MHt.js +1 -0
  190. package/dist/github-actions-DwUzm4hC.js +24 -0
  191. package/dist/http-Bkg_OQ6r.js +1 -0
  192. package/dist/{index-BQ-b77or.d.ts → index-CZjFX5zV.d.ts} +116 -238
  193. package/dist/init-CoMfFxbG.js +1 -0
  194. package/dist/integrations-5xCaXSd-.js +1 -0
  195. package/dist/integrations-BAgdVDhj.js +5 -0
  196. package/dist/lib/broker.js +3 -3
  197. package/dist/list-BAKvxSbh.js +4 -0
  198. package/dist/list-BYiG8Zav.js +2 -0
  199. package/dist/list-BxEywhHU.js +1 -0
  200. package/dist/list-C5w01-8q.js +1 -0
  201. package/dist/list-CIW2joV1.js +1 -0
  202. package/dist/list-DX-z3SBp.js +3 -0
  203. package/dist/list-DpCf4G-H.js +4 -0
  204. package/dist/list-VToARh3C.js +1 -0
  205. package/dist/load-BpEsAn51.js +2 -0
  206. package/dist/local-H3uvqEbq.js +1 -0
  207. package/dist/log-view-dg0TlKLA.js +1 -0
  208. package/dist/login-BFxX4jJy.js +1 -0
  209. package/dist/login-DkkslfBx.js +1 -0
  210. package/dist/logout-BHAtw4Z8.js +1 -0
  211. package/dist/maintenance-C5FklUw3.js +1 -0
  212. package/dist/match-CXAjDhg7.js +1 -0
  213. package/dist/mcp-BgKb2Cdk.js +1 -0
  214. package/dist/mcp-CCZOAo06.js +1 -0
  215. package/dist/mcp-server-DGzme0YX.js +1 -0
  216. package/dist/migrate-C4vM7DQN.js +2 -0
  217. package/dist/migrate-N-85_N7J.js +1 -0
  218. package/dist/model-Bs1StDo3.js +1 -0
  219. package/dist/models-_5LVGC3m.js +1 -0
  220. package/dist/output-BKeyLbvt.js +5 -0
  221. package/dist/prompt-CEuBMNhk.js +7 -0
  222. package/dist/push-CUC55Bqd.js +1 -0
  223. package/dist/queue-6io_NOP3.js +116 -0
  224. package/dist/refresh-BIrmrWYq.js +1 -0
  225. package/dist/remote-miQNTVRa.js +1 -0
  226. package/dist/remove-B93LNkZI.js +1 -0
  227. package/dist/remove-C5_xggx7.js +1 -0
  228. package/dist/remove-CuH8a3L9.js +1 -0
  229. package/dist/remove-eQ8y5C5p.js +1 -0
  230. package/dist/rename-CYfy03FE.js +1 -0
  231. package/dist/result-BEtQZHaY.js +5 -0
  232. package/dist/result-BzaM3inj.js +15 -0
  233. package/dist/resume-DYzKvyEw.js +3 -0
  234. package/dist/review-oIBeECZE.js +7 -0
  235. package/dist/rolldown-runtime-DT7IzrpZ.js +1 -0
  236. package/dist/rotate-key-IdMYH7gg.js +1 -0
  237. package/dist/run-BDYl0CKl.js +2 -0
  238. package/dist/run-CTtd0Znc.js +5 -0
  239. package/dist/run-CawRGnOg.js +2 -0
  240. package/dist/runner-D7ScbIHJ.js +1 -0
  241. package/dist/runner-sUpWJ_k0.js +1 -0
  242. package/dist/schema-CU2iFkp8.js +1 -0
  243. package/dist/sdk.d.ts +1166 -191
  244. package/dist/sdk.js +1 -1
  245. package/dist/serve-BTeomYxW.js +1 -0
  246. package/dist/serve-CE8YV2e9.js +1 -0
  247. package/dist/serve-CPnmrKyf.js +2 -0
  248. package/dist/serve-CQKZxzFE.js +4 -0
  249. package/dist/serve-GmRO89s5.js +12 -0
  250. package/dist/server-Kb22cWfF.js +1 -0
  251. package/dist/setup-host-GFTUzzZJ.js +6 -0
  252. package/dist/shared-DVtzWhUT.js +1 -0
  253. package/dist/show-CMUg8SJu.js +1 -0
  254. package/dist/show-COTZEYgc.js +1 -0
  255. package/dist/status-D26U--p8.js +1 -0
  256. package/dist/steer-C6uARLp5.js +4 -0
  257. package/dist/stop-BrGI3hSS.js +1 -0
  258. package/dist/stop-ByCAlbmN.js +3 -0
  259. package/dist/store-B94tSate.js +42 -0
  260. package/dist/store-DzqXS2wT.js +8 -0
  261. package/dist/task-C6VAg5WU.js +1 -0
  262. package/dist/task-CgOKgkEG.js +1 -0
  263. package/dist/task-DeglY79z.js +5 -0
  264. package/dist/test-NEbhlxvo.js +1 -0
  265. package/dist/tools-D0Zfs8Hx.js +1 -0
  266. package/dist/types-D0q15RJa.js +1 -0
  267. package/dist/types-I5Cwtl_K.d.ts +389 -0
  268. package/dist/unalias-C9NqmSDq.js +1 -0
  269. package/dist/update-BTxYQj7Z.js +2 -0
  270. package/dist/upgrade-hA0yWBvx.js +2 -0
  271. package/dist/usage-BhqoCjvE.js +1 -0
  272. package/dist/usage-C4d9X2Uq.js +1 -0
  273. package/dist/watch-CSdj24ct.js +5 -0
  274. package/dist/watch-DtRuC0Wc.js +8 -0
  275. package/dist/wire-BeT1Axeo.js +1 -0
  276. package/dist/worker-CXndxmGF.js +9 -0
  277. package/dist/worker-DX7P9kWl.js +1 -0
  278. package/dist/workflow-Dcmdooi8.js +1 -0
  279. package/docs/agents/coder.md +26 -0
  280. package/docs/agents/index.md +120 -0
  281. package/docs/config.md +51 -30
  282. package/docs/dash.md +64 -0
  283. package/docs/flows.md +20 -15
  284. package/docs/mcp.md +62 -0
  285. package/docs/models.md +41 -23
  286. package/docs/review.md +41 -0
  287. package/docs/sdk.md +57 -38
  288. package/docs/self-host.md +188 -0
  289. package/migrations/0000_initial.sql +252 -0
  290. package/migrations/meta/0000_snapshot.json +1787 -0
  291. package/migrations/meta/_journal.json +13 -0
  292. package/package.json +37 -7
  293. package/plugins/agents/skills/coder/SKILL.md +14 -60
  294. package/plugins/claude/.claude-plugin/plugin.json +1 -1
  295. package/plugins/claude/commands/setup.md +2 -2
  296. package/plugins/claude/skills/dispatch/SKILL.md +14 -58
  297. package/plugins/cursor/.cursor-plugin/plugin.json +1 -1
  298. package/plugins/cursor/README.md +5 -5
  299. package/plugins/cursor/assets/logo.png +0 -0
  300. package/plugins/cursor/skills/coder/SKILL.md +14 -59
  301. package/src/client/index.ts +573 -0
  302. package/src/client/types.ts +506 -0
  303. package/src/core/errors.ts +72 -0
  304. package/src/core/task/log-view.ts +173 -0
  305. package/src/server/auth/sign-in.ts +14 -0
  306. package/src/server/dash/api/load.ts +62 -0
  307. package/src/server/dash/api/types.ts +11 -0
  308. package/src/server/dash/app/connect/page.tsx +42 -0
  309. package/src/server/dash/app/dash/account/loading.tsx +11 -0
  310. package/src/server/dash/app/dash/account/notify.tsx +42 -0
  311. package/src/server/dash/app/dash/account/page.css +81 -0
  312. package/src/server/dash/app/dash/account/page.tsx +126 -0
  313. package/src/server/dash/app/dash/account/sign-out.tsx +24 -0
  314. package/src/server/dash/app/dash/agents/(list)/agent-menu.tsx +10 -0
  315. package/src/server/dash/app/dash/agents/(list)/agents-grid.tsx +143 -0
  316. package/src/server/dash/app/dash/agents/(list)/connect-apps.tsx +46 -0
  317. package/src/server/dash/app/dash/agents/(list)/loading.tsx +14 -0
  318. package/src/server/dash/app/dash/agents/(list)/page.css +72 -0
  319. package/src/server/dash/app/dash/agents/(list)/page.tsx +89 -0
  320. package/src/server/dash/app/dash/agents/[slug]/(tabs)/layout.tsx +135 -0
  321. package/src/server/dash/app/dash/agents/[slug]/(tabs)/loading.tsx +5 -0
  322. package/src/server/dash/app/dash/agents/[slug]/(tabs)/page.css +21 -0
  323. package/src/server/dash/app/dash/agents/[slug]/(tabs)/page.tsx +173 -0
  324. package/src/server/dash/app/dash/agents/[slug]/(tabs)/platforms/loading.tsx +18 -0
  325. package/src/server/dash/app/dash/agents/[slug]/(tabs)/platforms/page.css +87 -0
  326. package/src/server/dash/app/dash/agents/[slug]/(tabs)/platforms/page.tsx +258 -0
  327. package/src/server/dash/app/dash/agents/[slug]/(tabs)/platforms/platform-actions.tsx +111 -0
  328. package/src/server/dash/app/dash/agents/[slug]/(tabs)/settings/agent-settings-form.css +114 -0
  329. package/src/server/dash/app/dash/agents/[slug]/(tabs)/settings/agent-settings-form.tsx +294 -0
  330. package/src/server/dash/app/dash/agents/[slug]/(tabs)/settings/loading.tsx +5 -0
  331. package/src/server/dash/app/dash/agents/[slug]/(tabs)/settings/page.tsx +54 -0
  332. package/src/server/dash/app/dash/agents/[slug]/(tabs)/tasks/loading.tsx +5 -0
  333. package/src/server/dash/app/dash/agents/[slug]/(tabs)/tasks/page.tsx +14 -0
  334. package/src/server/dash/app/dash/agents/[slug]/(tabs)/usage/loading.tsx +31 -0
  335. package/src/server/dash/app/dash/agents/[slug]/(tabs)/usage/page.css +12 -0
  336. package/src/server/dash/app/dash/agents/[slug]/(tabs)/usage/page.tsx +163 -0
  337. package/src/server/dash/app/dash/agents/[slug]/(tabs)/versions-list.tsx +53 -0
  338. package/src/server/dash/app/dash/agents/[slug]/edit/loading.tsx +31 -0
  339. package/src/server/dash/app/dash/agents/[slug]/edit/page.tsx +91 -0
  340. package/src/server/dash/app/dash/agents/agent/agent-pills.css +27 -0
  341. package/src/server/dash/app/dash/agents/agent/agent-pills.tsx +133 -0
  342. package/src/server/dash/app/dash/agents/agent/hero.css +40 -0
  343. package/src/server/dash/app/dash/agents/agent/hero.tsx +60 -0
  344. package/src/server/dash/app/dash/agents/agent/instructions.css +29 -0
  345. package/src/server/dash/app/dash/agents/agent/instructions.tsx +82 -0
  346. package/src/server/dash/app/dash/agents/editor/connect-repositories.ts +16 -0
  347. package/src/server/dash/app/dash/agents/editor/editor.css +263 -0
  348. package/src/server/dash/app/dash/agents/editor/editor.tsx +774 -0
  349. package/src/server/dash/app/dash/agents/editor/import-picker.css +48 -0
  350. package/src/server/dash/app/dash/agents/editor/import-picker.tsx +253 -0
  351. package/src/server/dash/app/dash/agents/editor/names.ts +35 -0
  352. package/src/server/dash/app/dash/agents/new/loading.tsx +25 -0
  353. package/src/server/dash/app/dash/agents/new/page.tsx +72 -0
  354. package/src/server/dash/app/dash/layout.css +265 -0
  355. package/src/server/dash/app/dash/layout.tsx +332 -0
  356. package/src/server/dash/app/dash/page.tsx +14 -0
  357. package/src/server/dash/app/dash/settings/[tab]/credentials-list.css +94 -0
  358. package/src/server/dash/app/dash/settings/[tab]/credentials-list.tsx +619 -0
  359. package/src/server/dash/app/dash/settings/[tab]/credentials.tsx +36 -0
  360. package/src/server/dash/app/dash/settings/[tab]/engines-list.css +16 -0
  361. package/src/server/dash/app/dash/settings/[tab]/engines-list.tsx +135 -0
  362. package/src/server/dash/app/dash/settings/[tab]/list.css +98 -0
  363. package/src/server/dash/app/dash/settings/[tab]/list.tsx +215 -0
  364. package/src/server/dash/app/dash/settings/[tab]/loading.tsx +6 -0
  365. package/src/server/dash/app/dash/settings/[tab]/mcp-list.css +43 -0
  366. package/src/server/dash/app/dash/settings/[tab]/mcp-list.tsx +290 -0
  367. package/src/server/dash/app/dash/settings/[tab]/models-list.tsx +513 -0
  368. package/src/server/dash/app/dash/settings/[tab]/page.tsx +89 -0
  369. package/src/server/dash/app/dash/settings/[tab]/runners-list.css +153 -0
  370. package/src/server/dash/app/dash/settings/[tab]/runners-list.tsx +457 -0
  371. package/src/server/dash/app/dash/settings/layout.tsx +50 -0
  372. package/src/server/dash/app/dash/settings/model-options.ts +117 -0
  373. package/src/server/dash/app/dash/settings/page.tsx +7 -0
  374. package/src/server/dash/app/dash/settings/settings-head.tsx +24 -0
  375. package/src/server/dash/app/dash/settings/tunnel-guide.tsx +28 -0
  376. package/src/server/dash/app/dash/tasks/[id]/activity.tsx +202 -0
  377. package/src/server/dash/app/dash/tasks/[id]/loading.tsx +31 -0
  378. package/src/server/dash/app/dash/tasks/[id]/page.tsx +30 -0
  379. package/src/server/dash/app/dash/tasks/[id]/task-actions.tsx +164 -0
  380. package/src/server/dash/app/dash/tasks/[id]/task-view.css +407 -0
  381. package/src/server/dash/app/dash/tasks/[id]/task-view.tsx +513 -0
  382. package/src/server/dash/app/dash/tasks/composer-data.ts +96 -0
  383. package/src/server/dash/app/dash/tasks/composer.css +316 -0
  384. package/src/server/dash/app/dash/tasks/composer.tsx +890 -0
  385. package/src/server/dash/app/dash/tasks/list/status.css +50 -0
  386. package/src/server/dash/app/dash/tasks/list/status.tsx +20 -0
  387. package/src/server/dash/app/dash/tasks/list/task.ts +45 -0
  388. package/src/server/dash/app/dash/tasks/list/tasks-list.css +85 -0
  389. package/src/server/dash/app/dash/tasks/list/tasks-list.tsx +402 -0
  390. package/src/server/dash/app/dash/tasks/list/tasks-section.tsx +96 -0
  391. package/src/server/dash/app/dash/tasks/page.tsx +53 -0
  392. package/src/server/dash/app/dash/token-from-hash.tsx +17 -0
  393. package/src/server/dash/app/dash/usage/custom-range.tsx +63 -0
  394. package/src/server/dash/app/dash/usage/day-chart.css +109 -0
  395. package/src/server/dash/app/dash/usage/day-chart.tsx +110 -0
  396. package/src/server/dash/app/dash/usage/loading.tsx +17 -0
  397. package/src/server/dash/app/dash/usage/metric.ts +13 -0
  398. package/src/server/dash/app/dash/usage/page.tsx +117 -0
  399. package/src/server/dash/app/dash/usage/range-bar.css +13 -0
  400. package/src/server/dash/app/dash/usage/range-bar.tsx +69 -0
  401. package/src/server/dash/app/dash/usage/stats.css +52 -0
  402. package/src/server/dash/app/dash/usage/stats.tsx +19 -0
  403. package/src/server/dash/app/dash/usage/top-agents.css +40 -0
  404. package/src/server/dash/app/dash/usage/top-agents.tsx +138 -0
  405. package/src/server/dash/app/dash/usage/usage.css +0 -0
  406. package/src/server/dash/app/globals.css +692 -0
  407. package/src/server/dash/app/layout.tsx +52 -0
  408. package/src/server/dash/app/login/page.css +26 -0
  409. package/src/server/dash/app/login/page.tsx +57 -0
  410. package/src/server/dash/app/page.tsx +5 -0
  411. package/src/server/dash/app/responsive.css +49 -0
  412. package/src/server/dash/app/zone.tsx +13 -0
  413. package/src/server/dash/comps/frame/auth-panel.css +60 -0
  414. package/src/server/dash/comps/frame/auth-panel.tsx +44 -0
  415. package/src/server/dash/comps/frame/drawer.css +28 -0
  416. package/src/server/dash/comps/frame/drawer.tsx +39 -0
  417. package/src/server/dash/comps/frame/heads.ts +41 -0
  418. package/src/server/dash/comps/frame/loading-card.tsx +65 -0
  419. package/src/server/dash/comps/frame/page-head.css +83 -0
  420. package/src/server/dash/comps/frame/page-head.tsx +71 -0
  421. package/src/server/dash/comps/frame/stream.tsx +50 -0
  422. package/src/server/dash/comps/frame/task-toasts.tsx +214 -0
  423. package/src/server/dash/comps/frame/theme-choices.tsx +46 -0
  424. package/src/server/dash/comps/nav/current-link.tsx +53 -0
  425. package/src/server/dash/comps/nav/side-toggle.tsx +30 -0
  426. package/src/server/dash/comps/nav/to.ts +22 -0
  427. package/src/server/dash/comps/ui/badge.css +64 -0
  428. package/src/server/dash/comps/ui/badge.tsx +41 -0
  429. package/src/server/dash/comps/ui/card.css +93 -0
  430. package/src/server/dash/comps/ui/card.tsx +77 -0
  431. package/src/server/dash/comps/ui/collapse.css +32 -0
  432. package/src/server/dash/comps/ui/collapse.tsx +49 -0
  433. package/src/server/dash/comps/ui/combo.tsx +154 -0
  434. package/src/server/dash/comps/ui/confirm.css +36 -0
  435. package/src/server/dash/comps/ui/confirm.tsx +67 -0
  436. package/src/server/dash/comps/ui/field.css +25 -0
  437. package/src/server/dash/comps/ui/field.tsx +34 -0
  438. package/src/server/dash/comps/ui/icon.css +22 -0
  439. package/src/server/dash/comps/ui/icon.tsx +17 -0
  440. package/src/server/dash/comps/ui/icons.ts +44 -0
  441. package/src/server/dash/comps/ui/menu.css +178 -0
  442. package/src/server/dash/comps/ui/menu.tsx +152 -0
  443. package/src/server/dash/comps/ui/segmented.css +44 -0
  444. package/src/server/dash/comps/ui/segmented.tsx +58 -0
  445. package/src/server/dash/comps/ui/select.css +103 -0
  446. package/src/server/dash/comps/ui/select.tsx +250 -0
  447. package/src/server/dash/comps/ui/sentinel.css +58 -0
  448. package/src/server/dash/comps/ui/sentinel.tsx +67 -0
  449. package/src/server/dash/comps/ui/tabs.css +81 -0
  450. package/src/server/dash/comps/ui/tabs.tsx +32 -0
  451. package/src/server/dash/comps/ui/tail.css +12 -0
  452. package/src/server/dash/comps/ui/tail.tsx +37 -0
  453. package/src/server/dash/comps/ui/toast.css +72 -0
  454. package/src/server/dash/comps/ui/toolbar.css +143 -0
  455. package/src/server/dash/comps/ui/toolbar.tsx +93 -0
  456. package/src/server/dash/package.json +5 -0
  457. package/src/server/dash/pnext-env.d.ts +4 -0
  458. package/src/server/dash/pnext.config.ts +5 -0
  459. package/src/server/dash/public/assets/apple-touch-icon.png +0 -0
  460. package/src/server/dash/public/assets/favicon.ico +0 -0
  461. package/src/server/dash/public/assets/favicon.svg +1 -0
  462. package/src/server/dash/public/assets/fonts/LICENSE-fira-code +93 -0
  463. package/src/server/dash/public/assets/fonts/fira-code-latin-400-normal-717ee080.woff2 +0 -0
  464. package/src/server/dash/public/assets/fonts/fira-code-latin-500-normal-530b6706.woff2 +0 -0
  465. package/src/server/dash/public/assets/fonts/fira-code-latin-700-normal-98730669.woff2 +0 -0
  466. package/src/server/dash/tsconfig.json +10 -0
  467. package/src/server/dash/utils/client.ts +19 -0
  468. package/src/server/dash/utils/format.ts +75 -0
  469. package/src/server/dash/utils/paged.ts +184 -0
  470. package/src/server/dash/utils/range.ts +117 -0
  471. package/dist/app-server-CW93J9zJ.js +0 -3
  472. package/dist/runtime-D-U1DNkI.js +0 -26
  473. package/dist/upgrade-DOj06r5b.js +0 -37
package/dist/sdk.d.ts CHANGED
@@ -1,8 +1,499 @@
1
- import { C as Job, E as CustomModelConfig, S as Availability, T as CoderConfig, _ as FlowStep, a as JobLogEntry, c as StopSummary, g as FlowRecord, h as FlowEvent, i as TaskResult, m as DiscoveredFlow, n as flowSdk, o as RunOptions, r as CoderError, s as RunSummary, w as TurnResult, x as Approval } from "./index-BQ-b77or.js";
2
- //#region src/lib/codex-core.d.ts
1
+ import { C as CustomModelConfig, D as Permission, E as McpConfigEntry, S as CoderConfig, T as McpAddOptions, _ as RunnerRow, b as RunnerUpdate, c as TurnResult, d as LocalFolder, f as LocalFolders, g as RunnerPairing, h as RunnerKind, l as TaskLogEntry, m as RunnerInput, n as Availability, o as Task, p as ProbeResult, s as TaskStatus$1, t as Approval, u as TokenUsage, v as RunnerSpec, w as Effort, x as TaskTurn, y as RunnerTest } from "./types-I5Cwtl_K.js";
2
+ import { ReviewArgs, ReviewResult } from "./flow/builtin/review.js";
3
+ import { a as readTurnResults, b as FlowRecord, c as archiveRuns, d as RunSummary, f as StopSummary, i as readTask, l as deleteRuns, n as flowSdk, o as CoderError, r as TaskResult, s as RunResult$1, u as RunOptions, v as DiscoveredFlow, x as FlowStep, y as FlowEvent } from "./index-CZjFX5zV.js";
4
+ import "zod/mini";
5
+ import { Message, SerializedMessage, SerializedThread } from "chat";
6
+ import "drizzle-orm";
7
+ import "drizzle-orm/postgres-js";
8
+ import "drizzle-orm/pg-core";
9
+ import postgres from "postgres";
10
+ import "jose";
11
+ //#region src/core/engines/codex/index.d.ts
3
12
  declare function getCodexAvailability(cwd: string): Availability;
4
13
  //#endregion
5
- //#region src/lib/plugins.d.ts
14
+ //#region src/core/task/actions.d.ts
15
+ /** How a steer was applied to a task. */
16
+ type SteerOutcome = 'live' | 'queued' | 'resumed';
17
+ /** Filters for the task list, mirroring the CLI flags. */
18
+ interface ListOptions {
19
+ running?: boolean;
20
+ stopped?: boolean;
21
+ archived?: boolean;
22
+ /** Narrow to a workspace (matched by git root). */
23
+ dir?: string;
24
+ /** Max rows; 'all' or undefined means no limit. */
25
+ limit?: number | 'all';
26
+ }
27
+ //#endregion
28
+ //#region src/agent/types.d.ts
29
+ type Preset = 'observe' | 'comment' | 'write';
30
+ /** Per-integration wiring in a definition. `triggers` list = default behavior, map = event -> flow. */
31
+ /** Event value in a definition map: a flow name, or options. */
32
+ interface AgentEventOptions {
33
+ /** Flow to run; omit for the default agent. */
34
+ flow?: string;
35
+ /** Regex the event text must match (e.g. keywords on Slack `message`). */
36
+ match?: string;
37
+ /** May only narrow the agent's default permission for this event. */
38
+ permissions?: Permission;
39
+ /** `requester`: the task acts with the linked requester's own platform token. */
40
+ actAs?: 'requester';
41
+ }
42
+ interface AgentDefinitionIntegration {
43
+ triggers?: string[] | Record<string, string | true | AgentEventOptions>;
44
+ /** Platform tools the agent uses: a preset or an explicit tool list. */
45
+ tools?: Preset | string[];
46
+ }
47
+ /** What an agent IS: `.coder/agents/<id>/agent.json` beside its system.md. */
48
+ interface AgentDefinition {
49
+ /** Display name used in replies; defaults to the id. */
50
+ name?: string;
51
+ description?: string;
52
+ engine?: string;
53
+ runner?: string;
54
+ model?: string;
55
+ effort?: Effort;
56
+ permissions?: Permission;
57
+ /** MCP servers every task of this agent attaches, in the `.mcp.json` entry shape. */
58
+ mcp?: Record<string, McpConfigEntry>;
59
+ integrations: Record<string, AgentDefinitionIntegration>;
60
+ }
61
+ /** Per-integration caps in usage: `allowedTools` and `allowedEvents` intersect the definition's. */
62
+ interface AgentUsageIntegration {
63
+ allowedTools?: Preset | string[];
64
+ allowedEvents?: string[];
65
+ }
66
+ /** How a repo RUNS an agent: one entry under `agents` in .coder/config.json. */
67
+ interface AgentUsage {
68
+ engine?: string;
69
+ model?: string;
70
+ effort?: Effort;
71
+ permissions?: Permission;
72
+ integrations?: Record<string, AgentUsageIntegration>;
73
+ }
74
+ interface Agent {
75
+ id: string;
76
+ /** definition.name ?? id. */
77
+ name: string;
78
+ definition: AgentDefinition;
79
+ usage?: AgentUsage;
80
+ /** Absolute folder path when the agent's body is on disk; remote agents have none. */
81
+ dir?: string;
82
+ /** Stored agent body, including system.md, when there is no on-disk folder. */
83
+ files?: Record<string, string>;
84
+ builtin: boolean;
85
+ }
86
+ /** A platform event, already typed by its integration. */
87
+ interface AgentEvent {
88
+ integration: string;
89
+ /** Catalog name, e.g. `pull_request` or `mention`. */
90
+ type: string;
91
+ /** `AgentApp.id` the webhook was addressed to. */
92
+ appId: string;
93
+ installationId: string;
94
+ deliveryId: string;
95
+ actor: {
96
+ id: string;
97
+ login?: string;
98
+ role?: string;
99
+ agent?: boolean;
100
+ };
101
+ /** Human text attached to the event: mention body, comment, PR title + body. */
102
+ text: string;
103
+ /** What the platform tells an agent about where the event happened, such as a Linear issue; bounded. */
104
+ promptContext?: string;
105
+ /** The Chat SDK thread and message it happened in, without raw platform payloads; replies go to this thread. */
106
+ chat?: {
107
+ thread: SerializedThread;
108
+ message?: SerializedMessage;
109
+ };
110
+ repo?: {
111
+ owner: string;
112
+ name: string;
113
+ cloneUrl: string;
114
+ ref: string;
115
+ defaultBranch: string;
116
+ };
117
+ }
118
+ /** Where a task came from: a Coder surface, or the id of the integration whose event started it. */
119
+ type TaskSource = 'dashboard' | 'cli' | 'schedule' | (string & {});
120
+ interface AgentTask {
121
+ cwd?: string;
122
+ id: string;
123
+ name?: string;
124
+ source: TaskSource;
125
+ agent: string;
126
+ /** Flow name, or `default` for the built-in single-task behavior. */
127
+ flow: string;
128
+ runner: RunnerKind;
129
+ /** Registered `http` runner the task routes to. */
130
+ runnerId?: string;
131
+ /** Effective permission after host, usage, and event narrowing. */
132
+ permissions?: Permission;
133
+ /** The platform event, or for a dashboard or CLI task on a repo, that repo through its install. */
134
+ event?: AgentEvent;
135
+ /** What a dashboard or CLI task asks; the newest turn after a continue. */
136
+ prompt?: string;
137
+ /** Flow arguments given directly, instead of derived from the event. */
138
+ args?: Record<string, unknown>;
139
+ /** Workspace MCP servers the task attaches, by name. */
140
+ mcp?: string[];
141
+ /** Handle the task posts as (GitHub `slug[bot]`, Slack bot user), so flows can trust only their own comments. */
142
+ author?: string;
143
+ definition: AgentDefinition;
144
+ /** Frozen id of the credential selected for this task. */
145
+ credential?: string;
146
+ /** Wular user who asked, when known; their personal credential comes first. */
147
+ requester?: string;
148
+ /** Stored agent body for runners whose checkout does not contain the agent. */
149
+ files?: Record<string, string>;
150
+ usage?: AgentUsage;
151
+ /** Effective tools per integration the task may act on (event integration + connections). */
152
+ tools: Record<string, string[]>;
153
+ /** Frozen per-integration write targets. Missing scope means read-only tools only. */
154
+ toolScopes?: Record<string, {
155
+ repo?: {
156
+ owner: string;
157
+ name: string;
158
+ };
159
+ /** Chat SDK thread id. */
160
+ thread?: string;
161
+ }>;
162
+ /** Conversation context gathered by the receiver: recent thread messages and the stored note. */
163
+ context?: TaskContext;
164
+ }
165
+ interface TaskContext {
166
+ outputSchema?: object;
167
+ /** Most recent thread messages, oldest first. */
168
+ messages?: Array<{
169
+ user: string;
170
+ text: string;
171
+ ts: string;
172
+ }>;
173
+ /** Completed turns of this task, kept across dashboard continuations. */
174
+ turns?: TaskTurn[];
175
+ /** Rolling note the agent wrote at the end of its previous turn in this thread. */
176
+ note?: string;
177
+ /** Extra instructions from the config repo (`.coder/<agent>.md`). */
178
+ instructions?: string;
179
+ /** The Coder account behind the event's actor, when they connected it. */
180
+ user?: {
181
+ name: string;
182
+ email: string;
183
+ };
184
+ }
185
+ //#endregion
186
+ //#region src/server/settings/logins.d.ts
187
+ type LoginEngine = 'claude' | 'codex';
188
+ interface EngineLogin {
189
+ owner: string;
190
+ engine: LoginEngine;
191
+ state: 'starting' | 'open' | 'verifying' | 'done' | 'failed';
192
+ url?: string;
193
+ /** The device code Codex shows. */
194
+ code?: string;
195
+ /** The code the user pasted for Claude, sealed until the runner takes it. */
196
+ input?: string;
197
+ error?: string;
198
+ /** The stored credential's label once signed in. */
199
+ label?: string;
200
+ tokenHash: string;
201
+ runner: RunnerKind;
202
+ handle?: string;
203
+ createdAt: number;
204
+ expiresAt: number;
205
+ }
206
+ interface LoginView {
207
+ id: string;
208
+ engine: LoginEngine;
209
+ state: EngineLogin['state'];
210
+ expiresAt: number;
211
+ url?: string;
212
+ code?: string;
213
+ error?: string;
214
+ label?: string;
215
+ }
216
+ //#endregion
217
+ //#region src/server/store/types.d.ts
218
+ interface AgentRecord {
219
+ id: string;
220
+ name: string;
221
+ description?: string;
222
+ source: 'repo' | 'home' | 'upload' | 'builtin';
223
+ repo?: string;
224
+ path?: string;
225
+ currentVersion: number;
226
+ settings?: AgentUsage;
227
+ /** A local server's agent: read from its folder, with no version history. */
228
+ local?: true;
229
+ /** The last commit of a local agent's folder. */
230
+ commit?: string;
231
+ createdAt: number;
232
+ updatedAt: number;
233
+ }
234
+ interface AgentVersionRecord {
235
+ agent: string;
236
+ version: number;
237
+ definition: AgentDefinition;
238
+ systemPrompt: string;
239
+ files?: Record<string, string>;
240
+ commit?: string;
241
+ /** Where a repository import read this version. */
242
+ source?: {
243
+ repo: string;
244
+ ref: string;
245
+ commit: string;
246
+ };
247
+ importedFrom: string;
248
+ createdAt: number;
249
+ }
250
+ type ServerAgent = AgentRecord & {
251
+ definition?: AgentVersionRecord['definition'];
252
+ };
253
+ type PushResult = {
254
+ id: string;
255
+ version: number;
256
+ unchanged: boolean;
257
+ };
258
+ interface TaskOutcome {
259
+ ok: boolean;
260
+ exitCode: number | null;
261
+ output: string;
262
+ /** `git diff` of the checkout when the task ran on a repo. */
263
+ diff?: string;
264
+ }
265
+ type TaskState = 'queued' | 'running' | 'waiting' | 'completed' | 'failed' | 'cancelled';
266
+ /** A task's record: the queue row while it waits, the outcome afterwards. */
267
+ interface TaskStatus {
268
+ task: AgentTask;
269
+ status: TaskState;
270
+ /** Times the worker picked it up; a runner crash earns one retry. */
271
+ attempts: number;
272
+ generation?: number;
273
+ inboxSeq?: number;
274
+ inboxAck?: {
275
+ generation: number;
276
+ seq: number;
277
+ };
278
+ result?: TaskOutcome;
279
+ error?: string;
280
+ tokens?: unknown;
281
+ /** Included by admin task responses; the secret remains in the runner context only. */
282
+ credential?: string;
283
+ /** Opaque runner-owned identifier. Never accepted from an HTTP caller. */
284
+ handle?: string;
285
+ /** SHA-256 of the current attempt's bearer token. */
286
+ tokenHash?: string;
287
+ /** Latest authenticated callback from the current attempt. */
288
+ lastSeenAt?: number;
289
+ /** Persisted runner/log cursors survive a warm-process or serverless restart. */
290
+ logCursor?: number;
291
+ logSeq?: number;
292
+ logBytes?: number;
293
+ archivedAt?: number;
294
+ approval?: unknown;
295
+ /** Ask-sidecar answers in arrival order. */
296
+ answer?: unknown[];
297
+ createdAt: number;
298
+ startedAt?: number;
299
+ finishedAt?: number;
300
+ /** Set by a cancel request while the task runs; the worker stops it at the next check. */
301
+ cancelRequestedAt?: number;
302
+ updatedAt: number;
303
+ /** A read-only row for a task the CLI ran on this machine. */
304
+ local?: true;
305
+ turns?: TaskTurn[];
306
+ fallbacks?: Task['fallbacks'];
307
+ }
308
+ /** One line of a task's output, streamed by the runner while it runs. */
309
+ interface TaskLogLine {
310
+ seq: number;
311
+ at: number;
312
+ /** `out` and `err` from the runner, `sys` from the worker (retries, timeouts). */
313
+ level: 'out' | 'err' | 'sys';
314
+ line: string;
315
+ entry?: TaskLogEntry;
316
+ }
317
+ interface EngineCredential {
318
+ engine: 'claude' | 'codex' | 'custom';
319
+ env: Record<string, string>;
320
+ }
321
+ //#endregion
322
+ //#region src/server/dash/serve.d.ts
323
+ declare global {
324
+ var __coder: {
325
+ handle(request: Request): Promise<Response>;
326
+ } | undefined;
327
+ }
328
+ //#endregion
329
+ //#region src/server/settings/credentials.d.ts
330
+ interface CredentialAccount {
331
+ email?: string;
332
+ plan?: string;
333
+ }
334
+ interface CredentialSummary {
335
+ label: string;
336
+ engine: EngineCredential['engine'];
337
+ scope: 'personal' | 'workspace';
338
+ isDefault: boolean;
339
+ createdAt: number;
340
+ env: string[];
341
+ /** The secret with all but its ends hidden. */
342
+ masked: string;
343
+ account?: CredentialAccount;
344
+ }
345
+ //#endregion
346
+ //#region src/server/tasks/usage.d.ts
347
+ type UsageGroup = 'agent' | 'installation' | 'engine';
348
+ type UsageTotal = {
349
+ key: string;
350
+ tasks: number;
351
+ runnerMs: number;
352
+ tokens?: unknown;
353
+ };
354
+ type UsageTotals = {
355
+ since: number;
356
+ totals: UsageTotal[] | Record<UsageGroup, UsageTotal[]>;
357
+ };
358
+ //#endregion
359
+ //#region src/core/remote.d.ts
360
+ interface ServerOptions {
361
+ /** `true` for the default server (CODER_SERVER, else hosted); a URL for another. */
362
+ server?: string | true;
363
+ token?: string;
364
+ yes?: boolean;
365
+ /** Organization slug for this call; overrides the saved choice. */
366
+ organization?: string;
367
+ }
368
+ interface CredentialAddOptions extends ServerOptions {
369
+ engine?: string;
370
+ /** The values by name, or names whose values come from `value` (`-` reads stdin), else this environment. */
371
+ env: Record<string, string> | string[];
372
+ value?: string;
373
+ workspace?: boolean;
374
+ noCheck?: boolean;
375
+ default?: boolean;
376
+ }
377
+ /** Add an API key or other engine environment values as a personal or workspace credential. */
378
+ declare function addCredential(label: string | undefined, options: CredentialAddOptions): Promise<{
379
+ ok: true;
380
+ label: string;
381
+ }>;
382
+ interface CredentialLoginOptions extends ServerOptions {
383
+ /** Gets a cancel for the started sign-in. */
384
+ onStart?(cancel: () => Promise<unknown>): void;
385
+ /** Shows the sign-in link and code once the runner has them. */
386
+ onOpen?(login: LoginView): void;
387
+ /** Asks for the code Claude's sign-in page shows. */
388
+ code?(): Promise<string>;
389
+ }
390
+ /** Sign in to a Claude or Codex subscription through the server's runner; resolves once it is done or failed. */
391
+ declare function loginCredential(engine: string | undefined, options?: CredentialLoginOptions): Promise<LoginView>;
392
+ //#endregion
393
+ //#region src/core/task/index.d.ts
394
+ /** Where a task call runs: this machine's tasks under `cwd`, or the server named by `server`. */
395
+ type TaskOptions = {
396
+ cwd?: string;
397
+ } & ServerOptions;
398
+ interface TaskRunOptions {
399
+ /** Run as a local agent; the other options override its definition. */
400
+ agent?: string;
401
+ outputSchema?: object;
402
+ engine?: string;
403
+ model?: string;
404
+ effort?: string;
405
+ permissions?: string;
406
+ name?: string;
407
+ system?: string;
408
+ resume?: string;
409
+ /** Extra directories the task may reach, resolved against cwd. */
410
+ addDirs?: string[];
411
+ /** MCP servers to attach, by name from config. */
412
+ mcp?: string;
413
+ /** Block until the task finishes, walking the engine chain when a turn fails to start. */
414
+ wait?: boolean;
415
+ simulateApproval?: boolean;
416
+ /** Server tasks: the repository and runner to use. */
417
+ repo?: string;
418
+ runner?: string;
419
+ onFallback?: (fallback: {
420
+ engine: string;
421
+ detail: string;
422
+ next: string;
423
+ }) => void;
424
+ onNote?: (note: string) => void;
425
+ /** Each time a wait starts on a task id. */
426
+ onWaiting?: (taskId: string) => void;
427
+ /** Server task log lines while waiting. */
428
+ onLog?: (line: TaskLogLine) => void;
429
+ }
430
+ interface RunResult {
431
+ taskId: string;
432
+ status: string;
433
+ startupCheck?: 'passed' | 'pending';
434
+ commands?: Record<'result' | 'steer' | 'stop' | 'list', string>;
435
+ finalMessage?: string | null;
436
+ error?: string;
437
+ tokens?: TokenUsage | null;
438
+ model?: string | null;
439
+ }
440
+ interface TaskInspection {
441
+ taskId: string;
442
+ status: string;
443
+ task: Task;
444
+ result: ReturnType<typeof readTask>['result'];
445
+ steps: TaskLogEntry[];
446
+ turns: ReturnType<typeof readTurnResults>;
447
+ pendingApprovals: Array<{
448
+ id: string;
449
+ summary: string;
450
+ cwd: string | null;
451
+ }>;
452
+ /** While running: time since the last sign of life, and whether it looks stalled. */
453
+ idleMs?: number;
454
+ lastActivityAt?: string | null;
455
+ stalled?: boolean;
456
+ /** While running: the last progress entry and the latest token snapshot. */
457
+ lastLog?: TaskLogEntry;
458
+ liveTokens?: TokenUsage | null;
459
+ }
460
+ interface TaskRow {
461
+ taskId: string;
462
+ status: Task['status'] | 'waiting-approval';
463
+ pendingApprovals: number;
464
+ engine: string | null;
465
+ model: string | null;
466
+ effort: string | null;
467
+ name: string | null;
468
+ cwd: string | null;
469
+ prompt: string;
470
+ updatedAt: string | undefined;
471
+ archived: boolean;
472
+ flowRunId: string | null;
473
+ idleMs: number | null;
474
+ }
475
+ interface TaskWatch {
476
+ task: Task | TaskStatus;
477
+ /** Progress entries as they land, ending when the task is terminal. */
478
+ events: AsyncGenerator<TaskLogEntry | TaskLogLine>;
479
+ /** The task once the stream ends. */
480
+ final(): Promise<{
481
+ taskId: string;
482
+ status: string;
483
+ result: any;
484
+ task: Task;
485
+ } | TaskStatus>;
486
+ }
487
+ interface ApprovalRow {
488
+ taskId: string;
489
+ id: string;
490
+ summary: string;
491
+ cwd?: string | null;
492
+ createdAt?: string;
493
+ answered?: string | null;
494
+ }
495
+ //#endregion
496
+ //#region src/core/hosts.d.ts
6
497
  /** Result of a plugin install/refresh attempt. */
7
498
  interface PluginResult {
8
499
  marketplace: string;
@@ -25,32 +516,6 @@ type CodexInstallResult = {
25
516
  } | null;
26
517
  declare function ensureCodexInstalled(availability: Availability): CodexInstallResult;
27
518
  declare function ensureCodexUpToDate(availability: Availability): CodexUpdateResult;
28
- //#endregion
29
- //#region src/cmd/model.d.ts
30
- interface ProbeResult {
31
- reachable: boolean;
32
- modelListed: boolean | null;
33
- detail: string;
34
- }
35
- interface PersistedModel {
36
- name: string;
37
- entry: CustomModelConfig;
38
- file: string;
39
- probe: ProbeResult;
40
- codex: ReturnType<typeof getCodexAvailability>;
41
- install: ReturnType<typeof ensureCodexInstalled>;
42
- nativeResponses: boolean;
43
- keyMissing: boolean;
44
- ready: boolean;
45
- }
46
- interface ModelWriteOptions {
47
- baseUrl?: string;
48
- model?: string;
49
- envKey?: string;
50
- workspace?: boolean;
51
- }
52
- //#endregion
53
- //#region src/cmd/setup-host.d.ts
54
519
  interface SetupHostReport {
55
520
  codex: {
56
521
  available: boolean;
@@ -72,8 +537,6 @@ interface SetupHostReport {
72
537
  config: CoderConfig;
73
538
  ready: boolean;
74
539
  }
75
- //#endregion
76
- //#region src/cmd/upgrade.d.ts
77
540
  interface UpgradeReport {
78
541
  cli?: {
79
542
  pm: string;
@@ -95,113 +558,262 @@ interface UpgradeReport {
95
558
  };
96
559
  }
97
560
  //#endregion
98
- //#region src/cmd/jobs.d.ts
99
- /** Filters for the task list, mirroring the CLI flags. */
100
- interface ListOptions {
101
- running?: boolean;
102
- stopped?: boolean;
103
- archived?: boolean;
104
- /** Narrow to a workspace (matched by git root). */
105
- dir?: string;
106
- /** Max rows; 'all' or undefined means no limit. */
107
- limit?: number | 'all';
561
+ //#region src/core/models.d.ts
562
+ interface PersistedModel {
563
+ name: string;
564
+ entry: CustomModelConfig;
565
+ file: string;
566
+ probe: ProbeResult;
567
+ codex: ReturnType<typeof getCodexAvailability>;
568
+ install: ReturnType<typeof ensureCodexInstalled>;
569
+ nativeResponses: boolean;
570
+ keyMissing: boolean;
571
+ ready: boolean;
572
+ }
573
+ interface ModelWriteOptions {
574
+ baseUrl?: string;
575
+ model?: string;
576
+ envKey?: string;
577
+ workspace?: boolean;
108
578
  }
109
579
  //#endregion
110
- //#region src/cmd/steer.d.ts
111
- /** How a steer was applied to a task. */
112
- type SteerOutcome = 'live' | 'queued' | 'resumed';
580
+ //#region src/client/auth/session.d.ts
581
+ interface Session {
582
+ /** Wular Auth access token for this server. */
583
+ token: string;
584
+ refreshToken: string;
585
+ /** When `token` expires, epoch milliseconds. */
586
+ expiresAt: number;
587
+ /** The Wular Auth issuer that signed the tokens. */
588
+ issuer: string;
589
+ user: {
590
+ name: string;
591
+ email: string;
592
+ };
593
+ organization?: {
594
+ id: string;
595
+ name: string;
596
+ slug: string;
597
+ };
598
+ at: number;
599
+ }
113
600
  //#endregion
114
- //#region src/sdk.d.ts
115
- interface TaskRunOptions {
116
- agent?: string;
117
- model?: string;
118
- effort?: string;
119
- permissions?: string;
601
+ //#region src/client/auth/sign-in.d.ts
602
+ type LoginOrganization = NonNullable<Session['organization']>;
603
+ interface SignInOptions {
604
+ device?: boolean;
605
+ open?: (url: string) => void;
606
+ onCode?: (code: string, url: string) => void;
607
+ organization?: string;
608
+ chooseOrganization?: (organizations: LoginOrganization[]) => Promise<string>;
609
+ }
610
+ //#endregion
611
+ //#region src/agent/exec.d.ts
612
+ interface ExecResult {
613
+ ok: boolean;
614
+ flow: string;
615
+ /** Default flow: the engine's answer, posted to the platform unless `post` was false. */
616
+ reply?: string;
617
+ note?: string;
618
+ posted?: boolean;
619
+ taskId?: string;
620
+ runId?: string;
621
+ result?: unknown;
622
+ tokens?: unknown;
623
+ }
624
+ //#endregion
625
+ //#region src/agent/index.d.ts
626
+ /** Where an agent call runs: this repo's agents under `cwd`, or the server named by `server`. */
627
+ type AgentOptions = {
628
+ cwd?: string;
629
+ } & ServerOptions;
630
+ /** What an interactive `agent init` picked; flags fill these otherwise. */
631
+ interface AgentPicks {
120
632
  name?: string;
121
- system?: string;
122
- resume?: string;
633
+ integrations: string[];
634
+ events: Record<string, string[]>;
635
+ matches: Record<string, Record<string, string>>;
636
+ tools: Preset;
637
+ }
638
+ interface AgentInitOptions {
123
639
  cwd?: string;
640
+ name?: string;
641
+ description?: string;
642
+ permissions?: AgentDefinition['permissions'];
643
+ integrations?: string | string[];
644
+ triggers?: string | string[];
645
+ tools?: string;
646
+ /** `event=regex` pairs. */
647
+ match?: string | string[];
648
+ /** Asks for the id when none is given. */
649
+ askId?: (validate: (id: string) => string | undefined) => Promise<string>;
650
+ /** Asks for the picks instead of reading them from the options. */
651
+ askPicks?: (id: string) => Promise<AgentPicks>;
652
+ }
653
+ //#endregion
654
+ //#region src/runner/serve.d.ts
655
+ interface RunnerServeOptions extends ServerOptions {
656
+ port?: number;
657
+ /** The public URL a tunnel gives the local port. */
658
+ url?: string;
659
+ name?: string;
660
+ workspace?: boolean;
661
+ runnerUrl?: string;
662
+ }
663
+ type RunnerServeResult = RunnerRow & {
664
+ port: number;
665
+ server: string;
666
+ /** Mark the runner offline on the server and stop listening. */
667
+ close(): Promise<void>;
668
+ };
669
+ /** Serve a server's tasks from this machine; the runner keeps its id and secret per server across restarts. */
670
+ declare function serveRunner(options?: RunnerServeOptions): Promise<RunnerServeResult>;
671
+ //#endregion
672
+ //#region src/server/agents/apps.d.ts
673
+ interface ServerAppOptions {
674
+ /** Where the app lives, such as a GitHub organization; the operator's own account when absent. */
675
+ owner?: string;
676
+ name?: string;
677
+ env?: Record<string, string | undefined>;
678
+ }
679
+ /** The one-time page that creates the built-in agent's public app on `integration`, stored for the whole server. */
680
+ declare function serverAppLink(integration: string, options?: ServerAppOptions): Promise<{
681
+ url: string;
682
+ }>;
683
+ //#endregion
684
+ //#region src/server/maintenance.d.ts
685
+ interface MaintenanceOptions {
686
+ env?: Record<string, string | undefined>;
124
687
  }
688
+ /** Apply pending server migrations and return how many were applied. */
689
+ declare function migrate(options?: MaintenanceOptions): Promise<{
690
+ applied: number;
691
+ }>;
692
+ /** Re-seal every stored secret with the current encryption key. */
693
+ declare function rotateKey(options?: MaintenanceOptions): Promise<{
694
+ moved: number;
695
+ }>;
696
+ //#endregion
697
+ //#region src/core/cache.d.ts
698
+ interface CacheMigration {
699
+ cache: string;
700
+ tasks: number;
701
+ flows: number;
702
+ files: number;
703
+ }
704
+ //#endregion
705
+ //#region src/server/routes/guards.d.ts
706
+ type ServerMode = 'local' | 'memory' | 'cloud';
707
+ //#endregion
708
+ //#region src/server/serve.d.ts
709
+ /** Serverless request handler with a lazily initialized, reused backend. */
710
+ declare function serverHandler(env?: Record<string, string | undefined>, host?: 'node' | 'vercel'): {
711
+ (request: Request, waitUntil?: (work: Promise<unknown>) => void): Promise<Response>;
712
+ scheduled(): Promise<void>;
713
+ close(): Promise<void>;
714
+ };
715
+ interface ServeOptions {
716
+ cwd?: string;
717
+ env?: Record<string, string | undefined>;
718
+ port?: number;
719
+ /** Interface to listen on: 127.0.0.1 by default without a database, else every interface. */
720
+ host?: string;
721
+ /** A throwaway test server that keeps everything in memory. */
722
+ memory?: boolean;
723
+ runner?: RunnerKind;
724
+ }
725
+ interface ServeResult {
726
+ address: string;
727
+ publicUrl: string;
728
+ warnings: string[];
729
+ close(): Promise<void>;
730
+ }
731
+ type ServeDetails = ServeResult & {
732
+ runner: RunnerKind;
733
+ store: 'memory' | 'postgres';
734
+ mode: ServerMode;
735
+ cacheMigration?: Promise<CacheMigration>;
736
+ maxTasks: number;
737
+ signIn?: string;
738
+ mintedToken?: string;
739
+ /** Where DATABASE_URL points. */
740
+ database?: string;
741
+ /** The dashboard link, with the memory server's token, when the server is on this machine. */
742
+ dashboard?: string;
743
+ };
744
+ declare function serve(options?: ServeOptions): Promise<ServeDetails>;
745
+ //#endregion
746
+ //#region src/sdk.d.ts
125
747
  /** Run and control coder tasks. Mirrors `coder task`. */
126
748
  declare const task: {
127
- /** Dispatch a task to the agent chain; returns as soon as it is live. */
128
- run(prompt: string, opts?: TaskRunOptions): Promise<{
129
- taskId: string;
130
- }>;
131
- /**
132
- * A task's result. With `wait`, blocks until the task is terminal (a pending
133
- * approval throws a CoderError with code 'approval-pending'). `tail` fills
134
- * `steps` with the last n steps (default 0: []). Omit the id for the
135
- * most recent task.
136
- */
137
- result(id?: string, opts?: {
749
+ run: (prompt: string, opts?: TaskRunOptions & TaskOptions) => Promise<RunResult | TaskStatus>;
750
+ result: (id?: string, opts?: TaskOptions & {
138
751
  wait?: boolean;
139
752
  tail?: number | "all";
140
- cwd?: string;
141
- }): Promise<TaskResult>;
142
- /** Recent tasks (mirrors `coder list` / `coder task list`). */
143
- list(opts?: ListOptions & {
144
- cwd?: string;
145
- }): Job[];
146
- /** Steer a follow-up into a task (live, queued, or resumed on its thread). */
147
- steer(id: string, text: string, opts?: {
753
+ onWaiting?: (taskId: string) => void;
754
+ }) => Promise<TaskInspection | TaskStatus>;
755
+ list: (opts?: TaskOptions & ListOptions) => Promise<(TaskRow[] & {
756
+ clipped: number;
757
+ archived: number;
758
+ }) | TaskStatus[]>;
759
+ watch: (id?: string, opts?: TaskOptions & {
760
+ tail?: number | "all";
761
+ }) => Promise<TaskWatch>;
762
+ stream: (id?: string, opts?: TaskOptions & {
763
+ tail?: number | "all";
764
+ }) => AsyncGenerator<TaskLogEntry | TaskLogLine, void, any>;
765
+ steer: (id: string, text: string, opts?: TaskOptions & {
148
766
  model?: string;
149
767
  effort?: string;
150
768
  permissions?: string;
151
- cwd?: string;
152
- }): Promise<{
769
+ wait?: boolean;
770
+ }) => Promise<Record<string, unknown> | {
771
+ taskId: string;
772
+ steered: SteerOutcome;
773
+ } | {
774
+ status: TaskStatus$1 | null;
775
+ finalMessage: any;
153
776
  taskId: string;
154
777
  steered: SteerOutcome;
155
778
  }>;
156
- /** Ask about a task via a read-only sidecar; its thread is never touched. */
157
- ask(id: string, question: string, opts?: {
779
+ ask: (id: string, question: string, opts?: TaskOptions & {
158
780
  model?: string;
159
781
  effort?: string;
160
- cwd?: string;
161
- }): Promise<{
162
- taskId: string;
163
- answer: string | null;
164
- }>;
165
- /** Stop a running task. */
166
- stop(id: string, opts?: {
167
- cwd?: string;
168
- }): Promise<{
782
+ onAsking?: (taskId: string) => void;
783
+ }) => Promise<Record<string, unknown>>;
784
+ approvals: (id?: string, opts?: TaskOptions) => Promise<ApprovalRow[] | Record<string, unknown>[]>;
785
+ approve: (reference: string | undefined, approvalId?: string, opts?: TaskOptions & {
786
+ deny?: boolean;
787
+ }) => Promise<unknown>;
788
+ stop: (id?: string, opts?: TaskOptions) => Promise<{
789
+ ok: true;
790
+ } | {
169
791
  taskId: string;
170
792
  status: "cancelled";
171
793
  interrupt: string;
172
794
  }>;
173
- /** Archive a task (hide it from the default list). */
174
- archive(id: string, opts?: {
175
- cwd?: string;
176
- }): {
795
+ archive: (id?: string, opts?: TaskOptions & {
796
+ allStopped?: boolean;
797
+ }) => Promise<{
798
+ archived: string[];
799
+ count: number;
800
+ taskId?: undefined;
801
+ } | {
177
802
  taskId: string;
178
803
  archived: true;
179
- };
180
- /** Delete a task and its engine session from disk. */
181
- delete(id: string, opts?: {
182
- cwd?: string;
183
- }): {
184
- taskId: string;
185
- deleted: boolean;
186
- };
187
- /** Answer a pending approval (accept, or `deny`). */
188
- approve(id: string, approvalId: string, opts?: {
189
- deny?: boolean;
190
- cwd?: string;
191
- }): {
804
+ count?: undefined;
805
+ }>;
806
+ delete: (id?: string, opts?: TaskOptions & {
807
+ allArchived?: boolean;
808
+ }) => Promise<{
809
+ deleted: string[];
810
+ count: number;
811
+ taskId?: undefined;
812
+ } | {
192
813
  taskId: string;
193
- approvalId: string;
194
- decision: "accept" | "decline";
195
- };
196
- /** Pending approvals for a task (omit the id for the most recent task). */
197
- approvals(id?: string, opts?: {
198
- cwd?: string;
199
- }): Approval[];
200
- /** Follow a task live: an async iterable of progress log entries. `tail` replays only the last n steps (default 1). */
201
- stream(id?: string, opts?: {
202
- tail?: number | "all";
203
- cwd?: string;
204
- }): AsyncGenerator<JobLogEntry>;
814
+ deleted: true;
815
+ count?: undefined;
816
+ }>;
205
817
  };
206
818
  /** Manage models: custom endpoints, engine aliases, disable toggles. Mirrors `coder model`. */
207
819
  declare const model: {
@@ -263,7 +875,7 @@ declare const model: {
263
875
  name: string;
264
876
  }[];
265
877
  }>;
266
- /** Alias a name to an engine spec, e.g. alias('fast', 'codex:spark'). */
878
+ /** Alias a name to an engine spec, e.g. alias('fast', 'codex:luna'). */
267
879
  alias: (name: string, spec: string, opts?: {
268
880
  workspace?: boolean;
269
881
  cwd?: string;
@@ -321,6 +933,45 @@ declare const config: {
321
933
  unset?: boolean;
322
934
  };
323
935
  };
936
+ /** Configure MCP servers in `.coder/config.json`, or the user file with `user`. Mirrors `coder mcp`. */
937
+ declare const mcp: {
938
+ /** Save a stdio (`command`) or remote (`url`) server; `env`, `header` and `tools` are comma lists. */
939
+ add: (name: string, opts: McpAddOptions & {
940
+ cwd?: string;
941
+ }) => {
942
+ name: string;
943
+ file: string;
944
+ };
945
+ /** Save an entry from any `.mcp.json`, as an object or JSON text. */
946
+ addJson: (name: string, entry: string | Record<string, unknown>, opts?: {
947
+ user?: boolean;
948
+ cwd?: string;
949
+ }) => {
950
+ name: string;
951
+ file: string;
952
+ };
953
+ /** The configured servers by name. */
954
+ list: (opts?: {
955
+ cwd?: string;
956
+ }) => Record<string, {
957
+ command?: string | undefined;
958
+ args?: string[] | undefined;
959
+ env?: Record<string, string> | undefined;
960
+ url?: string | undefined;
961
+ type?: "stdio" | "http" | "sse" | undefined;
962
+ headers?: Record<string, string> | undefined;
963
+ tools?: string[] | undefined;
964
+ description?: string | undefined;
965
+ }>;
966
+ /** Remove a server. */
967
+ remove: (name: string, opts?: {
968
+ user?: boolean;
969
+ cwd?: string;
970
+ }) => {
971
+ name: string;
972
+ file: string;
973
+ };
974
+ };
324
975
  /** Probe engines, seed the chain, install requested host plugins. */
325
976
  declare function setupHost(hosts?: string[], opts?: {
326
977
  cwd?: string;
@@ -330,8 +981,10 @@ declare function upgrade(opts?: {
330
981
  cliOnly?: boolean;
331
982
  pluginsOnly?: boolean;
332
983
  }): Promise<UpgradeReport>;
333
- /** List bundled docs, or return one topic's raw markdown. */
334
- declare function docs(topic?: string): {
984
+ /** List bundled docs, or return one topic's raw markdown; `claude` picks the Claude Code flavor of the skill. */
985
+ declare function docs(topic?: string, opts?: {
986
+ claude?: boolean;
987
+ }): {
335
988
  topics: {
336
989
  name: string;
337
990
  description: string;
@@ -340,99 +993,241 @@ declare function docs(topic?: string): {
340
993
  name: string;
341
994
  content: string;
342
995
  };
996
+ /** Run the built-in read-only code-review flow. */
997
+ declare const review: {
998
+ run(options?: ReviewArgs): Promise<ReviewResult & {
999
+ runId: string;
1000
+ }>;
1001
+ };
1002
+ /** Sign in and manage saved sessions. Mirrors `coder auth`. */
1003
+ declare const auth: {
1004
+ login(options?: SignInOptions & {
1005
+ server?: string | true;
1006
+ yes?: boolean;
1007
+ save?: boolean;
1008
+ }): Promise<Session & {
1009
+ server: string;
1010
+ }>;
1011
+ logout: (options?: {
1012
+ server?: string | true;
1013
+ yes?: boolean;
1014
+ }) => Promise<{
1015
+ ok: true;
1016
+ server: string;
1017
+ }>;
1018
+ status: () => {
1019
+ [k: string]: {
1020
+ user: {
1021
+ name: string;
1022
+ email: string;
1023
+ };
1024
+ organization: {
1025
+ id: string;
1026
+ name: string;
1027
+ slug: string;
1028
+ } | undefined;
1029
+ at: number;
1030
+ };
1031
+ };
1032
+ };
1033
+ /** Run and host a Coder server. Mirrors `coder server`. */
1034
+ declare const server: {
1035
+ serve: typeof serve;
1036
+ migrate: typeof migrate;
1037
+ rotateKey: typeof rotateKey;
1038
+ /** The GitHub Actions workflow the `github-actions` runner dispatches. */
1039
+ workflow: () => string;
1040
+ app: {
1041
+ /** A link, valid 10 minutes, to the page that creates the built-in agent's public app on a platform. */
1042
+ create: typeof serverAppLink;
1043
+ };
1044
+ handler: typeof serverHandler;
1045
+ };
1046
+ /** Engine credentials on a Coder server. Mirrors `coder credentials`. */
1047
+ declare const credentials: {
1048
+ list: (options?: ServerOptions) => Promise<CredentialSummary[]>;
1049
+ add: typeof addCredential;
1050
+ remove: (label: string, options?: ServerOptions & {
1051
+ workspace?: boolean;
1052
+ }) => Promise<{
1053
+ ok: true;
1054
+ }>;
1055
+ default: (label: string, options?: ServerOptions & {
1056
+ workspace?: boolean;
1057
+ }) => Promise<{
1058
+ ok: true;
1059
+ }>;
1060
+ login: typeof loginCredential;
1061
+ };
1062
+ declare const folders: {
1063
+ list: (options?: ServerOptions) => Promise<LocalFolders>;
1064
+ check: (path: string, options?: ServerOptions) => Promise<{
1065
+ ok: true;
1066
+ folder: LocalFolder;
1067
+ } | {
1068
+ ok: false;
1069
+ detail: string;
1070
+ }>;
1071
+ };
1072
+ /** Your own runners for a Coder server. Mirrors `coder runner`. */
1073
+ declare const runner: {
1074
+ list: (options?: ServerOptions) => Promise<{
1075
+ items: RunnerRow[];
1076
+ catalog: RunnerSpec[];
1077
+ }>;
1078
+ add: (input: RunnerInput, options?: ServerOptions) => Promise<RunnerRow>;
1079
+ pair: (input: {
1080
+ name?: string;
1081
+ scope: RunnerInput["scope"];
1082
+ }, options?: ServerOptions) => Promise<RunnerPairing>;
1083
+ update: (id: string, input: RunnerUpdate, options?: ServerOptions) => Promise<RunnerRow>;
1084
+ default: (id: string, options?: ServerOptions) => Promise<RunnerRow>;
1085
+ test: (id: string, options?: ServerOptions) => Promise<RunnerTest>;
1086
+ rename: (id: string, name: string, options?: ServerOptions) => Promise<RunnerRow>;
1087
+ remove: (id: string, options?: ServerOptions) => Promise<{
1088
+ ok: true;
1089
+ }>;
1090
+ serve: typeof serveRunner;
1091
+ };
1092
+ /** Manage and run agents. Each function mirrors one `coder agent` command. */
1093
+ declare const agent: {
1094
+ list: (opts?: AgentOptions) => Promise<Agent[] | ServerAgent[]>;
1095
+ show(id: string | undefined, opts?: AgentOptions): Promise<Agent | {
1096
+ definition: AgentDefinition;
1097
+ id: string;
1098
+ name: string;
1099
+ description?: string;
1100
+ source: "repo" | "home" | "upload" | "builtin";
1101
+ repo?: string;
1102
+ path?: string;
1103
+ currentVersion: number;
1104
+ settings?: AgentUsage;
1105
+ local?: true;
1106
+ commit?: string;
1107
+ createdAt: number;
1108
+ updatedAt: number;
1109
+ versions: Array<Omit<AgentVersionRecord, "systemPrompt" | "files">>;
1110
+ }>;
1111
+ init: (id: string | undefined, opts?: AgentInitOptions) => Promise<{
1112
+ id: string;
1113
+ dir: string;
1114
+ files: string[];
1115
+ samples: string[];
1116
+ integrations: string[];
1117
+ }>;
1118
+ push: (id?: string, opts?: AgentOptions) => Promise<PushResult[]>;
1119
+ run(name: string | undefined, event: AgentEvent | string | undefined, opts?: AgentOptions & {
1120
+ flow?: string;
1121
+ wait?: boolean;
1122
+ onLog?: (line: TaskLogLine) => void;
1123
+ onDone?: (status: TaskStatus) => void;
1124
+ }): Promise<TaskStatus[] | {
1125
+ tasks: string[];
1126
+ } | ExecResult>;
1127
+ runTask(id: string, opts?: {
1128
+ cwd?: string;
1129
+ }): Promise<unknown>;
1130
+ usage(opts?: AgentOptions & {
1131
+ since?: number | string;
1132
+ by?: string;
1133
+ }): Promise<UsageTotals>;
1134
+ integrations: {
1135
+ list: () => {
1136
+ id: string;
1137
+ description: string;
1138
+ events: string[];
1139
+ tools: string[];
1140
+ }[];
1141
+ show(id: string | undefined): {
1142
+ id: string;
1143
+ events: {
1144
+ [k: string]: string;
1145
+ };
1146
+ tools: Record<Preset, string[]>;
1147
+ };
1148
+ };
1149
+ };
343
1150
  declare const _default: {
344
1151
  task: {
345
- /** Dispatch a task to the agent chain; returns as soon as it is live. */
346
- run(prompt: string, opts?: TaskRunOptions): Promise<{
347
- taskId: string;
348
- }>;
349
- /**
350
- * A task's result. With `wait`, blocks until the task is terminal (a pending
351
- * approval throws a CoderError with code 'approval-pending'). `tail` fills
352
- * `steps` with the last n steps (default 0: []). Omit the id for the
353
- * most recent task.
354
- */
355
- result(id?: string, opts?: {
1152
+ run: (prompt: string, opts?: TaskRunOptions & TaskOptions) => Promise<RunResult | TaskStatus>;
1153
+ result: (id?: string, opts?: TaskOptions & {
356
1154
  wait?: boolean;
357
1155
  tail?: number | "all";
358
- cwd?: string;
359
- }): Promise<TaskResult>;
360
- /** Recent tasks (mirrors `coder list` / `coder task list`). */
361
- list(opts?: ListOptions & {
362
- cwd?: string;
363
- }): Job[];
364
- /** Steer a follow-up into a task (live, queued, or resumed on its thread). */
365
- steer(id: string, text: string, opts?: {
1156
+ onWaiting?: (taskId: string) => void;
1157
+ }) => Promise<TaskInspection | TaskStatus>;
1158
+ list: (opts?: TaskOptions & ListOptions) => Promise<(TaskRow[] & {
1159
+ clipped: number;
1160
+ archived: number;
1161
+ }) | TaskStatus[]>;
1162
+ watch: (id?: string, opts?: TaskOptions & {
1163
+ tail?: number | "all";
1164
+ }) => Promise<TaskWatch>;
1165
+ stream: (id?: string, opts?: TaskOptions & {
1166
+ tail?: number | "all";
1167
+ }) => AsyncGenerator<TaskLogEntry | TaskLogLine, void, any>;
1168
+ steer: (id: string, text: string, opts?: TaskOptions & {
366
1169
  model?: string;
367
1170
  effort?: string;
368
1171
  permissions?: string;
369
- cwd?: string;
370
- }): Promise<{
1172
+ wait?: boolean;
1173
+ }) => Promise<Record<string, unknown> | {
1174
+ taskId: string;
1175
+ steered: SteerOutcome;
1176
+ } | {
1177
+ status: TaskStatus$1 | null;
1178
+ finalMessage: any;
371
1179
  taskId: string;
372
1180
  steered: SteerOutcome;
373
1181
  }>;
374
- /** Ask about a task via a read-only sidecar; its thread is never touched. */
375
- ask(id: string, question: string, opts?: {
1182
+ ask: (id: string, question: string, opts?: TaskOptions & {
376
1183
  model?: string;
377
1184
  effort?: string;
378
- cwd?: string;
379
- }): Promise<{
380
- taskId: string;
381
- answer: string | null;
382
- }>;
383
- /** Stop a running task. */
384
- stop(id: string, opts?: {
385
- cwd?: string;
386
- }): Promise<{
1185
+ onAsking?: (taskId: string) => void;
1186
+ }) => Promise<Record<string, unknown>>;
1187
+ approvals: (id?: string, opts?: TaskOptions) => Promise<ApprovalRow[] | Record<string, unknown>[]>;
1188
+ approve: (reference: string | undefined, approvalId?: string, opts?: TaskOptions & {
1189
+ deny?: boolean;
1190
+ }) => Promise<unknown>;
1191
+ stop: (id?: string, opts?: TaskOptions) => Promise<{
1192
+ ok: true;
1193
+ } | {
387
1194
  taskId: string;
388
1195
  status: "cancelled";
389
1196
  interrupt: string;
390
1197
  }>;
391
- /** Archive a task (hide it from the default list). */
392
- archive(id: string, opts?: {
393
- cwd?: string;
394
- }): {
1198
+ archive: (id?: string, opts?: TaskOptions & {
1199
+ allStopped?: boolean;
1200
+ }) => Promise<{
1201
+ archived: string[];
1202
+ count: number;
1203
+ taskId?: undefined;
1204
+ } | {
395
1205
  taskId: string;
396
1206
  archived: true;
397
- };
398
- /** Delete a task and its engine session from disk. */
399
- delete(id: string, opts?: {
400
- cwd?: string;
401
- }): {
402
- taskId: string;
403
- deleted: boolean;
404
- };
405
- /** Answer a pending approval (accept, or `deny`). */
406
- approve(id: string, approvalId: string, opts?: {
407
- deny?: boolean;
408
- cwd?: string;
409
- }): {
1207
+ count?: undefined;
1208
+ }>;
1209
+ delete: (id?: string, opts?: TaskOptions & {
1210
+ allArchived?: boolean;
1211
+ }) => Promise<{
1212
+ deleted: string[];
1213
+ count: number;
1214
+ taskId?: undefined;
1215
+ } | {
410
1216
  taskId: string;
411
- approvalId: string;
412
- decision: "accept" | "decline";
413
- };
414
- /** Pending approvals for a task (omit the id for the most recent task). */
415
- approvals(id?: string, opts?: {
416
- cwd?: string;
417
- }): Approval[];
418
- /** Follow a task live: an async iterable of progress log entries. `tail` replays only the last n steps (default 1). */
419
- stream(id?: string, opts?: {
420
- tail?: number | "all";
421
- cwd?: string;
422
- }): AsyncGenerator<JobLogEntry>;
1217
+ deleted: true;
1218
+ count?: undefined;
1219
+ }>;
423
1220
  };
424
1221
  flow: {
425
1222
  run(nameOrPath: string, opts?: RunOptions): Promise<RunSummary>;
426
1223
  list(opts?: {
427
1224
  archived?: boolean;
428
- limit?: number;
1225
+ limit?: number | "all";
429
1226
  }): FlowRecord[];
430
1227
  discover(cwd?: string): DiscoveredFlow[];
431
1228
  result(runId?: string, opts?: {
432
1229
  tail?: number | "all";
433
- }): (FlowRecord & {
434
- steps: FlowStep[];
435
- }) | null;
1230
+ }): RunResult$1 | null;
436
1231
  stream(runId?: string, opts?: {
437
1232
  tail?: number | "all";
438
1233
  }): AsyncGenerator<FlowEvent>;
@@ -440,14 +1235,8 @@ declare const _default: {
440
1235
  keepTasks?: boolean;
441
1236
  }): Promise<StopSummary>;
442
1237
  resume(runId?: string, opts?: RunOptions): Promise<RunSummary>;
443
- archive(runId: string): {
444
- runId: string;
445
- archived: true;
446
- };
447
- delete(runId: string): {
448
- runId: string;
449
- deleted: boolean;
450
- };
1238
+ archive: typeof archiveRuns;
1239
+ delete: typeof deleteRuns;
451
1240
  };
452
1241
  model: {
453
1242
  /** Register a custom OpenAI-compatible endpoint model. */
@@ -508,7 +1297,7 @@ declare const _default: {
508
1297
  name: string;
509
1298
  }[];
510
1299
  }>;
511
- /** Alias a name to an engine spec, e.g. alias('fast', 'codex:spark'). */
1300
+ /** Alias a name to an engine spec, e.g. alias('fast', 'codex:luna'). */
512
1301
  alias: (name: string, spec: string, opts?: {
513
1302
  workspace?: boolean;
514
1303
  cwd?: string;
@@ -565,9 +1354,195 @@ declare const _default: {
565
1354
  unset?: boolean;
566
1355
  };
567
1356
  };
1357
+ mcp: {
1358
+ /** Save a stdio (`command`) or remote (`url`) server; `env`, `header` and `tools` are comma lists. */
1359
+ add: (name: string, opts: McpAddOptions & {
1360
+ cwd?: string;
1361
+ }) => {
1362
+ name: string;
1363
+ file: string;
1364
+ };
1365
+ /** Save an entry from any `.mcp.json`, as an object or JSON text. */
1366
+ addJson: (name: string, entry: string | Record<string, unknown>, opts?: {
1367
+ user?: boolean;
1368
+ cwd?: string;
1369
+ }) => {
1370
+ name: string;
1371
+ file: string;
1372
+ };
1373
+ /** The configured servers by name. */
1374
+ list: (opts?: {
1375
+ cwd?: string;
1376
+ }) => Record<string, {
1377
+ command?: string | undefined;
1378
+ args?: string[] | undefined;
1379
+ env?: Record<string, string> | undefined;
1380
+ url?: string | undefined;
1381
+ type?: "stdio" | "http" | "sse" | undefined;
1382
+ headers?: Record<string, string> | undefined;
1383
+ tools?: string[] | undefined;
1384
+ description?: string | undefined;
1385
+ }>;
1386
+ /** Remove a server. */
1387
+ remove: (name: string, opts?: {
1388
+ user?: boolean;
1389
+ cwd?: string;
1390
+ }) => {
1391
+ name: string;
1392
+ file: string;
1393
+ };
1394
+ };
568
1395
  setupHost: typeof setupHost;
569
1396
  upgrade: typeof upgrade;
570
1397
  docs: typeof docs;
1398
+ review: {
1399
+ run(options?: ReviewArgs): Promise<ReviewResult & {
1400
+ runId: string;
1401
+ }>;
1402
+ };
1403
+ auth: {
1404
+ login(options?: SignInOptions & {
1405
+ server?: string | true;
1406
+ yes?: boolean;
1407
+ save?: boolean;
1408
+ }): Promise<Session & {
1409
+ server: string;
1410
+ }>;
1411
+ logout: (options?: {
1412
+ server?: string | true;
1413
+ yes?: boolean;
1414
+ }) => Promise<{
1415
+ ok: true;
1416
+ server: string;
1417
+ }>;
1418
+ status: () => {
1419
+ [k: string]: {
1420
+ user: {
1421
+ name: string;
1422
+ email: string;
1423
+ };
1424
+ organization: {
1425
+ id: string;
1426
+ name: string;
1427
+ slug: string;
1428
+ } | undefined;
1429
+ at: number;
1430
+ };
1431
+ };
1432
+ };
1433
+ agent: {
1434
+ list: (opts?: AgentOptions) => Promise<Agent[] | ServerAgent[]>;
1435
+ show(id: string | undefined, opts?: AgentOptions): Promise<Agent | {
1436
+ definition: AgentDefinition;
1437
+ id: string;
1438
+ name: string;
1439
+ description?: string;
1440
+ source: "repo" | "home" | "upload" | "builtin";
1441
+ repo?: string;
1442
+ path?: string;
1443
+ currentVersion: number;
1444
+ settings?: AgentUsage;
1445
+ local?: true;
1446
+ commit?: string;
1447
+ createdAt: number;
1448
+ updatedAt: number;
1449
+ versions: Array<Omit<AgentVersionRecord, "systemPrompt" | "files">>;
1450
+ }>;
1451
+ init: (id: string | undefined, opts?: AgentInitOptions) => Promise<{
1452
+ id: string;
1453
+ dir: string;
1454
+ files: string[];
1455
+ samples: string[];
1456
+ integrations: string[];
1457
+ }>;
1458
+ push: (id?: string, opts?: AgentOptions) => Promise<PushResult[]>;
1459
+ run(name: string | undefined, event: AgentEvent | string | undefined, opts?: AgentOptions & {
1460
+ flow?: string;
1461
+ wait?: boolean;
1462
+ onLog?: (line: TaskLogLine) => void;
1463
+ onDone?: (status: TaskStatus) => void;
1464
+ }): Promise<TaskStatus[] | {
1465
+ tasks: string[];
1466
+ } | ExecResult>;
1467
+ runTask(id: string, opts?: {
1468
+ cwd?: string;
1469
+ }): Promise<unknown>;
1470
+ usage(opts?: AgentOptions & {
1471
+ since?: number | string;
1472
+ by?: string;
1473
+ }): Promise<UsageTotals>;
1474
+ integrations: {
1475
+ list: () => {
1476
+ id: string;
1477
+ description: string;
1478
+ events: string[];
1479
+ tools: string[];
1480
+ }[];
1481
+ show(id: string | undefined): {
1482
+ id: string;
1483
+ events: {
1484
+ [k: string]: string;
1485
+ };
1486
+ tools: Record<Preset, string[]>;
1487
+ };
1488
+ };
1489
+ };
1490
+ credentials: {
1491
+ list: (options?: ServerOptions) => Promise<CredentialSummary[]>;
1492
+ add: typeof addCredential;
1493
+ remove: (label: string, options?: ServerOptions & {
1494
+ workspace?: boolean;
1495
+ }) => Promise<{
1496
+ ok: true;
1497
+ }>;
1498
+ default: (label: string, options?: ServerOptions & {
1499
+ workspace?: boolean;
1500
+ }) => Promise<{
1501
+ ok: true;
1502
+ }>;
1503
+ login: typeof loginCredential;
1504
+ };
1505
+ folders: {
1506
+ list: (options?: ServerOptions) => Promise<LocalFolders>;
1507
+ check: (path: string, options?: ServerOptions) => Promise<{
1508
+ ok: true;
1509
+ folder: LocalFolder;
1510
+ } | {
1511
+ ok: false;
1512
+ detail: string;
1513
+ }>;
1514
+ };
1515
+ runner: {
1516
+ list: (options?: ServerOptions) => Promise<{
1517
+ items: RunnerRow[];
1518
+ catalog: RunnerSpec[];
1519
+ }>;
1520
+ add: (input: RunnerInput, options?: ServerOptions) => Promise<RunnerRow>;
1521
+ pair: (input: {
1522
+ name?: string;
1523
+ scope: RunnerInput["scope"];
1524
+ }, options?: ServerOptions) => Promise<RunnerPairing>;
1525
+ update: (id: string, input: RunnerUpdate, options?: ServerOptions) => Promise<RunnerRow>;
1526
+ default: (id: string, options?: ServerOptions) => Promise<RunnerRow>;
1527
+ test: (id: string, options?: ServerOptions) => Promise<RunnerTest>;
1528
+ rename: (id: string, name: string, options?: ServerOptions) => Promise<RunnerRow>;
1529
+ remove: (id: string, options?: ServerOptions) => Promise<{
1530
+ ok: true;
1531
+ }>;
1532
+ serve: typeof serveRunner;
1533
+ };
1534
+ server: {
1535
+ serve: typeof serve;
1536
+ migrate: typeof migrate;
1537
+ rotateKey: typeof rotateKey;
1538
+ /** The GitHub Actions workflow the `github-actions` runner dispatches. */
1539
+ workflow: () => string;
1540
+ app: {
1541
+ /** A link, valid 10 minutes, to the page that creates the built-in agent's public app on a platform. */
1542
+ create: typeof serverAppLink;
1543
+ };
1544
+ handler: typeof serverHandler;
1545
+ };
571
1546
  };
572
1547
  //#endregion
573
- export { type Approval, CoderError, type FlowEvent, type FlowStep, type Job, type JobLogEntry, type SteerOutcome, type TaskResult, TaskRunOptions, type TurnResult, config, _default as default, docs, flowSdk as flow, model, setupHost, task, upgrade };
1548
+ export { type Approval, CoderError, type FlowEvent, type FlowStep, type LocalFolder, type LocalFolders, type ReviewArgs, type ReviewResult, type RunnerInput, type RunnerKind, type RunnerPairing, type RunnerRow, type RunnerSpec, type RunnerTest, type RunnerUpdate, type ServerOptions, type Session, type SteerOutcome, type Task, type TaskLogEntry, type TaskResult, type TaskRunOptions, type TurnResult, agent, auth, config, credentials, _default as default, docs, flowSdk as flow, folders, mcp, model, review, runner, server, setupHost, task, upgrade };