@opencode-ai/core 0.0.0-beta-18219 → 0.0.0-beta-18269

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 (380) hide show
  1. package/dist/agent.js +49 -53
  2. package/dist/aisdk-native.js +2 -2
  3. package/dist/aisdk.js +2 -2
  4. package/dist/bus.js +48 -52
  5. package/dist/catalog.js +54 -58
  6. package/dist/chunks/{state-qasbckzx.js → state-05wd10c5.js} +80 -80
  7. package/dist/chunks/{state-h9sy0va2.js → state-08sn05f7.js} +5 -5
  8. package/dist/chunks/{state-fvnc3e3d.js → state-0n5r8s68.js} +5 -5
  9. package/dist/chunks/{state-vvmq9xvn.js → state-0qdyn92p.js} +11 -11
  10. package/dist/chunks/{state-0r6r61g5.js → state-0rqcx54b.js} +1 -1
  11. package/dist/chunks/{state-3d1t6jqf.js → state-11jmdqxk.js} +2 -2
  12. package/dist/chunks/{state-hk8vx4ga.js → state-13bb7frp.js} +4 -4
  13. package/dist/chunks/{state-fxw49t4p.js → state-14n6xd2t.js} +1 -1
  14. package/dist/chunks/{state-5vpdk7xd.js → state-1dxwhedr.js} +3 -3
  15. package/dist/chunks/{state-en9qv3ee.js → state-1eyrk6kn.js} +2 -2
  16. package/dist/chunks/{state-efvmw2xw.js → state-1jg449r0.js} +1 -1
  17. package/dist/chunks/{state-6x98y149.js → state-1k8hd2s1.js} +1 -1
  18. package/dist/chunks/{state-x07gtesk.js → state-1z63g373.js} +2 -2
  19. package/dist/chunks/{state-wzvy0tx9.js → state-21cqa2vh.js} +3 -3
  20. package/dist/chunks/{state-xm8j1t5h.js → state-25g1tcbn.js} +2 -2
  21. package/dist/chunks/{state-rs9n91g6.js → state-2667yp75.js} +2 -6
  22. package/dist/chunks/{state-fkg79ekq.js → state-27mgx7wm.js} +8 -8
  23. package/dist/chunks/{state-mc1mz2pc.js → state-2q2hjh4d.js} +2 -2
  24. package/dist/chunks/{state-6yt963b8.js → state-2xb0r1c6.js} +3 -1
  25. package/dist/chunks/{state-gwpydf4a.js → state-2zjhyv5q.js} +1 -1
  26. package/dist/chunks/{state-e0wkpsf3.js → state-369rn14b.js} +4 -4
  27. package/dist/chunks/{state-5tehh5r2.js → state-3bgrn618.js} +10 -10
  28. package/dist/chunks/{state-y643ex83.js → state-3hnnvm1k.js} +2 -2
  29. package/dist/chunks/{state-g1zg5aqr.js → state-3j8hmcr0.js} +3 -3
  30. package/dist/chunks/{state-5gas9jc2.js → state-3kdskcc3.js} +4 -4
  31. package/dist/chunks/{state-myychbwq.js → state-3n6fpmg4.js} +2 -2
  32. package/dist/chunks/{state-6a16bmez.js → state-3ng63sbq.js} +3 -3
  33. package/dist/chunks/{state-1a3a2s70.js → state-3zyjx98r.js} +1 -1
  34. package/dist/chunks/{state-njywpcye.js → state-453w8ra4.js} +6 -6
  35. package/dist/chunks/{state-14wbm4hn.js → state-4cxzzthm.js} +3 -3
  36. package/dist/chunks/{state-3mexq3pq.js → state-4fa10fyv.js} +13 -13
  37. package/dist/chunks/{state-eaejza2t.js → state-4m26jex0.js} +1 -1
  38. package/dist/chunks/{state-5cj22h72.js → state-4p1mqhwg.js} +153 -153
  39. package/dist/chunks/{state-xz479kyk.js → state-4wqm8gvz.js} +4 -13
  40. package/dist/chunks/{state-rn9r0ddn.js → state-5dwqq0br.js} +13 -1
  41. package/dist/chunks/{state-qe0aav6y.js → state-5ew1nkwg.js} +7 -7
  42. package/dist/chunks/{state-dhccyx0v.js → state-5qgmwqxx.js} +1 -1
  43. package/dist/chunks/{state-ayfpp7hf.js → state-61ba6bgr.js} +24 -28
  44. package/dist/chunks/{state-tj4jvx23.js → state-6m78tbrd.js} +5 -5
  45. package/dist/chunks/{state-4g5pgmex.js → state-6mtxg7ec.js} +11 -11
  46. package/dist/chunks/{state-bh50qah0.js → state-6xtnn7py.js} +4 -4
  47. package/dist/chunks/{state-e1pa6vc2.js → state-6zbf46dw.js} +9 -9
  48. package/dist/chunks/{state-2r1bah04.js → state-6zrz2gj9.js} +5 -5
  49. package/dist/chunks/{state-bdhgfttt.js → state-7rn7c1wb.js} +10 -10
  50. package/dist/chunks/{state-jfgv8vsa.js → state-81mmkvpk.js} +11 -11
  51. package/dist/chunks/{state-z88k6s2w.js → state-8en9tkxq.js} +15 -3
  52. package/dist/chunks/{state-0dqphqhz.js → state-8hedmdhf.js} +2 -2
  53. package/dist/chunks/{state-te0cypm2.js → state-8mcwjqk5.js} +6 -6
  54. package/dist/chunks/{state-fwsc80k7.js → state-8nxrj4pj.js} +1 -1
  55. package/dist/chunks/{state-625h1wqn.js → state-91frc5mm.js} +4 -4
  56. package/dist/chunks/{state-qv06sb3r.js → state-9g8h1q3a.js} +1 -1
  57. package/dist/chunks/{state-9p8mhgdp.js → state-9p22jmaw.js} +1 -1
  58. package/dist/chunks/{state-3gsv1x0v.js → state-9tbj2q0z.js} +3 -13
  59. package/dist/chunks/{state-cb46h7pc.js → state-9y48xc9h.js} +3 -3
  60. package/dist/chunks/{state-7g3ydvzh.js → state-a1p868km.js} +4 -4
  61. package/dist/chunks/{state-kdn1ck8k.js → state-a4f6ct0f.js} +2 -2
  62. package/dist/chunks/{state-63gtrn1b.js → state-a600x74j.js} +1 -1
  63. package/dist/chunks/{state-hhfaz00h.js → state-a9dsqgp1.js} +1 -2
  64. package/dist/chunks/{state-2ya5073c.js → state-aaxez5kq.js} +1 -1
  65. package/dist/chunks/{state-8a9e14vy.js → state-adsxqz7v.js} +3 -3
  66. package/dist/chunks/{state-38jwdxby.js → state-asfw3td4.js} +1 -1
  67. package/dist/chunks/{state-effdwybp.js → state-b17xd5mf.js} +9 -10
  68. package/dist/chunks/{state-qtaajmpt.js → state-b4htb9ej.js} +1 -1
  69. package/dist/chunks/{state-1fqmpy8k.js → state-b64x4rkh.js} +35 -35
  70. package/dist/chunks/{state-d7y00n83.js → state-bc330n33.js} +27 -16
  71. package/dist/chunks/{state-esjk7kfz.js → state-be0semnx.js} +7 -7
  72. package/dist/chunks/{state-jm68rb0q.js → state-bkk1b4ms.js} +6 -6
  73. package/dist/chunks/{state-tjjf1q77.js → state-bmd659vv.js} +1 -1
  74. package/dist/chunks/{state-8mftgzpj.js → state-bnttfg6s.js} +1 -1
  75. package/dist/chunks/{state-qjnrmq1k.js → state-cc76sxm0.js} +4 -4
  76. package/dist/chunks/{state-yfq2zvb9.js → state-ck58sp58.js} +1 -1
  77. package/dist/chunks/{state-568e76aa.js → state-ckq2jga8.js} +3 -3
  78. package/dist/chunks/{state-4j7te1s0.js → state-d4ax61k3.js} +15 -3
  79. package/dist/chunks/{state-5xrsrne4.js → state-dvt8wt6j.js} +2 -2
  80. package/dist/chunks/state-e3fd12s5.js +151 -0
  81. package/dist/chunks/{state-8tw3qzpt.js → state-e4xwk5z4.js} +2 -2
  82. package/dist/chunks/{state-78y9e82n.js → state-e8nbj9tw.js} +3 -48
  83. package/dist/chunks/{state-5mntg4nb.js → state-e97zy5jx.js} +2 -2
  84. package/dist/chunks/{state-8gp1tmat.js → state-e9yzz6kb.js} +1 -1
  85. package/dist/chunks/{state-tpwp4gvc.js → state-eax51wg3.js} +4 -4
  86. package/dist/chunks/{state-tt8fjeh9.js → state-eekpgcpd.js} +62 -70
  87. package/dist/chunks/{state-bkw9e9jk.js → state-emksydcf.js} +26 -26
  88. package/dist/chunks/{state-xjn4tcwe.js → state-eq06mre2.js} +2 -2
  89. package/dist/chunks/{state-1g0dcjrg.js → state-eqzrzvwz.js} +2 -2
  90. package/dist/chunks/{state-qajwj4ps.js → state-fbnbqahk.js} +3 -3
  91. package/dist/chunks/{state-cwzmv738.js → state-fj104twx.js} +1 -1
  92. package/dist/chunks/{state-g7t6p8r2.js → state-fsqnkees.js} +1 -1
  93. package/dist/chunks/{state-hhxt27np.js → state-fyegnnfc.js} +1 -1
  94. package/dist/chunks/{state-5zayf0x8.js → state-g0aw0gzh.js} +66 -57
  95. package/dist/chunks/{state-yb8yd193.js → state-gbxfsqwm.js} +2 -2
  96. package/dist/chunks/{state-d19eexxk.js → state-gyrwtw78.js} +1 -1
  97. package/dist/chunks/{state-982wwmdk.js → state-h2t3q2wm.js} +1 -1
  98. package/dist/chunks/{state-59d95h76.js → state-h3y01asp.js} +12 -9
  99. package/dist/chunks/{state-jf35ek5b.js → state-h846wrk2.js} +1 -0
  100. package/dist/chunks/{state-djkt4gex.js → state-hhajr42d.js} +3 -0
  101. package/dist/chunks/{state-dgfy6zt2.js → state-jabxf61s.js} +5 -5
  102. package/dist/chunks/{state-cqdxefk2.js → state-jgvtg6c9.js} +40 -14
  103. package/dist/chunks/{state-7qqad34w.js → state-jkjzgk2k.js} +8 -8
  104. package/dist/chunks/{state-rmr740y4.js → state-jsm51fhb.js} +9 -9
  105. package/dist/chunks/{state-qh4vq1fm.js → state-jxwvj0fm.js} +8 -8
  106. package/dist/chunks/{state-6msxydxg.js → state-k6ybxbw4.js} +9 -9
  107. package/dist/chunks/{state-ftfyk4m7.js → state-kag74pk5.js} +2 -2
  108. package/dist/chunks/{state-t0tt4nmt.js → state-kb33ew3e.js} +8 -8
  109. package/dist/chunks/{state-4ce5qhvd.js → state-kxp8ef5p.js} +5 -5
  110. package/dist/chunks/{state-2zf7hxjt.js → state-m0ebj05k.js} +13 -2
  111. package/dist/chunks/{state-bcvcrp33.js → state-mjgqapyb.js} +2 -2
  112. package/dist/chunks/{state-va5k7fad.js → state-mr28yfk1.js} +27 -7
  113. package/dist/chunks/{state-wcc1vz83.js → state-mwymssey.js} +42 -42
  114. package/dist/chunks/{state-gg8gy1ab.js → state-n1x4rjqh.js} +2 -2
  115. package/dist/chunks/{state-e2qdw0tg.js → state-n5fzcn0n.js} +5 -5
  116. package/dist/chunks/{state-3zqgma8g.js → state-na8etft7.js} +2 -2
  117. package/dist/chunks/{state-h094egad.js → state-nfhhzyc6.js} +4 -4
  118. package/dist/chunks/{state-y966n2ac.js → state-njsznp42.js} +10 -10
  119. package/dist/chunks/{state-nzexh2ja.js → state-nrbk1kjp.js} +87 -87
  120. package/dist/chunks/{state-rgk6q7se.js → state-ntvdej23.js} +1 -1
  121. package/dist/chunks/{state-rph6nvyf.js → state-p1c6e6m1.js} +26 -26
  122. package/dist/chunks/{state-dr1mvjy7.js → state-p3twfje4.js} +3 -3
  123. package/dist/chunks/{state-epzxjdf4.js → state-p7764ja1.js} +2 -2
  124. package/dist/chunks/{state-2zyrrrhx.js → state-pewx9f2e.js} +3 -3
  125. package/dist/chunks/{state-vz30fbtb.js → state-pspf2xyp.js} +3 -3
  126. package/dist/chunks/{state-4gksgcvv.js → state-q22rp0t0.js} +14 -14
  127. package/dist/chunks/{state-cve546b2.js → state-q7kk6b5b.js} +1 -1
  128. package/dist/chunks/{state-1427k8mt.js → state-qe7xhz7y.js} +2 -2
  129. package/dist/chunks/{state-e9jfq0e9.js → state-rpqdmjwk.js} +1 -1
  130. package/dist/chunks/{state-993n0k7x.js → state-s57t7xkg.js} +1 -1
  131. package/dist/chunks/{state-wyhq3myq.js → state-ss47qkgm.js} +3 -3
  132. package/dist/chunks/{state-fdx44h11.js → state-syqxsax9.js} +1 -1
  133. package/dist/chunks/{state-9wqc5k0a.js → state-sz0e55kk.js} +4 -4
  134. package/dist/chunks/{state-0b13gwpq.js → state-t0m69jt4.js} +4 -4
  135. package/dist/chunks/{state-shhqc982.js → state-t7gaqyw5.js} +15 -15
  136. package/dist/chunks/{state-c9eyxdsa.js → state-tawttwre.js} +9 -9
  137. package/dist/chunks/{state-5m91ayta.js → state-v1g0nhk2.js} +1 -1
  138. package/dist/chunks/{state-7svew3xx.js → state-v4sgqzfn.js} +5 -5
  139. package/dist/chunks/{state-fypnrcda.js → state-vh3jgmz8.js} +6 -6
  140. package/dist/chunks/{state-6dpj79be.js → state-vs2j5dte.js} +2 -2
  141. package/dist/chunks/{state-qsh6aavw.js → state-w5aydxy7.js} +3 -3
  142. package/dist/chunks/{state-20hhthrk.js → state-w946z2q4.js} +4 -4
  143. package/dist/chunks/{state-1jaejmkb.js → state-wgfqc61v.js} +2 -2
  144. package/dist/chunks/{state-eq90zxhy.js → state-x9z4espg.js} +3 -3
  145. package/dist/chunks/{state-c9tk9ghs.js → state-xfry7hk8.js} +1 -1
  146. package/dist/chunks/{state-j5tp9x2q.js → state-y2q46fcs.js} +10 -10
  147. package/dist/chunks/{state-c09ww48j.js → state-y5as78a2.js} +1 -1
  148. package/dist/chunks/{state-zbjdaqcp.js → state-yah8vtgx.js} +4 -4
  149. package/dist/chunks/{state-fywp5vae.js → state-yv2xx3v3.js} +3 -3
  150. package/dist/chunks/{state-zrbk8s17.js → state-yx107q08.js} +9 -9
  151. package/dist/chunks/{state-crg4yysy.js → state-yxz07vzv.js} +1 -1
  152. package/dist/chunks/{state-0vgt3zn6.js → state-z6xdhe6c.js} +1 -1
  153. package/dist/chunks/{state-kb2qf3qs.js → state-zh7kq3j8.js} +3 -3
  154. package/dist/chunks/{state-77cj1yb3.js → state-zma7gfkw.js} +4 -4
  155. package/dist/chunks/{state-s4ame7nd.js → state-zmtjwfap.js} +4 -4
  156. package/dist/chunks/{state-hk8exvw2.js → state-zv8psbr7.js} +2 -2
  157. package/dist/command.js +49 -53
  158. package/dist/config/normalize.js +12 -12
  159. package/dist/config/plugin/agent.js +82 -86
  160. package/dist/config/plugin/command.js +71 -75
  161. package/dist/config/plugin/compaction.js +110 -114
  162. package/dist/config/plugin/entry-observer.js +68 -72
  163. package/dist/config/plugin/formatter.js +71 -75
  164. package/dist/config/plugin/image.js +79 -83
  165. package/dist/config/plugin/instruction.js +54 -58
  166. package/dist/config/plugin/location-watcher.js +70 -74
  167. package/dist/config/plugin/mcp.js +78 -82
  168. package/dist/config/plugin/policy.js +70 -74
  169. package/dist/config/plugin/provider.js +69 -73
  170. package/dist/config/plugin/reference.js +73 -77
  171. package/dist/config/plugin/shell.js +71 -75
  172. package/dist/config/plugin/skill-file.js +67 -71
  173. package/dist/config/plugin/skill.js +84 -88
  174. package/dist/config/plugin/snapshot.js +71 -75
  175. package/dist/config/plugin/source.js +69 -73
  176. package/dist/config/plugin/tool-output.js +72 -76
  177. package/dist/config/plugin/websearch.js +69 -73
  178. package/dist/config.js +68 -72
  179. package/dist/credential.js +52 -51
  180. package/dist/database/database.js +46 -50
  181. package/dist/database/drizzle/effect-sqlite/driver.js +8 -11
  182. package/dist/database/drizzle/effect-sqlite/index.js +8 -11
  183. package/dist/database/drizzle/effect-sqlite/session.js +7 -10
  184. package/dist/database/drizzle/index.js +9 -16
  185. package/dist/database/drizzle/sqlite-core/effect/db.js +5 -5
  186. package/dist/database/drizzle/sqlite-core/effect/index.js +16 -21
  187. package/dist/database/drizzle/sqlite-core/effect/session.js +7 -12
  188. package/dist/database/drizzle.js +9 -16
  189. package/dist/database/migration/20260410174513_workspace-name.js +1 -1
  190. package/dist/database/migration.gen.js +35 -35
  191. package/dist/database/migration.js +36 -36
  192. package/dist/database/v1-migration.bun.js +52 -56
  193. package/dist/effect/app-node-builder.js +254 -260
  194. package/dist/environment/environment.js +55 -59
  195. package/dist/environment/index.js +57 -61
  196. package/dist/event-logger.js +48 -52
  197. package/dist/file-mutation.js +56 -60
  198. package/dist/filesystem/location-watcher.js +237 -243
  199. package/dist/filesystem/search.js +58 -62
  200. package/dist/filesystem.js +58 -62
  201. package/dist/form.js +49 -53
  202. package/dist/formatter.js +53 -57
  203. package/dist/generate.js +58 -62
  204. package/dist/github-copilot/chat/openai-compatible-chat-language-model.js +3 -3
  205. package/dist/github-copilot/copilot-provider.js +8 -8
  206. package/dist/github-copilot/models.js +3 -3
  207. package/dist/github-copilot/responses/openai-responses-language-model.js +4 -4
  208. package/dist/github-copilot/responses/openai-responses-prepare-tools.js +2 -2
  209. package/dist/image/photon.js +60 -64
  210. package/dist/image.js +60 -64
  211. package/dist/instruction-discovery.js +50 -54
  212. package/dist/instructions/builtins.js +53 -57
  213. package/dist/integration.js +51 -55
  214. package/dist/job.js +1 -1
  215. package/dist/kv.js +47 -51
  216. package/dist/location-activity.js +51 -55
  217. package/dist/location-mutation.js +52 -56
  218. package/dist/location-service-map.js +51 -55
  219. package/dist/location-services.js +254 -260
  220. package/dist/location.js +51 -55
  221. package/dist/mcp/client.js +56 -60
  222. package/dist/mcp/index.js +62 -66
  223. package/dist/mcp/instructions.js +83 -87
  224. package/dist/mcp/stdio.js +56 -60
  225. package/dist/model-resolver.js +57 -61
  226. package/dist/model.js +2 -2
  227. package/dist/models-dev.js +52 -56
  228. package/dist/permission/saved.js +51 -55
  229. package/dist/permission/sql.js +1 -1
  230. package/dist/permission.js +65 -69
  231. package/dist/persistent-pty/index.js +49 -53
  232. package/dist/persistent-pty.js +49 -53
  233. package/dist/plugin/agent.js +66 -70
  234. package/dist/plugin/command.js +63 -67
  235. package/dist/plugin/host.js +117 -121
  236. package/dist/plugin/internal.js +229 -235
  237. package/dist/plugin/models-dev.js +53 -57
  238. package/dist/plugin/plan.js +66 -70
  239. package/dist/plugin/provider/amazon-bedrock.js +2 -2
  240. package/dist/plugin/provider/anthropic.js +2 -2
  241. package/dist/plugin/provider/azure.js +75 -79
  242. package/dist/plugin/provider/cerebras.js +2 -2
  243. package/dist/plugin/provider/cloudflare-ai-gateway.js +76 -80
  244. package/dist/plugin/provider/cloudflare-workers-ai.js +76 -80
  245. package/dist/plugin/provider/configured.js +74 -78
  246. package/dist/plugin/provider/github-copilot.js +57 -61
  247. package/dist/plugin/provider/gitlab.js +2 -2
  248. package/dist/plugin/provider/google-vertex.js +2 -2
  249. package/dist/plugin/provider/kilo.js +2 -2
  250. package/dist/plugin/provider/llmgateway.js +53 -57
  251. package/dist/plugin/provider/lmstudio.js +69 -73
  252. package/dist/plugin/provider/nvidia.js +2 -2
  253. package/dist/plugin/provider/ollama.js +69 -73
  254. package/dist/plugin/provider/openai.js +53 -57
  255. package/dist/plugin/provider/opencode.js +63 -67
  256. package/dist/plugin/provider/openrouter.js +3 -3
  257. package/dist/plugin/provider/sap-ai-core.js +2 -2
  258. package/dist/plugin/provider/snowflake-cortex.js +2 -2
  259. package/dist/plugin/provider/vercel.js +2 -2
  260. package/dist/plugin/provider/vllm.js +69 -73
  261. package/dist/plugin/provider/xai.js +53 -57
  262. package/dist/plugin/provider/zenmux.js +2 -2
  263. package/dist/plugin/provider.js +108 -114
  264. package/dist/plugin/runtime.js +103 -107
  265. package/dist/plugin/sdk.js +49 -53
  266. package/dist/plugin/skill.js +84 -88
  267. package/dist/plugin/supervisor.js +238 -244
  268. package/dist/plugin/variant.js +3 -3
  269. package/dist/plugin/vcs/git.js +52 -56
  270. package/dist/plugin/vcs/hg.js +52 -56
  271. package/dist/plugin/warming.js +70 -74
  272. package/dist/plugin/websearch/index.js +4 -4
  273. package/dist/plugin.js +118 -122
  274. package/dist/project/sql.js +1 -1
  275. package/dist/project.js +50 -54
  276. package/dist/provider.js +1 -1
  277. package/dist/pty/ticket.js +48 -52
  278. package/dist/pty.js +54 -58
  279. package/dist/reference/instructions.js +52 -56
  280. package/dist/reference.js +50 -54
  281. package/dist/ripgrep.js +57 -61
  282. package/dist/session/compaction.js +94 -98
  283. package/dist/session/context.js +242 -248
  284. package/dist/session/execution/restart.js +79 -83
  285. package/dist/session/execution.js +79 -83
  286. package/dist/session/generate-node.js +243 -249
  287. package/dist/session/history.js +50 -54
  288. package/dist/session/inbox.js +50 -54
  289. package/dist/session/info.js +58 -62
  290. package/dist/session/instruction-entry.js +49 -53
  291. package/dist/session/instruction-state.js +2 -2
  292. package/dist/session/instructions.js +62 -66
  293. package/dist/session/model-request.js +91 -95
  294. package/dist/session/model-transport.js +1 -1
  295. package/dist/session/projector.js +57 -61
  296. package/dist/session/revert.js +55 -59
  297. package/dist/session/runner/index.js +59 -63
  298. package/dist/session/runner/llm.js +246 -252
  299. package/dist/session/runner/model.js +59 -63
  300. package/dist/session/runner/retry.js +48 -52
  301. package/dist/session/runner/to-llm-message.js +1 -1
  302. package/dist/session/sql.js +1 -1
  303. package/dist/session/stats.js +47 -51
  304. package/dist/session/store.js +61 -65
  305. package/dist/session/title.js +92 -96
  306. package/dist/session/to-session-error.js +76 -80
  307. package/dist/session/transfer.js +102 -105
  308. package/dist/session.js +105 -109
  309. package/dist/shell/parse.js +3 -3
  310. package/dist/shell/select.js +2 -2
  311. package/dist/shell.js +61 -65
  312. package/dist/skill/instructions.js +67 -71
  313. package/dist/skill.js +68 -70
  314. package/dist/snapshot.js +53 -57
  315. package/dist/tool/mcp.js +82 -86
  316. package/dist/tool/plugin/edit.js +72 -76
  317. package/dist/tool/plugin/glob.js +74 -78
  318. package/dist/tool/plugin/grep.js +74 -78
  319. package/dist/tool/plugin/patch.js +72 -76
  320. package/dist/tool/plugin/question.js +67 -71
  321. package/dist/tool/plugin/read.js +76 -80
  322. package/dist/tool/plugin/shell.js +122 -126
  323. package/dist/tool/plugin/skill.js +67 -71
  324. package/dist/tool/plugin/subagent.js +119 -123
  325. package/dist/tool/plugin/webfetch.js +67 -71
  326. package/dist/tool/plugin/websearch.js +70 -74
  327. package/dist/tool/plugin/write.js +72 -76
  328. package/dist/tool/read-filesystem.js +59 -63
  329. package/dist/tool.js +75 -79
  330. package/dist/types/bus.d.ts +1 -0
  331. package/dist/types/credential.d.ts +156 -1
  332. package/dist/types/database/drizzle/index.d.ts +0 -1
  333. package/dist/types/database/drizzle/sqlite-core/effect/session.d.ts +0 -6
  334. package/dist/types/database/migration.d.ts +2 -2
  335. package/dist/types/integration.d.ts +4 -0
  336. package/dist/types/model.d.ts +3 -0
  337. package/dist/types/session/compaction.d.ts +1 -0
  338. package/dist/types/session/history.d.ts +5 -0
  339. package/dist/types/session/inbox.d.ts +5 -0
  340. package/dist/types/session/transfer.d.ts +2 -0
  341. package/dist/types/skill.d.ts +6 -0
  342. package/dist/types/v1/config/migrate.d.ts +1 -0
  343. package/dist/types/worktree.d.ts +20 -0
  344. package/dist/v1/config/config.js +7 -7
  345. package/dist/v1/config/migrate.js +11 -11
  346. package/dist/vcs.js +53 -57
  347. package/dist/websearch.js +50 -54
  348. package/dist/wellknown/plugin.js +51 -55
  349. package/dist/wellknown.js +50 -54
  350. package/dist/workspace.js +48 -52
  351. package/dist/worktree/sql.js +1 -1
  352. package/dist/worktree.js +52 -56
  353. package/package.json +8 -11
  354. package/dist/chunks/state-4pxf671z.js +0 -97
  355. package/dist/chunks/state-4zg0gww9.js +0 -55
  356. package/dist/chunks/state-f84sxdqn.js +0 -49
  357. package/dist/chunks/state-hsyk7kfz.js +0 -56
  358. package/dist/chunks/state-jssy2dr3.js +0 -18
  359. package/dist/chunks/state-pfqehjmy.js +0 -18
  360. package/dist/chunks/state-qqevkq7v.js +0 -12
  361. package/dist/database/drizzle/effect-sqlite/migrator.js +0 -20
  362. package/dist/database/drizzle/up-migrations/effect-sqlite.js +0 -9
  363. package/dist/database/drizzle/up-migrations/sqlite.js +0 -9
  364. package/dist/database/drizzle/up-migrations/utils.js +0 -9
  365. package/dist/plugin/provider/deepinfra.js +0 -8
  366. package/dist/plugin/provider/togetherai.js +0 -8
  367. package/dist/types/database/drizzle/effect-sqlite/migrator.d.ts +0 -4
  368. package/dist/types/database/drizzle/up-migrations/effect-sqlite.d.ts +0 -8
  369. package/dist/types/database/drizzle/up-migrations/sqlite.d.ts +0 -26
  370. package/dist/types/database/drizzle/up-migrations/utils.d.ts +0 -21
  371. package/dist/types/plugin/provider/deepinfra.d.ts +0 -1
  372. package/dist/types/plugin/provider/togetherai.d.ts +0 -1
  373. package/dist/chunks/{state-wrw92r0k.js → state-6embh6xw.js} +3 -3
  374. package/dist/chunks/{state-p1xvm7za.js → state-a8bn7nwa.js} +3 -3
  375. package/dist/chunks/{state-wvjbjymc.js → state-dnt65mkc.js} +0 -0
  376. package/dist/chunks/{state-shg9btfn.js → state-kfxvy8fx.js} +6 -6
  377. package/dist/chunks/{state-sh61temt.js → state-ky29wa5d.js} +17 -17
  378. package/dist/chunks/{state-rrc4sky2.js → state-qzaqf2fn.js} +3 -3
  379. package/dist/chunks/{state-7fr2g77j.js → state-xd2p33y8.js} +7 -7
  380. package/dist/chunks/{state-46qzmhmr.js → state-zaz2fh21.js} +10 -10
package/dist/tool.js CHANGED
@@ -8,124 +8,120 @@ import {
8
8
  TextContent,
9
9
  exports_tool,
10
10
  node
11
- } from "./chunks/state-e9jfq0e9.js";
12
- import"./chunks/state-57tzwnz4.js";
11
+ } from "./chunks/state-rpqdmjwk.js";
13
12
  import"./chunks/state-5z4zwtb4.js";
13
+ import"./chunks/state-57tzwnz4.js";
14
14
  import"./chunks/state-drean1vx.js";
15
- import"./chunks/state-rmr740y4.js";
16
- import"./chunks/state-tj4jvx23.js";
17
- import"./chunks/state-wrw92r0k.js";
18
- import"./chunks/state-f11jbhcb.js";
15
+ import"./chunks/state-jsm51fhb.js";
16
+ import"./chunks/state-eqzrzvwz.js";
17
+ import"./chunks/state-nesb2rcz.js";
18
+ import"./chunks/state-6m78tbrd.js";
19
+ import"./chunks/state-6embh6xw.js";
19
20
  import"./chunks/state-fb7nfzf2.js";
21
+ import"./chunks/state-f11jbhcb.js";
22
+ import"./chunks/state-4fa10fyv.js";
20
23
  import"./chunks/state-ygy0xbqa.js";
21
24
  import"./chunks/state-8rpfd2h6.js";
22
- import"./chunks/state-3mexq3pq.js";
23
- import"./chunks/state-1g0dcjrg.js";
24
- import"./chunks/state-nesb2rcz.js";
25
25
  import"./chunks/state-y67x6rf6.js";
26
- import"./chunks/state-v2wshkax.js";
27
- import"./chunks/state-gwpydf4a.js";
28
26
  import"./chunks/state-ec8vrfw5.js";
29
- import"./chunks/state-wvjbjymc.js";
30
- import"./chunks/state-en9qv3ee.js";
31
- import"./chunks/state-kg1345f7.js";
27
+ import"./chunks/state-2zjhyv5q.js";
28
+ import"./chunks/state-v2wshkax.js";
32
29
  import"./chunks/state-a83yvq99.js";
33
- import"./chunks/state-eaejza2t.js";
30
+ import"./chunks/state-bjwj8hwv.js";
31
+ import"./chunks/state-3zyjx98r.js";
32
+ import"./chunks/state-hhajr42d.js";
33
+ import"./chunks/state-dnt65mkc.js";
34
+ import"./chunks/state-1eyrk6kn.js";
35
+ import"./chunks/state-kg1345f7.js";
36
+ import"./chunks/state-qhdqjp31.js";
37
+ import"./chunks/state-4m26jex0.js";
34
38
  import"./chunks/state-rahat93a.js";
35
- import"./chunks/state-k3e42drn.js";
36
- import"./chunks/state-te0cypm2.js";
37
- import"./chunks/state-zxe9jjhn.js";
38
- import"./chunks/state-3g8vftxb.js";
39
+ import"./chunks/state-8mcwjqk5.js";
39
40
  import"./chunks/state-yf0knd5z.js";
41
+ import"./chunks/state-3g8vftxb.js";
42
+ import"./chunks/state-zxe9jjhn.js";
40
43
  import"./chunks/state-xczfw7dq.js";
41
- import"./chunks/state-cb46h7pc.js";
44
+ import"./chunks/state-k3e42drn.js";
45
+ import"./chunks/state-9y48xc9h.js";
42
46
  import"./chunks/state-61ek4hj9.js";
43
47
  import"./chunks/state-t14kykx1.js";
44
- import"./chunks/state-efvmw2xw.js";
45
- import"./chunks/state-cqdxefk2.js";
48
+ import"./chunks/state-1jg449r0.js";
49
+ import"./chunks/state-jgvtg6c9.js";
46
50
  import"./chunks/state-wptv627x.js";
47
51
  import"./chunks/state-mh28new4.js";
48
52
  import"./chunks/state-88jbfw8z.js";
49
53
  import"./chunks/state-zbqqnp0n.js";
54
+ import"./chunks/state-sem2g21k.js";
50
55
  import"./chunks/state-se1aqaya.js";
51
56
  import"./chunks/state-j07kk359.js";
52
57
  import"./chunks/state-gd2xppx8.js";
53
- import"./chunks/state-bjwj8hwv.js";
54
- import"./chunks/state-1a3a2s70.js";
55
- import"./chunks/state-qhdqjp31.js";
56
- import"./chunks/state-djkt4gex.js";
57
- import"./chunks/state-sem2g21k.js";
58
- import"./chunks/state-4ce5qhvd.js";
58
+ import"./chunks/state-kxp8ef5p.js";
59
59
  import"./chunks/state-zsf8rs93.js";
60
- import"./chunks/state-0kvmztkf.js";
61
- import"./chunks/state-x07gtesk.js";
60
+ import"./chunks/state-1z63g373.js";
62
61
  import"./chunks/state-ttxf0gsy.js";
63
- import"./chunks/state-rs9n91g6.js";
64
- import"./chunks/state-kdn1ck8k.js";
65
- import"./chunks/state-dhccyx0v.js";
66
- import"./chunks/state-qqevkq7v.js";
67
- import"./chunks/state-78y9e82n.js";
68
- import"./chunks/state-hsyk7kfz.js";
69
- import"./chunks/state-4zg0gww9.js";
70
- import"./chunks/state-f84sxdqn.js";
71
- import"./chunks/state-46qzmhmr.js";
72
- import"./chunks/state-tcptxgyq.js";
73
- import"./chunks/state-wbkt8qpj.js";
62
+ import"./chunks/state-2667yp75.js";
63
+ import"./chunks/state-a4f6ct0f.js";
64
+ import"./chunks/state-5qgmwqxx.js";
65
+ import"./chunks/state-e8nbj9tw.js";
66
+ import"./chunks/state-zaz2fh21.js";
67
+ import"./chunks/state-0f48qthw.js";
74
68
  import"./chunks/state-vcwr2vpf.js";
75
69
  import"./chunks/state-zxcy6vhn.js";
70
+ import"./chunks/state-tcptxgyq.js";
71
+ import"./chunks/state-bxdhjb3y.js";
72
+ import"./chunks/state-wbkt8qpj.js";
76
73
  import"./chunks/state-k8b45nas.js";
77
- import"./chunks/state-0f48qthw.js";
78
74
  import"./chunks/state-s7whb9gt.js";
79
- import"./chunks/state-bxdhjb3y.js";
80
- import"./chunks/state-va5k7fad.js";
81
- import"./chunks/state-qasbckzx.js";
82
- import"./chunks/state-gd5xeqc2.js";
83
- import"./chunks/state-se76j685.js";
75
+ import"./chunks/state-mr28yfk1.js";
76
+ import"./chunks/state-05wd10c5.js";
77
+ import"./chunks/state-v2adqbbe.js";
84
78
  import"./chunks/state-8nn8kqcn.js";
85
- import"./chunks/state-f14r7hfz.js";
86
- import"./chunks/state-wyqjaaa5.js";
87
- import"./chunks/state-nkm1m8dz.js";
88
- import"./chunks/state-qp95y4jb.js";
89
- import"./chunks/state-kyyqvx4s.js";
90
- import"./chunks/state-em6xpscd.js";
91
- import"./chunks/state-ayevdmef.js";
92
- import"./chunks/state-ghwjy7my.js";
79
+ import"./chunks/state-z47nswr2.js";
93
80
  import"./chunks/state-x4q807cx.js";
94
- import"./chunks/state-wwntjmk1.js";
95
- import"./chunks/state-emmqknsm.js";
96
- import"./chunks/state-yrqrg4vp.js";
97
- import"./chunks/state-6yt963b8.js";
98
- import"./chunks/state-47ty4mvs.js";
99
- import"./chunks/state-906y0b6d.js";
100
- import"./chunks/state-2qdx6zz3.js";
101
- import"./chunks/state-ghm4673n.js";
81
+ import"./chunks/state-ma60vzgv.js";
102
82
  import"./chunks/state-tmb1f636.js";
103
- import"./chunks/state-dht5baf0.js";
83
+ import"./chunks/state-b02txbh8.js";
104
84
  import"./chunks/state-6zqxzw0a.js";
105
- import"./chunks/state-v2adqbbe.js";
106
- import"./chunks/state-1fb7bmpf.js";
107
- import"./chunks/state-3w3ybtfd.js";
108
- import"./chunks/state-z47nswr2.js";
85
+ import"./chunks/state-9dct5xhx.js";
86
+ import"./chunks/state-47ty4mvs.js";
87
+ import"./chunks/state-kxy11nzk.js";
88
+ import"./chunks/state-ghwjy7my.js";
89
+ import"./chunks/state-wyqjaaa5.js";
109
90
  import"./chunks/state-f4cp4g4a.js";
110
- import"./chunks/state-b02txbh8.js";
111
91
  import"./chunks/state-nsc0c3zb.js";
92
+ import"./chunks/state-dht5baf0.js";
93
+ import"./chunks/state-em6xpscd.js";
94
+ import"./chunks/state-3w3ybtfd.js";
95
+ import"./chunks/state-faypg4r1.js";
96
+ import"./chunks/state-qp95y4jb.js";
97
+ import"./chunks/state-ayevdmef.js";
98
+ import"./chunks/state-2xb0r1c6.js";
112
99
  import"./chunks/state-9sdtsapf.js";
113
- import"./chunks/state-fgbfdq62.js";
114
- import"./chunks/state-vkvb1sb3.js";
115
- import"./chunks/state-69qrqpw0.js";
100
+ import"./chunks/state-nkm1m8dz.js";
101
+ import"./chunks/state-gd5xeqc2.js";
102
+ import"./chunks/state-1fb7bmpf.js";
103
+ import"./chunks/state-8sj3ajy5.js";
116
104
  import"./chunks/state-5va1yh78.js";
105
+ import"./chunks/state-dhcq6c44.js";
106
+ import"./chunks/state-vkvb1sb3.js";
107
+ import"./chunks/state-fgbfdq62.js";
108
+ import"./chunks/state-f14r7hfz.js";
117
109
  import"./chunks/state-kpdbz7gn.js";
118
- import"./chunks/state-kxy11nzk.js";
110
+ import"./chunks/state-906y0b6d.js";
119
111
  import"./chunks/state-3g3rpp2x.js";
112
+ import"./chunks/state-69qrqpw0.js";
113
+ import"./chunks/state-ghm4673n.js";
120
114
  import"./chunks/state-n3m50c2t.js";
121
- import"./chunks/state-ma60vzgv.js";
122
- import"./chunks/state-8sj3ajy5.js";
123
- import"./chunks/state-dhcq6c44.js";
124
- import"./chunks/state-faypg4r1.js";
125
- import"./chunks/state-qc167nrn.js";
115
+ import"./chunks/state-yrqrg4vp.js";
116
+ import"./chunks/state-emmqknsm.js";
117
+ import"./chunks/state-se76j685.js";
126
118
  import"./chunks/state-cm67rqy2.js";
127
- import"./chunks/state-9dct5xhx.js";
119
+ import"./chunks/state-wwntjmk1.js";
120
+ import"./chunks/state-qc167nrn.js";
121
+ import"./chunks/state-2qdx6zz3.js";
122
+ import"./chunks/state-kyyqvx4s.js";
128
123
  import"./chunks/state-39ktntah.js";
124
+ import"./chunks/state-0kvmztkf.js";
129
125
  import"./chunks/state-rvfvac9x.js";
130
126
  export {
131
127
  node,
@@ -32,6 +32,7 @@ export interface PublishOptions {
32
32
  readonly id?: Event.ID;
33
33
  readonly metadata?: Record<string, unknown>;
34
34
  readonly location?: Location.Ref;
35
+ readonly global?: boolean;
35
36
  /** Local operational projection committed atomically with a new durable event. Not replayed or serialized. */
36
37
  readonly commit?: (seq: number) => Effect.Effect<void>;
37
38
  }
@@ -36,6 +36,159 @@ export declare const Value: Schema.Union<readonly [Schema.Struct<{
36
36
  readonly configuration: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Union<readonly [Schema.String, Schema.Number, Schema.Boolean, Schema.$Array<Schema.String>]>>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Union<readonly [Schema.String, Schema.Number, Schema.Boolean, Schema.$Array<Schema.String>]>>>, never, never>;
37
37
  }>]>;
38
38
  export type Value = Credential.Value;
39
+ export declare const Event: {
40
+ Updated: Schema.Struct<{
41
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
42
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
43
+ };
44
+ readonly created: Schema.Finite;
45
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
46
+ readonly type: Schema.Literal<"credential.updated">;
47
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
48
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
49
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
50
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
51
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
52
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
53
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
54
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
55
+ }>, never, never>;
56
+ }>>>, Schema.optionalKey<Schema.Struct<{
57
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
58
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
59
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
60
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
61
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
62
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
63
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
64
+ }>, never, never>;
65
+ }>>, never, never>;
66
+ readonly data: Schema.Struct<{}>;
67
+ }> & {
68
+ type: "credential.updated";
69
+ durability: "ephemeral";
70
+ durable: undefined;
71
+ data: Schema.Struct<{}>;
72
+ };
73
+ Switched: Schema.Struct<{
74
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
75
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
76
+ };
77
+ readonly created: Schema.Finite;
78
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
79
+ readonly type: Schema.Literal<"credential.switched">;
80
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
81
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
82
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
83
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
84
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
85
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
86
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
87
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
88
+ }>, never, never>;
89
+ }>>>, Schema.optionalKey<Schema.Struct<{
90
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
91
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
92
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
93
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
94
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
95
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
96
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
97
+ }>, never, never>;
98
+ }>>, never, never>;
99
+ readonly data: Schema.Struct<{
100
+ readonly integrationID: Schema.brand<Schema.String, "Integration.ID">;
101
+ readonly credentialID: Schema.NullOr<Schema.brand<Schema.String, "Credential.ID"> & {
102
+ create: () => string & import("effect/Brand").Brand<"Credential.ID">;
103
+ }>;
104
+ }>;
105
+ }> & {
106
+ type: "credential.switched";
107
+ durability: "ephemeral";
108
+ durable: undefined;
109
+ data: Schema.Struct<{
110
+ readonly integrationID: Schema.brand<Schema.String, "Integration.ID">;
111
+ readonly credentialID: Schema.NullOr<Schema.brand<Schema.String, "Credential.ID"> & {
112
+ create: () => string & import("effect/Brand").Brand<"Credential.ID">;
113
+ }>;
114
+ }>;
115
+ };
116
+ Definitions: readonly [Schema.Struct<{
117
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
118
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
119
+ };
120
+ readonly created: Schema.Finite;
121
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
122
+ readonly type: Schema.Literal<"credential.updated">;
123
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
124
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
125
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
126
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
127
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
128
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
129
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
130
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
131
+ }>, never, never>;
132
+ }>>>, Schema.optionalKey<Schema.Struct<{
133
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
134
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
135
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
136
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
137
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
138
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
139
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
140
+ }>, never, never>;
141
+ }>>, never, never>;
142
+ readonly data: Schema.Struct<{}>;
143
+ }> & {
144
+ type: "credential.updated";
145
+ durability: "ephemeral";
146
+ durable: undefined;
147
+ data: Schema.Struct<{}>;
148
+ }, Schema.Struct<{
149
+ readonly id: Schema.brand<Schema.String, "Event.ID"> & {
150
+ create: () => string & import("effect/Brand").Brand<"Event.ID">;
151
+ };
152
+ readonly created: Schema.Finite;
153
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Unknown>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Unknown>>, never, never>;
154
+ readonly type: Schema.Literal<"credential.switched">;
155
+ readonly location: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
156
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
157
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
158
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
159
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
160
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
161
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
162
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
163
+ }>, never, never>;
164
+ }>>>, Schema.optionalKey<Schema.Struct<{
165
+ readonly directory: Schema.brand<Schema.String, "AbsolutePath">;
166
+ readonly workspaceID: Schema.decodeTo<Schema.optional<Schema.toType<Schema.brand<Schema.String, "Workspace.ID"> & {
167
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
168
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
169
+ }>>, Schema.optionalKey<Schema.brand<Schema.String, "Workspace.ID"> & {
170
+ ascending: (id?: string) => string & import("effect/Brand").Brand<"Workspace.ID">;
171
+ create: () => string & import("effect/Brand").Brand<"Workspace.ID">;
172
+ }>, never, never>;
173
+ }>>, never, never>;
174
+ readonly data: Schema.Struct<{
175
+ readonly integrationID: Schema.brand<Schema.String, "Integration.ID">;
176
+ readonly credentialID: Schema.NullOr<Schema.brand<Schema.String, "Credential.ID"> & {
177
+ create: () => string & import("effect/Brand").Brand<"Credential.ID">;
178
+ }>;
179
+ }>;
180
+ }> & {
181
+ type: "credential.switched";
182
+ durability: "ephemeral";
183
+ durable: undefined;
184
+ data: Schema.Struct<{
185
+ readonly integrationID: Schema.brand<Schema.String, "Integration.ID">;
186
+ readonly credentialID: Schema.NullOr<Schema.brand<Schema.String, "Credential.ID"> & {
187
+ create: () => string & import("effect/Brand").Brand<"Credential.ID">;
188
+ }>;
189
+ }>;
190
+ }];
191
+ };
39
192
  declare const Info_base: Schema.Class<Info, Schema.Struct<{
40
193
  readonly id: Schema.brand<Schema.String, "Credential.ID"> & {
41
194
  create: () => string & import("effect/Brand").Brand<"Credential.ID">;
@@ -65,12 +218,14 @@ export interface Interface {
65
218
  readonly list: (integrationID: Integration.ID) => Effect.Effect<Info[]>;
66
219
  /** Returns one stored credential by ID. */
67
220
  readonly get: (id: ID) => Effect.Effect<Info | undefined>;
68
- /** Replaces any credential for an integration and returns the new record. */
221
+ /** Creates a credential for an integration and returns the new record. */
69
222
  readonly create: (input: {
70
223
  readonly integrationID: Integration.ID;
71
224
  readonly value: Value;
72
225
  readonly label?: string;
73
226
  }) => Effect.Effect<Info>;
227
+ /** Selects a stored credential for its integration. */
228
+ readonly activate: (id: ID) => Effect.Effect<void>;
74
229
  /** Updates the label or secret value of a stored credential. */
75
230
  readonly update: (id: ID, updates: Partial<Pick<Info, "label" | "value">>) => Effect.Effect<void>;
76
231
  /** Removes a stored credential. */
@@ -1,5 +1,4 @@
1
1
  export { EffectLogger } from "drizzle-orm/effect-core";
2
2
  export * from "./effect-sqlite/driver.js";
3
3
  export * from "./effect-sqlite/session.js";
4
- export { migrate } from "./effect-sqlite/migrator.js";
5
4
  export * as EffectDrizzleSqlite from "./index.js";
@@ -2,12 +2,10 @@ import * as Effect from "effect/Effect";
2
2
  import type { SqlError } from "effect/unstable/sql/SqlError";
3
3
  import type { EffectCacheShape } from "drizzle-orm/cache/core/cache-effect";
4
4
  import type { WithCacheConfig } from "drizzle-orm/cache/core/types";
5
- import { MigratorInitError } from "drizzle-orm/effect-core/errors";
6
5
  import { EffectTransactionRollbackError } from "drizzle-orm/effect-core/errors";
7
6
  import type { EffectLoggerShape } from "drizzle-orm/effect-core/logger";
8
7
  import type { QueryEffectHKTBase, QueryEffectKind } from "drizzle-orm/effect-core/query-effect";
9
8
  import { entityKind } from "drizzle-orm/entity";
10
- import type { MigrationConfig, MigrationMeta } from "drizzle-orm/migrator";
11
9
  import type { AnyRelations, EmptyRelations, RelationalQueryMapperConfig } from "drizzle-orm/relations";
12
10
  import type { PreparedQuery } from "drizzle-orm/session";
13
11
  import { type Query, type SQL } from "drizzle-orm/sql/sql";
@@ -15,9 +13,6 @@ import type { SQLiteDialect } from "drizzle-orm/sqlite-core/dialect";
15
13
  import type { SelectedFieldsOrdered } from "drizzle-orm/sqlite-core/query-builders/select.types";
16
14
  import type { PreparedQueryConfig, SQLiteExecuteMethod, SQLiteTransactionConfig } from "drizzle-orm/sqlite-core/session";
17
15
  import { SQLiteEffectDatabase } from "./db.js";
18
- type MigrationConfigWithInit = MigrationConfig & {
19
- init?: boolean;
20
- };
21
16
  type SQLiteEffectExecuteMethod = SQLiteExecuteMethod | "values";
22
17
  export declare class SQLiteEffectPreparedQuery<T extends PreparedQueryConfig, TEffectHKT extends QueryEffectHKTBase = QueryEffectHKTBase, TIsRqbV2 extends boolean = false> implements PreparedQuery {
23
18
  private executor;
@@ -84,5 +79,4 @@ export declare abstract class SQLiteEffectTransaction<out TEffectHKT extends Que
84
79
  constructor(dialect: SQLiteDialect, session: SQLiteEffectSession<TEffectHKT, TRunResult, TRelations>, relations: TRelations);
85
80
  rollback(): EffectTransactionRollbackError;
86
81
  }
87
- export declare const migrate: <TEffectHKT extends QueryEffectHKTBase>(migrations: MigrationMeta[], session: SQLiteEffectSession<TEffectHKT, unknown, EmptyRelations>, config: string | MigrationConfigWithInit) => Effect.Effect<undefined, import("drizzle-orm/effect-core").EffectDrizzleError | SqlError | MigratorInitError | TEffectHKT["error"], TEffectHKT["context"]>;
88
82
  export {};
@@ -9,5 +9,5 @@ export type Migration = {
9
9
  foreignKeys?: boolean;
10
10
  up: (tx: Transaction) => Effect.Effect<void, unknown, Global.Service>;
11
11
  };
12
- export declare function apply(db: Database): Effect.Effect<void, unknown, Global.Service>;
13
- export declare function applyOnly(db: Database, input: Migration[]): Effect.Effect<void, unknown, Global.Service>;
12
+ export declare function apply(db: Database): Effect.Effect<undefined, unknown, Global.Service>;
13
+ export declare function applyOnly(db: Database, input: Migration[]): Effect.Effect<undefined, unknown, Global.Service>;
@@ -964,6 +964,7 @@ export type Method = Integration.Method;
964
964
  export declare const Info: Schema.Struct<{
965
965
  readonly id: Schema.brand<Schema.String, "Integration.ID">;
966
966
  readonly name: Schema.String;
967
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Any>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Any>>, never, never>;
967
968
  readonly methods: Schema.$Array<Schema.Union<readonly [Schema.Struct<{
968
969
  readonly id: Schema.brand<Schema.String, "Integration.MethodID">;
969
970
  readonly type: Schema.Literal<"oauth">;
@@ -1561,6 +1562,7 @@ export { Event } from "@opencode-ai/schema/integration";
1561
1562
  export declare const Ref: Schema.Struct<{
1562
1563
  readonly id: Schema.brand<Schema.String, "Integration.ID">;
1563
1564
  readonly name: Schema.String;
1565
+ readonly metadata: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Record<Schema.String, Schema.Any>>>, Schema.optionalKey<Schema.$Record<Schema.String, Schema.Any>>, never, never>;
1564
1566
  }>;
1565
1567
  export type Ref = Integration.Ref;
1566
1568
  export type Draft = {
@@ -1596,6 +1598,8 @@ export interface Interface extends State.Transformable<Draft> {
1596
1598
  /** User-facing label for the stored credential. */
1597
1599
  readonly label?: string;
1598
1600
  }) => Effect.Effect<void, AuthorizationError>;
1601
+ /** Selects a stored credential as the active integration connection. */
1602
+ readonly activate: (credentialID: Credential.ID) => Effect.Effect<void>;
1599
1603
  /** Updates a stored credential exposed as a connection. */
1600
1604
  readonly update: (credentialID: Credential.ID, updates: Partial<Pick<Credential.Info, "label">>) => Effect.Effect<void>;
1601
1605
  /** Removes a stored credential connection. */
@@ -11,6 +11,7 @@ export declare const ReasoningField: import("effect/Schema").Codec<Model.Reasoni
11
11
  export type ReasoningField = Model.ReasoningField;
12
12
  export declare const Compatibility: import("effect/Schema").Struct<{
13
13
  readonly reasoningField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>>, import("effect/Schema").optionalKey<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>, never, never>;
14
+ readonly requireReasoning: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
14
15
  readonly maxTokensField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>>, import("effect/Schema").optionalKey<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>, never, never>;
15
16
  readonly requireFinishReason: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
16
17
  readonly requireAssistantAfterTool: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
@@ -138,11 +139,13 @@ export declare const Info: import("effect/Schema").Struct<{
138
139
  readonly name: import("effect/Schema").String;
139
140
  readonly compatibility: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Struct<{
140
141
  readonly reasoningField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>>, import("effect/Schema").optionalKey<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>, never, never>;
142
+ readonly requireReasoning: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
141
143
  readonly maxTokensField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>>, import("effect/Schema").optionalKey<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>, never, never>;
142
144
  readonly requireFinishReason: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
143
145
  readonly requireAssistantAfterTool: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
144
146
  }>>>, import("effect/Schema").optionalKey<import("effect/Schema").Struct<{
145
147
  readonly reasoningField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>>, import("effect/Schema").optionalKey<import("effect/Schema").Codec<Model.ReasoningField, Model.ReasoningField, never, never>>, never, never>;
148
+ readonly requireReasoning: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
146
149
  readonly maxTokensField: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>>, import("effect/Schema").optionalKey<import("effect/Schema").Literals<readonly ["max_completion_tokens", "max_tokens"]>>, never, never>;
147
150
  readonly requireFinishReason: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
148
151
  readonly requireAssistantAfterTool: import("effect/Schema").decodeTo<import("effect/Schema").optional<import("effect/Schema").toType<import("effect/Schema").Boolean>>, import("effect/Schema").optionalKey<import("effect/Schema").Boolean>, never, never>;
@@ -28,6 +28,7 @@ export type ManualInput = {
28
28
  };
29
29
  export type Outcome = Pick<SessionMessage.CompactionCompleted, "status"> | Pick<SessionMessage.CompactionFailed, "status" | "error">;
30
30
  export interface Interface extends State.Transformable<Draft> {
31
+ readonly enabled: () => boolean;
31
32
  readonly required: (input: RequiredInput) => boolean;
32
33
  readonly compact: (input: AutoInput) => Effect.Effect<Outcome>;
33
34
  readonly compactManual: (input: ManualInput) => Effect.Effect<Outcome>;
@@ -98,6 +98,7 @@ export declare const decodeMessageRow: (row: typeof SessionMessageTable.$inferSe
98
98
  readonly skills?: readonly {
99
99
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
100
100
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
101
+ readonly text?: string | undefined;
101
102
  readonly mention?: {
102
103
  readonly start: number;
103
104
  readonly end: number;
@@ -444,6 +445,7 @@ export declare const load: (db: import("../database/drizzle.js").EffectSQLiteDat
444
445
  readonly skills?: readonly {
445
446
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
446
447
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
448
+ readonly text?: string | undefined;
447
449
  readonly mention?: {
448
450
  readonly start: number;
449
451
  readonly end: number;
@@ -794,6 +796,7 @@ export declare const entriesForRunner: (db: import("../database/drizzle.js").Eff
794
796
  readonly skills?: readonly {
795
797
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
796
798
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
799
+ readonly text?: string | undefined;
797
800
  readonly mention?: {
798
801
  readonly start: number;
799
802
  readonly end: number;
@@ -1144,6 +1147,7 @@ export declare const preview: (db: import("../database/drizzle.js").EffectSQLite
1144
1147
  readonly skills?: readonly {
1145
1148
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
1146
1149
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
1150
+ readonly text?: string | undefined;
1147
1151
  readonly mention?: {
1148
1152
  readonly start: number;
1149
1153
  readonly end: number;
@@ -1440,6 +1444,7 @@ export declare const firstUserMessage: (db: import("../database/drizzle.js").Eff
1440
1444
  readonly skills?: readonly {
1441
1445
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
1442
1446
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
1447
+ readonly text?: string | undefined;
1443
1448
  readonly mention?: {
1444
1449
  readonly start: number;
1445
1450
  readonly end: number;
@@ -61,6 +61,7 @@ export declare const find: (db: import("../database/drizzle.js").EffectSQLiteDat
61
61
  readonly skills?: readonly {
62
62
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
63
63
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
64
+ readonly text?: string | undefined;
64
65
  readonly mention?: {
65
66
  readonly start: number;
66
67
  readonly end: number;
@@ -148,6 +149,7 @@ export declare const admit: (db: import("../database/drizzle.js").EffectSQLiteDa
148
149
  readonly skills?: readonly {
149
150
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
150
151
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
152
+ readonly text?: string | undefined;
151
153
  readonly mention?: {
152
154
  readonly start: number;
153
155
  readonly end: number;
@@ -259,6 +261,7 @@ export declare const projectDelivered: (db: import("../database/drizzle.js").Eff
259
261
  readonly skills?: readonly {
260
262
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
261
263
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
264
+ readonly text?: string | undefined;
262
265
  readonly mention?: {
263
266
  readonly start: number;
264
267
  readonly end: number;
@@ -350,6 +353,7 @@ export declare const list: (db: import("../database/drizzle.js").EffectSQLiteDat
350
353
  readonly skills?: readonly {
351
354
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
352
355
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
356
+ readonly text?: string | undefined;
353
357
  readonly mention?: {
354
358
  readonly start: number;
355
359
  readonly end: number;
@@ -438,6 +442,7 @@ export declare const nextPromotable: (db: import("../database/drizzle.js").Effec
438
442
  readonly skills?: readonly {
439
443
  readonly name: string & import("effect/Brand").Brand<"Skill.Name">;
440
444
  readonly id: string & import("effect/Brand").Brand<"Skill.ID">;
445
+ readonly text?: string | undefined;
441
446
  readonly mention?: {
442
447
  readonly start: number;
443
448
  readonly end: number;
@@ -433,6 +433,7 @@ export declare const Data: Schema.Struct<{
433
433
  readonly skills: Schema.decodeTo<Schema.optional<Schema.toType<Schema.$Array<Schema.Struct<{
434
434
  readonly id: Schema.brand<Schema.String, "Skill.ID">;
435
435
  readonly name: Schema.brand<Schema.String, "Skill.Name">;
436
+ readonly text: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
436
437
  readonly mention: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
437
438
  readonly start: Schema.Finite;
438
439
  readonly end: Schema.Finite;
@@ -445,6 +446,7 @@ export declare const Data: Schema.Struct<{
445
446
  }>>>>, Schema.optionalKey<Schema.$Array<Schema.Struct<{
446
447
  readonly id: Schema.brand<Schema.String, "Skill.ID">;
447
448
  readonly name: Schema.brand<Schema.String, "Skill.Name">;
449
+ readonly text: Schema.decodeTo<Schema.optional<Schema.toType<Schema.String>>, Schema.optionalKey<Schema.String>, never, never>;
448
450
  readonly mention: Schema.decodeTo<Schema.optional<Schema.toType<Schema.Struct<{
449
451
  readonly start: Schema.Finite;
450
452
  readonly end: Schema.Finite;
@@ -1,4 +1,5 @@
1
1
  export * as Skill from "./skill.js";
2
+ import type { FSUtil } from "@opencode-ai/util/fs-util";
2
3
  import { Context, Effect, Types } from "effect";
3
4
  import { Skill } from "@opencode-ai/schema/skill";
4
5
  import { Agent } from "./agent.js";
@@ -65,6 +66,10 @@ export type Name = Skill.Name;
65
66
  export { Event } from "@opencode-ai/schema/skill";
66
67
  export declare const available: (skills: ReadonlyArray<Info>, agent: Agent.Info) => Skill.Info[];
67
68
  export declare const toModelOutput: (skill: Info, files: ReadonlyArray<string>) => string;
69
+ export declare const prepare: (fs: FSUtil.Interface, skill: Skill.Info) => Effect.Effect<{
70
+ directory: string;
71
+ output: string;
72
+ }, FSUtil.Error, never>;
68
73
  export type Data = {
69
74
  skills: Map<ID, Types.DeepMutable<Info>>;
70
75
  };
@@ -75,6 +80,7 @@ export type Draft = {
75
80
  remove: (id: string) => void;
76
81
  };
77
82
  export interface Interface extends State.Transformable<Draft> {
83
+ readonly get: (id: ID) => Effect.Effect<Info | undefined>;
78
84
  readonly list: () => Effect.Effect<Info[]>;
79
85
  }
80
86
  declare const Service_base: Context.ServiceClass<Service, "@opencode/Skill", Interface>;
@@ -158,6 +158,7 @@ export declare function migrate(info: typeof ConfigV1.Info.Type): {
158
158
  readonly family?: string | undefined;
159
159
  readonly compatibility?: {
160
160
  readonly reasoningField?: import("@opencode-ai/schema/model").ReasoningField | undefined;
161
+ readonly requireReasoning?: boolean | undefined;
161
162
  readonly maxTokensField?: "max_completion_tokens" | "max_tokens" | undefined;
162
163
  readonly requireFinishReason?: boolean | undefined;
163
164
  readonly requireAssistantAfterTool?: boolean | undefined;