@cloudcli-ai/cloudcli 1.33.3 → 1.35.0

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 (329) hide show
  1. package/README.de.md +9 -1
  2. package/README.ja.md +8 -0
  3. package/README.ko.md +9 -1
  4. package/README.md +16 -3
  5. package/README.ru.md +9 -1
  6. package/README.tr.md +8 -1
  7. package/README.zh-CN.md +9 -1
  8. package/README.zh-TW.md +9 -1
  9. package/dist/api-docs.html +36 -18
  10. package/dist/assets/index-CtwxqzGG.js +1407 -0
  11. package/dist/assets/index-DlvtxFyt.css +32 -0
  12. package/dist/index.html +2 -2
  13. package/dist-server/server/browser-use-mcp.js +350 -0
  14. package/dist-server/server/browser-use-mcp.js.map +1 -0
  15. package/dist-server/server/claude-sdk.js +26 -6
  16. package/dist-server/server/claude-sdk.js.map +1 -1
  17. package/dist-server/server/cli.js +14 -6
  18. package/dist-server/server/cli.js.map +1 -1
  19. package/dist-server/server/computer-use-agent.js +242 -0
  20. package/dist-server/server/computer-use-agent.js.map +1 -0
  21. package/dist-server/server/computer-use-mcp.js +519 -0
  22. package/dist-server/server/computer-use-mcp.js.map +1 -0
  23. package/dist-server/server/cursor-cli.js +27 -11
  24. package/dist-server/server/cursor-cli.js.map +1 -1
  25. package/dist-server/server/gemini-cli.js +17 -2
  26. package/dist-server/server/gemini-cli.js.map +1 -1
  27. package/dist-server/server/index.js +149 -40
  28. package/dist-server/server/index.js.map +1 -1
  29. package/dist-server/server/load-env.js +1 -1
  30. package/dist-server/server/load-env.js.map +1 -1
  31. package/dist-server/server/modules/browser-use/browser-use-mcp.routes.js +107 -0
  32. package/dist-server/server/modules/browser-use/browser-use-mcp.routes.js.map +1 -0
  33. package/dist-server/server/modules/browser-use/browser-use.routes.js +93 -0
  34. package/dist-server/server/modules/browser-use/browser-use.routes.js.map +1 -0
  35. package/dist-server/server/modules/browser-use/browser-use.service.js +688 -0
  36. package/dist-server/server/modules/browser-use/browser-use.service.js.map +1 -0
  37. package/dist-server/server/modules/browser-use/tests/browser-use.service.test.js +8 -0
  38. package/dist-server/server/modules/browser-use/tests/browser-use.service.test.js.map +1 -0
  39. package/dist-server/server/modules/computer-use/actions/raw-action-dispatcher.js +55 -0
  40. package/dist-server/server/modules/computer-use/actions/raw-action-dispatcher.js.map +1 -0
  41. package/dist-server/server/modules/computer-use/actions/raw-action-types.js +2 -0
  42. package/dist-server/server/modules/computer-use/actions/raw-action-types.js.map +1 -0
  43. package/dist-server/server/modules/computer-use/computer-executor.js +212 -0
  44. package/dist-server/server/modules/computer-use/computer-executor.js.map +1 -0
  45. package/dist-server/server/modules/computer-use/computer-semantics.service.js +422 -0
  46. package/dist-server/server/modules/computer-use/computer-semantics.service.js.map +1 -0
  47. package/dist-server/server/modules/computer-use/computer-use-mcp.routes.js +126 -0
  48. package/dist-server/server/modules/computer-use/computer-use-mcp.routes.js.map +1 -0
  49. package/dist-server/server/modules/computer-use/computer-use.routes.js +196 -0
  50. package/dist-server/server/modules/computer-use/computer-use.routes.js.map +1 -0
  51. package/dist-server/server/modules/computer-use/computer-use.service.js +759 -0
  52. package/dist-server/server/modules/computer-use/computer-use.service.js.map +1 -0
  53. package/dist-server/server/modules/computer-use/desktop-agent-relay.service.js +126 -0
  54. package/dist-server/server/modules/computer-use/desktop-agent-relay.service.js.map +1 -0
  55. package/dist-server/server/modules/computer-use/index.js +3 -0
  56. package/dist-server/server/modules/computer-use/index.js.map +1 -0
  57. package/dist-server/server/modules/computer-use/semantics/adapters/helper-semantic-adapter.js +59 -0
  58. package/dist-server/server/modules/computer-use/semantics/adapters/helper-semantic-adapter.js.map +1 -0
  59. package/dist-server/server/modules/computer-use/semantics/adapters/macos/macos-semantic-adapter.js +5 -0
  60. package/dist-server/server/modules/computer-use/semantics/adapters/macos/macos-semantic-adapter.js.map +1 -0
  61. package/dist-server/server/modules/computer-use/semantics/adapters/semantic-adapter.js +2 -0
  62. package/dist-server/server/modules/computer-use/semantics/adapters/semantic-adapter.js.map +1 -0
  63. package/dist-server/server/modules/computer-use/semantics/adapters/windows/windows-semantic-adapter.js +5 -0
  64. package/dist-server/server/modules/computer-use/semantics/adapters/windows/windows-semantic-adapter.js.map +1 -0
  65. package/dist-server/server/modules/computer-use/semantics/bin/darwin-arm64/CloudCLISemantics +0 -0
  66. package/dist-server/server/modules/computer-use/semantics/bin/darwin-x64/CloudCLISemantics +0 -0
  67. package/dist-server/server/modules/computer-use/semantics/bin/win32-arm64/CloudCLISemantics.exe +0 -0
  68. package/dist-server/server/modules/computer-use/semantics/bin/win32-x64/CloudCLISemantics.exe +0 -0
  69. package/dist-server/server/modules/computer-use/semantics/helpers/semantic-helper-process.js +106 -0
  70. package/dist-server/server/modules/computer-use/semantics/helpers/semantic-helper-process.js.map +1 -0
  71. package/dist-server/server/modules/computer-use/semantics/helpers/semantic-helper-resolver.js +78 -0
  72. package/dist-server/server/modules/computer-use/semantics/helpers/semantic-helper-resolver.js.map +1 -0
  73. package/dist-server/server/modules/computer-use/semantics/semantic-session-store.js +68 -0
  74. package/dist-server/server/modules/computer-use/semantics/semantic-session-store.js.map +1 -0
  75. package/dist-server/server/modules/computer-use/semantics/semantic-tool-dispatcher.js +16 -0
  76. package/dist-server/server/modules/computer-use/semantics/semantic-tool-dispatcher.js.map +1 -0
  77. package/dist-server/server/modules/computer-use/semantics/semantic-types.js +2 -0
  78. package/dist-server/server/modules/computer-use/semantics/semantic-types.js.map +1 -0
  79. package/dist-server/server/modules/database/index.js +1 -0
  80. package/dist-server/server/modules/database/index.js.map +1 -1
  81. package/dist-server/server/modules/database/migrations.js +23 -1
  82. package/dist-server/server/modules/database/migrations.js.map +1 -1
  83. package/dist-server/server/modules/database/repositories/notification-channel-endpoints.js +100 -0
  84. package/dist-server/server/modules/database/repositories/notification-channel-endpoints.js.map +1 -0
  85. package/dist-server/server/modules/database/repositories/notification-preferences.js +8 -0
  86. package/dist-server/server/modules/database/repositories/notification-preferences.js.map +1 -1
  87. package/dist-server/server/modules/database/repositories/sessions.db.js +173 -17
  88. package/dist-server/server/modules/database/repositories/sessions.db.js.map +1 -1
  89. package/dist-server/server/modules/database/schema.js +26 -0
  90. package/dist-server/server/modules/database/schema.js.map +1 -1
  91. package/dist-server/server/modules/database/tests/projects.db.integration.test.js.map +1 -0
  92. package/dist-server/server/modules/database/tests/sessions-provider-mapping.test.js +78 -0
  93. package/dist-server/server/modules/database/tests/sessions-provider-mapping.test.js.map +1 -0
  94. package/dist-server/server/modules/database/{repositories → tests}/sessions.db.integration.test.js +10 -0
  95. package/dist-server/server/modules/database/tests/sessions.db.integration.test.js.map +1 -0
  96. package/dist-server/server/modules/notifications/index.js +4 -0
  97. package/dist-server/server/modules/notifications/index.js.map +1 -0
  98. package/dist-server/server/modules/notifications/notifications.routes.js +115 -0
  99. package/dist-server/server/modules/notifications/notifications.routes.js.map +1 -0
  100. package/dist-server/server/modules/notifications/services/desktop-notification-clients.service.js +97 -0
  101. package/dist-server/server/modules/notifications/services/desktop-notification-clients.service.js.map +1 -0
  102. package/dist-server/server/modules/notifications/services/notification-orchestrator.service.js +229 -0
  103. package/dist-server/server/modules/notifications/services/notification-orchestrator.service.js.map +1 -0
  104. package/dist-server/server/modules/notifications/websocket/desktop-notifications-websocket.service.js +79 -0
  105. package/dist-server/server/modules/notifications/websocket/desktop-notifications-websocket.service.js.map +1 -0
  106. package/dist-server/server/modules/projects/services/project-management.service.js +0 -4
  107. package/dist-server/server/modules/projects/services/project-management.service.js.map +1 -1
  108. package/dist-server/server/modules/projects/services/projects-with-sessions-fetch.service.js +10 -38
  109. package/dist-server/server/modules/projects/services/projects-with-sessions-fetch.service.js.map +1 -1
  110. package/dist-server/server/modules/providers/index.js +1 -0
  111. package/dist-server/server/modules/providers/index.js.map +1 -1
  112. package/dist-server/server/modules/providers/list/claude/claude-models.provider.js +5 -0
  113. package/dist-server/server/modules/providers/list/claude/claude-models.provider.js.map +1 -1
  114. package/dist-server/server/modules/providers/list/claude/claude-session-synchronizer.provider.js +24 -1
  115. package/dist-server/server/modules/providers/list/claude/claude-session-synchronizer.provider.js.map +1 -1
  116. package/dist-server/server/modules/providers/list/claude/claude-sessions.provider.js +9 -12
  117. package/dist-server/server/modules/providers/list/claude/claude-sessions.provider.js.map +1 -1
  118. package/dist-server/server/modules/providers/list/claude/claude-skills.provider.js +7 -0
  119. package/dist-server/server/modules/providers/list/claude/claude-skills.provider.js.map +1 -1
  120. package/dist-server/server/modules/providers/list/codex/codex-session-synchronizer.provider.js +7 -3
  121. package/dist-server/server/modules/providers/list/codex/codex-session-synchronizer.provider.js.map +1 -1
  122. package/dist-server/server/modules/providers/list/codex/codex-sessions.provider.js +3 -9
  123. package/dist-server/server/modules/providers/list/codex/codex-sessions.provider.js.map +1 -1
  124. package/dist-server/server/modules/providers/list/codex/codex-skills.provider.js +7 -0
  125. package/dist-server/server/modules/providers/list/codex/codex-skills.provider.js.map +1 -1
  126. package/dist-server/server/modules/providers/list/cursor/cursor-sessions.provider.js +13 -22
  127. package/dist-server/server/modules/providers/list/cursor/cursor-sessions.provider.js.map +1 -1
  128. package/dist-server/server/modules/providers/list/cursor/cursor-skills.provider.js +7 -0
  129. package/dist-server/server/modules/providers/list/cursor/cursor-skills.provider.js.map +1 -1
  130. package/dist-server/server/modules/providers/list/gemini/gemini-models.provider.js +5 -8
  131. package/dist-server/server/modules/providers/list/gemini/gemini-models.provider.js.map +1 -1
  132. package/dist-server/server/modules/providers/list/gemini/gemini-sessions.provider.js +6 -6
  133. package/dist-server/server/modules/providers/list/gemini/gemini-sessions.provider.js.map +1 -1
  134. package/dist-server/server/modules/providers/list/gemini/gemini-skills.provider.js +7 -0
  135. package/dist-server/server/modules/providers/list/gemini/gemini-skills.provider.js.map +1 -1
  136. package/dist-server/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.js +17 -3
  137. package/dist-server/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.js.map +1 -1
  138. package/dist-server/server/modules/providers/list/opencode/opencode-sessions.provider.js +9 -10
  139. package/dist-server/server/modules/providers/list/opencode/opencode-sessions.provider.js.map +1 -1
  140. package/dist-server/server/modules/providers/provider.routes.js +123 -1
  141. package/dist-server/server/modules/providers/provider.routes.js.map +1 -1
  142. package/dist-server/server/modules/providers/services/mcp.service.js +23 -0
  143. package/dist-server/server/modules/providers/services/mcp.service.js.map +1 -1
  144. package/dist-server/server/modules/providers/services/provider-capabilities.service.js +65 -0
  145. package/dist-server/server/modules/providers/services/provider-capabilities.service.js.map +1 -0
  146. package/dist-server/server/modules/providers/services/provider-models.service.js +1 -1
  147. package/dist-server/server/modules/providers/services/provider-models.service.js.map +1 -1
  148. package/dist-server/server/modules/providers/services/sessions-watcher.service.js +62 -23
  149. package/dist-server/server/modules/providers/services/sessions-watcher.service.js.map +1 -1
  150. package/dist-server/server/modules/providers/services/sessions.service.js +62 -4
  151. package/dist-server/server/modules/providers/services/sessions.service.js.map +1 -1
  152. package/dist-server/server/modules/providers/services/skills.service.js +11 -0
  153. package/dist-server/server/modules/providers/services/skills.service.js.map +1 -1
  154. package/dist-server/server/modules/providers/shared/skills/skills.provider.js +163 -1
  155. package/dist-server/server/modules/providers/shared/skills/skills.provider.js.map +1 -1
  156. package/dist-server/server/modules/providers/tests/opencode-sessions.test.js +45 -0
  157. package/dist-server/server/modules/providers/tests/opencode-sessions.test.js.map +1 -1
  158. package/dist-server/server/modules/providers/tests/skills.test.js +160 -0
  159. package/dist-server/server/modules/providers/tests/skills.test.js.map +1 -1
  160. package/dist-server/server/modules/websocket/index.js +1 -0
  161. package/dist-server/server/modules/websocket/index.js.map +1 -1
  162. package/dist-server/server/modules/websocket/services/chat-run-registry.service.js +252 -0
  163. package/dist-server/server/modules/websocket/services/chat-run-registry.service.js.map +1 -0
  164. package/dist-server/server/modules/websocket/services/chat-session-writer.service.js +105 -0
  165. package/dist-server/server/modules/websocket/services/chat-session-writer.service.js.map +1 -0
  166. package/dist-server/server/modules/websocket/services/chat-websocket.service.js +218 -156
  167. package/dist-server/server/modules/websocket/services/chat-websocket.service.js.map +1 -1
  168. package/dist-server/server/modules/websocket/services/desktop-agent-websocket.service.js +39 -0
  169. package/dist-server/server/modules/websocket/services/desktop-agent-websocket.service.js.map +1 -0
  170. package/dist-server/server/modules/websocket/services/shell-websocket.service.js +83 -31
  171. package/dist-server/server/modules/websocket/services/shell-websocket.service.js.map +1 -1
  172. package/dist-server/server/modules/websocket/services/websocket-server.service.js +10 -0
  173. package/dist-server/server/modules/websocket/services/websocket-server.service.js.map +1 -1
  174. package/dist-server/server/modules/websocket/tests/chat-run-registry.test.js +216 -0
  175. package/dist-server/server/modules/websocket/tests/chat-run-registry.test.js.map +1 -0
  176. package/dist-server/server/openai-codex.js +24 -14
  177. package/dist-server/server/openai-codex.js.map +1 -1
  178. package/dist-server/server/opencode-cli.js +21 -8
  179. package/dist-server/server/opencode-cli.js.map +1 -1
  180. package/dist-server/server/opencode-cli.test.js +19 -1
  181. package/dist-server/server/opencode-cli.test.js.map +1 -1
  182. package/dist-server/server/routes/agent.js +1 -1
  183. package/dist-server/server/routes/settings.js +1 -1
  184. package/dist-server/server/routes/settings.js.map +1 -1
  185. package/dist-server/server/services/notification-orchestrator.js +1 -176
  186. package/dist-server/server/services/notification-orchestrator.js.map +1 -1
  187. package/dist-server/server/services/tests/notification-orchestrator.test.js +64 -0
  188. package/dist-server/server/services/tests/notification-orchestrator.test.js.map +1 -0
  189. package/dist-server/server/shared/{claude-cli-path.test.js → tests/claude-cli-path.test.js} +1 -1
  190. package/dist-server/server/shared/tests/claude-cli-path.test.js.map +1 -0
  191. package/dist-server/server/shared/tests/slice-tail-page.test.js +35 -0
  192. package/dist-server/server/shared/tests/slice-tail-page.test.js.map +1 -0
  193. package/dist-server/server/shared/utils.js +73 -1
  194. package/dist-server/server/shared/utils.js.map +1 -1
  195. package/dist-server/server/voice-proxy.js +226 -0
  196. package/dist-server/server/voice-proxy.js.map +1 -0
  197. package/electron/assets/logo-macos.icns +0 -0
  198. package/electron/assets/logo-macos.png +0 -0
  199. package/electron/assets/logo-windows.ico +0 -0
  200. package/electron/cloud.js +260 -0
  201. package/electron/computerAgent.js +290 -0
  202. package/electron/desktopNotifications.js +378 -0
  203. package/electron/desktopWindow.js +781 -0
  204. package/electron/launcher/index.html +14 -0
  205. package/electron/launcher/launcher.css +801 -0
  206. package/electron/launcher/launcher.js +829 -0
  207. package/electron/localServer.js +550 -0
  208. package/electron/main.js +1060 -0
  209. package/electron/preload.cjs +63 -0
  210. package/electron/scripts/generate-macos-icon.js +62 -0
  211. package/electron/serverInstaller.js +277 -0
  212. package/electron/tabs.js +87 -0
  213. package/electron/viewHost.js +331 -0
  214. package/package.json +86 -5
  215. package/public/api-docs.html +36 -18
  216. package/scripts/build-computer-semantics.mjs +133 -0
  217. package/scripts/copy-computer-semantics-bin.mjs +24 -0
  218. package/scripts/release/build-server-bundle.js +176 -0
  219. package/scripts/release/prepare-desktop-app.js +158 -0
  220. package/server/browser-use-mcp.ts +384 -0
  221. package/server/claude-sdk.js +28 -6
  222. package/server/cli.js +15 -6
  223. package/server/computer-use-agent.ts +279 -0
  224. package/server/computer-use-mcp.ts +574 -0
  225. package/server/cursor-cli.js +27 -11
  226. package/server/gemini-cli.js +17 -2
  227. package/server/index.js +151 -47
  228. package/server/load-env.js +1 -1
  229. package/server/modules/browser-use/browser-use-mcp.routes.ts +120 -0
  230. package/server/modules/browser-use/browser-use.routes.ts +96 -0
  231. package/server/modules/browser-use/browser-use.service.ts +836 -0
  232. package/server/modules/browser-use/tests/browser-use.service.test.ts +10 -0
  233. package/server/modules/computer-use/actions/raw-action-dispatcher.ts +67 -0
  234. package/server/modules/computer-use/actions/raw-action-types.ts +28 -0
  235. package/server/modules/computer-use/computer-executor.ts +242 -0
  236. package/server/modules/computer-use/computer-semantics.service.ts +460 -0
  237. package/server/modules/computer-use/computer-use-mcp.routes.ts +141 -0
  238. package/server/modules/computer-use/computer-use.routes.ts +211 -0
  239. package/server/modules/computer-use/computer-use.service.ts +920 -0
  240. package/server/modules/computer-use/desktop-agent-relay.service.ts +158 -0
  241. package/server/modules/computer-use/index.ts +2 -0
  242. package/server/modules/computer-use/semantics/adapters/helper-semantic-adapter.ts +82 -0
  243. package/server/modules/computer-use/semantics/adapters/macos/macos-semantic-adapter.ts +5 -0
  244. package/server/modules/computer-use/semantics/adapters/semantic-adapter.ts +23 -0
  245. package/server/modules/computer-use/semantics/adapters/windows/windows-semantic-adapter.ts +5 -0
  246. package/server/modules/computer-use/semantics/bin/darwin-arm64/CloudCLISemantics +0 -0
  247. package/server/modules/computer-use/semantics/bin/darwin-x64/CloudCLISemantics +0 -0
  248. package/server/modules/computer-use/semantics/bin/win32-arm64/CloudCLISemantics.exe +0 -0
  249. package/server/modules/computer-use/semantics/bin/win32-x64/CloudCLISemantics.exe +0 -0
  250. package/server/modules/computer-use/semantics/helpers/macos/CloudCLISemantics.swift +467 -0
  251. package/server/modules/computer-use/semantics/helpers/semantic-helper-process.ts +124 -0
  252. package/server/modules/computer-use/semantics/helpers/semantic-helper-resolver.ts +97 -0
  253. package/server/modules/computer-use/semantics/helpers/windows/CloudCLISemantics.csproj +11 -0
  254. package/server/modules/computer-use/semantics/helpers/windows/Program.cs +534 -0
  255. package/server/modules/computer-use/semantics/semantic-session-store.ts +87 -0
  256. package/server/modules/computer-use/semantics/semantic-tool-dispatcher.ts +17 -0
  257. package/server/modules/computer-use/semantics/semantic-types.ts +58 -0
  258. package/server/modules/database/index.ts +1 -0
  259. package/server/modules/database/migrations.ts +25 -0
  260. package/server/modules/database/repositories/notification-channel-endpoints.ts +153 -0
  261. package/server/modules/database/repositories/notification-preferences.ts +12 -1
  262. package/server/modules/database/repositories/sessions.db.ts +227 -23
  263. package/server/modules/database/schema.ts +27 -0
  264. package/server/modules/database/tests/sessions-provider-mapping.test.ts +108 -0
  265. package/server/modules/database/{repositories → tests}/sessions.db.integration.test.ts +12 -0
  266. package/server/modules/notifications/index.ts +13 -0
  267. package/server/modules/notifications/notifications.routes.ts +127 -0
  268. package/server/modules/notifications/services/desktop-notification-clients.service.ts +124 -0
  269. package/server/modules/notifications/services/notification-orchestrator.service.js +288 -0
  270. package/server/modules/notifications/websocket/desktop-notifications-websocket.service.ts +109 -0
  271. package/server/modules/projects/services/project-management.service.ts +0 -8
  272. package/server/modules/projects/services/projects-with-sessions-fetch.service.ts +12 -53
  273. package/server/modules/providers/README.md +1 -1
  274. package/server/modules/providers/index.ts +1 -0
  275. package/server/modules/providers/list/claude/claude-models.provider.ts +5 -0
  276. package/server/modules/providers/list/claude/claude-session-synchronizer.provider.ts +26 -1
  277. package/server/modules/providers/list/claude/claude-sessions.provider.ts +9 -14
  278. package/server/modules/providers/list/claude/claude-skills.provider.ts +8 -0
  279. package/server/modules/providers/list/codex/codex-session-synchronizer.provider.ts +7 -3
  280. package/server/modules/providers/list/codex/codex-sessions.provider.ts +3 -12
  281. package/server/modules/providers/list/codex/codex-skills.provider.ts +8 -0
  282. package/server/modules/providers/list/cursor/cursor-sessions.provider.ts +13 -22
  283. package/server/modules/providers/list/cursor/cursor-skills.provider.ts +8 -0
  284. package/server/modules/providers/list/gemini/gemini-models.provider.ts +5 -8
  285. package/server/modules/providers/list/gemini/gemini-sessions.provider.ts +6 -6
  286. package/server/modules/providers/list/gemini/gemini-skills.provider.ts +8 -0
  287. package/server/modules/providers/list/opencode/opencode-session-synchronizer.provider.ts +18 -4
  288. package/server/modules/providers/list/opencode/opencode-sessions.provider.ts +9 -12
  289. package/server/modules/providers/provider.routes.ts +167 -1
  290. package/server/modules/providers/services/mcp.service.ts +26 -0
  291. package/server/modules/providers/services/provider-capabilities.service.ts +91 -0
  292. package/server/modules/providers/services/provider-models.service.ts +1 -1
  293. package/server/modules/providers/services/sessions-watcher.service.ts +71 -25
  294. package/server/modules/providers/services/sessions.service.ts +79 -4
  295. package/server/modules/providers/services/skills.service.ts +25 -1
  296. package/server/modules/providers/shared/skills/skills.provider.ts +223 -0
  297. package/server/modules/providers/tests/opencode-sessions.test.ts +49 -0
  298. package/server/modules/providers/tests/skills.test.ts +212 -0
  299. package/server/modules/websocket/README.md +33 -27
  300. package/server/modules/websocket/index.ts +1 -0
  301. package/server/modules/websocket/services/chat-run-registry.service.ts +327 -0
  302. package/server/modules/websocket/services/chat-session-writer.service.ts +145 -0
  303. package/server/modules/websocket/services/chat-websocket.service.ts +292 -207
  304. package/server/modules/websocket/services/desktop-agent-websocket.service.ts +51 -0
  305. package/server/modules/websocket/services/shell-websocket.service.ts +108 -32
  306. package/server/modules/websocket/services/websocket-server.service.ts +12 -0
  307. package/server/modules/websocket/tests/chat-run-registry.test.ts +244 -0
  308. package/server/openai-codex.js +24 -14
  309. package/server/opencode-cli.js +21 -8
  310. package/server/opencode-cli.test.js +20 -1
  311. package/server/routes/agent.js +1 -1
  312. package/server/routes/settings.js +6 -1
  313. package/server/services/notification-orchestrator.js +3 -224
  314. package/server/services/tests/notification-orchestrator.test.js +80 -0
  315. package/server/shared/interfaces.ts +15 -0
  316. package/server/shared/tests/slice-tail-page.test.ts +42 -0
  317. package/server/shared/types.ts +84 -1
  318. package/server/shared/utils.ts +95 -1
  319. package/server/voice-proxy.js +224 -0
  320. package/dist/assets/index-73Xw3i9v.css +0 -32
  321. package/dist/assets/index-9n7A21AT.js +0 -1361
  322. package/dist/modelConstants.js +0 -848
  323. package/dist-server/server/modules/database/repositories/projects.db.integration.test.js.map +0 -1
  324. package/dist-server/server/modules/database/repositories/sessions.db.integration.test.js.map +0 -1
  325. package/dist-server/server/shared/claude-cli-path.test.js.map +0 -1
  326. package/public/modelConstants.js +0 -848
  327. /package/dist-server/server/modules/database/{repositories → tests}/projects.db.integration.test.js +0 -0
  328. /package/server/modules/database/{repositories → tests}/projects.db.integration.test.ts +0 -0
  329. /package/server/shared/{claude-cli-path.test.ts → tests/claude-cli-path.test.ts} +0 -0
@@ -1,848 +0,0 @@
1
- /**
2
- * Documentation Model Definitions
3
- * Used by README links and the public API docs.
4
- */
5
-
6
- /**
7
- * Claude (Anthropic) Models
8
- */
9
- export const CLAUDE_MODELS = {
10
- OPTIONS: [
11
- {
12
- value: "default",
13
- label: "Default (recommended)",
14
- description:
15
- "Use the default model (currently Opus 4.8 (1M context)) · $5/$25 per Mtok",
16
- },
17
- {
18
- value: "sonnet",
19
- label: "Sonnet",
20
- description: "Sonnet 4.6 · Best for everyday tasks · $3/$15 per Mtok",
21
- },
22
- {
23
- value: "sonnet[1m]",
24
- label: "Sonnet (1M context)",
25
- description: "Sonnet 4.6 for long sessions · $3/$15 per Mtok",
26
- },
27
- {
28
- value: "opus[1m]",
29
- label: "Opus 4.8 (1M context)",
30
- description:
31
- "Opus 4.8 with 1M context · Most capable for complex work · $5/$25 per Mtok",
32
- },
33
- {
34
- value: "haiku",
35
- label: "Haiku",
36
- description: "Haiku 4.5 · Fastest for quick answers · $1/$5 per Mtok",
37
- },
38
- ],
39
-
40
- DEFAULT: "default",
41
- };
42
-
43
- /**
44
- * Cursor Models
45
- */
46
- export const CURSOR_MODELS = {
47
- OPTIONS: [
48
- { value: "auto", label: "auto", description: "Auto" },
49
- {
50
- value: "composer-2-fast",
51
- label: "composer-2-fast",
52
- description: "Composer 2 Fast",
53
- },
54
- {
55
- value: "composer-2",
56
- label: "composer-2",
57
- description: "Composer 2",
58
- },
59
- {
60
- value: "gpt-5.3-codex-low",
61
- label: "gpt-5.3-codex-low",
62
- description: "Codex 5.3 Low",
63
- },
64
- {
65
- value: "gpt-5.3-codex-low-fast",
66
- label: "gpt-5.3-codex-low-fast",
67
- description: "Codex 5.3 Low Fast",
68
- },
69
- {
70
- value: "gpt-5.3-codex",
71
- label: "gpt-5.3-codex",
72
- description: "Codex 5.3",
73
- },
74
- {
75
- value: "gpt-5.3-codex-fast",
76
- label: "gpt-5.3-codex-fast",
77
- description: "Codex 5.3 Fast",
78
- },
79
- {
80
- value: "gpt-5.3-codex-high",
81
- label: "gpt-5.3-codex-high",
82
- description: "Codex 5.3 High",
83
- },
84
- {
85
- value: "gpt-5.3-codex-high-fast",
86
- label: "gpt-5.3-codex-high-fast",
87
- description: "Codex 5.3 High Fast",
88
- },
89
- {
90
- value: "gpt-5.3-codex-xhigh",
91
- label: "gpt-5.3-codex-xhigh",
92
- description: "Codex 5.3 Extra High",
93
- },
94
- {
95
- value: "gpt-5.3-codex-xhigh-fast",
96
- label: "gpt-5.3-codex-xhigh-fast",
97
- description: "Codex 5.3 Extra High Fast",
98
- },
99
- { value: "gpt-5.2", label: "gpt-5.2", description: "GPT-5.2" },
100
- {
101
- value: "gpt-5.2-codex-low",
102
- label: "gpt-5.2-codex-low",
103
- description: "Codex 5.2 Low",
104
- },
105
- {
106
- value: "gpt-5.2-codex-low-fast",
107
- label: "gpt-5.2-codex-low-fast",
108
- description: "Codex 5.2 Low Fast",
109
- },
110
- {
111
- value: "gpt-5.2-codex",
112
- label: "gpt-5.2-codex",
113
- description: "Codex 5.2",
114
- },
115
- {
116
- value: "gpt-5.2-codex-fast",
117
- label: "gpt-5.2-codex-fast",
118
- description: "Codex 5.2 Fast",
119
- },
120
- {
121
- value: "gpt-5.2-codex-high",
122
- label: "gpt-5.2-codex-high",
123
- description: "Codex 5.2 High",
124
- },
125
- {
126
- value: "gpt-5.2-codex-high-fast",
127
- label: "gpt-5.2-codex-high-fast",
128
- description: "Codex 5.2 High Fast",
129
- },
130
- {
131
- value: "gpt-5.2-codex-xhigh",
132
- label: "gpt-5.2-codex-xhigh",
133
- description: "Codex 5.2 Extra High",
134
- },
135
- {
136
- value: "gpt-5.2-codex-xhigh-fast",
137
- label: "gpt-5.2-codex-xhigh-fast",
138
- description: "Codex 5.2 Extra High Fast",
139
- },
140
- {
141
- value: "gpt-5.1-codex-max-low",
142
- label: "gpt-5.1-codex-max-low",
143
- description: "Codex 5.1 Max Low",
144
- },
145
- {
146
- value: "gpt-5.1-codex-max-low-fast",
147
- label: "gpt-5.1-codex-max-low-fast",
148
- description: "Codex 5.1 Max Low Fast",
149
- },
150
- {
151
- value: "gpt-5.1-codex-max-medium",
152
- label: "gpt-5.1-codex-max-medium",
153
- description: "Codex 5.1 Max",
154
- },
155
- {
156
- value: "gpt-5.1-codex-max-medium-fast",
157
- label: "gpt-5.1-codex-max-medium-fast",
158
- description: "Codex 5.1 Max Medium Fast",
159
- },
160
- {
161
- value: "gpt-5.1-codex-max-high",
162
- label: "gpt-5.1-codex-max-high",
163
- description: "Codex 5.1 Max High",
164
- },
165
- {
166
- value: "gpt-5.1-codex-max-high-fast",
167
- label: "gpt-5.1-codex-max-high-fast",
168
- description: "Codex 5.1 Max High Fast",
169
- },
170
- {
171
- value: "gpt-5.1-codex-max-xhigh",
172
- label: "gpt-5.1-codex-max-xhigh",
173
- description: "Codex 5.1 Max Extra High",
174
- },
175
- {
176
- value: "gpt-5.1-codex-max-xhigh-fast",
177
- label: "gpt-5.1-codex-max-xhigh-fast",
178
- description: "Codex 5.1 Max Extra High Fast",
179
- },
180
- {
181
- value: "composer-2.5",
182
- label: "composer-2.5",
183
- description: "Composer 2.5",
184
- },
185
- {
186
- value: "gpt-5.5-high",
187
- label: "gpt-5.5-high",
188
- description: "GPT-5.5 1M High",
189
- },
190
- {
191
- value: "gpt-5.5-high-fast",
192
- label: "gpt-5.5-high-fast",
193
- description: "GPT-5.5 High Fast",
194
- },
195
- {
196
- value: "claude-opus-4-7-thinking-high",
197
- label: "claude-opus-4-7-thinking-high",
198
- description: "Opus 4.7 1M High Thinking",
199
- },
200
- {
201
- value: "gpt-5.4-high",
202
- label: "gpt-5.4-high",
203
- description: "GPT-5.4 1M High",
204
- },
205
- {
206
- value: "gpt-5.4-high-fast",
207
- label: "gpt-5.4-high-fast",
208
- description: "GPT-5.4 High Fast",
209
- },
210
- {
211
- value: "claude-4.6-opus-high-thinking",
212
- label: "claude-4.6-opus-high-thinking",
213
- description: "Opus 4.6 1M Thinking",
214
- },
215
- {
216
- value: "claude-4.6-opus-high-thinking-fast",
217
- label: "claude-4.6-opus-high-thinking-fast",
218
- description: "Opus 4.6 1M Thinking Fast",
219
- },
220
- {
221
- value: "composer-2.5-fast",
222
- label: "composer-2.5-fast",
223
- description: "Composer 2.5 Fast",
224
- },
225
- {
226
- value: "gpt-5.5-none",
227
- label: "gpt-5.5-none",
228
- description: "GPT-5.5 1M None",
229
- },
230
- {
231
- value: "gpt-5.5-none-fast",
232
- label: "gpt-5.5-none-fast",
233
- description: "GPT-5.5 None Fast",
234
- },
235
- {
236
- value: "gpt-5.5-low",
237
- label: "gpt-5.5-low",
238
- description: "GPT-5.5 1M Low",
239
- },
240
- {
241
- value: "gpt-5.5-low-fast",
242
- label: "gpt-5.5-low-fast",
243
- description: "GPT-5.5 Low Fast",
244
- },
245
- {
246
- value: "gpt-5.5-medium",
247
- label: "gpt-5.5-medium",
248
- description: "GPT-5.5 1M",
249
- },
250
- {
251
- value: "gpt-5.5-medium-fast",
252
- label: "gpt-5.5-medium-fast",
253
- description: "GPT-5.5 Fast",
254
- },
255
- {
256
- value: "gpt-5.5-extra-high",
257
- label: "gpt-5.5-extra-high",
258
- description: "GPT-5.5 1M Extra High",
259
- },
260
- {
261
- value: "gpt-5.5-extra-high-fast",
262
- label: "gpt-5.5-extra-high-fast",
263
- description: "GPT-5.5 Extra High Fast",
264
- },
265
- {
266
- value: "claude-4.6-sonnet-medium",
267
- label: "claude-4.6-sonnet-medium",
268
- description: "Sonnet 4.6 1M",
269
- },
270
- {
271
- value: "claude-4.6-sonnet-medium-thinking",
272
- label: "claude-4.6-sonnet-medium-thinking",
273
- description: "Sonnet 4.6 1M Thinking",
274
- },
275
- {
276
- value: "claude-opus-4-7-low",
277
- label: "claude-opus-4-7-low",
278
- description: "Opus 4.7 1M Low",
279
- },
280
- {
281
- value: "claude-opus-4-7-low-fast",
282
- label: "claude-opus-4-7-low-fast",
283
- description: "Opus 4.7 1M Low Fast",
284
- },
285
- {
286
- value: "claude-opus-4-7-medium",
287
- label: "claude-opus-4-7-medium",
288
- description: "Opus 4.7 1M Medium",
289
- },
290
- {
291
- value: "claude-opus-4-7-medium-fast",
292
- label: "claude-opus-4-7-medium-fast",
293
- description: "Opus 4.7 1M Medium Fast",
294
- },
295
- {
296
- value: "claude-opus-4-7-high",
297
- label: "claude-opus-4-7-high",
298
- description: "Opus 4.7 1M High",
299
- },
300
- {
301
- value: "claude-opus-4-7-high-fast",
302
- label: "claude-opus-4-7-high-fast",
303
- description: "Opus 4.7 1M High Fast",
304
- },
305
- {
306
- value: "claude-opus-4-7-xhigh",
307
- label: "claude-opus-4-7-xhigh",
308
- description: "Opus 4.7 1M",
309
- },
310
- {
311
- value: "claude-opus-4-7-xhigh-fast",
312
- label: "claude-opus-4-7-xhigh-fast",
313
- description: "Opus 4.7 1M Fast",
314
- },
315
- {
316
- value: "claude-opus-4-7-max",
317
- label: "claude-opus-4-7-max",
318
- description: "Opus 4.7 1M Max",
319
- },
320
- {
321
- value: "claude-opus-4-7-max-fast",
322
- label: "claude-opus-4-7-max-fast",
323
- description: "Opus 4.7 1M Max Fast",
324
- },
325
- {
326
- value: "claude-opus-4-7-thinking-low",
327
- label: "claude-opus-4-7-thinking-low",
328
- description: "Opus 4.7 1M Low Thinking",
329
- },
330
- {
331
- value: "claude-opus-4-7-thinking-low-fast",
332
- label: "claude-opus-4-7-thinking-low-fast",
333
- description: "Opus 4.7 1M Low Thinking Fast",
334
- },
335
- {
336
- value: "claude-opus-4-7-thinking-medium",
337
- label: "claude-opus-4-7-thinking-medium",
338
- description: "Opus 4.7 1M Medium Thinking",
339
- },
340
- {
341
- value: "claude-opus-4-7-thinking-medium-fast",
342
- label: "claude-opus-4-7-thinking-medium-fast",
343
- description: "Opus 4.7 1M Medium Thinking Fast",
344
- },
345
- {
346
- value: "claude-opus-4-7-thinking-high-fast",
347
- label: "claude-opus-4-7-thinking-high-fast",
348
- description: "Opus 4.7 1M High Thinking Fast",
349
- },
350
- {
351
- value: "claude-opus-4-7-thinking-xhigh",
352
- label: "claude-opus-4-7-thinking-xhigh",
353
- description: "Opus 4.7 1M Thinking",
354
- },
355
- {
356
- value: "claude-opus-4-7-thinking-xhigh-fast",
357
- label: "claude-opus-4-7-thinking-xhigh-fast",
358
- description: "Opus 4.7 1M Thinking Fast",
359
- },
360
- {
361
- value: "claude-opus-4-7-thinking-max",
362
- label: "claude-opus-4-7-thinking-max",
363
- description: "Opus 4.7 1M Max Thinking",
364
- },
365
- {
366
- value: "claude-opus-4-7-thinking-max-fast",
367
- label: "claude-opus-4-7-thinking-max-fast",
368
- description: "Opus 4.7 1M Max Thinking Fast",
369
- },
370
- {
371
- value: "grok-build-0.1",
372
- label: "grok-build-0.1",
373
- description: "Grok Build 0.1 1M",
374
- },
375
- {
376
- value: "gpt-5.4-low",
377
- label: "gpt-5.4-low",
378
- description: "GPT-5.4 1M Low",
379
- },
380
- {
381
- value: "gpt-5.4-medium",
382
- label: "gpt-5.4-medium",
383
- description: "GPT-5.4 1M",
384
- },
385
- {
386
- value: "gpt-5.4-medium-fast",
387
- label: "gpt-5.4-medium-fast",
388
- description: "GPT-5.4 Fast",
389
- },
390
- {
391
- value: "gpt-5.4-xhigh",
392
- label: "gpt-5.4-xhigh",
393
- description: "GPT-5.4 1M Extra High",
394
- },
395
- {
396
- value: "gpt-5.4-xhigh-fast",
397
- label: "gpt-5.4-xhigh-fast",
398
- description: "GPT-5.4 Extra High Fast",
399
- },
400
- {
401
- value: "claude-4.6-opus-high",
402
- label: "claude-4.6-opus-high",
403
- description: "Opus 4.6 1M",
404
- },
405
- {
406
- value: "claude-4.6-opus-max",
407
- label: "claude-4.6-opus-max",
408
- description: "Opus 4.6 1M Max",
409
- },
410
- {
411
- value: "claude-4.6-opus-max-thinking",
412
- label: "claude-4.6-opus-max-thinking",
413
- description: "Opus 4.6 1M Max Thinking",
414
- },
415
- {
416
- value: "claude-4.6-opus-max-thinking-fast",
417
- label: "claude-4.6-opus-max-thinking-fast",
418
- description: "Opus 4.6 1M Max Thinking Fast",
419
- },
420
- {
421
- value: "claude-4.5-opus-high",
422
- label: "claude-4.5-opus-high",
423
- description: "Opus 4.5",
424
- },
425
- {
426
- value: "claude-4.5-opus-high-thinking",
427
- label: "claude-4.5-opus-high-thinking",
428
- description: "Opus 4.5 Thinking",
429
- },
430
- {
431
- value: "gpt-5.2-low",
432
- label: "gpt-5.2-low",
433
- description: "GPT-5.2 Low",
434
- },
435
- {
436
- value: "gpt-5.2-low-fast",
437
- label: "gpt-5.2-low-fast",
438
- description: "GPT-5.2 Low Fast",
439
- },
440
- {
441
- value: "gpt-5.2-fast",
442
- label: "gpt-5.2-fast",
443
- description: "GPT-5.2 Fast",
444
- },
445
- {
446
- value: "gpt-5.2-high",
447
- label: "gpt-5.2-high",
448
- description: "GPT-5.2 High",
449
- },
450
- {
451
- value: "gpt-5.2-high-fast",
452
- label: "gpt-5.2-high-fast",
453
- description: "GPT-5.2 High Fast",
454
- },
455
- {
456
- value: "gpt-5.2-xhigh",
457
- label: "gpt-5.2-xhigh",
458
- description: "GPT-5.2 Extra High",
459
- },
460
- {
461
- value: "gpt-5.2-xhigh-fast",
462
- label: "gpt-5.2-xhigh-fast",
463
- description: "GPT-5.2 Extra High Fast",
464
- },
465
- {
466
- value: "gemini-3.1-pro",
467
- label: "gemini-3.1-pro",
468
- description: "Gemini 3.1 Pro",
469
- },
470
- {
471
- value: "gpt-5.4-mini-none",
472
- label: "gpt-5.4-mini-none",
473
- description: "GPT-5.4 Mini None",
474
- },
475
- {
476
- value: "gpt-5.4-mini-low",
477
- label: "gpt-5.4-mini-low",
478
- description: "GPT-5.4 Mini Low",
479
- },
480
- {
481
- value: "gpt-5.4-mini-medium",
482
- label: "gpt-5.4-mini-medium",
483
- description: "GPT-5.4 Mini",
484
- },
485
- {
486
- value: "gpt-5.4-mini-high",
487
- label: "gpt-5.4-mini-high",
488
- description: "GPT-5.4 Mini High",
489
- },
490
- {
491
- value: "gpt-5.4-mini-xhigh",
492
- label: "gpt-5.4-mini-xhigh",
493
- description: "GPT-5.4 Mini Extra High",
494
- },
495
- {
496
- value: "gpt-5.4-nano-none",
497
- label: "gpt-5.4-nano-none",
498
- description: "GPT-5.4 Nano None",
499
- },
500
- {
501
- value: "gpt-5.4-nano-low",
502
- label: "gpt-5.4-nano-low",
503
- description: "GPT-5.4 Nano Low",
504
- },
505
- {
506
- value: "gpt-5.4-nano-medium",
507
- label: "gpt-5.4-nano-medium",
508
- description: "GPT-5.4 Nano",
509
- },
510
- {
511
- value: "gpt-5.4-nano-high",
512
- label: "gpt-5.4-nano-high",
513
- description: "GPT-5.4 Nano High",
514
- },
515
- {
516
- value: "gpt-5.4-nano-xhigh",
517
- label: "gpt-5.4-nano-xhigh",
518
- description: "GPT-5.4 Nano Extra High",
519
- },
520
- {
521
- value: "grok-4.3",
522
- label: "grok-4.3",
523
- description: "Grok 4.3 1M",
524
- },
525
- {
526
- value: "claude-4.5-sonnet",
527
- label: "claude-4.5-sonnet",
528
- description: "Sonnet 4.5",
529
- },
530
- {
531
- value: "claude-4.5-sonnet-thinking",
532
- label: "claude-4.5-sonnet-thinking",
533
- description: "Sonnet 4.5 Thinking",
534
- },
535
- {
536
- value: "gpt-5.1-low",
537
- label: "gpt-5.1-low",
538
- description: "GPT-5.1 Low",
539
- },
540
- {
541
- value: "gpt-5.1",
542
- label: "gpt-5.1",
543
- description: "GPT-5.1",
544
- },
545
- {
546
- value: "gpt-5.1-high",
547
- label: "gpt-5.1-high",
548
- description: "GPT-5.1 High",
549
- },
550
- {
551
- value: "gemini-3-flash",
552
- label: "gemini-3-flash",
553
- description: "Gemini 3 Flash",
554
- },
555
- {
556
- value: "gemini-3.5-flash",
557
- label: "gemini-3.5-flash",
558
- description: "Gemini 3.5 Flash",
559
- },
560
- {
561
- value: "gpt-5.1-codex-mini-low",
562
- label: "gpt-5.1-codex-mini-low",
563
- description: "Codex 5.1 Mini Low",
564
- },
565
- {
566
- value: "gpt-5.1-codex-mini",
567
- label: "gpt-5.1-codex-mini",
568
- description: "Codex 5.1 Mini",
569
- },
570
- {
571
- value: "gpt-5.1-codex-mini-high",
572
- label: "gpt-5.1-codex-mini-high",
573
- description: "Codex 5.1 Mini High",
574
- },
575
- {
576
- value: "claude-4-sonnet",
577
- label: "claude-4-sonnet",
578
- description: "Sonnet 4",
579
- },
580
- {
581
- value: "claude-4-sonnet-thinking",
582
- label: "claude-4-sonnet-thinking",
583
- description: "Sonnet 4 Thinking",
584
- },
585
- {
586
- value: "gpt-5-mini",
587
- label: "gpt-5-mini",
588
- description: "GPT-5 Mini",
589
- },
590
- {
591
- value: "kimi-k2.5",
592
- label: "kimi-k2.5",
593
- description: "Kimi K2.5",
594
- },
595
- ],
596
-
597
- DEFAULT: "composer-2.5-fast",
598
- };
599
-
600
- /**
601
- * Codex (OpenAI) Models
602
- */
603
- export const CODEX_MODELS = {
604
- OPTIONS: [
605
- { value: "gpt-5.5", label: "gpt-5.5" },
606
- { value: "gpt-5.4", label: "gpt-5.4" },
607
- { value: "gpt-5.4-mini", label: "gpt-5.4-mini" },
608
- { value: "gpt-5.3-codex", label: "gpt-5.3-codex" },
609
- { value: "gpt-5.2", label: "gpt-5.2" },
610
- ],
611
-
612
- DEFAULT: "gpt-5.4",
613
- };
614
-
615
- /**
616
- * Gemini Models
617
- */
618
- export const GEMINI_MODELS = {
619
- OPTIONS: [
620
- { value: "gemini-3.1-pro-preview", label: "Gemini 3.1 Pro Preview" },
621
- { value: "gemini-3-pro-preview", label: "Gemini 3 Pro Preview" },
622
- { value: "gemini-3-flash-preview", label: "Gemini 3 Flash Preview" },
623
- { value: "gemini-2.5-flash", label: "Gemini 2.5 Flash" },
624
- { value: "gemini-2.5-pro", label: "Gemini 2.5 Pro" },
625
- { value: "gemini-2.0-flash-lite", label: "Gemini 2.0 Flash Lite" },
626
- { value: "gemini-2.0-flash", label: "Gemini 2.0 Flash" },
627
- { value: "gemini-2.0-pro-exp", label: "Gemini 2.0 Pro Experimental" },
628
- {
629
- value: "gemini-2.0-flash-thinking-exp",
630
- label: "Gemini 2.0 Flash Thinking",
631
- },
632
- ],
633
-
634
- DEFAULT: "gemini-3.1-pro-preview",
635
- };
636
-
637
- /**
638
- * OpenCode Models
639
- *
640
- * OpenCode model ids include the upstream provider prefix.
641
- */
642
- export const OPENCODE_MODELS = {
643
- OPTIONS: [
644
- {
645
- value: "opencode/big-pickle",
646
- label: "Big Pickle",
647
- description: "opencode - opencode/big-pickle",
648
- },
649
- {
650
- value: "opencode/deepseek-v4-flash-free",
651
- label: "Deepseek V4 Flash Free",
652
- description: "opencode - opencode/deepseek-v4-flash-free",
653
- },
654
- {
655
- value: "opencode/nemotron-3-super-free",
656
- label: "Nemotron 3 Super Free",
657
- description: "opencode - opencode/nemotron-3-super-free",
658
- },
659
- {
660
- value: "anthropic/claude-3-5-haiku-20241022",
661
- label: "Claude 3.5 Haiku (2024-10-22)",
662
- description: "anthropic - anthropic/claude-3-5-haiku-20241022",
663
- },
664
- {
665
- value: "anthropic/claude-3-5-haiku-latest",
666
- label: "Claude 3.5 Haiku Latest",
667
- description: "anthropic - anthropic/claude-3-5-haiku-latest",
668
- },
669
- {
670
- value: "anthropic/claude-3-5-sonnet-20240620",
671
- label: "Claude 3.5 Sonnet (2024-06-20)",
672
- description: "anthropic - anthropic/claude-3-5-sonnet-20240620",
673
- },
674
- {
675
- value: "anthropic/claude-3-5-sonnet-20241022",
676
- label: "Claude 3.5 Sonnet (2024-10-22)",
677
- description: "anthropic - anthropic/claude-3-5-sonnet-20241022",
678
- },
679
- {
680
- value: "anthropic/claude-3-7-sonnet-20250219",
681
- label: "Claude 3.7 Sonnet (2025-02-19)",
682
- description: "anthropic - anthropic/claude-3-7-sonnet-20250219",
683
- },
684
- {
685
- value: "anthropic/claude-3-haiku-20240307",
686
- label: "Claude 3 Haiku (2024-03-07)",
687
- description: "anthropic - anthropic/claude-3-haiku-20240307",
688
- },
689
- {
690
- value: "anthropic/claude-3-opus-20240229",
691
- label: "Claude 3 Opus (2024-02-29)",
692
- description: "anthropic - anthropic/claude-3-opus-20240229",
693
- },
694
- {
695
- value: "anthropic/claude-3-sonnet-20240229",
696
- label: "Claude 3 Sonnet (2024-02-29)",
697
- description: "anthropic - anthropic/claude-3-sonnet-20240229",
698
- },
699
- {
700
- value: "anthropic/claude-haiku-4-5",
701
- label: "Claude Haiku 4.5",
702
- description: "anthropic - anthropic/claude-haiku-4-5",
703
- },
704
- {
705
- value: "anthropic/claude-haiku-4-5-20251001",
706
- label: "Claude Haiku 4.5 (2025-10-01)",
707
- description: "anthropic - anthropic/claude-haiku-4-5-20251001",
708
- },
709
- {
710
- value: "anthropic/claude-opus-4-0",
711
- label: "Claude Opus 4.0",
712
- description: "anthropic - anthropic/claude-opus-4-0",
713
- },
714
- {
715
- value: "anthropic/claude-opus-4-1",
716
- label: "Claude Opus 4.1",
717
- description: "anthropic - anthropic/claude-opus-4-1",
718
- },
719
- {
720
- value: "anthropic/claude-opus-4-1-20250805",
721
- label: "Claude Opus 4.1 (2025-08-05)",
722
- description: "anthropic - anthropic/claude-opus-4-1-20250805",
723
- },
724
- {
725
- value: "anthropic/claude-opus-4-20250514",
726
- label: "Claude Opus 4 (2025-05-14)",
727
- description: "anthropic - anthropic/claude-opus-4-20250514",
728
- },
729
- {
730
- value: "anthropic/claude-opus-4-5",
731
- label: "Claude Opus 4.5",
732
- description: "anthropic - anthropic/claude-opus-4-5",
733
- },
734
- {
735
- value: "anthropic/claude-opus-4-5-20251101",
736
- label: "Claude Opus 4.5 (2025-11-01)",
737
- description: "anthropic - anthropic/claude-opus-4-5-20251101",
738
- },
739
- {
740
- value: "anthropic/claude-opus-4-6",
741
- label: "Claude Opus 4.6",
742
- description: "anthropic - anthropic/claude-opus-4-6",
743
- },
744
- {
745
- value: "anthropic/claude-opus-4-6-fast",
746
- label: "Claude Opus 4.6 Fast",
747
- description: "anthropic - anthropic/claude-opus-4-6-fast",
748
- },
749
- {
750
- value: "anthropic/claude-opus-4-7",
751
- label: "Claude Opus 4.7",
752
- description: "anthropic - anthropic/claude-opus-4-7",
753
- },
754
- {
755
- value: "anthropic/claude-opus-4-7-fast",
756
- label: "Claude Opus 4.7 Fast",
757
- description: "anthropic - anthropic/claude-opus-4-7-fast",
758
- },
759
- {
760
- value: "anthropic/claude-sonnet-4-0",
761
- label: "Claude Sonnet 4.0",
762
- description: "anthropic - anthropic/claude-sonnet-4-0",
763
- },
764
- {
765
- value: "anthropic/claude-sonnet-4-20250514",
766
- label: "Claude Sonnet 4 (2025-05-14)",
767
- description: "anthropic - anthropic/claude-sonnet-4-20250514",
768
- },
769
- {
770
- value: "anthropic/claude-sonnet-4-5",
771
- label: "Claude Sonnet 4.5",
772
- description: "anthropic - anthropic/claude-sonnet-4-5",
773
- },
774
- {
775
- value: "anthropic/claude-sonnet-4-5-20250929",
776
- label: "Claude Sonnet 4.5 (2025-09-29)",
777
- description: "anthropic - anthropic/claude-sonnet-4-5-20250929",
778
- },
779
- {
780
- value: "anthropic/claude-sonnet-4-6",
781
- label: "Claude Sonnet 4.6",
782
- description: "anthropic - anthropic/claude-sonnet-4-6",
783
- },
784
- {
785
- value: "openai/gpt-5.2",
786
- label: "GPT-5.2",
787
- description: "openai - openai/gpt-5.2",
788
- },
789
- {
790
- value: "openai/gpt-5.3-codex",
791
- label: "GPT-5.3 Codex",
792
- description: "openai - openai/gpt-5.3-codex",
793
- },
794
- {
795
- value: "openai/gpt-5.3-codex-spark",
796
- label: "GPT-5.3 Codex Spark",
797
- description: "openai - openai/gpt-5.3-codex-spark",
798
- },
799
- {
800
- value: "openai/gpt-5.4",
801
- label: "GPT-5.4",
802
- description: "openai - openai/gpt-5.4",
803
- },
804
- {
805
- value: "openai/gpt-5.4-fast",
806
- label: "GPT-5.4 Fast",
807
- description: "openai - openai/gpt-5.4-fast",
808
- },
809
- {
810
- value: "openai/gpt-5.4-mini",
811
- label: "GPT-5.4 Mini",
812
- description: "openai - openai/gpt-5.4-mini",
813
- },
814
- {
815
- value: "openai/gpt-5.4-mini-fast",
816
- label: "GPT-5.4 Mini Fast",
817
- description: "openai - openai/gpt-5.4-mini-fast",
818
- },
819
- {
820
- value: "openai/gpt-5.5",
821
- label: "GPT-5.5",
822
- description: "openai - openai/gpt-5.5",
823
- },
824
- {
825
- value: "openai/gpt-5.5-fast",
826
- label: "GPT-5.5 Fast",
827
- description: "openai - openai/gpt-5.5-fast",
828
- },
829
- {
830
- value: "openai/gpt-5.5-pro",
831
- label: "GPT-5.5 Pro",
832
- description: "openai - openai/gpt-5.5-pro",
833
- },
834
- ],
835
-
836
- DEFAULT: "anthropic/claude-sonnet-4-5",
837
- };
838
-
839
- /**
840
- * Ordered provider registry. Display order in documentation.
841
- */
842
- export const PROVIDERS = [
843
- { id: "claude", name: "Anthropic", models: CLAUDE_MODELS },
844
- { id: "codex", name: "OpenAI", models: CODEX_MODELS },
845
- { id: "gemini", name: "Google", models: GEMINI_MODELS },
846
- { id: "cursor", name: "Cursor", models: CURSOR_MODELS },
847
- { id: "opencode", name: "OpenCode", models: OPENCODE_MODELS },
848
- ];