@code-yeongyu/senpi 2026.7.17 → 2026.7.20

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 (641) hide show
  1. package/CHANGELOG.md +82 -0
  2. package/README.md +5 -2
  3. package/dist/cli/neo/build-argv.d.ts.map +1 -1
  4. package/dist/cli/neo/build-argv.js +2 -0
  5. package/dist/cli/neo/build-argv.js.map +1 -1
  6. package/dist/core/agent-session-services.d.ts.map +1 -1
  7. package/dist/core/agent-session-services.js +11 -4
  8. package/dist/core/agent-session-services.js.map +1 -1
  9. package/dist/core/agent-session.d.ts +5 -0
  10. package/dist/core/agent-session.d.ts.map +1 -1
  11. package/dist/core/agent-session.js +27 -5
  12. package/dist/core/agent-session.js.map +1 -1
  13. package/dist/core/compaction/compaction.d.ts.map +1 -1
  14. package/dist/core/compaction/compaction.js +20 -4
  15. package/dist/core/compaction/compaction.js.map +1 -1
  16. package/dist/core/dynamic-prompt/build.d.ts +7 -0
  17. package/dist/core/dynamic-prompt/build.d.ts.map +1 -1
  18. package/dist/core/dynamic-prompt/build.js +5 -0
  19. package/dist/core/dynamic-prompt/build.js.map +1 -1
  20. package/dist/core/dynamic-prompt/workstation.d.ts +35 -0
  21. package/dist/core/dynamic-prompt/workstation.d.ts.map +1 -0
  22. package/dist/core/dynamic-prompt/workstation.js +81 -0
  23. package/dist/core/dynamic-prompt/workstation.js.map +1 -0
  24. package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
  25. package/dist/core/extensions/builtin/compaction/index.js +46 -4
  26. package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
  27. package/dist/core/extensions/builtin/compaction/repair-tool-pairs.d.ts +1 -0
  28. package/dist/core/extensions/builtin/compaction/repair-tool-pairs.d.ts.map +1 -1
  29. package/dist/core/extensions/builtin/compaction/repair-tool-pairs.js +20 -2
  30. package/dist/core/extensions/builtin/compaction/repair-tool-pairs.js.map +1 -1
  31. package/dist/core/extensions/builtin/compaction/speculative.d.ts +7 -1
  32. package/dist/core/extensions/builtin/compaction/speculative.d.ts.map +1 -1
  33. package/dist/core/extensions/builtin/compaction/speculative.js +29 -11
  34. package/dist/core/extensions/builtin/compaction/speculative.js.map +1 -1
  35. package/dist/core/extensions/builtin/compaction/todo-bridge.d.ts +9 -7
  36. package/dist/core/extensions/builtin/compaction/todo-bridge.d.ts.map +1 -1
  37. package/dist/core/extensions/builtin/compaction/todo-bridge.js +34 -9
  38. package/dist/core/extensions/builtin/compaction/todo-bridge.js.map +1 -1
  39. package/dist/core/extensions/builtin/gpt-apply-patch/constants.d.ts +1 -0
  40. package/dist/core/extensions/builtin/gpt-apply-patch/constants.d.ts.map +1 -1
  41. package/dist/core/extensions/builtin/gpt-apply-patch/constants.js +5 -1
  42. package/dist/core/extensions/builtin/gpt-apply-patch/constants.js.map +1 -1
  43. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts +2 -1
  44. package/dist/core/extensions/builtin/gpt-apply-patch/extension.d.ts.map +1 -1
  45. package/dist/core/extensions/builtin/gpt-apply-patch/extension.js +48 -29
  46. package/dist/core/extensions/builtin/gpt-apply-patch/extension.js.map +1 -1
  47. package/dist/core/extensions/builtin/gpt-apply-patch/index.d.ts +2 -2
  48. package/dist/core/extensions/builtin/gpt-apply-patch/index.d.ts.map +1 -1
  49. package/dist/core/extensions/builtin/gpt-apply-patch/index.js +2 -2
  50. package/dist/core/extensions/builtin/gpt-apply-patch/index.js.map +1 -1
  51. package/dist/core/extensions/builtin/gpt-apply-patch/tool.d.ts +1 -1
  52. package/dist/core/extensions/builtin/gpt-apply-patch/tool.d.ts.map +1 -1
  53. package/dist/core/extensions/builtin/gpt-apply-patch/tool.js +5 -3
  54. package/dist/core/extensions/builtin/gpt-apply-patch/tool.js.map +1 -1
  55. package/dist/core/extensions/builtin/gpt-apply-patch/types.d.ts +7 -6
  56. package/dist/core/extensions/builtin/gpt-apply-patch/types.d.ts.map +1 -1
  57. package/dist/core/extensions/builtin/gpt-apply-patch/types.js.map +1 -1
  58. package/dist/core/extensions/builtin/hooks/matcher.d.ts.map +1 -1
  59. package/dist/core/extensions/builtin/hooks/matcher.js +1 -0
  60. package/dist/core/extensions/builtin/hooks/matcher.js.map +1 -1
  61. package/dist/core/extensions/builtin/index.d.ts.map +1 -1
  62. package/dist/core/extensions/builtin/index.js +2 -0
  63. package/dist/core/extensions/builtin/index.js.map +1 -1
  64. package/dist/core/extensions/builtin/mcp/config-schema.d.ts +8 -1
  65. package/dist/core/extensions/builtin/mcp/config-schema.d.ts.map +1 -1
  66. package/dist/core/extensions/builtin/mcp/config-schema.js +23 -0
  67. package/dist/core/extensions/builtin/mcp/config-schema.js.map +1 -1
  68. package/dist/core/extensions/builtin/mcp/config.d.ts +13 -0
  69. package/dist/core/extensions/builtin/mcp/config.d.ts.map +1 -1
  70. package/dist/core/extensions/builtin/mcp/config.js +36 -0
  71. package/dist/core/extensions/builtin/mcp/config.js.map +1 -1
  72. package/dist/core/extensions/builtin/mcp/expose/native-search.d.ts +1 -1
  73. package/dist/core/extensions/builtin/mcp/expose/native-search.d.ts.map +1 -1
  74. package/dist/core/extensions/builtin/mcp/expose/native-search.js +1 -1
  75. package/dist/core/extensions/builtin/mcp/expose/native-search.js.map +1 -1
  76. package/dist/core/extensions/builtin/mcp/expose/policy.js +1 -1
  77. package/dist/core/extensions/builtin/mcp/expose/policy.js.map +1 -1
  78. package/dist/core/extensions/builtin/mcp/expose/status.js +1 -1
  79. package/dist/core/extensions/builtin/mcp/expose/status.js.map +1 -1
  80. package/dist/core/extensions/builtin/mcp/expose/tier-b.d.ts +3 -3
  81. package/dist/core/extensions/builtin/mcp/expose/tier-b.d.ts.map +1 -1
  82. package/dist/core/extensions/builtin/mcp/expose/tier-b.js +10 -10
  83. package/dist/core/extensions/builtin/mcp/expose/tier-b.js.map +1 -1
  84. package/dist/core/extensions/builtin/mcp/expose/tool-search.d.ts +3 -3
  85. package/dist/core/extensions/builtin/mcp/expose/tool-search.d.ts.map +1 -1
  86. package/dist/core/extensions/builtin/mcp/expose/tool-search.js +14 -14
  87. package/dist/core/extensions/builtin/mcp/expose/tool-search.js.map +1 -1
  88. package/dist/core/extensions/builtin/mcp/index.js +5 -5
  89. package/dist/core/extensions/builtin/mcp/index.js.map +1 -1
  90. package/dist/core/extensions/builtin/mcp/service-snapshot.d.ts.map +1 -1
  91. package/dist/core/extensions/builtin/mcp/service-snapshot.js +1 -0
  92. package/dist/core/extensions/builtin/mcp/service-snapshot.js.map +1 -1
  93. package/dist/core/extensions/builtin/mcp/service-types.d.ts +12 -0
  94. package/dist/core/extensions/builtin/mcp/service-types.d.ts.map +1 -1
  95. package/dist/core/extensions/builtin/mcp/service-types.js.map +1 -1
  96. package/dist/core/extensions/builtin/mcp/service.d.ts +2 -2
  97. package/dist/core/extensions/builtin/mcp/service.d.ts.map +1 -1
  98. package/dist/core/extensions/builtin/mcp/service.js +4 -3
  99. package/dist/core/extensions/builtin/mcp/service.js.map +1 -1
  100. package/dist/core/extensions/builtin/mcp/status.js +1 -0
  101. package/dist/core/extensions/builtin/mcp/status.js.map +1 -1
  102. package/dist/core/extensions/builtin/prompt-preset/claude-fable-5.d.ts.map +1 -1
  103. package/dist/core/extensions/builtin/prompt-preset/claude-fable-5.js +5 -1
  104. package/dist/core/extensions/builtin/prompt-preset/claude-fable-5.js.map +1 -1
  105. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.d.ts.map +1 -1
  106. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.js +5 -1
  107. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-5.js.map +1 -1
  108. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.d.ts.map +1 -1
  109. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.js +5 -1
  110. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-6.js.map +1 -1
  111. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.d.ts.map +1 -1
  112. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.js +5 -1
  113. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-7.js.map +1 -1
  114. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-8.d.ts.map +1 -1
  115. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-8.js +5 -1
  116. package/dist/core/extensions/builtin/prompt-preset/claude-opus-4-8.js.map +1 -1
  117. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.js +2 -2
  118. package/dist/core/extensions/builtin/prompt-preset/glm-5-2.js.map +1 -1
  119. package/dist/core/extensions/builtin/prompt-preset/gpt-5.2.js +1 -1
  120. package/dist/core/extensions/builtin/prompt-preset/gpt-5.2.js.map +1 -1
  121. package/dist/core/extensions/builtin/prompt-preset/gpt-5.3-codex.js +1 -1
  122. package/dist/core/extensions/builtin/prompt-preset/gpt-5.3-codex.js.map +1 -1
  123. package/dist/core/extensions/builtin/prompt-preset/gpt-5.4.js +1 -1
  124. package/dist/core/extensions/builtin/prompt-preset/gpt-5.4.js.map +1 -1
  125. package/dist/core/extensions/builtin/prompt-preset/gpt-5.5.js +3 -3
  126. package/dist/core/extensions/builtin/prompt-preset/gpt-5.5.js.map +1 -1
  127. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js +3 -3
  128. package/dist/core/extensions/builtin/prompt-preset/gpt-5.6.js.map +1 -1
  129. package/dist/core/extensions/builtin/prompt-preset/gpt-5.js +1 -1
  130. package/dist/core/extensions/builtin/prompt-preset/gpt-5.js.map +1 -1
  131. package/dist/core/extensions/builtin/prompt-preset/grok-4.5.d.ts +3 -0
  132. package/dist/core/extensions/builtin/prompt-preset/grok-4.5.d.ts.map +1 -0
  133. package/dist/core/extensions/builtin/prompt-preset/grok-4.5.js +80 -0
  134. package/dist/core/extensions/builtin/prompt-preset/grok-4.5.js.map +1 -0
  135. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-6.js +1 -1
  136. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-6.js.map +1 -1
  137. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-7.js +1 -1
  138. package/dist/core/extensions/builtin/prompt-preset/kimi-k2-7.js.map +1 -1
  139. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.d.ts.map +1 -1
  140. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.js +5 -7
  141. package/dist/core/extensions/builtin/prompt-preset/kimi-k3.js.map +1 -1
  142. package/dist/core/extensions/builtin/prompt-preset/presets.d.ts.map +1 -1
  143. package/dist/core/extensions/builtin/prompt-preset/presets.js +14 -0
  144. package/dist/core/extensions/builtin/prompt-preset/presets.js.map +1 -1
  145. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts +1 -1
  146. package/dist/core/extensions/builtin/prompt-preset/settings.d.ts.map +1 -1
  147. package/dist/core/extensions/builtin/prompt-preset/settings.js +1 -0
  148. package/dist/core/extensions/builtin/prompt-preset/settings.js.map +1 -1
  149. package/dist/core/extensions/builtin/terminal/shared.d.ts +7 -0
  150. package/dist/core/extensions/builtin/terminal/shared.d.ts.map +1 -1
  151. package/dist/core/extensions/builtin/terminal/shared.js +7 -0
  152. package/dist/core/extensions/builtin/terminal/shared.js.map +1 -1
  153. package/dist/core/extensions/builtin/terminal/tools/bash.d.ts.map +1 -1
  154. package/dist/core/extensions/builtin/terminal/tools/bash.js +68 -6
  155. package/dist/core/extensions/builtin/terminal/tools/bash.js.map +1 -1
  156. package/dist/core/extensions/builtin/todotools/commands.d.ts +18 -0
  157. package/dist/core/extensions/builtin/todotools/commands.d.ts.map +1 -0
  158. package/dist/core/extensions/builtin/todotools/commands.js +395 -0
  159. package/dist/core/extensions/builtin/todotools/commands.js.map +1 -0
  160. package/dist/core/extensions/builtin/todotools/index.d.ts +4 -1
  161. package/dist/core/extensions/builtin/todotools/index.d.ts.map +1 -1
  162. package/dist/core/extensions/builtin/todotools/index.js +17 -14
  163. package/dist/core/extensions/builtin/todotools/index.js.map +1 -1
  164. package/dist/core/extensions/builtin/todotools/markdown.d.ts +13 -0
  165. package/dist/core/extensions/builtin/todotools/markdown.d.ts.map +1 -0
  166. package/dist/core/extensions/builtin/todotools/markdown.js +82 -0
  167. package/dist/core/extensions/builtin/todotools/markdown.js.map +1 -0
  168. package/dist/core/extensions/builtin/todotools/prompt.d.ts +2 -1
  169. package/dist/core/extensions/builtin/todotools/prompt.d.ts.map +1 -1
  170. package/dist/core/extensions/builtin/todotools/prompt.js +50 -153
  171. package/dist/core/extensions/builtin/todotools/prompt.js.map +1 -1
  172. package/dist/core/extensions/builtin/todotools/state.d.ts +67 -14
  173. package/dist/core/extensions/builtin/todotools/state.d.ts.map +1 -1
  174. package/dist/core/extensions/builtin/todotools/state.js +400 -35
  175. package/dist/core/extensions/builtin/todotools/state.js.map +1 -1
  176. package/dist/core/extensions/builtin/todotools/tools/todo.d.ts +22 -0
  177. package/dist/core/extensions/builtin/todotools/tools/todo.d.ts.map +1 -0
  178. package/dist/core/extensions/builtin/todotools/tools/todo.js +229 -0
  179. package/dist/core/extensions/builtin/todotools/tools/todo.js.map +1 -0
  180. package/dist/core/extensions/builtin/video-in/index.d.ts +3 -0
  181. package/dist/core/extensions/builtin/video-in/index.d.ts.map +1 -0
  182. package/dist/core/extensions/builtin/video-in/index.js +111 -0
  183. package/dist/core/extensions/builtin/video-in/index.js.map +1 -0
  184. package/dist/core/extensions/builtin/websearch/index.d.ts.map +1 -1
  185. package/dist/core/extensions/builtin/websearch/index.js +20 -3
  186. package/dist/core/extensions/builtin/websearch/index.js.map +1 -1
  187. package/dist/core/extensions/index.d.ts +1 -0
  188. package/dist/core/extensions/index.d.ts.map +1 -1
  189. package/dist/core/extensions/index.js.map +1 -1
  190. package/dist/core/extensions/loader.d.ts +10 -1
  191. package/dist/core/extensions/loader.d.ts.map +1 -1
  192. package/dist/core/extensions/loader.js +64 -7
  193. package/dist/core/extensions/loader.js.map +1 -1
  194. package/dist/core/extensions/runner.d.ts +5 -2
  195. package/dist/core/extensions/runner.d.ts.map +1 -1
  196. package/dist/core/extensions/runner.js +49 -8
  197. package/dist/core/extensions/runner.js.map +1 -1
  198. package/dist/core/extensions/types.d.ts +49 -8
  199. package/dist/core/extensions/types.d.ts.map +1 -1
  200. package/dist/core/extensions/types.js.map +1 -1
  201. package/dist/core/model-registry.d.ts +5 -1
  202. package/dist/core/model-registry.d.ts.map +1 -1
  203. package/dist/core/model-registry.js +17 -2
  204. package/dist/core/model-registry.js.map +1 -1
  205. package/dist/core/model-runtime.d.ts +12 -1
  206. package/dist/core/model-runtime.d.ts.map +1 -1
  207. package/dist/core/model-runtime.js +51 -9
  208. package/dist/core/model-runtime.js.map +1 -1
  209. package/dist/core/prompt-templates.d.ts +1 -0
  210. package/dist/core/prompt-templates.d.ts.map +1 -1
  211. package/dist/core/prompt-templates.js +4 -4
  212. package/dist/core/prompt-templates.js.map +1 -1
  213. package/dist/core/provider-composer.d.ts +1 -1
  214. package/dist/core/provider-composer.d.ts.map +1 -1
  215. package/dist/core/provider-composer.js +8 -1
  216. package/dist/core/provider-composer.js.map +1 -1
  217. package/dist/core/remote-catalog-provider.d.ts.map +1 -1
  218. package/dist/core/remote-catalog-provider.js +16 -3
  219. package/dist/core/remote-catalog-provider.js.map +1 -1
  220. package/dist/core/resource-loader.d.ts +6 -0
  221. package/dist/core/resource-loader.d.ts.map +1 -1
  222. package/dist/core/resource-loader.js +27 -2
  223. package/dist/core/resource-loader.js.map +1 -1
  224. package/dist/core/settings-manager.d.ts +6 -0
  225. package/dist/core/settings-manager.d.ts.map +1 -1
  226. package/dist/core/settings-manager.js +20 -0
  227. package/dist/core/settings-manager.js.map +1 -1
  228. package/dist/core/tools/bash.d.ts.map +1 -1
  229. package/dist/core/tools/bash.js +20 -5
  230. package/dist/core/tools/bash.js.map +1 -1
  231. package/dist/core/tools/read.js +1 -1
  232. package/dist/core/tools/read.js.map +1 -1
  233. package/dist/extensions/index.d.ts +3 -0
  234. package/dist/extensions/index.d.ts.map +1 -0
  235. package/dist/extensions/index.js +3 -0
  236. package/dist/extensions/index.js.map +1 -0
  237. package/dist/extensions/llama/client.d.ts +61 -0
  238. package/dist/extensions/llama/client.d.ts.map +1 -0
  239. package/dist/extensions/llama/client.js +298 -0
  240. package/dist/extensions/llama/client.js.map +1 -0
  241. package/dist/extensions/llama/huggingface.d.ts +23 -0
  242. package/dist/extensions/llama/huggingface.d.ts.map +1 -0
  243. package/dist/extensions/llama/huggingface.js +139 -0
  244. package/dist/extensions/llama/huggingface.js.map +1 -0
  245. package/dist/extensions/llama/index.d.ts +3 -0
  246. package/dist/extensions/llama/index.d.ts.map +1 -0
  247. package/dist/extensions/llama/index.js +208 -0
  248. package/dist/extensions/llama/index.js.map +1 -0
  249. package/dist/extensions/llama/provider.d.ts +10 -0
  250. package/dist/extensions/llama/provider.d.ts.map +1 -0
  251. package/dist/extensions/llama/provider.js +106 -0
  252. package/dist/extensions/llama/provider.js.map +1 -0
  253. package/dist/extensions/llama/ui.d.ts +42 -0
  254. package/dist/extensions/llama/ui.d.ts.map +1 -0
  255. package/dist/extensions/llama/ui.js +400 -0
  256. package/dist/extensions/llama/ui.js.map +1 -0
  257. package/dist/index.d.ts +2 -2
  258. package/dist/index.d.ts.map +1 -1
  259. package/dist/index.js.map +1 -1
  260. package/dist/main.d.ts.map +1 -1
  261. package/dist/main.js +6 -4
  262. package/dist/main.js.map +1 -1
  263. package/dist/modes/interactive/components/assistant-message.d.ts +6 -7
  264. package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
  265. package/dist/modes/interactive/components/assistant-message.js +154 -114
  266. package/dist/modes/interactive/components/assistant-message.js.map +1 -1
  267. package/dist/modes/interactive/components/footer.d.ts.map +1 -1
  268. package/dist/modes/interactive/components/footer.js +4 -2
  269. package/dist/modes/interactive/components/footer.js.map +1 -1
  270. package/dist/modes/interactive/components/settings-selector.d.ts +4 -0
  271. package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
  272. package/dist/modes/interactive/components/settings-selector.js +20 -0
  273. package/dist/modes/interactive/components/settings-selector.js.map +1 -1
  274. package/dist/modes/interactive/interactive-mode.d.ts +3 -0
  275. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  276. package/dist/modes/interactive/interactive-mode.js +87 -10
  277. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  278. package/dist/modes/interactive/streaming-reveal.d.ts +35 -0
  279. package/dist/modes/interactive/streaming-reveal.d.ts.map +1 -0
  280. package/dist/modes/interactive/streaming-reveal.js +268 -0
  281. package/dist/modes/interactive/streaming-reveal.js.map +1 -0
  282. package/dist/modes/interactive/tool-args-reveal.d.ts +20 -0
  283. package/dist/modes/interactive/tool-args-reveal.d.ts.map +1 -0
  284. package/dist/modes/interactive/tool-args-reveal.js +153 -0
  285. package/dist/modes/interactive/tool-args-reveal.js.map +1 -0
  286. package/dist/utils/child-process.d.ts +17 -1
  287. package/dist/utils/child-process.d.ts.map +1 -1
  288. package/dist/utils/child-process.js +41 -1
  289. package/dist/utils/child-process.js.map +1 -1
  290. package/docs/AGENTS.md +70 -0
  291. package/docs/custom-provider.md +28 -0
  292. package/docs/extensions.md +83 -5
  293. package/docs/index.md +1 -0
  294. package/docs/llama-cpp.md +99 -0
  295. package/docs/mcp.md +21 -5
  296. package/docs/neo.md +2 -1
  297. package/docs/prompt-templates.md +1 -0
  298. package/docs/providers.md +7 -0
  299. package/docs/tui.md +41 -26
  300. package/docs/usage.md +1 -0
  301. package/examples/AGENTS.md +3 -0
  302. package/examples/extensions/README.md +1 -1
  303. package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +62 -0
  304. package/node_modules/@code-yeongyu/senpi-codemode/package.json +3 -3
  305. package/node_modules/@code-yeongyu/senpi-codemode/src/index.ts +59 -19
  306. package/node_modules/@code-yeongyu/senpi-codemode/src/kernels/py/prelude.py +0 -1
  307. package/node_modules/@code-yeongyu/senpi-codemode/src/prompt/eval-prompt.ts +69 -2
  308. package/node_modules/@code-yeongyu/senpi-codemode/src/tool/eval-tool.ts +6 -0
  309. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  310. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +19 -4
  311. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  312. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts +3 -1
  313. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.d.ts.map +1 -1
  314. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js +4 -2
  315. package/node_modules/@earendil-works/pi-agent-core/dist/proxy.js.map +1 -1
  316. package/node_modules/@earendil-works/pi-agent-core/package.json +2 -2
  317. package/node_modules/@earendil-works/pi-ai/README.md +1 -1
  318. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.d.ts.map +1 -1
  319. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +24 -4
  320. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js.map +1 -1
  321. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts +2 -1
  322. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.d.ts.map +1 -1
  323. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +25 -1
  324. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js.map +1 -1
  325. package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.d.ts.map +1 -1
  326. package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.js +43 -9
  327. package/node_modules/@earendil-works/pi-ai/dist/api/transform-messages.js.map +1 -1
  328. package/node_modules/@earendil-works/pi-ai/dist/compat.d.ts +1 -0
  329. package/node_modules/@earendil-works/pi-ai/dist/compat.d.ts.map +1 -1
  330. package/node_modules/@earendil-works/pi-ai/dist/compat.js +1 -0
  331. package/node_modules/@earendil-works/pi-ai/dist/compat.js.map +1 -1
  332. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts +15 -0
  333. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.d.ts.map +1 -1
  334. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +15 -0
  335. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js.map +1 -1
  336. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts +4267 -22314
  337. package/node_modules/@earendil-works/pi-ai/dist/models.generated.d.ts.map +1 -1
  338. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.d.ts +436 -1988
  339. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.d.ts.map +1 -1
  340. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.js +2 -1892
  341. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.js.map +1 -1
  342. package/node_modules/@earendil-works/pi-ai/dist/providers/ant-ling.models.d.ts +10 -80
  343. package/node_modules/@earendil-works/pi-ai/dist/providers/ant-ling.models.d.ts.map +1 -1
  344. package/node_modules/@earendil-works/pi-ai/dist/providers/ant-ling.models.js +2 -57
  345. package/node_modules/@earendil-works/pi-ai/dist/providers/ant-ling.models.js.map +1 -1
  346. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.d.ts +43 -267
  347. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.d.ts.map +1 -1
  348. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.js +2 -252
  349. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.js.map +1 -1
  350. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.d.ts +184 -883
  351. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.d.ts.map +1 -1
  352. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.js +2 -811
  353. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.js.map +1 -1
  354. package/node_modules/@earendil-works/pi-ai/dist/providers/cerebras.models.d.ts +10 -60
  355. package/node_modules/@earendil-works/pi-ai/dist/providers/cerebras.models.d.ts.map +1 -1
  356. package/node_modules/@earendil-works/pi-ai/dist/providers/cerebras.models.js +2 -56
  357. package/node_modules/@earendil-works/pi-ai/dist/providers/cerebras.models.js.map +1 -1
  358. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.d.ts +168 -884
  359. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.d.ts.map +1 -1
  360. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.js +2 -755
  361. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.js.map +1 -1
  362. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-workers-ai.models.d.ts +40 -286
  363. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-workers-ai.models.d.ts.map +1 -1
  364. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-workers-ai.models.js +2 -236
  365. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-workers-ai.models.js.map +1 -1
  366. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -0
  367. package/node_modules/@earendil-works/pi-ai/dist/providers/data/ant-ling.json +1 -0
  368. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -0
  369. package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -0
  370. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cerebras.json +1 -0
  371. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -0
  372. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -0
  373. package/node_modules/@earendil-works/pi-ai/dist/providers/data/deepseek.json +1 -0
  374. package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -0
  375. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -0
  376. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google-vertex.json +1 -0
  377. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google.json +1 -0
  378. package/node_modules/@earendil-works/pi-ai/dist/providers/data/groq.json +1 -0
  379. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -0
  380. package/node_modules/@earendil-works/pi-ai/dist/providers/data/kimi-coding.json +1 -0
  381. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax-cn.json +1 -0
  382. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax.json +1 -0
  383. package/node_modules/@earendil-works/pi-ai/dist/providers/data/mistral.json +1 -0
  384. package/node_modules/@earendil-works/pi-ai/dist/providers/data/moonshotai-cn.json +1 -0
  385. package/node_modules/@earendil-works/pi-ai/dist/providers/data/moonshotai.json +1 -0
  386. package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -0
  387. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -0
  388. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -0
  389. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -0
  390. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -0
  391. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -0
  392. package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -0
  393. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -0
  394. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -0
  395. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -0
  396. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -0
  397. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -0
  398. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -0
  399. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -0
  400. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -0
  401. package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.d.ts +7 -58
  402. package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.d.ts.map +1 -1
  403. package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.js +2 -40
  404. package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.js.map +1 -1
  405. package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.d.ts +49 -362
  406. package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.d.ts.map +1 -1
  407. package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.js +2 -292
  408. package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.js.map +1 -1
  409. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts +85 -760
  410. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.d.ts.map +1 -1
  411. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js +2 -538
  412. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js.map +1 -1
  413. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.models.d.ts +31 -189
  414. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.models.d.ts.map +1 -1
  415. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.models.js +2 -179
  416. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.models.js.map +1 -1
  417. package/node_modules/@earendil-works/pi-ai/dist/providers/google.models.d.ts +49 -309
  418. package/node_modules/@earendil-works/pi-ai/dist/providers/google.models.d.ts.map +1 -1
  419. package/node_modules/@earendil-works/pi-ai/dist/providers/google.models.js +2 -285
  420. package/node_modules/@earendil-works/pi-ai/dist/providers/google.models.js.map +1 -1
  421. package/node_modules/@earendil-works/pi-ai/dist/providers/groq.models.d.ts +22 -118
  422. package/node_modules/@earendil-works/pi-ai/dist/providers/groq.models.d.ts.map +1 -1
  423. package/node_modules/@earendil-works/pi-ai/dist/providers/groq.models.js +2 -122
  424. package/node_modules/@earendil-works/pi-ai/dist/providers/groq.models.js.map +1 -1
  425. package/node_modules/@earendil-works/pi-ai/dist/providers/huggingface.models.d.ts +196 -979
  426. package/node_modules/@earendil-works/pi-ai/dist/providers/huggingface.models.d.ts.map +1 -1
  427. package/node_modules/@earendil-works/pi-ai/dist/providers/huggingface.models.js +2 -884
  428. package/node_modules/@earendil-works/pi-ai/dist/providers/huggingface.models.js.map +1 -1
  429. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.models.d.ts +16 -121
  430. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.models.d.ts.map +1 -1
  431. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.models.js +2 -98
  432. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.models.js.map +1 -1
  433. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax-cn.models.d.ts +10 -48
  434. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax-cn.models.d.ts.map +1 -1
  435. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax-cn.models.js +2 -53
  436. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax-cn.models.js.map +1 -1
  437. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax.models.d.ts +10 -48
  438. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax.models.d.ts.map +1 -1
  439. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax.models.js +2 -53
  440. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax.models.js.map +1 -1
  441. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.models.d.ts +91 -480
  442. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.models.d.ts.map +1 -1
  443. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.models.js +2 -512
  444. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.models.js.map +1 -1
  445. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai-cn.models.d.ts +31 -257
  446. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai-cn.models.d.ts.map +1 -1
  447. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai-cn.models.js +2 -185
  448. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai-cn.models.js.map +1 -1
  449. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai.models.d.ts +31 -257
  450. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai.models.d.ts.map +1 -1
  451. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai.models.js +2 -185
  452. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai.models.js.map +1 -1
  453. package/node_modules/@earendil-works/pi-ai/dist/providers/nvidia.models.d.ts +58 -541
  454. package/node_modules/@earendil-works/pi-ai/dist/providers/nvidia.models.d.ts.map +1 -1
  455. package/node_modules/@earendil-works/pi-ai/dist/providers/nvidia.models.js +2 -382
  456. package/node_modules/@earendil-works/pi-ai/dist/providers/nvidia.models.js.map +1 -1
  457. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.d.ts +22 -196
  458. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.d.ts.map +1 -1
  459. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.js +2 -139
  460. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.js.map +1 -1
  461. package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.d.ts +184 -954
  462. package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.d.ts.map +1 -1
  463. package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.js +2 -825
  464. package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.js.map +1 -1
  465. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.d.ts +1 -1
  466. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.d.ts.map +1 -1
  467. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.js +2 -0
  468. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.js.map +1 -1
  469. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.d.ts +46 -335
  470. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.d.ts.map +1 -1
  471. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.js +2 -273
  472. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.js.map +1 -1
  473. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts +163 -1185
  474. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.d.ts.map +1 -1
  475. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js +2 -996
  476. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js.map +1 -1
  477. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.d.ts +1076 -5750
  478. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.d.ts.map +1 -1
  479. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js +2 -4910
  480. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js.map +1 -1
  481. package/node_modules/@earendil-works/pi-ai/dist/providers/together.models.d.ts +49 -579
  482. package/node_modules/@earendil-works/pi-ai/dist/providers/together.models.d.ts.map +1 -1
  483. package/node_modules/@earendil-works/pi-ai/dist/providers/together.models.js +2 -377
  484. package/node_modules/@earendil-works/pi-ai/dist/providers/together.models.js.map +1 -1
  485. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.d.ts +752 -3336
  486. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.d.ts.map +1 -1
  487. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js +2 -3263
  488. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js.map +1 -1
  489. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.models.d.ts +10 -65
  490. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.models.d.ts.map +1 -1
  491. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.models.js +2 -57
  492. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.models.js.map +1 -1
  493. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-ams.models.d.ts +10 -63
  494. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-ams.models.d.ts.map +1 -1
  495. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-ams.models.js +2 -56
  496. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-ams.models.js.map +1 -1
  497. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-cn.models.d.ts +10 -63
  498. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-cn.models.d.ts.map +1 -1
  499. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-cn.models.js +2 -56
  500. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-cn.models.js.map +1 -1
  501. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-sgp.models.d.ts +10 -63
  502. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-sgp.models.d.ts.map +1 -1
  503. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-sgp.models.js +2 -56
  504. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-sgp.models.js.map +1 -1
  505. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi.models.d.ts +19 -126
  506. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi.models.d.ts.map +1 -1
  507. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi.models.js +2 -110
  508. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi.models.js.map +1 -1
  509. package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.d.ts +19 -144
  510. package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.d.ts.map +1 -1
  511. package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.js +2 -111
  512. package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.js.map +1 -1
  513. package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.d.ts +19 -144
  514. package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.d.ts.map +1 -1
  515. package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.js +2 -111
  516. package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.js.map +1 -1
  517. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.d.ts.map +1 -1
  518. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.js +12 -0
  519. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/context-transformer.js.map +1 -1
  520. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts +1 -1
  521. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts.map +1 -1
  522. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js +4 -2
  523. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js.map +1 -1
  524. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.d.ts +1 -0
  525. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.d.ts.map +1 -1
  526. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.js +1 -1
  527. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/coerce-parameters.js.map +1 -1
  528. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.d.ts +1 -0
  529. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.d.ts.map +1 -1
  530. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.js +1 -1
  531. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/format.js.map +1 -1
  532. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-protocol.d.ts +19 -0
  533. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-protocol.d.ts.map +1 -0
  534. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-protocol.js +8 -0
  535. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-protocol.js.map +1 -0
  536. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.d.ts +11 -0
  537. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.d.ts.map +1 -1
  538. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.js +40 -1
  539. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/invoke-tag-scanner.js.map +1 -1
  540. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.d.ts +2 -0
  541. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.d.ts.map +1 -1
  542. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.js +7 -4
  543. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/parse.js.map +1 -1
  544. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.d.ts +2 -0
  545. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.d.ts.map +1 -1
  546. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.js +104 -15
  547. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/anthropic-xml/stream.js.map +1 -1
  548. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/coerce-parameters.d.ts +15 -0
  549. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/coerce-parameters.d.ts.map +1 -0
  550. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/coerce-parameters.js +198 -0
  551. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/coerce-parameters.js.map +1 -0
  552. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/config.d.ts +3 -0
  553. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/config.d.ts.map +1 -0
  554. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/config.js +8 -0
  555. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/config.js.map +1 -0
  556. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/format.d.ts +6 -0
  557. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/format.d.ts.map +1 -0
  558. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/format.js +33 -0
  559. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/format.js.map +1 -0
  560. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/index.d.ts +6 -0
  561. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/index.d.ts.map +1 -0
  562. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/index.js +6 -0
  563. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/index.js.map +1 -0
  564. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/parse.d.ts +4 -0
  565. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/parse.d.ts.map +1 -0
  566. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/parse.js +6 -0
  567. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/parse.js.map +1 -0
  568. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/repair.d.ts +12 -0
  569. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/repair.d.ts.map +1 -0
  570. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/repair.js +46 -0
  571. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/repair.js.map +1 -0
  572. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/stream.d.ts +4 -0
  573. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/stream.d.ts.map +1 -0
  574. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/stream.js +6 -0
  575. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/antml/stream.js.map +1 -0
  576. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/gemma4.d.ts +8 -1
  577. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/gemma4.d.ts.map +1 -1
  578. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/gemma4.js +129 -27
  579. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/gemma4.js.map +1 -1
  580. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/json-mix.d.ts.map +1 -1
  581. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/json-mix.js +140 -6
  582. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/json-mix.js.map +1 -1
  583. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/morph-xml.d.ts.map +1 -1
  584. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/morph-xml.js +28 -6
  585. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/morph-xml.js.map +1 -1
  586. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/yaml-xml.d.ts.map +1 -1
  587. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/yaml-xml.js +51 -18
  588. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/protocols/yaml-xml.js.map +1 -1
  589. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/stream-wrapper.d.ts.map +1 -1
  590. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/stream-wrapper.js +70 -9
  591. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/stream-wrapper.js.map +1 -1
  592. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.d.ts +6 -2
  593. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.d.ts.map +1 -1
  594. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/types.js.map +1 -1
  595. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts +16 -3
  596. package/node_modules/@earendil-works/pi-ai/dist/types.d.ts.map +1 -1
  597. package/node_modules/@earendil-works/pi-ai/dist/types.js +4 -1
  598. package/node_modules/@earendil-works/pi-ai/dist/types.js.map +1 -1
  599. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.d.ts.map +1 -1
  600. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.js +1 -0
  601. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.js.map +1 -1
  602. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-pair-repair.d.ts.map +1 -1
  603. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-pair-repair.js +19 -2
  604. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-pair-repair.js.map +1 -1
  605. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-schema-compat.d.ts +19 -0
  606. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-schema-compat.d.ts.map +1 -0
  607. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-schema-compat.js +215 -0
  608. package/node_modules/@earendil-works/pi-ai/dist/utils/tool-schema-compat.js.map +1 -0
  609. package/node_modules/@earendil-works/pi-ai/package.json +2 -2
  610. package/node_modules/@earendil-works/pi-pty/dist/registry-session.d.ts +1 -1
  611. package/node_modules/@earendil-works/pi-pty/dist/registry-session.d.ts.map +1 -1
  612. package/node_modules/@earendil-works/pi-pty/dist/registry-session.js +25 -6
  613. package/node_modules/@earendil-works/pi-pty/dist/registry-session.js.map +1 -1
  614. package/node_modules/@earendil-works/pi-pty/dist/registry-types.d.ts +6 -0
  615. package/node_modules/@earendil-works/pi-pty/dist/registry-types.d.ts.map +1 -1
  616. package/node_modules/@earendil-works/pi-pty/dist/registry-types.js.map +1 -1
  617. package/node_modules/@earendil-works/pi-pty/dist/registry.d.ts +1 -0
  618. package/node_modules/@earendil-works/pi-pty/dist/registry.d.ts.map +1 -1
  619. package/node_modules/@earendil-works/pi-pty/dist/registry.js +9 -1
  620. package/node_modules/@earendil-works/pi-pty/dist/registry.js.map +1 -1
  621. package/node_modules/@earendil-works/pi-pty/package.json +1 -1
  622. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts +1 -1
  623. package/node_modules/@earendil-works/pi-tui/dist/index.d.ts.map +1 -1
  624. package/node_modules/@earendil-works/pi-tui/dist/index.js +1 -1
  625. package/node_modules/@earendil-works/pi-tui/dist/index.js.map +1 -1
  626. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts +6 -1
  627. package/node_modules/@earendil-works/pi-tui/dist/tui.d.ts.map +1 -1
  628. package/node_modules/@earendil-works/pi-tui/dist/tui.js +14 -2
  629. package/node_modules/@earendil-works/pi-tui/dist/tui.js.map +1 -1
  630. package/node_modules/@earendil-works/pi-tui/dist/utils.js +1 -1
  631. package/node_modules/@earendil-works/pi-tui/dist/utils.js.map +1 -1
  632. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  633. package/package.json +6 -6
  634. package/dist/core/extensions/builtin/todotools/tools/todoread.d.ts +0 -4
  635. package/dist/core/extensions/builtin/todotools/tools/todoread.d.ts.map +0 -1
  636. package/dist/core/extensions/builtin/todotools/tools/todoread.js +0 -37
  637. package/dist/core/extensions/builtin/todotools/tools/todoread.js.map +0 -1
  638. package/dist/core/extensions/builtin/todotools/tools/todowrite.d.ts +0 -10
  639. package/dist/core/extensions/builtin/todotools/tools/todowrite.d.ts.map +0 -1
  640. package/dist/core/extensions/builtin/todotools/tools/todowrite.js +0 -95
  641. package/dist/core/extensions/builtin/todotools/tools/todowrite.js.map +0 -1
@@ -1,1242 +1,220 @@
1
+ import type { Model } from "../types.ts";
1
2
  export declare const OPENCODE_MODELS: {
2
- readonly "big-pickle": {
3
- id: string;
4
- name: string;
5
- api: "openai-completions";
6
- provider: string;
7
- baseUrl: string;
8
- compat: {
9
- supportsStore: false;
10
- supportsDeveloperRole: false;
11
- maxTokensField: "max_tokens";
12
- };
13
- reasoning: true;
14
- input: "text"[];
15
- cost: {
16
- input: number;
17
- output: number;
18
- cacheRead: number;
19
- cacheWrite: number;
20
- };
21
- contextWindow: number;
22
- maxTokens: number;
3
+ "big-pickle": Model<"openai-completions"> & {
4
+ id: "big-pickle";
5
+ provider: "opencode";
23
6
  };
24
- readonly "claude-fable-5": {
25
- id: string;
26
- name: string;
27
- api: "anthropic-messages";
28
- provider: string;
29
- baseUrl: string;
30
- compat: {
31
- forceAdaptiveThinking: true;
32
- };
33
- reasoning: true;
34
- thinkingLevelMap: {
35
- off: null;
36
- xhigh: string;
37
- max: string;
38
- };
39
- input: ("image" | "text")[];
40
- cost: {
41
- input: number;
42
- output: number;
43
- cacheRead: number;
44
- cacheWrite: number;
45
- };
46
- contextWindow: number;
47
- maxTokens: number;
7
+ "claude-fable-5": Model<"anthropic-messages"> & {
8
+ id: "claude-fable-5";
9
+ provider: "opencode";
48
10
  };
49
- readonly "claude-haiku-4-5": {
50
- id: string;
51
- name: string;
52
- api: "anthropic-messages";
53
- provider: string;
54
- baseUrl: string;
55
- reasoning: true;
56
- input: ("image" | "text")[];
57
- cost: {
58
- input: number;
59
- output: number;
60
- cacheRead: number;
61
- cacheWrite: number;
62
- };
63
- contextWindow: number;
64
- maxTokens: number;
11
+ "claude-haiku-4-5": Model<"anthropic-messages"> & {
12
+ id: "claude-haiku-4-5";
13
+ provider: "opencode";
65
14
  };
66
- readonly "claude-opus-4-1": {
67
- id: string;
68
- name: string;
69
- api: "anthropic-messages";
70
- provider: string;
71
- baseUrl: string;
72
- reasoning: true;
73
- input: ("image" | "text")[];
74
- cost: {
75
- input: number;
76
- output: number;
77
- cacheRead: number;
78
- cacheWrite: number;
79
- };
80
- contextWindow: number;
81
- maxTokens: number;
15
+ "claude-opus-4-1": Model<"anthropic-messages"> & {
16
+ id: "claude-opus-4-1";
17
+ provider: "opencode";
82
18
  };
83
- readonly "claude-opus-4-5": {
84
- id: string;
85
- name: string;
86
- api: "anthropic-messages";
87
- provider: string;
88
- baseUrl: string;
89
- reasoning: true;
90
- input: ("image" | "text")[];
91
- cost: {
92
- input: number;
93
- output: number;
94
- cacheRead: number;
95
- cacheWrite: number;
96
- };
97
- contextWindow: number;
98
- maxTokens: number;
19
+ "claude-opus-4-5": Model<"anthropic-messages"> & {
20
+ id: "claude-opus-4-5";
21
+ provider: "opencode";
99
22
  };
100
- readonly "claude-opus-4-6": {
101
- id: string;
102
- name: string;
103
- api: "anthropic-messages";
104
- provider: string;
105
- baseUrl: string;
106
- compat: {
107
- forceAdaptiveThinking: true;
108
- };
109
- reasoning: true;
110
- thinkingLevelMap: {
111
- max: string;
112
- };
113
- input: ("image" | "text")[];
114
- cost: {
115
- input: number;
116
- output: number;
117
- cacheRead: number;
118
- cacheWrite: number;
119
- };
120
- contextWindow: number;
121
- maxTokens: number;
23
+ "claude-opus-4-6": Model<"anthropic-messages"> & {
24
+ id: "claude-opus-4-6";
25
+ provider: "opencode";
122
26
  };
123
- readonly "claude-opus-4-7": {
124
- id: string;
125
- name: string;
126
- api: "anthropic-messages";
127
- provider: string;
128
- baseUrl: string;
129
- compat: {
130
- forceAdaptiveThinking: true;
131
- supportsTemperature: false;
132
- };
133
- reasoning: true;
134
- thinkingLevelMap: {
135
- xhigh: string;
136
- max: string;
137
- };
138
- input: ("image" | "text")[];
139
- cost: {
140
- input: number;
141
- output: number;
142
- cacheRead: number;
143
- cacheWrite: number;
144
- };
145
- contextWindow: number;
146
- maxTokens: number;
27
+ "claude-opus-4-7": Model<"anthropic-messages"> & {
28
+ id: "claude-opus-4-7";
29
+ provider: "opencode";
147
30
  };
148
- readonly "claude-opus-4-8": {
149
- id: string;
150
- name: string;
151
- api: "anthropic-messages";
152
- provider: string;
153
- baseUrl: string;
154
- compat: {
155
- forceAdaptiveThinking: true;
156
- supportsTemperature: false;
157
- };
158
- reasoning: true;
159
- thinkingLevelMap: {
160
- xhigh: string;
161
- max: string;
162
- };
163
- input: ("image" | "text")[];
164
- cost: {
165
- input: number;
166
- output: number;
167
- cacheRead: number;
168
- cacheWrite: number;
169
- };
170
- contextWindow: number;
171
- maxTokens: number;
31
+ "claude-opus-4-8": Model<"anthropic-messages"> & {
32
+ id: "claude-opus-4-8";
33
+ provider: "opencode";
172
34
  };
173
- readonly "claude-sonnet-4": {
174
- id: string;
175
- name: string;
176
- api: "anthropic-messages";
177
- provider: string;
178
- baseUrl: string;
179
- reasoning: true;
180
- input: ("image" | "text")[];
181
- cost: {
182
- input: number;
183
- output: number;
184
- cacheRead: number;
185
- cacheWrite: number;
186
- };
187
- contextWindow: number;
188
- maxTokens: number;
35
+ "claude-sonnet-4": Model<"anthropic-messages"> & {
36
+ id: "claude-sonnet-4";
37
+ provider: "opencode";
189
38
  };
190
- readonly "claude-sonnet-4-5": {
191
- id: string;
192
- name: string;
193
- api: "anthropic-messages";
194
- provider: string;
195
- baseUrl: string;
196
- reasoning: true;
197
- input: ("image" | "text")[];
198
- cost: {
199
- input: number;
200
- output: number;
201
- cacheRead: number;
202
- cacheWrite: number;
203
- };
204
- contextWindow: number;
205
- maxTokens: number;
39
+ "claude-sonnet-4-5": Model<"anthropic-messages"> & {
40
+ id: "claude-sonnet-4-5";
41
+ provider: "opencode";
206
42
  };
207
- readonly "claude-sonnet-4-6": {
208
- id: string;
209
- name: string;
210
- api: "anthropic-messages";
211
- provider: string;
212
- baseUrl: string;
213
- compat: {
214
- forceAdaptiveThinking: true;
215
- };
216
- reasoning: true;
217
- thinkingLevelMap: {
218
- max: string;
219
- };
220
- input: ("image" | "text")[];
221
- cost: {
222
- input: number;
223
- output: number;
224
- cacheRead: number;
225
- cacheWrite: number;
226
- };
227
- contextWindow: number;
228
- maxTokens: number;
43
+ "claude-sonnet-4-6": Model<"anthropic-messages"> & {
44
+ id: "claude-sonnet-4-6";
45
+ provider: "opencode";
229
46
  };
230
- readonly "claude-sonnet-5": {
231
- id: string;
232
- name: string;
233
- api: "anthropic-messages";
234
- provider: string;
235
- baseUrl: string;
236
- compat: {
237
- forceAdaptiveThinking: true;
238
- };
239
- reasoning: true;
240
- thinkingLevelMap: {
241
- xhigh: string;
242
- max: string;
243
- };
244
- input: ("image" | "text")[];
245
- cost: {
246
- input: number;
247
- output: number;
248
- cacheRead: number;
249
- cacheWrite: number;
250
- };
251
- contextWindow: number;
252
- maxTokens: number;
47
+ "claude-sonnet-5": Model<"anthropic-messages"> & {
48
+ id: "claude-sonnet-5";
49
+ provider: "opencode";
253
50
  };
254
- readonly "deepseek-v4-flash": {
255
- id: string;
256
- name: string;
257
- api: "openai-completions";
258
- provider: string;
259
- baseUrl: string;
260
- compat: {
261
- supportsStore: false;
262
- supportsDeveloperRole: false;
263
- maxTokensField: "max_tokens";
264
- supportsLongCacheRetention: false;
265
- requiresReasoningContentOnAssistantMessages: true;
266
- };
267
- reasoning: true;
268
- thinkingLevelMap: {
269
- minimal: null;
270
- low: null;
271
- medium: null;
272
- high: string;
273
- max: string;
274
- };
275
- input: "text"[];
276
- cost: {
277
- input: number;
278
- output: number;
279
- cacheRead: number;
280
- cacheWrite: number;
281
- };
282
- contextWindow: number;
283
- maxTokens: number;
51
+ "deepseek-v4-flash": Model<"openai-completions"> & {
52
+ id: "deepseek-v4-flash";
53
+ provider: "opencode";
284
54
  };
285
- readonly "deepseek-v4-flash-free": {
286
- id: string;
287
- name: string;
288
- api: "openai-completions";
289
- provider: string;
290
- baseUrl: string;
291
- compat: {
292
- supportsStore: false;
293
- supportsDeveloperRole: false;
294
- maxTokensField: "max_tokens";
295
- requiresReasoningContentOnAssistantMessages: true;
296
- };
297
- reasoning: true;
298
- thinkingLevelMap: {
299
- minimal: null;
300
- low: null;
301
- medium: null;
302
- high: string;
303
- max: string;
304
- };
305
- input: "text"[];
306
- cost: {
307
- input: number;
308
- output: number;
309
- cacheRead: number;
310
- cacheWrite: number;
311
- };
312
- contextWindow: number;
313
- maxTokens: number;
55
+ "deepseek-v4-flash-free": Model<"openai-completions"> & {
56
+ id: "deepseek-v4-flash-free";
57
+ provider: "opencode";
314
58
  };
315
- readonly "deepseek-v4-pro": {
316
- id: string;
317
- name: string;
318
- api: "openai-completions";
319
- provider: string;
320
- baseUrl: string;
321
- compat: {
322
- supportsStore: false;
323
- supportsDeveloperRole: false;
324
- maxTokensField: "max_tokens";
325
- supportsLongCacheRetention: false;
326
- requiresReasoningContentOnAssistantMessages: true;
327
- };
328
- reasoning: true;
329
- thinkingLevelMap: {
330
- minimal: null;
331
- low: null;
332
- medium: null;
333
- high: string;
334
- max: string;
335
- };
336
- input: "text"[];
337
- cost: {
338
- input: number;
339
- output: number;
340
- cacheRead: number;
341
- cacheWrite: number;
342
- };
343
- contextWindow: number;
344
- maxTokens: number;
59
+ "deepseek-v4-pro": Model<"openai-completions"> & {
60
+ id: "deepseek-v4-pro";
61
+ provider: "opencode";
345
62
  };
346
- readonly "gemini-3-flash": {
347
- id: string;
348
- name: string;
349
- api: "google-generative-ai";
350
- provider: string;
351
- baseUrl: string;
352
- reasoning: true;
353
- thinkingLevelMap: {
354
- off: null;
355
- };
356
- input: ("image" | "text")[];
357
- cost: {
358
- input: number;
359
- output: number;
360
- cacheRead: number;
361
- cacheWrite: number;
362
- };
363
- contextWindow: number;
364
- maxTokens: number;
63
+ "gemini-3-flash": Model<"google-generative-ai"> & {
64
+ id: "gemini-3-flash";
65
+ provider: "opencode";
365
66
  };
366
- readonly "gemini-3.1-pro": {
367
- id: string;
368
- name: string;
369
- api: "google-generative-ai";
370
- provider: string;
371
- baseUrl: string;
372
- reasoning: true;
373
- thinkingLevelMap: {
374
- off: null;
375
- minimal: null;
376
- low: string;
377
- medium: null;
378
- high: string;
379
- };
380
- input: ("image" | "text")[];
381
- cost: {
382
- input: number;
383
- output: number;
384
- cacheRead: number;
385
- cacheWrite: number;
386
- };
387
- contextWindow: number;
388
- maxTokens: number;
67
+ "gemini-3.1-pro": Model<"google-generative-ai"> & {
68
+ id: "gemini-3.1-pro";
69
+ provider: "opencode";
389
70
  };
390
- readonly "gemini-3.5-flash": {
391
- id: string;
392
- name: string;
393
- api: "google-generative-ai";
394
- provider: string;
395
- baseUrl: string;
396
- reasoning: true;
397
- thinkingLevelMap: {
398
- off: null;
399
- };
400
- input: ("image" | "text")[];
401
- cost: {
402
- input: number;
403
- output: number;
404
- cacheRead: number;
405
- cacheWrite: number;
406
- };
407
- contextWindow: number;
408
- maxTokens: number;
71
+ "gemini-3.5-flash": Model<"google-generative-ai"> & {
72
+ id: "gemini-3.5-flash";
73
+ provider: "opencode";
409
74
  };
410
- readonly "glm-5": {
411
- id: string;
412
- name: string;
413
- api: "openai-completions";
414
- provider: string;
415
- baseUrl: string;
416
- compat: {
417
- supportsStore: false;
418
- supportsDeveloperRole: false;
419
- maxTokensField: "max_tokens";
420
- };
421
- reasoning: true;
422
- input: "text"[];
423
- cost: {
424
- input: number;
425
- output: number;
426
- cacheRead: number;
427
- cacheWrite: number;
428
- };
429
- contextWindow: number;
430
- maxTokens: number;
75
+ "glm-5": Model<"openai-completions"> & {
76
+ id: "glm-5";
77
+ provider: "opencode";
431
78
  };
432
- readonly "glm-5.1": {
433
- id: string;
434
- name: string;
435
- api: "openai-completions";
436
- provider: string;
437
- baseUrl: string;
438
- compat: {
439
- supportsStore: false;
440
- supportsDeveloperRole: false;
441
- maxTokensField: "max_tokens";
442
- };
443
- reasoning: true;
444
- input: "text"[];
445
- cost: {
446
- input: number;
447
- output: number;
448
- cacheRead: number;
449
- cacheWrite: number;
450
- };
451
- contextWindow: number;
452
- maxTokens: number;
79
+ "glm-5.1": Model<"openai-completions"> & {
80
+ id: "glm-5.1";
81
+ provider: "opencode";
453
82
  };
454
- readonly "glm-5.2": {
455
- id: string;
456
- name: string;
457
- api: "openai-completions";
458
- provider: string;
459
- baseUrl: string;
460
- compat: {
461
- supportsStore: false;
462
- supportsDeveloperRole: false;
463
- maxTokensField: "max_tokens";
464
- };
465
- reasoning: true;
466
- input: "text"[];
467
- cost: {
468
- input: number;
469
- output: number;
470
- cacheRead: number;
471
- cacheWrite: number;
472
- };
473
- contextWindow: number;
474
- maxTokens: number;
83
+ "glm-5.2": Model<"openai-completions"> & {
84
+ id: "glm-5.2";
85
+ provider: "opencode";
475
86
  };
476
- readonly "gpt-5": {
477
- id: string;
478
- name: string;
479
- api: "openai-responses";
480
- provider: string;
481
- baseUrl: string;
482
- compat: {
483
- sessionAffinityFormat: "openai-nosession";
484
- };
485
- reasoning: true;
486
- thinkingLevelMap: {
487
- off: null;
488
- };
489
- input: ("image" | "text")[];
490
- cost: {
491
- input: number;
492
- output: number;
493
- cacheRead: number;
494
- cacheWrite: number;
495
- };
496
- contextWindow: number;
497
- maxTokens: number;
87
+ "gpt-5": Model<"openai-responses"> & {
88
+ id: "gpt-5";
89
+ provider: "opencode";
498
90
  };
499
- readonly "gpt-5-codex": {
500
- id: string;
501
- name: string;
502
- api: "openai-responses";
503
- provider: string;
504
- baseUrl: string;
505
- compat: {
506
- sessionAffinityFormat: "openai-nosession";
507
- };
508
- reasoning: true;
509
- thinkingLevelMap: {
510
- off: null;
511
- };
512
- input: ("image" | "text")[];
513
- cost: {
514
- input: number;
515
- output: number;
516
- cacheRead: number;
517
- cacheWrite: number;
518
- };
519
- contextWindow: number;
520
- maxTokens: number;
91
+ "gpt-5-codex": Model<"openai-responses"> & {
92
+ id: "gpt-5-codex";
93
+ provider: "opencode";
521
94
  };
522
- readonly "gpt-5-nano": {
523
- id: string;
524
- name: string;
525
- api: "openai-responses";
526
- provider: string;
527
- baseUrl: string;
528
- compat: {
529
- sessionAffinityFormat: "openai-nosession";
530
- };
531
- reasoning: true;
532
- thinkingLevelMap: {
533
- off: null;
534
- };
535
- input: ("image" | "text")[];
536
- cost: {
537
- input: number;
538
- output: number;
539
- cacheRead: number;
540
- cacheWrite: number;
541
- };
542
- contextWindow: number;
543
- maxTokens: number;
95
+ "gpt-5-nano": Model<"openai-responses"> & {
96
+ id: "gpt-5-nano";
97
+ provider: "opencode";
544
98
  };
545
- readonly "gpt-5.1": {
546
- id: string;
547
- name: string;
548
- api: "openai-responses";
549
- provider: string;
550
- baseUrl: string;
551
- compat: {
552
- sessionAffinityFormat: "openai-nosession";
553
- };
554
- reasoning: true;
555
- thinkingLevelMap: {
556
- off: null;
557
- };
558
- input: ("image" | "text")[];
559
- cost: {
560
- input: number;
561
- output: number;
562
- cacheRead: number;
563
- cacheWrite: number;
564
- };
565
- contextWindow: number;
566
- maxTokens: number;
99
+ "gpt-5.1": Model<"openai-responses"> & {
100
+ id: "gpt-5.1";
101
+ provider: "opencode";
567
102
  };
568
- readonly "gpt-5.1-codex": {
569
- id: string;
570
- name: string;
571
- api: "openai-responses";
572
- provider: string;
573
- baseUrl: string;
574
- compat: {
575
- sessionAffinityFormat: "openai-nosession";
576
- };
577
- reasoning: true;
578
- thinkingLevelMap: {
579
- off: null;
580
- };
581
- input: ("image" | "text")[];
582
- cost: {
583
- input: number;
584
- output: number;
585
- cacheRead: number;
586
- cacheWrite: number;
587
- };
588
- contextWindow: number;
589
- maxTokens: number;
103
+ "gpt-5.1-codex": Model<"openai-responses"> & {
104
+ id: "gpt-5.1-codex";
105
+ provider: "opencode";
590
106
  };
591
- readonly "gpt-5.1-codex-max": {
592
- id: string;
593
- name: string;
594
- api: "openai-responses";
595
- provider: string;
596
- baseUrl: string;
597
- compat: {
598
- sessionAffinityFormat: "openai-nosession";
599
- };
600
- reasoning: true;
601
- thinkingLevelMap: {
602
- off: null;
603
- };
604
- input: ("image" | "text")[];
605
- cost: {
606
- input: number;
607
- output: number;
608
- cacheRead: number;
609
- cacheWrite: number;
610
- };
611
- contextWindow: number;
612
- maxTokens: number;
107
+ "gpt-5.1-codex-max": Model<"openai-responses"> & {
108
+ id: "gpt-5.1-codex-max";
109
+ provider: "opencode";
613
110
  };
614
- readonly "gpt-5.1-codex-mini": {
615
- id: string;
616
- name: string;
617
- api: "openai-responses";
618
- provider: string;
619
- baseUrl: string;
620
- compat: {
621
- sessionAffinityFormat: "openai-nosession";
622
- };
623
- reasoning: true;
624
- thinkingLevelMap: {
625
- off: null;
626
- };
627
- input: ("image" | "text")[];
628
- cost: {
629
- input: number;
630
- output: number;
631
- cacheRead: number;
632
- cacheWrite: number;
633
- };
634
- contextWindow: number;
635
- maxTokens: number;
111
+ "gpt-5.1-codex-mini": Model<"openai-responses"> & {
112
+ id: "gpt-5.1-codex-mini";
113
+ provider: "opencode";
636
114
  };
637
- readonly "gpt-5.2": {
638
- id: string;
639
- name: string;
640
- api: "openai-responses";
641
- provider: string;
642
- baseUrl: string;
643
- compat: {
644
- sessionAffinityFormat: "openai-nosession";
645
- };
646
- reasoning: true;
647
- thinkingLevelMap: {
648
- off: null;
649
- xhigh: string;
650
- };
651
- input: ("image" | "text")[];
652
- cost: {
653
- input: number;
654
- output: number;
655
- cacheRead: number;
656
- cacheWrite: number;
657
- };
658
- contextWindow: number;
659
- maxTokens: number;
115
+ "gpt-5.2": Model<"openai-responses"> & {
116
+ id: "gpt-5.2";
117
+ provider: "opencode";
660
118
  };
661
- readonly "gpt-5.2-codex": {
662
- id: string;
663
- name: string;
664
- api: "openai-responses";
665
- provider: string;
666
- baseUrl: string;
667
- compat: {
668
- sessionAffinityFormat: "openai-nosession";
669
- };
670
- reasoning: true;
671
- thinkingLevelMap: {
672
- off: null;
673
- xhigh: string;
674
- };
675
- input: ("image" | "text")[];
676
- cost: {
677
- input: number;
678
- output: number;
679
- cacheRead: number;
680
- cacheWrite: number;
681
- };
682
- contextWindow: number;
683
- maxTokens: number;
119
+ "gpt-5.2-codex": Model<"openai-responses"> & {
120
+ id: "gpt-5.2-codex";
121
+ provider: "opencode";
684
122
  };
685
- readonly "gpt-5.3-codex": {
686
- id: string;
687
- name: string;
688
- api: "openai-responses";
689
- provider: string;
690
- baseUrl: string;
691
- compat: {
692
- sessionAffinityFormat: "openai-nosession";
693
- };
694
- reasoning: true;
695
- thinkingLevelMap: {
696
- off: null;
697
- xhigh: string;
698
- };
699
- input: ("image" | "text")[];
700
- cost: {
701
- input: number;
702
- output: number;
703
- cacheRead: number;
704
- cacheWrite: number;
705
- };
706
- contextWindow: number;
707
- maxTokens: number;
123
+ "gpt-5.3-codex": Model<"openai-responses"> & {
124
+ id: "gpt-5.3-codex";
125
+ provider: "opencode";
708
126
  };
709
- readonly "gpt-5.4": {
710
- id: string;
711
- name: string;
712
- api: "openai-responses";
713
- provider: string;
714
- baseUrl: string;
715
- compat: {
716
- sessionAffinityFormat: "openai-nosession";
717
- };
718
- reasoning: true;
719
- thinkingLevelMap: {
720
- off: null;
721
- xhigh: string;
722
- };
723
- input: ("image" | "text")[];
724
- cost: {
725
- input: number;
726
- output: number;
727
- cacheRead: number;
728
- cacheWrite: number;
729
- };
730
- contextWindow: number;
731
- maxTokens: number;
127
+ "gpt-5.4": Model<"openai-responses"> & {
128
+ id: "gpt-5.4";
129
+ provider: "opencode";
732
130
  };
733
- readonly "gpt-5.4-mini": {
734
- id: string;
735
- name: string;
736
- api: "openai-responses";
737
- provider: string;
738
- baseUrl: string;
739
- compat: {
740
- sessionAffinityFormat: "openai-nosession";
741
- };
742
- reasoning: true;
743
- thinkingLevelMap: {
744
- off: null;
745
- xhigh: string;
746
- };
747
- input: ("image" | "text")[];
748
- cost: {
749
- input: number;
750
- output: number;
751
- cacheRead: number;
752
- cacheWrite: number;
753
- };
754
- contextWindow: number;
755
- maxTokens: number;
131
+ "gpt-5.4-mini": Model<"openai-responses"> & {
132
+ id: "gpt-5.4-mini";
133
+ provider: "opencode";
756
134
  };
757
- readonly "gpt-5.4-nano": {
758
- id: string;
759
- name: string;
760
- api: "openai-responses";
761
- provider: string;
762
- baseUrl: string;
763
- compat: {
764
- sessionAffinityFormat: "openai-nosession";
765
- };
766
- reasoning: true;
767
- thinkingLevelMap: {
768
- off: null;
769
- xhigh: string;
770
- };
771
- input: ("image" | "text")[];
772
- cost: {
773
- input: number;
774
- output: number;
775
- cacheRead: number;
776
- cacheWrite: number;
777
- };
778
- contextWindow: number;
779
- maxTokens: number;
135
+ "gpt-5.4-nano": Model<"openai-responses"> & {
136
+ id: "gpt-5.4-nano";
137
+ provider: "opencode";
780
138
  };
781
- readonly "gpt-5.4-pro": {
782
- id: string;
783
- name: string;
784
- api: "openai-responses";
785
- provider: string;
786
- baseUrl: string;
787
- compat: {
788
- sessionAffinityFormat: "openai-nosession";
789
- };
790
- reasoning: true;
791
- thinkingLevelMap: {
792
- off: null;
793
- xhigh: string;
794
- };
795
- input: ("image" | "text")[];
796
- cost: {
797
- input: number;
798
- output: number;
799
- cacheRead: number;
800
- cacheWrite: number;
801
- };
802
- contextWindow: number;
803
- maxTokens: number;
139
+ "gpt-5.4-pro": Model<"openai-responses"> & {
140
+ id: "gpt-5.4-pro";
141
+ provider: "opencode";
804
142
  };
805
- readonly "gpt-5.5": {
806
- id: string;
807
- name: string;
808
- api: "openai-responses";
809
- provider: string;
810
- baseUrl: string;
811
- compat: {
812
- sessionAffinityFormat: "openai-nosession";
813
- };
814
- reasoning: true;
815
- thinkingLevelMap: {
816
- off: null;
817
- xhigh: string;
818
- };
819
- input: ("image" | "text")[];
820
- cost: {
821
- input: number;
822
- output: number;
823
- cacheRead: number;
824
- cacheWrite: number;
825
- };
826
- contextWindow: number;
827
- maxTokens: number;
143
+ "gpt-5.5": Model<"openai-responses"> & {
144
+ id: "gpt-5.5";
145
+ provider: "opencode";
828
146
  };
829
- readonly "gpt-5.5-pro": {
830
- id: string;
831
- name: string;
832
- api: "openai-responses";
833
- provider: string;
834
- baseUrl: string;
835
- compat: {
836
- sessionAffinityFormat: "openai-nosession";
837
- };
838
- reasoning: true;
839
- thinkingLevelMap: {
840
- off: null;
841
- xhigh: string;
842
- minimal: null;
843
- low: null;
844
- };
845
- input: ("image" | "text")[];
846
- cost: {
847
- input: number;
848
- output: number;
849
- cacheRead: number;
850
- cacheWrite: number;
851
- };
852
- contextWindow: number;
853
- maxTokens: number;
147
+ "gpt-5.5-pro": Model<"openai-responses"> & {
148
+ id: "gpt-5.5-pro";
149
+ provider: "opencode";
854
150
  };
855
- readonly "gpt-5.6-luna": {
856
- id: string;
857
- name: string;
858
- api: "openai-responses";
859
- provider: string;
860
- baseUrl: string;
861
- compat: {
862
- sessionAffinityFormat: "openai-nosession";
863
- };
864
- reasoning: true;
865
- thinkingLevelMap: {
866
- off: null;
867
- xhigh: string;
868
- max: string;
869
- };
870
- input: ("image" | "text")[];
871
- cost: {
872
- input: number;
873
- output: number;
874
- cacheRead: number;
875
- cacheWrite: number;
876
- };
877
- contextWindow: number;
878
- maxTokens: number;
151
+ "gpt-5.6-luna": Model<"openai-responses"> & {
152
+ id: "gpt-5.6-luna";
153
+ provider: "opencode";
879
154
  };
880
- readonly "gpt-5.6-sol": {
881
- id: string;
882
- name: string;
883
- api: "openai-responses";
884
- provider: string;
885
- baseUrl: string;
886
- compat: {
887
- sessionAffinityFormat: "openai-nosession";
888
- };
889
- reasoning: true;
890
- thinkingLevelMap: {
891
- off: null;
892
- xhigh: string;
893
- max: string;
894
- };
895
- input: ("image" | "text")[];
896
- cost: {
897
- input: number;
898
- output: number;
899
- cacheRead: number;
900
- cacheWrite: number;
901
- };
902
- contextWindow: number;
903
- maxTokens: number;
155
+ "gpt-5.6-sol": Model<"openai-responses"> & {
156
+ id: "gpt-5.6-sol";
157
+ provider: "opencode";
904
158
  };
905
- readonly "gpt-5.6-terra": {
906
- id: string;
907
- name: string;
908
- api: "openai-responses";
909
- provider: string;
910
- baseUrl: string;
911
- compat: {
912
- sessionAffinityFormat: "openai-nosession";
913
- };
914
- reasoning: true;
915
- thinkingLevelMap: {
916
- off: null;
917
- xhigh: string;
918
- max: string;
919
- };
920
- input: ("image" | "text")[];
921
- cost: {
922
- input: number;
923
- output: number;
924
- cacheRead: number;
925
- cacheWrite: number;
926
- };
927
- contextWindow: number;
928
- maxTokens: number;
159
+ "gpt-5.6-terra": Model<"openai-responses"> & {
160
+ id: "gpt-5.6-terra";
161
+ provider: "opencode";
929
162
  };
930
- readonly "grok-4.5": {
931
- id: string;
932
- name: string;
933
- api: "openai-completions";
934
- provider: string;
935
- baseUrl: string;
936
- compat: {
937
- supportsStore: false;
938
- supportsDeveloperRole: false;
939
- maxTokensField: "max_tokens";
940
- };
941
- reasoning: true;
942
- input: ("image" | "text")[];
943
- cost: {
944
- input: number;
945
- output: number;
946
- cacheRead: number;
947
- cacheWrite: number;
948
- };
949
- contextWindow: number;
950
- maxTokens: number;
163
+ "grok-4.5": Model<"openai-responses"> & {
164
+ id: "grok-4.5";
165
+ provider: "opencode";
951
166
  };
952
- readonly "grok-build-0.1": {
953
- id: string;
954
- name: string;
955
- api: "openai-completions";
956
- provider: string;
957
- baseUrl: string;
958
- compat: {
959
- supportsStore: false;
960
- supportsDeveloperRole: false;
961
- supportsReasoningEffort: false;
962
- maxTokensField: "max_tokens";
963
- };
964
- reasoning: true;
965
- thinkingLevelMap: {
966
- off: null;
967
- minimal: null;
968
- low: null;
969
- medium: null;
970
- };
971
- input: ("image" | "text")[];
972
- cost: {
973
- input: number;
974
- output: number;
975
- cacheRead: number;
976
- cacheWrite: number;
977
- };
978
- contextWindow: number;
979
- maxTokens: number;
167
+ "grok-build-0.1": Model<"openai-completions"> & {
168
+ id: "grok-build-0.1";
169
+ provider: "opencode";
980
170
  };
981
- readonly "hy3-free": {
982
- id: string;
983
- name: string;
984
- api: "openai-completions";
985
- provider: string;
986
- baseUrl: string;
987
- compat: {
988
- supportsStore: false;
989
- supportsDeveloperRole: false;
990
- maxTokensField: "max_tokens";
991
- };
992
- reasoning: true;
993
- input: "text"[];
994
- cost: {
995
- input: number;
996
- output: number;
997
- cacheRead: number;
998
- cacheWrite: number;
999
- };
1000
- contextWindow: number;
1001
- maxTokens: number;
171
+ "hy3-free": Model<"openai-completions"> & {
172
+ id: "hy3-free";
173
+ provider: "opencode";
1002
174
  };
1003
- readonly "kimi-k2.5": {
1004
- id: string;
1005
- name: string;
1006
- api: "openai-completions";
1007
- provider: string;
1008
- baseUrl: string;
1009
- compat: {
1010
- supportsStore: false;
1011
- supportsDeveloperRole: false;
1012
- maxTokensField: "max_tokens";
1013
- supportsLongCacheRetention: false;
1014
- };
1015
- reasoning: true;
1016
- input: ("image" | "text")[];
1017
- cost: {
1018
- input: number;
1019
- output: number;
1020
- cacheRead: number;
1021
- cacheWrite: number;
1022
- };
1023
- contextWindow: number;
1024
- maxTokens: number;
175
+ "kimi-k2.5": Model<"openai-completions"> & {
176
+ id: "kimi-k2.5";
177
+ provider: "opencode";
1025
178
  };
1026
- readonly "kimi-k2.6": {
1027
- id: string;
1028
- name: string;
1029
- api: "openai-completions";
1030
- provider: string;
1031
- baseUrl: string;
1032
- compat: {
1033
- supportsStore: false;
1034
- supportsDeveloperRole: false;
1035
- thinkingFormat: "deepseek";
1036
- supportsReasoningEffort: false;
1037
- maxTokensField: "max_tokens";
1038
- supportsLongCacheRetention: false;
1039
- };
1040
- reasoning: true;
1041
- input: ("image" | "text")[];
1042
- cost: {
1043
- input: number;
1044
- output: number;
1045
- cacheRead: number;
1046
- cacheWrite: number;
1047
- };
1048
- contextWindow: number;
1049
- maxTokens: number;
179
+ "kimi-k2.6": Model<"openai-completions"> & {
180
+ id: "kimi-k2.6";
181
+ provider: "opencode";
1050
182
  };
1051
- readonly "kimi-k2.7-code": {
1052
- id: string;
1053
- name: string;
1054
- api: "openai-completions";
1055
- provider: string;
1056
- baseUrl: string;
1057
- compat: {
1058
- supportsStore: false;
1059
- supportsDeveloperRole: false;
1060
- maxTokensField: "max_tokens";
1061
- supportsLongCacheRetention: false;
1062
- };
1063
- reasoning: true;
1064
- input: ("image" | "text")[];
1065
- cost: {
1066
- input: number;
1067
- output: number;
1068
- cacheRead: number;
1069
- cacheWrite: number;
1070
- };
1071
- contextWindow: number;
1072
- maxTokens: number;
183
+ "kimi-k2.7-code": Model<"openai-completions"> & {
184
+ id: "kimi-k2.7-code";
185
+ provider: "opencode";
1073
186
  };
1074
- readonly "mimo-v2.5-free": {
1075
- id: string;
1076
- name: string;
1077
- api: "openai-completions";
1078
- provider: string;
1079
- baseUrl: string;
1080
- compat: {
1081
- supportsStore: false;
1082
- supportsDeveloperRole: false;
1083
- maxTokensField: "max_tokens";
1084
- };
1085
- reasoning: true;
1086
- input: ("image" | "text")[];
1087
- cost: {
1088
- input: number;
1089
- output: number;
1090
- cacheRead: number;
1091
- cacheWrite: number;
1092
- };
1093
- contextWindow: number;
1094
- maxTokens: number;
187
+ "mimo-v2.5-free": Model<"openai-completions"> & {
188
+ id: "mimo-v2.5-free";
189
+ provider: "opencode";
1095
190
  };
1096
- readonly "minimax-m2.5": {
1097
- id: string;
1098
- name: string;
1099
- api: "openai-completions";
1100
- provider: string;
1101
- baseUrl: string;
1102
- compat: {
1103
- supportsStore: false;
1104
- supportsDeveloperRole: false;
1105
- maxTokensField: "max_tokens";
1106
- };
1107
- reasoning: true;
1108
- input: "text"[];
1109
- cost: {
1110
- input: number;
1111
- output: number;
1112
- cacheRead: number;
1113
- cacheWrite: number;
1114
- };
1115
- contextWindow: number;
1116
- maxTokens: number;
191
+ "minimax-m2.5": Model<"openai-completions"> & {
192
+ id: "minimax-m2.5";
193
+ provider: "opencode";
1117
194
  };
1118
- readonly "minimax-m2.7": {
1119
- id: string;
1120
- name: string;
1121
- api: "openai-completions";
1122
- provider: string;
1123
- baseUrl: string;
1124
- compat: {
1125
- supportsStore: false;
1126
- supportsDeveloperRole: false;
1127
- maxTokensField: "max_tokens";
1128
- supportsLongCacheRetention: false;
1129
- };
1130
- reasoning: true;
1131
- input: "text"[];
1132
- cost: {
1133
- input: number;
1134
- output: number;
1135
- cacheRead: number;
1136
- cacheWrite: number;
1137
- };
1138
- contextWindow: number;
1139
- maxTokens: number;
195
+ "minimax-m2.7": Model<"openai-completions"> & {
196
+ id: "minimax-m2.7";
197
+ provider: "opencode";
1140
198
  };
1141
- readonly "minimax-m3": {
1142
- id: string;
1143
- name: string;
1144
- api: "openai-completions";
1145
- provider: string;
1146
- baseUrl: string;
1147
- compat: {
1148
- supportsStore: false;
1149
- supportsDeveloperRole: false;
1150
- maxTokensField: "max_tokens";
1151
- };
1152
- reasoning: true;
1153
- input: ("image" | "text")[];
1154
- cost: {
1155
- input: number;
1156
- output: number;
1157
- cacheRead: number;
1158
- cacheWrite: number;
1159
- };
1160
- contextWindow: number;
1161
- maxTokens: number;
199
+ "minimax-m3": Model<"openai-completions"> & {
200
+ id: "minimax-m3";
201
+ provider: "opencode";
1162
202
  };
1163
- readonly "nemotron-3-ultra-free": {
1164
- id: string;
1165
- name: string;
1166
- api: "openai-completions";
1167
- provider: string;
1168
- baseUrl: string;
1169
- compat: {
1170
- supportsStore: false;
1171
- supportsDeveloperRole: false;
1172
- maxTokensField: "max_tokens";
1173
- };
1174
- reasoning: true;
1175
- input: "text"[];
1176
- cost: {
1177
- input: number;
1178
- output: number;
1179
- cacheRead: number;
1180
- cacheWrite: number;
1181
- };
1182
- contextWindow: number;
1183
- maxTokens: number;
203
+ "nemotron-3-ultra-free": Model<"openai-completions"> & {
204
+ id: "nemotron-3-ultra-free";
205
+ provider: "opencode";
1184
206
  };
1185
- readonly "north-mini-code-free": {
1186
- id: string;
1187
- name: string;
1188
- api: "openai-completions";
1189
- provider: string;
1190
- baseUrl: string;
1191
- compat: {
1192
- supportsStore: false;
1193
- supportsDeveloperRole: false;
1194
- maxTokensField: "max_tokens";
1195
- };
1196
- reasoning: true;
1197
- input: "text"[];
1198
- cost: {
1199
- input: number;
1200
- output: number;
1201
- cacheRead: number;
1202
- cacheWrite: number;
1203
- };
1204
- contextWindow: number;
1205
- maxTokens: number;
207
+ "north-mini-code-free": Model<"openai-completions"> & {
208
+ id: "north-mini-code-free";
209
+ provider: "opencode";
1206
210
  };
1207
- readonly "qwen3.5-plus": {
1208
- id: string;
1209
- name: string;
1210
- api: "anthropic-messages";
1211
- provider: string;
1212
- baseUrl: string;
1213
- reasoning: true;
1214
- input: ("image" | "text")[];
1215
- cost: {
1216
- input: number;
1217
- output: number;
1218
- cacheRead: number;
1219
- cacheWrite: number;
1220
- };
1221
- contextWindow: number;
1222
- maxTokens: number;
211
+ "qwen3.5-plus": Model<"anthropic-messages"> & {
212
+ id: "qwen3.5-plus";
213
+ provider: "opencode";
1223
214
  };
1224
- readonly "qwen3.6-plus": {
1225
- id: string;
1226
- name: string;
1227
- api: "anthropic-messages";
1228
- provider: string;
1229
- baseUrl: string;
1230
- reasoning: true;
1231
- input: ("image" | "text")[];
1232
- cost: {
1233
- input: number;
1234
- output: number;
1235
- cacheRead: number;
1236
- cacheWrite: number;
1237
- };
1238
- contextWindow: number;
1239
- maxTokens: number;
215
+ "qwen3.6-plus": Model<"anthropic-messages"> & {
216
+ id: "qwen3.6-plus";
217
+ provider: "opencode";
1240
218
  };
1241
219
  };
1242
220
  //# sourceMappingURL=opencode.models.d.ts.map