@cjhyy/code-shell 0.3.0 → 0.5.0-rc.2

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 (464) hide show
  1. package/CHANGELOG.md +75 -0
  2. package/dist/cli.js +2 -0
  3. package/dist/index.d.ts +1 -68
  4. package/dist/index.js +1 -1
  5. package/package.json +25 -73
  6. package/dist/agent/coordinator.d.ts +0 -49
  7. package/dist/anthropic-DJXVKFMJ.js +0 -1
  8. package/dist/arena/arena.d.ts +0 -43
  9. package/dist/arena/context/context-tools.d.ts +0 -16
  10. package/dist/arena/detect-mode.d.ts +0 -20
  11. package/dist/arena/digest-builder.d.ts +0 -25
  12. package/dist/arena/index.d.ts +0 -29
  13. package/dist/arena/index.js +0 -1
  14. package/dist/arena/iterate/convergence.d.ts +0 -25
  15. package/dist/arena/iterate/formats/index.d.ts +0 -22
  16. package/dist/arena/iterate/index.d.ts +0 -11
  17. package/dist/arena/iterate/iterative-arena.d.ts +0 -23
  18. package/dist/arena/iterate/parse.d.ts +0 -42
  19. package/dist/arena/iterate/phases/argue.d.ts +0 -22
  20. package/dist/arena/iterate/phases/revise.d.ts +0 -16
  21. package/dist/arena/iterate/phases/tournament.d.ts +0 -34
  22. package/dist/arena/iterate/tools/web-tools.d.ts +0 -13
  23. package/dist/arena/iterate/types.d.ts +0 -152
  24. package/dist/arena/ledger.d.ts +0 -47
  25. package/dist/arena/lenses/architecture.d.ts +0 -5
  26. package/dist/arena/lenses/engineering.d.ts +0 -5
  27. package/dist/arena/lenses/general.d.ts +0 -5
  28. package/dist/arena/lenses/index.d.ts +0 -16
  29. package/dist/arena/lenses/product.d.ts +0 -5
  30. package/dist/arena/model-presets.d.ts +0 -23
  31. package/dist/arena/phases/adjudication.d.ts +0 -24
  32. package/dist/arena/phases/build-consensus.d.ts +0 -29
  33. package/dist/arena/phases/claim-registry.d.ts +0 -26
  34. package/dist/arena/phases/cross-review.d.ts +0 -45
  35. package/dist/arena/phases/debate-rounds.d.ts +0 -27
  36. package/dist/arena/phases/participant-research.d.ts +0 -38
  37. package/dist/arena/phases/planning-detail-expansion.d.ts +0 -38
  38. package/dist/arena/planner.d.ts +0 -27
  39. package/dist/arena/providers/docs.d.ts +0 -6
  40. package/dist/arena/providers/git.d.ts +0 -8
  41. package/dist/arena/providers/index.d.ts +0 -32
  42. package/dist/arena/providers/none.d.ts +0 -7
  43. package/dist/arena/providers/repo.d.ts +0 -6
  44. package/dist/arena/render/session.d.ts +0 -17
  45. package/dist/arena/render/terminal.d.ts +0 -33
  46. package/dist/arena/strategies/discussion.d.ts +0 -25
  47. package/dist/arena/strategies/index.d.ts +0 -15
  48. package/dist/arena/strategies/language-wrapper.d.ts +0 -17
  49. package/dist/arena/strategies/lens-wrapper.d.ts +0 -16
  50. package/dist/arena/strategies/planning.d.ts +0 -30
  51. package/dist/arena/strategies/review.d.ts +0 -26
  52. package/dist/arena/strategies/utils.d.ts +0 -39
  53. package/dist/arena/tools/selector.d.ts +0 -17
  54. package/dist/arena/transitions.d.ts +0 -48
  55. package/dist/arena/types.d.ts +0 -508
  56. package/dist/arena-MRBATZFD.js +0 -3
  57. package/dist/bootstrap/setup.d.ts +0 -14
  58. package/dist/bootstrap/state.d.ts +0 -160
  59. package/dist/bwrap-PVZMLHZR.js +0 -2
  60. package/dist/chunk-2OD6VR4N.js +0 -2
  61. package/dist/chunk-3QP5BQ3L.js +0 -1
  62. package/dist/chunk-5QIVXFCT.js +0 -1
  63. package/dist/chunk-AFMP73YP.js +0 -2
  64. package/dist/chunk-D3TVASD2.js +0 -4
  65. package/dist/chunk-DI26OUIU.js +0 -2
  66. package/dist/chunk-FU7AHZNN.js +0 -1
  67. package/dist/chunk-FZXY554D.js +0 -2
  68. package/dist/chunk-GGVAOPI7.js +0 -1
  69. package/dist/chunk-GKAQH2DG.js +0 -2
  70. package/dist/chunk-GYNO4R7R.js +0 -2
  71. package/dist/chunk-K4HILJ6G.js +0 -251
  72. package/dist/chunk-M7VU4YVY.js +0 -49
  73. package/dist/chunk-MLCTC53I.js +0 -1
  74. package/dist/chunk-O5HFCH2U.js +0 -1
  75. package/dist/chunk-OWBYLMDD.js +0 -1
  76. package/dist/chunk-P6JSTIFM.js +0 -1
  77. package/dist/chunk-QTWU7UNA.js +0 -5
  78. package/dist/chunk-SKIX2M5Z.js +0 -4
  79. package/dist/chunk-SNFAPSLA.js +0 -1
  80. package/dist/chunk-SV7H4FKT.js +0 -3
  81. package/dist/chunk-T222K6IV.js +0 -18
  82. package/dist/chunk-TKJA6W36.js +0 -3
  83. package/dist/chunk-WI6FSWGU.js +0 -1
  84. package/dist/chunk-WONQHE4P.js +0 -641
  85. package/dist/chunk-X2S7ASQ2.js +0 -1
  86. package/dist/chunk-Z5HKHAO7.js +0 -336
  87. package/dist/cli/commands/arena.d.ts +0 -29
  88. package/dist/cli/commands/builtin/advanced-commands.d.ts +0 -5
  89. package/dist/cli/commands/builtin/core-commands.d.ts +0 -5
  90. package/dist/cli/commands/builtin/export-md.d.ts +0 -19
  91. package/dist/cli/commands/builtin/extra-commands.d.ts +0 -6
  92. package/dist/cli/commands/builtin/git-commands.d.ts +0 -5
  93. package/dist/cli/commands/builtin/init/detect.d.ts +0 -25
  94. package/dist/cli/commands/builtin/init/index.d.ts +0 -19
  95. package/dist/cli/commands/builtin/more-commands.d.ts +0 -5
  96. package/dist/cli/commands/builtin/permissions-command.d.ts +0 -5
  97. package/dist/cli/commands/builtin/plugin-commands-registration.d.ts +0 -12
  98. package/dist/cli/commands/builtin/plugin-handler.d.ts +0 -6
  99. package/dist/cli/commands/builtin/utility-commands.d.ts +0 -5
  100. package/dist/cli/commands/registry.d.ts +0 -79
  101. package/dist/cli/commands/repl.d.ts +0 -21
  102. package/dist/cli/commands/run.d.ts +0 -21
  103. package/dist/cli/commands/runs.d.ts +0 -14
  104. package/dist/cli/cost-tracker.d.ts +0 -63
  105. package/dist/cli/exit.d.ts +0 -12
  106. package/dist/cli/input/ndjson-reader.d.ts +0 -31
  107. package/dist/cli/input-compiler.d.ts +0 -5
  108. package/dist/cli/main.d.ts +0 -5
  109. package/dist/cli/main.js +0 -415
  110. package/dist/cli/migrate-models.d.ts +0 -45
  111. package/dist/cli/onboarding.d.ts +0 -189
  112. package/dist/cli/output/renderer.d.ts +0 -28
  113. package/dist/cli/output/terminal-ui.d.ts +0 -50
  114. package/dist/cli/updater.d.ts +0 -65
  115. package/dist/client-base-GSFXPP2Y.js +0 -1
  116. package/dist/compaction-L3Y6NG4N.js +0 -1
  117. package/dist/context/compaction.d.ts +0 -116
  118. package/dist/context/manager.d.ts +0 -145
  119. package/dist/context/token-counter.d.ts +0 -27
  120. package/dist/context/tool-result-storage.d.ts +0 -96
  121. package/dist/cron/scheduler.d.ts +0 -34
  122. package/dist/data/openrouter-models.d.ts +0 -35
  123. package/dist/data/openrouter-sync.d.ts +0 -16
  124. package/dist/data/static-catalogs.d.ts +0 -25
  125. package/dist/devtools-FBX4HVVY.js +0 -1
  126. package/dist/engine/cost-store.d.ts +0 -22
  127. package/dist/engine/engine.d.ts +0 -236
  128. package/dist/engine/model-facade.d.ts +0 -24
  129. package/dist/engine/query.d.ts +0 -50
  130. package/dist/engine/streaming-tool-queue.d.ts +0 -34
  131. package/dist/engine/token-budget.d.ts +0 -22
  132. package/dist/engine/tool-summary.d.ts +0 -13
  133. package/dist/engine/turn-loop.d.ts +0 -122
  134. package/dist/engine/turn-state.d.ts +0 -20
  135. package/dist/exceptions.d.ts +0 -44
  136. package/dist/export-md-U72T7NW7.js +0 -22
  137. package/dist/file-history-7FQFEQOL.js +0 -1
  138. package/dist/git/utils.d.ts +0 -35
  139. package/dist/git/worktree.d.ts +0 -36
  140. package/dist/hooks/events.d.ts +0 -114
  141. package/dist/hooks/inject.d.ts +0 -19
  142. package/dist/hooks/registry.d.ts +0 -15
  143. package/dist/hooks/shell-runner.d.ts +0 -45
  144. package/dist/llm/api-key-sanitize.d.ts +0 -22
  145. package/dist/llm/capabilities/index.d.ts +0 -20
  146. package/dist/llm/capabilities/rules.d.ts +0 -26
  147. package/dist/llm/capabilities/types.d.ts +0 -108
  148. package/dist/llm/client-base.d.ts +0 -29
  149. package/dist/llm/client-factory.d.ts +0 -10
  150. package/dist/llm/model-cache.d.ts +0 -21
  151. package/dist/llm/model-fetcher.d.ts +0 -29
  152. package/dist/llm/model-pool.d.ts +0 -84
  153. package/dist/llm/provider-catalog.d.ts +0 -32
  154. package/dist/llm/provider-kinds.d.ts +0 -21
  155. package/dist/llm/providers/anthropic.d.ts +0 -19
  156. package/dist/llm/providers/openai.d.ts +0 -64
  157. package/dist/llm/retry.d.ts +0 -12
  158. package/dist/llm/stream-watchdog.d.ts +0 -42
  159. package/dist/llm/token-counter.d.ts +0 -17
  160. package/dist/llm/types.d.ts +0 -37
  161. package/dist/logging/logger.d.ts +0 -102
  162. package/dist/logging/session-recorder.d.ts +0 -90
  163. package/dist/lsp/client.d.ts +0 -41
  164. package/dist/lsp/manager.d.ts +0 -40
  165. package/dist/lsp/servers.d.ts +0 -16
  166. package/dist/manager-4XKLZHKE.js +0 -1
  167. package/dist/mcp-manager-3JGHEJO3.js +0 -1
  168. package/dist/memory-BNI4WEWL.js +0 -1
  169. package/dist/model-cache-HEDXI7UJ.js +0 -1
  170. package/dist/model-fetcher-X5W5EASG.js +0 -1
  171. package/dist/native-ts/yoga-layout/enums.d.ts +0 -117
  172. package/dist/native-ts/yoga-layout/index.d.ts +0 -270
  173. package/dist/off-7SDVMMXW.js +0 -1
  174. package/dist/openai-OQ6LLN5J.js +0 -1
  175. package/dist/openrouter-models-ZT4R2AE3.js +0 -1
  176. package/dist/openrouter-sync-ARMVWY7S.js +0 -1
  177. package/dist/plugin-handler-GJISMH5Q.js +0 -11
  178. package/dist/plugins/gitOps.d.ts +0 -23
  179. package/dist/plugins/installedPlugins.d.ts +0 -15
  180. package/dist/plugins/knownMarketplaces.d.ts +0 -10
  181. package/dist/plugins/loadPluginHooks.d.ts +0 -52
  182. package/dist/plugins/marketplaceManager.d.ts +0 -49
  183. package/dist/plugins/parseMarketplaceInput.d.ts +0 -16
  184. package/dist/plugins/pluginCommandHook.d.ts +0 -54
  185. package/dist/plugins/pluginCommandsLoader.d.ts +0 -25
  186. package/dist/plugins/pluginInstaller.d.ts +0 -36
  187. package/dist/plugins/schemas.d.ts +0 -9
  188. package/dist/plugins/types.d.ts +0 -75
  189. package/dist/plugins/varRewrite.d.ts +0 -42
  190. package/dist/preset/index.d.ts +0 -60
  191. package/dist/product/define.d.ts +0 -60
  192. package/dist/product/index.d.ts +0 -5
  193. package/dist/product/index.js +0 -1
  194. package/dist/product/types.d.ts +0 -111
  195. package/dist/prompt/composer.d.ts +0 -42
  196. package/dist/prompt/instruction-scanner.d.ts +0 -54
  197. package/dist/prompt/section-cache.d.ts +0 -15
  198. package/dist/prompt/section-loader.d.ts +0 -26
  199. package/dist/protocol/client.d.ts +0 -64
  200. package/dist/protocol/helpers.d.ts +0 -42
  201. package/dist/protocol/index.d.ts +0 -4
  202. package/dist/protocol/server.d.ts +0 -51
  203. package/dist/protocol/transport.d.ts +0 -36
  204. package/dist/protocol/types.d.ts +0 -192
  205. package/dist/react-compiler-runtime-shim.d.ts +0 -1
  206. package/dist/remote/bridge.d.ts +0 -37
  207. package/dist/render/Ansi.d.ts +0 -10
  208. package/dist/render/bidi.d.ts +0 -15
  209. package/dist/render/clearTerminal.d.ts +0 -19
  210. package/dist/render/colorize.d.ts +0 -16
  211. package/dist/render/components/AlternateScreen.d.ts +0 -21
  212. package/dist/render/components/App.d.ts +0 -71
  213. package/dist/render/components/AppContext.d.ts +0 -11
  214. package/dist/render/components/Box.d.ts +0 -49
  215. package/dist/render/components/Button.d.ts +0 -36
  216. package/dist/render/components/ClockContext.d.ts +0 -9
  217. package/dist/render/components/CursorDeclarationContext.d.ts +0 -22
  218. package/dist/render/components/ErrorOverview.d.ts +0 -5
  219. package/dist/render/components/Link.d.ts +0 -7
  220. package/dist/render/components/Newline.d.ts +0 -12
  221. package/dist/render/components/NoSelect.d.ts +0 -19
  222. package/dist/render/components/RawAnsi.d.ts +0 -16
  223. package/dist/render/components/ScrollBox.d.ts +0 -78
  224. package/dist/render/components/Spacer.d.ts +0 -5
  225. package/dist/render/components/Static.d.ts +0 -23
  226. package/dist/render/components/StdinContext.d.ts +0 -27
  227. package/dist/render/components/TerminalFocusContext.d.ts +0 -10
  228. package/dist/render/components/TerminalSizeContext.d.ts +0 -5
  229. package/dist/render/components/Text.d.ts +0 -55
  230. package/dist/render/constants.d.ts +0 -1
  231. package/dist/render/cursor.d.ts +0 -8
  232. package/dist/render/devtools.d.ts +0 -9
  233. package/dist/render/dom.d.ts +0 -77
  234. package/dist/render/events/click-event.d.ts +0 -31
  235. package/dist/render/events/dispatcher.d.ts +0 -40
  236. package/dist/render/events/emitter.d.ts +0 -5
  237. package/dist/render/events/event-handlers.d.ts +0 -46
  238. package/dist/render/events/event.d.ts +0 -5
  239. package/dist/render/events/focus-event.d.ts +0 -13
  240. package/dist/render/events/input-event.d.ts +0 -30
  241. package/dist/render/events/keyboard-event.d.ts +0 -19
  242. package/dist/render/events/paste-event.d.ts +0 -8
  243. package/dist/render/events/resize-event.d.ts +0 -9
  244. package/dist/render/events/terminal-event.d.ts +0 -54
  245. package/dist/render/events/terminal-focus-event.d.ts +0 -13
  246. package/dist/render/focus.d.ts +0 -43
  247. package/dist/render/frame.d.ts +0 -95
  248. package/dist/render/get-max-width.d.ts +0 -17
  249. package/dist/render/hit-test.d.ts +0 -33
  250. package/dist/render/hooks/use-animation-frame.d.ts +0 -26
  251. package/dist/render/hooks/use-app.d.ts +0 -5
  252. package/dist/render/hooks/use-declared-cursor.d.ts +0 -26
  253. package/dist/render/hooks/use-input.d.ts +0 -37
  254. package/dist/render/hooks/use-interval.d.ts +0 -18
  255. package/dist/render/hooks/use-search-highlight.d.ts +0 -30
  256. package/dist/render/hooks/use-selection.d.ts +0 -39
  257. package/dist/render/hooks/use-stdin.d.ts +0 -5
  258. package/dist/render/hooks/use-tab-status.d.ts +0 -13
  259. package/dist/render/hooks/use-terminal-focus.d.ts +0 -10
  260. package/dist/render/hooks/use-terminal-title.d.ts +0 -12
  261. package/dist/render/hooks/use-terminal-viewport.d.ts +0 -29
  262. package/dist/render/index.d.ts +0 -30
  263. package/dist/render/ink.d.ts +0 -391
  264. package/dist/render/instances.d.ts +0 -3
  265. package/dist/render/layout/engine.d.ts +0 -2
  266. package/dist/render/layout/geometry.d.ts +0 -30
  267. package/dist/render/layout/node.d.ts +0 -125
  268. package/dist/render/layout/yoga.d.ts +0 -56
  269. package/dist/render/line-width-cache.d.ts +0 -1
  270. package/dist/render/log-update.d.ts +0 -28
  271. package/dist/render/measure-element.d.ts +0 -16
  272. package/dist/render/measure-text.d.ts +0 -6
  273. package/dist/render/node-cache.d.ts +0 -20
  274. package/dist/render/optimizer.d.ts +0 -15
  275. package/dist/render/output.d.ts +0 -119
  276. package/dist/render/parse-keypress.d.ts +0 -111
  277. package/dist/render/reconciler.d.ts +0 -11
  278. package/dist/render/render-border.d.ts +0 -24
  279. package/dist/render/render-node-to-output.d.ts +0 -45
  280. package/dist/render/render-to-screen.d.ts +0 -46
  281. package/dist/render/renderer.d.ts +0 -14
  282. package/dist/render/root.d.ts +0 -74
  283. package/dist/render/screen.d.ts +0 -269
  284. package/dist/render/searchHighlight.d.ts +0 -20
  285. package/dist/render/selection.d.ts +0 -229
  286. package/dist/render/squash-text-nodes.d.ts +0 -22
  287. package/dist/render/stringWidth.d.ts +0 -1
  288. package/dist/render/styles.d.ts +0 -306
  289. package/dist/render/supports-hyperlinks.d.ts +0 -13
  290. package/dist/render/tabstops.d.ts +0 -1
  291. package/dist/render/terminal-focus-state.d.ts +0 -6
  292. package/dist/render/terminal-querier.d.ts +0 -129
  293. package/dist/render/terminal.d.ts +0 -46
  294. package/dist/render/termio/ansi.d.ts +0 -65
  295. package/dist/render/termio/csi.d.ts +0 -165
  296. package/dist/render/termio/dec.d.ts +0 -37
  297. package/dist/render/termio/esc.d.ts +0 -12
  298. package/dist/render/termio/osc.d.ts +0 -173
  299. package/dist/render/termio/parser.d.ts +0 -35
  300. package/dist/render/termio/sgr.d.ts +0 -8
  301. package/dist/render/termio/tokenize.d.ts +0 -45
  302. package/dist/render/termio/types.d.ts +0 -190
  303. package/dist/render/termio.d.ts +0 -24
  304. package/dist/render/useTerminalNotification.d.ts +0 -28
  305. package/dist/render/warn.d.ts +0 -1
  306. package/dist/render/widest-line.d.ts +0 -1
  307. package/dist/render/wrap-text.d.ts +0 -2
  308. package/dist/render/wrapAnsi.d.ts +0 -7
  309. package/dist/run/ArtifactTracker.d.ts +0 -38
  310. package/dist/run/CheckpointWriter.d.ts +0 -53
  311. package/dist/run/EngineRunner.d.ts +0 -72
  312. package/dist/run/Evaluator.d.ts +0 -56
  313. package/dist/run/FileRunStore.d.ts +0 -39
  314. package/dist/run/Heartbeat.d.ts +0 -54
  315. package/dist/run/RunApprovalBackend.d.ts +0 -53
  316. package/dist/run/RunLock.d.ts +0 -40
  317. package/dist/run/RunManager.d.ts +0 -82
  318. package/dist/run/RunQueue.d.ts +0 -27
  319. package/dist/run/RunStore.d.ts +0 -25
  320. package/dist/run/factory.d.ts +0 -63
  321. package/dist/run/index.d.ts +0 -17
  322. package/dist/run/index.js +0 -1
  323. package/dist/run/types.d.ts +0 -136
  324. package/dist/seatbelt-L54CNI2Y.js +0 -37
  325. package/dist/services/analytics.d.ts +0 -29
  326. package/dist/services/auto-dream.d.ts +0 -35
  327. package/dist/services/diagnostics.d.ts +0 -41
  328. package/dist/services/extract-memories.d.ts +0 -27
  329. package/dist/services/index.d.ts +0 -11
  330. package/dist/services/memory-orchestrator.d.ts +0 -39
  331. package/dist/services/notifier.d.ts +0 -25
  332. package/dist/services/oauth.d.ts +0 -27
  333. package/dist/services/session-memory.d.ts +0 -37
  334. package/dist/session/file-history.d.ts +0 -41
  335. package/dist/session/memory.d.ts +0 -65
  336. package/dist/session/session-manager.d.ts +0 -28
  337. package/dist/session/transcript.d.ts +0 -39
  338. package/dist/session-manager-AGWS5SMJ.js +0 -1
  339. package/dist/settings/manager.d.ts +0 -36
  340. package/dist/settings/schema.d.ts +0 -1123
  341. package/dist/skills/frontmatter.d.ts +0 -13
  342. package/dist/skills/index.d.ts +0 -7
  343. package/dist/skills/scanner.d.ts +0 -20
  344. package/dist/tool-summary-HJX6RHG4.js +0 -2
  345. package/dist/tool-system/builtin/agent-notifications.d.ts +0 -55
  346. package/dist/tool-system/builtin/agent-registry.d.ts +0 -67
  347. package/dist/tool-system/builtin/agent-transcript-translator.d.ts +0 -22
  348. package/dist/tool-system/builtin/agent.d.ts +0 -16
  349. package/dist/tool-system/builtin/apply-patch/applier.d.ts +0 -26
  350. package/dist/tool-system/builtin/apply-patch/index.d.ts +0 -19
  351. package/dist/tool-system/builtin/apply-patch/parser.d.ts +0 -17
  352. package/dist/tool-system/builtin/apply-patch/seek-sequence.d.ts +0 -18
  353. package/dist/tool-system/builtin/apply-patch/types.d.ts +0 -49
  354. package/dist/tool-system/builtin/arena.d.ts +0 -31
  355. package/dist/tool-system/builtin/ask-user.d.ts +0 -20
  356. package/dist/tool-system/builtin/bash.d.ts +0 -12
  357. package/dist/tool-system/builtin/brief.d.ts +0 -6
  358. package/dist/tool-system/builtin/config.d.ts +0 -6
  359. package/dist/tool-system/builtin/cron.d.ts +0 -10
  360. package/dist/tool-system/builtin/edit.d.ts +0 -6
  361. package/dist/tool-system/builtin/file-cache.d.ts +0 -11
  362. package/dist/tool-system/builtin/glob.d.ts +0 -6
  363. package/dist/tool-system/builtin/grep.d.ts +0 -6
  364. package/dist/tool-system/builtin/index.d.ts +0 -20
  365. package/dist/tool-system/builtin/lsp.d.ts +0 -6
  366. package/dist/tool-system/builtin/mcp-tools.d.ts +0 -10
  367. package/dist/tool-system/builtin/notebook-edit.d.ts +0 -6
  368. package/dist/tool-system/builtin/plan.d.ts +0 -18
  369. package/dist/tool-system/builtin/powershell.d.ts +0 -6
  370. package/dist/tool-system/builtin/read.d.ts +0 -6
  371. package/dist/tool-system/builtin/remote-trigger.d.ts +0 -6
  372. package/dist/tool-system/builtin/repl.d.ts +0 -6
  373. package/dist/tool-system/builtin/send-message.d.ts +0 -6
  374. package/dist/tool-system/builtin/skill-prompt.d.ts +0 -7
  375. package/dist/tool-system/builtin/skill.d.ts +0 -8
  376. package/dist/tool-system/builtin/sleep.d.ts +0 -6
  377. package/dist/tool-system/builtin/task.d.ts +0 -51
  378. package/dist/tool-system/builtin/tool-search.d.ts +0 -11
  379. package/dist/tool-system/builtin/web-fetch.d.ts +0 -6
  380. package/dist/tool-system/builtin/web-search.d.ts +0 -6
  381. package/dist/tool-system/builtin/worktree.d.ts +0 -10
  382. package/dist/tool-system/builtin/write.d.ts +0 -6
  383. package/dist/tool-system/context.d.ts +0 -133
  384. package/dist/tool-system/executor.d.ts +0 -49
  385. package/dist/tool-system/investigation-guard.d.ts +0 -46
  386. package/dist/tool-system/mcp-manager.d.ts +0 -50
  387. package/dist/tool-system/permission.d.ts +0 -104
  388. package/dist/tool-system/registry.d.ts +0 -32
  389. package/dist/tool-system/sandbox/bwrap.d.ts +0 -13
  390. package/dist/tool-system/sandbox/index.d.ts +0 -78
  391. package/dist/tool-system/sandbox/off.d.ts +0 -2
  392. package/dist/tool-system/sandbox/seatbelt.d.ts +0 -18
  393. package/dist/tool-system/task-guard.d.ts +0 -30
  394. package/dist/tool-system/validation.d.ts +0 -5
  395. package/dist/types.d.ts +0 -356
  396. package/dist/ui/App.d.ts +0 -14
  397. package/dist/ui/components/AgentBlock.d.ts +0 -35
  398. package/dist/ui/components/AgentDock.d.ts +0 -36
  399. package/dist/ui/components/AskUserPrompt.d.ts +0 -14
  400. package/dist/ui/components/BabyHand.d.ts +0 -1
  401. package/dist/ui/components/Banner.d.ts +0 -8
  402. package/dist/ui/components/CodeBlock.d.ts +0 -7
  403. package/dist/ui/components/CommandInput.d.ts +0 -24
  404. package/dist/ui/components/ContextUsageBar.d.ts +0 -7
  405. package/dist/ui/components/DiffLine.d.ts +0 -33
  406. package/dist/ui/components/DiffView.d.ts +0 -6
  407. package/dist/ui/components/DogLogo.d.ts +0 -1
  408. package/dist/ui/components/FullscreenLayout.d.ts +0 -51
  409. package/dist/ui/components/KunHead.d.ts +0 -1
  410. package/dist/ui/components/KunLogo.d.ts +0 -1
  411. package/dist/ui/components/MessageContent.d.ts +0 -26
  412. package/dist/ui/components/MessageRow.d.ts +0 -54
  413. package/dist/ui/components/ModelManager.d.ts +0 -68
  414. package/dist/ui/components/ModelSelector.d.ts +0 -10
  415. package/dist/ui/components/OnboardingPrompt.d.ts +0 -16
  416. package/dist/ui/components/PermissionDialog.d.ts +0 -8
  417. package/dist/ui/components/PermissionPrompt.d.ts +0 -11
  418. package/dist/ui/components/ProviderModelFlow.d.ts +0 -58
  419. package/dist/ui/components/ScrollView.d.ts +0 -34
  420. package/dist/ui/components/SessionPicker.d.ts +0 -16
  421. package/dist/ui/components/Spinner.d.ts +0 -8
  422. package/dist/ui/components/SpinnerWithVerb.d.ts +0 -19
  423. package/dist/ui/components/StatusLine.d.ts +0 -28
  424. package/dist/ui/components/StructuredDiff.d.ts +0 -8
  425. package/dist/ui/components/TaskList.d.ts +0 -6
  426. package/dist/ui/components/TextInput.d.ts +0 -17
  427. package/dist/ui/components/ThemedBox.d.ts +0 -19
  428. package/dist/ui/components/ThemedText.d.ts +0 -26
  429. package/dist/ui/components/ToolCall.d.ts +0 -28
  430. package/dist/ui/components/UpdateBanner.d.ts +0 -1
  431. package/dist/ui/components/VirtualMessageList.d.ts +0 -43
  432. package/dist/ui/components/WelcomeTips.d.ts +0 -5
  433. package/dist/ui/dev-seed.d.ts +0 -1
  434. package/dist/ui/fullscreen-mode.d.ts +0 -9
  435. package/dist/ui/hooks/useCostSummary.d.ts +0 -1
  436. package/dist/ui/hooks/useVirtualScroll.d.ts +0 -101
  437. package/dist/ui/index.d.ts +0 -12
  438. package/dist/ui/input-history.d.ts +0 -61
  439. package/dist/ui/onboarding-runner.d.ts +0 -2
  440. package/dist/ui/perf-probes.d.ts +0 -22
  441. package/dist/ui/query-guard.d.ts +0 -35
  442. package/dist/ui/slice-anchor.d.ts +0 -44
  443. package/dist/ui/store.d.ts +0 -108
  444. package/dist/ui/terminal-renderer.d.ts +0 -45
  445. package/dist/ui/theme.d.ts +0 -36
  446. package/dist/ui/vim-mode.d.ts +0 -25
  447. package/dist/updater-OCNU2K2Z.js +0 -1
  448. package/dist/utils/debug.d.ts +0 -41
  449. package/dist/utils/earlyInput.d.ts +0 -43
  450. package/dist/utils/env.d.ts +0 -24
  451. package/dist/utils/envUtils.d.ts +0 -51
  452. package/dist/utils/execFileNoThrow.d.ts +0 -39
  453. package/dist/utils/format.d.ts +0 -44
  454. package/dist/utils/fullscreen.d.ts +0 -47
  455. package/dist/utils/intl.d.ts +0 -22
  456. package/dist/utils/lockfile.d.ts +0 -15
  457. package/dist/utils/semver.d.ts +0 -6
  458. package/dist/utils/sliceAnsi.d.ts +0 -12
  459. package/dist/utils/systemTheme.d.ts +0 -40
  460. package/dist/utils/task-sanitizer.d.ts +0 -6
  461. package/dist/utils/theme.d.ts +0 -91
  462. package/dist/utils/toolDisplay.d.ts +0 -31
  463. package/dist/utils/truncate.d.ts +0 -40
  464. package/dist/voice/index.d.ts +0 -35
@@ -1,160 +0,0 @@
1
- /**
2
- * Application state — session, cost, model, and feature state.
3
- *
4
- * Upgraded from no-op stubs to working implementations for the
5
- * functions that Code Shell's components and services actually call.
6
- * Functions used only by restored-src's deep internals (analytics
7
- * sinks, GrowthBook, etc.) remain lightweight stubs.
8
- */
9
- export type AttributedCounter = {
10
- add(value: number, attrs?: Record<string, string>): void;
11
- };
12
- export type ChannelEntry = {
13
- name: string;
14
- enabled: boolean;
15
- };
16
- export declare function getSessionId(): string;
17
- export declare function switchSession(id: string): void;
18
- export declare function getOriginalCwd(): string;
19
- export declare function setOriginalCwd(cwd: string): void;
20
- export declare function getProjectRoot(): string;
21
- export declare function setProjectRoot(root: string): void;
22
- export declare function getCwdState(): {
23
- originalCwd: string;
24
- projectRoot: string;
25
- };
26
- export declare function getIsInteractive(): boolean;
27
- export declare function getIsNonInteractiveSession(): boolean;
28
- export declare function setIsNonInteractive(v: boolean): void;
29
- export declare function getClientType(): string;
30
- export declare function getSessionTrustAccepted(): boolean;
31
- export declare function setSessionTrustAccepted(v: boolean): void;
32
- export declare function updateLastInteractionTime(): void;
33
- export declare function getLastInteractionTime(): number;
34
- export declare function flushInteractionTime(): void;
35
- export declare function markScrollActivity(): void;
36
- export declare function getIsScrollDraining(): boolean;
37
- export declare function waitForScrollIdle(): Promise<void>;
38
- export declare function getMainLoopModelOverride(): string | null;
39
- export declare function setMainLoopModelOverride(m: string | null): void;
40
- export declare function getInitialMainLoopModel(): string;
41
- export declare function setInitialMainLoopModel(m: string): void;
42
- export declare function setModelStrings(key: string, value: string): void;
43
- export declare function getModelStrings(key: string): string | undefined;
44
- export interface ModelUsage {
45
- inputTokens: number;
46
- outputTokens: number;
47
- cacheReadTokens: number;
48
- cacheWriteTokens: number;
49
- requestCount: number;
50
- }
51
- export declare function addToModelUsage(model: string, input: number, output: number, cacheRead?: number, cacheWrite?: number): void;
52
- export declare function getModelUsage(): Map<string, ModelUsage>;
53
- export declare function addAPIDuration(ms: number): void;
54
- export declare function getTotalAPIDurationMs(): number;
55
- export declare function addLinesChanged(added: number, removed: number): void;
56
- export declare function getLinesAdded(): number;
57
- export declare function getLinesRemoved(): number;
58
- export declare function getTotalInputTokens(): number;
59
- export declare function getTotalOutputTokens(): number;
60
- export declare function addInputTokens(n: number): void;
61
- export declare function addOutputTokens(n: number): void;
62
- export declare function getCurrentTurnTokenBudget(): number;
63
- export declare function setCurrentTurnTokenBudget(n: number): void;
64
- export declare function getTurnOutputTokens(): number;
65
- export declare function getBudgetContinuationCount(): number;
66
- export declare function incrementBudgetContinuation(): void;
67
- export declare function snapshotOutputTokensForTurn(): void;
68
- export declare function setHasUnknownModelCost(v?: boolean): void;
69
- export declare function getHasUnknownModelCost(): boolean;
70
- export declare function resetCostState(): void;
71
- export declare function setCostStateForRestore(state: unknown): void;
72
- export declare function getTurnHookDurationMs(): number;
73
- export declare function getTurnHookCount(): number;
74
- export declare function addTurnHookDuration(ms: number): void;
75
- export declare function resetTurnHookDuration(): void;
76
- export declare function getTurnToolDurationMs(): number;
77
- export declare function getTurnToolCount(): number;
78
- export declare function addTurnToolDuration(ms: number): void;
79
- export declare function resetTurnToolDuration(): void;
80
- export declare function getTurnClassifierDurationMs(): number;
81
- export declare function getTurnClassifierCount(): number;
82
- export declare function addTurnClassifierDuration(ms: number): void;
83
- export declare function resetTurnClassifierDuration(): void;
84
- export declare function getSessionCounter(): AttributedCounter;
85
- export declare function getLocCounter(): AttributedCounter;
86
- export declare function getPrCounter(): AttributedCounter;
87
- export declare function getCommitCounter(): AttributedCounter;
88
- export declare function getCodeEditToolDecisionCounter(): AttributedCounter;
89
- export declare function getActiveTimeCounter(): AttributedCounter;
90
- export declare function setMeter(_meter: unknown): void;
91
- export declare function getEventLogger(): {
92
- emit(_name: string, _body?: unknown): void;
93
- };
94
- export declare function getKairosActive(): boolean;
95
- export declare function setKairosActive(v: boolean): void;
96
- export declare function getUserMsgOptIn(): boolean;
97
- export declare function setUserMsgOptIn(v: boolean): void;
98
- export declare function getSdkBetas(): string[];
99
- export declare function setSdkBetas(betas: string[]): void;
100
- export declare function getSdkAgentProgressSummariesEnabled(): boolean;
101
- export declare function getIsRemoteMode(): boolean;
102
- export declare function setIsRemoteMode(v: boolean): void;
103
- export declare function getDirectConnectServerUrl(): string | null;
104
- export declare function getMainThreadAgentType(): string;
105
- export declare function getHasDevChannels(): boolean;
106
- export declare function getStrictToolResultPairing(): boolean;
107
- export declare function getQuestionPreviewFormat(): string;
108
- export declare function getUseCoworkPlugins(): boolean;
109
- export declare function setUseCoworkPlugins(_v: boolean): void;
110
- export declare function addSlowOperation(op: string): void;
111
- export declare function getSlowOperations(): string[];
112
- export declare function registerHookCallbacks(name: string, cbs: unknown): void;
113
- export declare function getRegisteredHooks(): Record<string, unknown[]>;
114
- export declare function handlePlanModeTransition(): void;
115
- export declare function setHasExitedPlanMode(v: boolean): void;
116
- export declare function getHasExitedPlanMode(): boolean;
117
- export declare function setNeedsPlanModeExitAttachment(v: boolean): void;
118
- export declare function getNeedsPlanModeExitAttachment(): boolean;
119
- export declare function setNeedsAutoModeExitAttachment(v: boolean): void;
120
- export declare function getNeedsAutoModeExitAttachment(): boolean;
121
- export declare function getSystemPromptSectionCache(): Map<string, string | null>;
122
- export declare function setSystemPromptSectionCacheEntry(name: string, value: string | null): void;
123
- export declare function clearSystemPromptSectionState(): void;
124
- export declare function clearBetaHeaderLatches(): void;
125
- export declare function addInvokedSkill(name: string, agentId?: string): void;
126
- export declare function getInvokedSkillsForAgent(agentId?: string): string[];
127
- export declare function clearInvokedSkillsForAgent(agentId?: string): void;
128
- export declare function getInlinePlugins(): unknown[];
129
- export declare function getPromptId(): string;
130
- export declare function setPromptId(id: string): void;
131
- export declare function getLastAPIRequest(): unknown;
132
- export declare function setLastAPIRequest(req: unknown): void;
133
- export declare function markPostCompaction(): void;
134
- export declare function getPostCompactionDone(): boolean;
135
- export declare function isReplBridgeActive(): boolean;
136
- export declare function setReplBridgeActive(v: boolean): void;
137
- export declare function isSessionPersistenceDisabled(): boolean;
138
- export declare function setSessionPersistenceDisabled(v: boolean): void;
139
- export declare function resetSdkInitState(): void;
140
- export declare function getAgentColorMap(): Map<string, string>;
141
- export declare function getPlanSlugCache(): Map<string, string>;
142
- export declare function getAllowedChannels(): string[];
143
- export declare function getAllowedSettingSources(): string[];
144
- export declare function setAllowedSettingSources(sources: string[]): void;
145
- export declare function getAdditionalDirectoriesForClaudeMd(): string[];
146
- export declare function setAdditionalDirectoriesForClaudeMd(dirs: string[]): void;
147
- export declare function setTeleportedSessionInfo(_info: unknown): void;
148
- export declare function setScheduledTasksEnabled(v: boolean): void;
149
- export declare function getScheduledTasksEnabled(): boolean;
150
- export declare function getSessionCreatedTeams(): string[];
151
- export declare function hasShownLspRecommendationThisSession(): boolean;
152
- export declare function setLspRecommendationShownThisSession(v: boolean): void;
153
- export declare function setApiKeyFromFd(..._args: any[]): any;
154
- export declare function getApiKeyFromFd(..._args: any[]): any;
155
- export declare function getOauthTokenFromFd(..._args: any[]): any;
156
- export declare function setOauthTokenFromFd(..._args: any[]): any;
157
- export declare function preferThirdPartyAuthentication(..._args: any[]): any;
158
- export declare function getParentSessionId(..._args: any[]): any;
159
- export declare function getFlagSettingsInline(..._args: any[]): any;
160
- export declare function getFlagSettingsPath(..._args: any[]): any;
@@ -1,2 +0,0 @@
1
- import {h,a}from'./chunk-3QP5BQ3L.js';h();function p(n){return {name:"bwrap",wrap(s,t){let e=[];e.push("--ro-bind","/","/"),e.push("--dev","/dev"),e.push("--proc","/proc"),e.push("--tmpfs","/tmp");for(let r of n.writableRoots)e.push("--bind-try",r,r);for(let r of n.deniedReads)e.push("--ro-bind-try","/dev/null",r);return e.push("--unshare-pid","--unshare-ipc","--unshare-uts","--unshare-cgroup"),n.network==="deny"&&e.push("--unshare-net"),e.push("--die-with-parent"),e.push("--chdir",t.cwd),e.push(t.shell,"-c",s),{file:"bwrap",args:e}},hintForBlockedOutput(s){if(/Permission denied|No such file or directory.*bwrap/i.test(s))return `
2
- [sandbox:bwrap] A path access was blocked by the sandbox. If this path should be writable, ask the user to update sandbox.writableRoots in settings.json.`}}}a(p,"createBwrapBackend");export{p as createBwrapBackend};
@@ -1,2 +0,0 @@
1
- import {a as a$1,c,b as b$1}from'./chunk-P6JSTIFM.js';import {h,a}from'./chunk-3QP5BQ3L.js';import {existsSync,readFileSync}from'fs';import {fileURLToPath}from'url';import {dirname,join}from'path';h();h();var _=/(?:^|[-_/])(?:embed(?:ding)?|whisper|tts|audio|image|dall-?e|moderation|rerank|guard|vision-only|realtime|transcribe|search-preview|search-api|sora|computer-use|deep-research|codex|chat-latest)(?:$|[-_/])/i,N=a(e=>e.startsWith("ft:"),"isFineTunedId"),K=a(e=>/-\d{4}-\d{2}-\d{2}$/.test(e),"isDatedSnapshotId"),l=a(e=>!_.test(e)&&!N(e)&&!K(e),"isChatLike"),u=a(e=>e?{Authorization:`Bearer ${e}`}:{},"bearer"),f={openai:{label:"OpenAI",defaultBaseUrl:"https://api.openai.com/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},anthropic:{label:"Anthropic",defaultBaseUrl:"https://api.anthropic.com/v1",modelsPath:"/models",protocol:"anthropic-style",authHeader:a(e=>e?{"x-api-key":e,"anthropic-version":"2023-06-01"}:{"anthropic-version":"2023-06-01"},"authHeader"),chatFilter:l},deepseek:{label:"DeepSeek",defaultBaseUrl:"https://api.deepseek.com/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},zai:{label:"Z.AI (GLM)",defaultBaseUrl:"https://api.z.ai/api/paas/v4",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},xai:{label:"xAI (Grok)",defaultBaseUrl:"https://api.x.ai/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},mistral:{label:"Mistral",defaultBaseUrl:"https://api.mistral.ai/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},groq:{label:"Groq",defaultBaseUrl:"https://api.groq.com/openai/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},google:{label:"Google Gemini",defaultBaseUrl:"https://generativelanguage.googleapis.com/v1beta/openai",modelsPath:"https://generativelanguage.googleapis.com/v1beta/models",protocol:"gemini",authHeader:u,authQuery:a(e=>e?{key:e}:{},"authQuery"),chatFilter:a(e=>l(e)&&/gemini/i.test(e),"chatFilter")},openrouter:{label:"OpenRouter",defaultBaseUrl:"https://openrouter.ai/api/v1",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l},ollama:{label:"Ollama (local)",defaultBaseUrl:"http://localhost:11434",modelsPath:"/api/tags",protocol:"ollama",authHeader:a(()=>({}),"authHeader"),chatFilter:l},custom:{label:"Custom",defaultBaseUrl:"",modelsPath:"/models",protocol:"openai-compat",authHeader:u,chatFilter:l}};function O(e){return f[e]??f.custom}a(O,"getKindMeta");h();var L={fetchedAt:"2026-05-14",source:"https://api-docs.deepseek.com/quick_start/pricing",count:4,models:[{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextLength:1e6,maxOutputTokens:384e3,inputPricePerMillion:1.74,outputPricePerMillion:3.48,modalities:["text"],thinking:true},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextLength:1e6,maxOutputTokens:384e3,inputPricePerMillion:.14,outputPricePerMillion:.28,modalities:["text"],thinking:true},{id:"deepseek-chat",name:"DeepSeek Chat (legacy, deprecating)",contextLength:128e3,maxOutputTokens:8192,inputPricePerMillion:.14,outputPricePerMillion:.28,modalities:["text"]},{id:"deepseek-reasoner",name:"DeepSeek Reasoner (legacy, deprecating)",contextLength:128e3,maxOutputTokens:8192,inputPricePerMillion:.14,outputPricePerMillion:.28,modalities:["text"],thinking:true}]};var S={fetchedAt:"2026-05-14",source:"https://docs.z.ai/guides/llm/glm-5.1 + https://docs.z.ai/guides/overview/pricing",count:5,models:[{id:"glm-5.1",name:"GLM-5.1",contextLength:2e5,maxOutputTokens:128e3,inputPricePerMillion:1.4,outputPricePerMillion:4.4,modalities:["text"],thinking:true},{id:"glm-4.6",name:"GLM-4.6",contextLength:2e5,maxOutputTokens:128e3,inputPricePerMillion:.6,outputPricePerMillion:2.2,modalities:["text"],thinking:true},{id:"glm-4.5",name:"GLM-4.5",contextLength:128e3,maxOutputTokens:96e3,inputPricePerMillion:.6,outputPricePerMillion:2.2,modalities:["text"],thinking:true},{id:"glm-4.5-air",name:"GLM-4.5 Air",contextLength:128e3,maxOutputTokens:96e3,inputPricePerMillion:.2,outputPricePerMillion:1.1,modalities:["text"],thinking:true},{id:"glm-4.5-flash",name:"GLM-4.5 Flash (free tier)",contextLength:128e3,maxOutputTokens:96e3,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]}]};var v={fetchedAt:"2026-05-15",source:"OpenRouter model pages (openrouter.ai/openai/*) + developers.openai.com docs. OpenRouter mirrors OpenAI's published context/output limits per variant.",count:18,models:[{id:"gpt-5.5",name:"GPT-5.5",contextLength:922e3,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:30,modalities:["text","image"],thinking:true},{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextLength:922e3,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:180,modalities:["text","image"],thinking:true},{id:"gpt-5.4",name:"GPT-5.4",contextLength:922e3,maxOutputTokens:128e3,inputPricePerMillion:2.5,outputPricePerMillion:15,modalities:["text","image"],thinking:true},{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextLength:922e3,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:180,modalities:["text","image"],thinking:true},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.75,outputPricePerMillion:4.5,modalities:["text","image"],thinking:true},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.2,outputPricePerMillion:1.25,modalities:["text","image"],thinking:true},{id:"gpt-5.2",name:"GPT-5.2",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["text","image"],thinking:true},{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextLength:4e5,maxOutputTokens:128e3,modalities:["text","image"],thinking:true},{id:"gpt-5.1",name:"GPT-5.1",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image"],thinking:true},{id:"gpt-5",name:"GPT-5",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image"],thinking:true},{id:"gpt-5-pro",name:"GPT-5 Pro",contextLength:4e5,maxOutputTokens:128e3,modalities:["text","image"],thinking:true},{id:"gpt-5-mini",name:"GPT-5 Mini",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.25,outputPricePerMillion:2,modalities:["text","image"],thinking:true},{id:"gpt-5-nano",name:"GPT-5 Nano",contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.05,outputPricePerMillion:.4,modalities:["text","image"],thinking:true},{id:"gpt-4.1",name:"GPT-4.1",contextLength:1e6,maxOutputTokens:32768,modalities:["text","image"]},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini",contextLength:1e6,maxOutputTokens:32768,modalities:["text","image"]},{id:"o3",name:"o3",contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["text","image"],thinking:true},{id:"o3-pro",name:"o3-pro",contextLength:2e5,maxOutputTokens:1e5,modalities:["text","image"],thinking:true},{id:"o4-mini",name:"o4-mini",contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:1.1,outputPricePerMillion:4.4,modalities:["text","image"],thinking:true}]};var b={fetchedAt:"2026-05-15",source:"https://ai.google.dev/gemini-api/docs/models + https://ai.google.dev/gemini-api/docs/gemini-3",count:6,models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro (preview)",contextLength:1048576,maxOutputTokens:65536,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro (preview)",contextLength:1048576,maxOutputTokens:65536,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash-Lite",contextLength:1048576,maxOutputTokens:65536,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash (preview)",contextLength:1048576,maxOutputTokens:65536,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.3,outputPricePerMillion:2.5,modalities:["text","image","audio","video"],thinking:true},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash-Lite",contextLength:1e6,maxOutputTokens:65536,modalities:["text","image","audio","video"],thinking:true}]};var w={deepseek:L,zai:S,openai:v,google:b};function P(e){return w[e]?.models??[]}a(P,"listStaticModels");function x(e){return w[e]!==void 0}a(x,"hasStaticCatalog");var q=dirname(fileURLToPath(import.meta.url)),y=join(q,"..","data","openrouter-models.json");async function Me(e,i){let a=O(e.kind);if(!i.refresh){let n=a$1(i.cacheDir,e.key);if(n&&!c(n))return {...n,fromCache:true}}if(e.kind==="openrouter")return W(e.key,i.cacheDir);try{let n=e.modelsPath??a.modelsPath,t=new URL(Z(e.baseUrl,n)),s=a.authHeader(e.apiKey??"");if(a.authQuery){let p=a.authQuery(e.apiKey??"");for(let[A,C]of Object.entries(p))t.searchParams.set(A,C);}let o=await fetch(t.toString(),{headers:{Accept:"application/json",...s},signal:AbortSignal.timeout(i.timeoutMs??2e4)});if(!o.ok){let p=o.status===401||o.status===403;return d(e.key,i.cacheDir,`HTTP ${o.status}`,p?void 0:e.kind)}let m=await o.json(),R=V(m,a.protocol).filter(p=>a.chatFilter(p.id)),G=Q(R),F=J(e.kind,G);return b$1(i.cacheDir,e.key,F)}catch(n){let t=n.message||String(n);return d(e.key,i.cacheDir,t,e.kind)}}a(Me,"fetchModelList");function J(e,i){if(!x(e))return i;let a=P(e),n=new Map(a.map(o=>[o.id,o])),t=new Set(i.map(o=>o.id)),s=i.map(o=>{let m=n.get(o.id);return m?{id:o.id,contextLength:o.contextLength>0?o.contextLength:m.contextLength,maxOutputTokens:o.maxOutputTokens>0?o.maxOutputTokens:m.maxOutputTokens}:o});for(let o of a)t.has(o.id)||s.push({id:o.id,contextLength:o.contextLength,maxOutputTokens:o.maxOutputTokens});return s}a(J,"enrichFromStaticCatalog");function Q(e){let i=a(a=>{let n=a.match(/(?:^|[^\d])(\d+\.\d+)(?!\d)/);if(n)return Number(n[1]);let t=a.match(/(?:^|[^\d])(\d{1,2})-(\d{1,2})(?!\d)/);if(t)return +`${t[1]}.${t[2]}`;let s=a.match(/(?:^|[^\d])(\d{1,2})(?!\d)/);return s?Number(s[1]):-1},"versionOf");return [...e].sort((a,n)=>{let t=i(a.id),s=i(n.id);return t!==s?s-t:a.id.length!==n.id.length?a.id.length-n.id.length:a.id.localeCompare(n.id)})}a(Q,"sortByRecency");function V(e,i){switch(i){case "ollama":return (e.models??[]).map(t=>({id:t.name,contextLength:0,maxOutputTokens:0}));case "anthropic-style":return (e.data??[]).map(t=>({id:t.id,contextLength:t.context_window??2e5,maxOutputTokens:t.max_output_tokens??0}));case "gemini":return (e.models??[]).map(t=>({id:t.name.replace(/^models\//,""),contextLength:t.inputTokenLimit??0,maxOutputTokens:t.outputTokenLimit??0}));case "openai-compat":return (e.data??[]).map(t=>({id:t.id,contextLength:t.context_window??t.context_length??0,maxOutputTokens:t.max_completion_tokens??0}))}return i}a(V,"normalize");function W(e,i){if(!existsSync(y))return d(e,i,"openrouter snapshot missing");try{let n=(JSON.parse(readFileSync(y,"utf-8")).models??[]).map(t=>({id:t.id,contextLength:t.contextLength??0,maxOutputTokens:t.maxOutputTokens??0}));return b$1(i,e,n)}catch(a){return d(e,i,a.message)}}a(W,"loadOpenRouterSnapshot");function d(e,i,a,n){let t=a$1(i,e);if(t)return {...t,error:a,fromCache:true};if(n&&x(n)){let s=P(n).map(o=>({id:o.id,contextLength:o.contextLength,maxOutputTokens:o.maxOutputTokens}));return {fetchedAt:new Date().toISOString(),providerKey:e,models:s,error:a}}return {fetchedAt:new Date().toISOString(),providerKey:e,models:[],error:a}}a(d,"errorResult");function Z(e,i){return !e||/^https?:\/\//i.test(i)?i:`${e.replace(/\/$/,"")}${i.startsWith("/")?"":"/"}${i}`}a(Z,"joinUrl");
2
- export{f as a,Me as b};
@@ -1 +0,0 @@
1
- import _ from'path';import {fileURLToPath}from'url';var r=Object.defineProperty;var p=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var f=Object.prototype.hasOwnProperty;var i=(t,e)=>r(t,"name",{value:e,configurable:true}),x=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,o)=>(typeof require<"u"?require:e)[o]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var l=(t,e)=>()=>(t&&(e=t(t=0)),e);var u=(t,e)=>{for(var o in e)r(t,o,{get:e[o],enumerable:true});},s=(t,e,o,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let m of c(e))!f.call(t,m)&&m!==o&&r(t,m,{get:()=>e[m],enumerable:!(n=p(e,m))||n.enumerable});return t};var D=t=>s(r({},"__esModule",{value:true}),t);var a,g,R,T,h=l(()=>{a=i(()=>fileURLToPath(import.meta.url),"getFilename"),g=i(()=>_.dirname(a()),"getDirname"),R=g(),T=a();});export{i as a,x as b,l as c,u as d,D as e,R as f,T as g,h};
@@ -1 +0,0 @@
1
- import {T,ga}from'./chunk-Z5HKHAO7.js';import {h,a}from'./chunk-3QP5BQ3L.js';import {join}from'path';import {homedir}from'os';h();h();function l(e){let o=e.runsDir??join(homedir(),".code-shell","runs"),u=new T(o);return new ga({store:u,executor:{llm:e.llm,maxTurns:e.maxTurns??30,maxContextTokens:e.maxContextTokens??2e5,permissionMode:e.permissionMode??"acceptEdits",sessionStorageDir:e.sessionStorageDir,mcpServers:e.mcpServers,enabledBuiltinTools:e.enabledBuiltinTools,disabledBuiltinTools:e.disabledBuiltinTools,customSystemPrompt:e.customSystemPrompt,appendSystemPrompt:e.appendSystemPrompt,hooks:e.hooks},concurrency:e.concurrency??1,runsDir:o,evaluator:e.evaluator,defaultTags:e.defaultTags,defaultMetadata:e.defaultMetadata})}a(l,"createRunManager");export{l as a};
@@ -1,2 +0,0 @@
1
- import {a as a$2}from'./chunk-GKAQH2DG.js';import {h,a as a$1}from'./chunk-3QP5BQ3L.js';h();var a="https://openrouter.ai/api/v1/models";function c(t){if(!t)return 0;let e=Number(t);return Number.isFinite(e)?e*1e6:0}a$1(c,"priceToPerMillion");function p(t){return {id:t.id,name:t.name??t.id,created:t.created??0,contextLength:t.top_provider?.context_length??t.context_length??0,maxOutputTokens:t.top_provider?.max_completion_tokens??0,inputPricePerMillion:c(t.pricing?.prompt),outputPricePerMillion:c(t.pricing?.completion),modalities:t.architecture?.input_modalities??[]}}a$1(p,"slim");async function f(t=15e3){try{let e=await fetch(a,{headers:{Accept:"application/json"},signal:AbortSignal.timeout(t)});if(!e.ok)return {ok:!1,count:0,error:`HTTP ${e.status} ${e.statusText}`};let r=((await e.json()).data??[]).map(p).sort((s,u)=>u.created-s.created);return a$2({fetchedAt:new Date().toISOString(),source:a,count:r.length,models:r}),{ok:!0,count:r.length}}catch(e){return {ok:false,count:0,error:e.message}}}a$1(f,"syncOpenRouterCatalog");
2
- export{f as a};
@@ -1,4 +0,0 @@
1
- import {d}from'./chunk-DI26OUIU.js';import {h,a}from'./chunk-3QP5BQ3L.js';import {Client}from'@modelcontextprotocol/sdk/client/index.js';import {StdioClientTransport}from'@modelcontextprotocol/sdk/client/stdio.js';import {StreamableHTTPClientTransport}from'@modelcontextprotocol/sdk/client/streamableHttp.js';h();var m=class p{constructor(t){this.toolRegistry=t;p.instance=this;}static{a(this,"MCPManager");}static instance=null;connections=new Map;static getInstance(){if(!p.instance)throw new Error("MCPManager not initialized. Connect to servers first.");return p.instance}async connectAll(t){let e=Object.entries(t);if(e.length===0)return;let s=await Promise.allSettled(e.map(([r,n])=>this.connect(r,n)));for(let r=0;r<s.length;r++){let n=s[r];n.status==="rejected"&&d.warn("mcp.connect_failed",{server:e[r][0],error:n.reason.message});}}async connect(t,e){if(this.connections.has(t)){d.info("mcp.already_connected",{server:t});return}d.info("mcp.connecting",{server:t,transport:e.transport??"stdio"});let s=new Client({name:"code-shell",version:"0.1.0"},{capabilities:{}}),r,n=e.transport??"stdio";if(n==="stdio"){if(!e.command)throw new Error(`MCP server "${t}": command is required for stdio transport`);r=new StdioClientTransport({command:e.command,args:e.args,env:e.env?{...process.env,...e.env}:void 0});}else if(n==="streamable-http"||n==="sse"){if(!e.url)throw new Error(`MCP server "${t}": url is required for ${n} transport`);r=new StreamableHTTPClientTransport(new URL(e.url),{requestInit:e.headers?{headers:e.headers}:void 0});}else throw new Error(`MCP server "${t}": unsupported transport "${n}"`);let i=15e3,o;try{await new Promise((l,c)=>{o=setTimeout(()=>{c(new Error(`MCP server "${t}" connect timed out after ${i}ms`));},i),s.connect(r).then(()=>l(),f=>c(f));});}catch(l){try{await r.close?.();}catch{}throw l}finally{o&&clearTimeout(o);}this.connections.set(t,{client:s,serverName:t,transport:r}),await this.discoverTools(t,s),d.info("mcp.connected",{server:t});}async discoverTools(t,e){let s=await e.listTools();for(let r of s.tools){let n={name:`mcp_${t}_${r.name}`,description:`[${t}] ${r.description??r.name}`,inputSchema:r.inputSchema??{type:"object",properties:{}},source:"mcp",serverName:t,permissionDefault:"ask",isConcurrencySafe:true,isReadOnly:false};this.toolRegistry.registerTool(n,async i=>{let o=await e.callTool({name:r.name,arguments:i}),l=[];if(Array.isArray(o.content))for(let c of o.content)typeof c=="object"&&c!==null&&"text"in c?l.push(String(c.text)):typeof c=="string"&&l.push(c);return l.join(`
2
- `)||"(no output)"}),d.info("mcp.tool_registered",{server:t,tool:n.name});}}async disconnectAll(){for(let[t,e]of this.connections)try{await e.client.close(),d.info("mcp.disconnected",{server:t});}catch(s){d.warn("mcp.disconnect_error",{server:t,error:s.message});}this.connections.clear();}listServers(){return [...this.connections.keys()]}async callTool(t,e,s){let r=this.connections.get(t);if(!r)throw new Error(`MCP server "${t}" is not connected.`);let n=await r.client.callTool({name:e,arguments:s}),i=[];if(Array.isArray(n.content))for(let o of n.content)typeof o=="object"&&o!==null&&"text"in o?i.push(String(o.text)):typeof o=="string"&&i.push(o);return i.join(`
3
- `)||"(no output)"}async listResources(t){let e=[],s=t?[t]:[...this.connections.keys()];for(let r of s){let n=this.connections.get(r);if(n)try{let i=await n.client.listResources();for(let o of i.resources)e.push({uri:o.uri,name:o.name??o.uri,description:o.description});}catch{}}return e}async readResource(t,e){let s=this.connections.get(t);if(!s)throw new Error(`MCP server "${t}" is not connected.`);let r=await s.client.readResource({uri:e}),n=[];if(Array.isArray(r.contents))for(let i of r.contents)typeof i=="object"&&i!==null&&"text"in i&&n.push(String(i.text));return n.join(`
4
- `)||"(no content)"}};export{m as a};
@@ -1,2 +0,0 @@
1
- import {h as h$1,a as a$1}from'./chunk-3QP5BQ3L.js';import {existsSync,mkdirSync,appendFileSync,readdirSync,unlinkSync}from'fs';import {join}from'path';import {homedir}from'os';import {AsyncLocalStorage}from'async_hooks';h$1();var l={debug:0,info:1,warn:2,error:3},g=join(homedir(),".code-shell","logs"),L=7,C=100,O=new Set(["ui","ink","render","stream"]);function F(n,e){let r=(n??e??"").toLowerCase();return O.has(r)?"ui-ink":"engine"}a$1(F,"routeBucket");function A(){return process.env.CODE_SHELL_DEV==="1"||process.argv.includes("--debug")||process.argv.includes("-d")||process.argv.some(e=>e.startsWith("--debug="))?true:process.env.NODE_ENV==="test"||process.env.BUN_TEST==="1"||process.argv.some(e=>e.includes("/tests/")||e.endsWith(".test.ts"))?false:!!(process.argv[1]??"").includes("/src/")}a$1(A,"isLocalDev");function M(){let n=process.env.CODE_SHELL_LOG_LEVEL?.toLowerCase().trim();return n&&Object.hasOwn(l,n)?n:A()?"debug":"info"}a$1(M,"resolveDefaultLevel");function $(){let n=process.argv.find(t=>t.startsWith("--debug=")),e;if(n)e=n.slice(8);else {let t=process.env.CODE_SHELL_DEBUG;t&&t!=="1"&&t!=="true"&&(e=t);}if(!e)return null;let r=new Set(e.split(",").map(t=>t.trim().toLowerCase()).filter(Boolean));return r.size>0?r:null}a$1($,"resolveCategoryFilter");var w=new AsyncLocalStorage,S=`${Date.now()}-${Math.random().toString(36).slice(2,8)}`;function N(n){S=n;}a$1(N,"setCurrentSid");function h(){return w.getStore()??S}a$1(h,"getCurrentSid");function U(n,e){return w.run(n,e)}a$1(U,"runWithSid");var a=[];var d=class n{constructor(e={}){this.context=e;this.enabled=process.env.CODE_SHELL_LOG!=="0",this.minLevel=M(),this.categoryFilter=$(),this.stderrEcho=process.env.CODE_SHELL_DEBUG==="1"||process.argv.includes("--debug-to-stderr")||process.argv.includes("-d2e");}static{a$1(this,"Logger");}enabled;minLevel;categoryFilter;stderrEcho;dirReady=false;child(e){return new n({...this.context,...e})}setSid(e){N(e);}getSid(){return h()}debug(e,r){this.write("debug",e,r);}info(e,r){this.write("info",e,r);}warn(e,r){this.write("warn",e,r);}error(e,r){let t,o;typeof e=="string"?(t=e,r instanceof Error?(o={error:r.message,stack:r.stack}):o=r):e instanceof Error?(t=e.message,o={stack:e.stack}):t=String(e),this.recordError(t,o),this.write("error",t,o);}recordError(e,r){a.length>=C&&a.shift(),a.push({msg:e,t:new Date().toISOString(),data:r});}write(e,r,t){if(!this.enabled||l[e]<l[this.minLevel])return;let o=t?.cat??this.context.cat;if(e==="debug"&&this.categoryFilter&&(!o||!this.categoryFilter.has(o.toLowerCase())))return;let s=new Date().toISOString(),c={t:s,l:e,msg:r,...this.context};o&&!c.cat&&(c.cat=o),c.sid===void 0&&(c.sid=h()),t&&(c.d=t);let u=JSON.stringify(c)+`
2
- `;if(this.stderrEcho){process.stderr.write(u);return}try{this.dirReady||(existsSync(g)||mkdirSync(g,{recursive:!0}),this.dirReady=!0);let y=s.slice(0,10),k=F(o,this.context.cat),E=join(g,`${k}-${y}.log`);appendFileSync(E,u,"utf-8");}catch{}}getMinLevel(){return this.minLevel}isCategoryActive(e){return !this.categoryFilter||this.categoryFilter.has(e.toLowerCase())}span(e,r){let t=Date.now();return this.write("debug",`${e}.begin`,r),{end:a$1(o=>{let s=Date.now()-t;this.write("info",`${e}.end`,{...r,...o,duration_ms:s});},"end"),fail:a$1((o,s)=>{let c=Date.now()-t,u=o instanceof Error?o.message:String(o);this.write("error",`${e}.fail`,{...r,...s,duration_ms:c,error:u});},"fail")}}},X=new d;function z(){try{if(!existsSync(g))return;let n=readdirSync(g).filter(e=>e.endsWith(".log")).sort();if(n.length<=L)return;for(let e of n.slice(0,n.length-L))try{unlinkSync(join(g,e));}catch{}}catch{}}a$1(z,"rotateLogs");export{N as a,h as b,U as c,X as d,z as e};
@@ -1 +0,0 @@
1
- import {h as h$1,a as a$1}from'./chunk-3QP5BQ3L.js';h$1();var e=class extends Error{constructor(s,o){super(s);this.details=o;this.name="FrameworkError";}static{a$1(this,"FrameworkError");}},i=class extends e{constructor(s,o,u){super(s,u);this.provider=o;this.name="LLMError";}static{a$1(this,"LLMError");}},p=class extends i{constructor(s,o){super(`Rate limit exceeded for ${s}`,s,{retryAfter:o});this.retryAfter=o;this.name="LLMRateLimitError";}static{a$1(this,"LLMRateLimitError");}},x=class extends i{static{a$1(this,"ContextLimitError");}constructor(t){super("Context limit exceeded",t),this.name="ContextLimitError";}},c=class extends e{constructor(s,o,u){super(s,u);this.toolName=o;this.name="ToolError";}static{a$1(this,"ToolError");}},a=class extends c{static{a$1(this,"ToolNotFoundError");}constructor(t){super(`Tool not found: ${t}`,t),this.name="ToolNotFoundError";}},l=class extends c{static{a$1(this,"ToolExecutionError");}constructor(t,s){super(`Tool execution failed: ${t} - ${s}`,t,{cause:s}),this.name="ToolExecutionError";}},g=class extends c{constructor(s,o){super(`Tool timed out after ${o}ms: ${s}`,s,{timeoutMs:o});this.timeoutMs=o;this.name="ToolTimeoutError";}static{a$1(this,"ToolTimeoutError");}},m=class extends e{static{a$1(this,"PermissionDeniedError");}constructor(t,s){super(`Permission denied for tool: ${t}${s?` - ${s}`:""}`,{toolName:t,reason:s}),this.name="PermissionDeniedError";}},h=class extends e{static{a$1(this,"SessionError");}constructor(t,s){super(t,s),this.name="SessionError";}},$=class extends e{static{a$1(this,"TranscriptError");}constructor(t,s){super(t,s),this.name="TranscriptError";}},b=class extends e{static{a$1(this,"ConfigError");}constructor(t,s){super(t,s),this.name="ConfigError";}};export{e as a,i as b,p as c,x as d,c as e,a as f,l as g,g as h,m as i,h as j,$ as k,b as l};
@@ -1,2 +0,0 @@
1
- import {h,a}from'./chunk-3QP5BQ3L.js';import {existsSync,readFileSync,copyFileSync,writeFileSync,mkdirSync,renameSync}from'fs';import {join,dirname}from'path';import {homedir}from'os';import {z}from'zod';h();h();var C=z.object({agent:z.object({preset:z.string().default("terminal-coding"),enabledBuiltinTools:z.array(z.string()).default([]),disabledBuiltinTools:z.array(z.string()).default([]),customSystemPrompt:z.string().optional(),appendSystemPrompt:z.string().optional()}).default({}),activeKey:z.string().optional(),autoUpdates:z.boolean().default(true),model:z.object({provider:z.string().default("openai"),name:z.string().default("anthropic/claude-opus-4-6"),apiKey:z.string().optional(),baseUrl:z.string().default("https://openrouter.ai/api/v1"),temperature:z.number().min(0).max(2).default(.3),maxTokens:z.number().default(8192)}).default({}),providers:z.array(z.object({key:z.string(),label:z.string().optional(),kind:z.enum(["openai","anthropic","deepseek","zai","xai","mistral","groq","google","openrouter","ollama","custom"]),baseUrl:z.string(),apiKey:z.string().optional(),protocol:z.enum(["openai-compat","anthropic-style"]).optional(),modelsPath:z.string().optional(),thinking:z.enum(["enabled","disabled"]).optional()})).default([]),models:z.array(z.object({key:z.string(),label:z.string().optional(),providerKey:z.string().optional(),model:z.string(),maxOutputTokens:z.number().optional(),maxContextTokens:z.number().optional(),protocol:z.string().optional(),provider:z.string().optional(),baseUrl:z.string().optional(),apiKey:z.string().optional(),thinking:z.enum(["enabled","disabled"]).optional()}).transform(r=>{let o=r.protocol??r.provider;return {...r,protocol:o,provider:o}})).default([]),permissions:z.object({defaultMode:z.enum(["default","acceptEdits","dontAsk","bypassPermissions","auto","plan"]).default("default"),rules:z.array(z.object({tool:z.string(),argsPattern:z.record(z.string()).optional(),decision:z.enum(["allow","deny","ask"]),reason:z.string().optional()})).default([])}).default({}),context:z.object({maxTokens:z.number().default(2e5),compactAtRatio:z.number().default(.6),summarizeAtRatio:z.number().default(.8)}).default({}),session:z.object({storageDir:z.string().optional(),maxHistory:z.number().default(100)}).default({}),mcpServers:z.record(z.object({name:z.string(),command:z.string().optional(),args:z.array(z.string()).optional(),env:z.record(z.string()).optional(),url:z.string().optional(),transport:z.enum(["stdio","sse","streamable-http","inprocess"]).optional(),headers:z.record(z.string()).optional()})).default({}),instructions:z.object({fileName:z.string().default("CODESHELL.md"),scanDirs:z.array(z.string()).default([]),compatFileNames:z.array(z.string()).default(["CLAUDE.md","AGENTS.md"]),ignoreGitBoundary:z.boolean().default(false)}).default({}),arena:z.object({participants:z.array(z.union([z.string(),z.object({name:z.string(),model:z.string(),provider:z.string().optional(),apiKey:z.string().optional(),baseUrl:z.string().optional()})])).default([])}).default({}),search:z.object({provider:z.enum(["serper","tavily","searxng"]).default("serper"),apiKey:z.string().optional(),baseUrl:z.string().optional()}).default({}),output:z.object({format:z.enum(["text","json","jsonl","stream-json"]).default("text")}).default({}),sandbox:z.object({mode:z.enum(["off","auto","seatbelt","bwrap"]).optional(),writableRoots:z.array(z.string()).optional(),deniedReads:z.array(z.string()).optional(),network:z.enum(["allow","deny"]).optional()}).optional(),hooks:z.array(z.object({event:z.string(),command:z.string().min(1),matcher:z.string().optional(),timeout_ms:z.number().int().positive().optional(),cwd:z.string().optional()})).optional()}).passthrough();function x(r){return C.parse(r)}a(x,"validateSettings");h();var N=[[/deepseek\.com/i,"deepseek"],[/z\.ai/i,"zai"],[/anthropic\.com/i,"anthropic"],[/openai\.com/i,"openai"],[/x\.ai/i,"xai"],[/mistral\.ai/i,"mistral"],[/groq\.com/i,"groq"],[/generativelanguage\.googleapis/i,"google"],[/openrouter\.ai/i,"openrouter"],[/localhost:11434|127\.0\.0\.1:11434/i,"ollama"]];function S(r){if(!r)return "custom";for(let[o,n]of N)if(o.test(r))return n;return "custom"}a(S,"inferKind");function M(r){return `${r.provider??""}|${r.baseUrl??""}|${r.apiKey??""}`}a(M,"makeFingerprint");function L(r,o){if(!o.has(r))return r;for(let n=2;;n++){let i=`${r}-${n}`;if(!o.has(i))return i}}a(L,"deriveKey");function T(r,o,n){let i=o.lastIndexOf("/"),s=i>=0?o.slice(i+1):o,a=r.toLowerCase(),l=s.toLowerCase().startsWith(`${a}-`)?s:`${a}-${s}`;if(!n.has(l))return l;for(let d=2;;d++){let c=`${l}-${d}`;if(!n.has(c))return c}}a(T,"deriveProviderModelKey");function R(r){if(r.models.length===0)return {providers:r.providers,models:[],changed:false};let o=r.providers.length>0,n=new Map;for(let t of r.models)n.set(t.key,(n.get(t.key)??0)+1);if(!r.models.some(t=>!t.providerKey||(n.get(t.key)??0)>1))return {providers:r.providers,models:r.models.map(t=>({key:t.key,label:t.label,providerKey:t.providerKey??"",model:t.model,maxOutputTokens:t.maxOutputTokens,maxContextTokens:t.maxContextTokens,provider:t.provider,baseUrl:t.baseUrl,apiKey:t.apiKey})),changed:false};let s=new Map,a=[],l=new Set(r.providers.map(t=>t.key));for(let t of r.providers){let g=`|${t.baseUrl}|${t.apiKey??""}`;s.set(g,t.key);}for(let t of r.models){let g=M(t),h=r.providers.find(O=>O.baseUrl===(t.baseUrl??""));if(h){s.set(g,h.key);continue}if(s.has(g))continue;let m=S(t.baseUrl),f=L(m,l);l.add(f),s.set(g,f),a.push({key:f,kind:m,baseUrl:t.baseUrl??"",apiKey:t.apiKey});}let d=new Set,c=r.models.map(t=>{let g=s.get(M(t)),h=(n.get(t.key)??0)>1,m=t.key;if(h){let f=S(t.baseUrl);m=T(f,t.model,d);}if(d.has(m)){let f=S(t.baseUrl);m=T(f,t.model,d);}return d.add(m),{key:m,label:t.label,providerKey:g,provider:t.provider,model:t.model,baseUrl:t.baseUrl,apiKey:t.apiKey,maxOutputTokens:t.maxOutputTokens,maxContextTokens:t.maxContextTokens}}),p=new Set,v=c.filter(t=>{let g=`${t.key}|${t.model}`;return p.has(g)?false:(p.add(g),true)});return {providers:o?[...r.providers,...a]:a,models:v,changed:true}}a(R,"migrateModels");function k(){return process.env.HOME??homedir()}a(k,"userHome");var P=class{constructor(o=process.cwd()){this.cwd=o;}static{a(this,"SettingsManager");}sources=[];merged=null;load(o){this.sources=[],this.loadJsonFile(join(k(),".code-shell","settings.managed.json"),"managed",0),this.loadJsonFile(join(k(),".code-shell","settings.json"),"user",1),this.loadJsonFile(join(this.cwd,".code-shell","settings.json"),"project",2),this.loadJsonFile(join(this.cwd,".code-shell","settings.local.json"),"local",3),o&&Object.keys(o).length>0&&this.sources.push({name:"flag",priority:4,data:o}),this.sources.sort((s,a)=>s.priority-a.priority);let n=this.deepMerge(),i=join(k(),".code-shell","settings.json");if(existsSync(i))try{let s=JSON.parse(readFileSync(i,"utf-8")),a=R({providers:s.providers??[],models:s.models??[]});if(a.changed){copyFileSync(i,`${i}.bak`);let l={...s,providers:a.providers,models:a.models};writeFileSync(i,JSON.stringify(l,null,2),"utf-8");let d=this.sources.find(p=>p.name==="user");d&&(d.data=l);let c=this.deepMerge();return this.merged=x(c),this.merged}}catch{}return this.merged=x(n),this.merged}get(){return this.merged?this.merged:this.load()}invalidate(){this.merged=null;}saveUserSetting(o,n){let i=join(k(),".code-shell","settings.json"),s={};if(existsSync(i))try{let c=readFileSync(i,"utf-8"),p=JSON.parse(c);p&&typeof p=="object"&&!Array.isArray(p)&&(s=p);}catch{}let a=o.split("."),l=s;for(let c=0;c<a.length-1;c++){let p=a[c],v=l[p];(!v||typeof v!="object"||Array.isArray(v))&&(l[p]={}),l=l[p];}l[a[a.length-1]]=n,mkdirSync(dirname(i),{recursive:true});let d=`${i}.${process.pid}.${Date.now()}.tmp`;writeFileSync(d,JSON.stringify(s,null,2),"utf-8"),renameSync(d,i),this.invalidate();}loadJsonFile(o,n,i){if(existsSync(o))try{let s=readFileSync(o,"utf-8"),a=JSON.parse(s);typeof a=="object"&&a!==null&&this.sources.push({name:n,priority:i,data:a});}catch{}}deepMerge(){let o={};for(let n of this.sources)o=A(o,n.data);return o}};function A(r,o){let n={...r};for(let[i,s]of Object.entries(o))s===null?delete n[i]:typeof s=="object"&&!Array.isArray(s)&&typeof n[i]=="object"&&!Array.isArray(n[i])&&n[i]!==null?n[i]=A(n[i],s):n[i]=s;return n}a(A,"merge");
2
- export{C as a,x as b,P as c};
@@ -1 +0,0 @@
1
- import {I,aa,$,T,ga}from'./chunk-Z5HKHAO7.js';import {h,a}from'./chunk-3QP5BQ3L.js';import {join}from'path';import {homedir}from'os';h();h();function R(y,s){let{preset:e,adapter:t,contract:o}=y,w=e.name,x=["Read","Write","Edit","Glob","Grep","Bash","AskUserQuestion","Agent","ToolSearch","TaskCreate","TaskList","TaskUpdate","TaskGet"],i=new Set([...x,...t?.enableTools??[]]);for(let n of t?.disableTools??[])i.delete(n);let S=[{tool:"Read",decision:"allow"},{tool:"Glob",decision:"allow"},{tool:"Grep",decision:"allow"},{tool:"AskUserQuestion",decision:"allow"},{tool:"ToolSearch",decision:"allow"},{tool:"TaskCreate",decision:"allow"},{tool:"TaskList",decision:"allow"},{tool:"TaskUpdate",decision:"allow"},{tool:"TaskGet",decision:"allow"},...t?.permissionRules??[]],l={name:w,label:e.label,description:e.description,promptSections:e.sections??["base","orchestration"],injectGitStatus:e.injectGitStatus??false,builtinTools:[...i],defaultPermissionRules:S};I(l);let r;o?.evaluator?Array.isArray(o.evaluator)?r=new aa(o.evaluator):r=o.evaluator:r=new $;let c=t?.tools??[],d=c.map(n=>({definition:n.definition,execute:n.execute})),u=s.runsDir??join(homedir(),".code-shell","runs"),k=new T(u);return {manager:new ga({store:k,executor:{llm:s.llm,maxTurns:o?.maxTurns??30,maxContextTokens:o?.maxContextTokens??2e5,permissionMode:s.permissionMode??"acceptEdits",sessionStorageDir:s.sessionStorageDir,mcpServers:t?.mcpServers,enabledBuiltinTools:[...i],disabledBuiltinTools:t?.disableTools,customSystemPrompt:e.customPrompt,appendSystemPrompt:e.appendPrompt,hooks:t?.hooks,customTools:d.length>0?d:void 0},concurrency:o?.concurrency??1,runsDir:u,evaluator:r,defaultTags:o?.defaultTags,defaultMetadata:o?.defaultMetadata}),preset:l,customTools:c}}a(R,"defineProduct");export{R as a};
@@ -1,2 +0,0 @@
1
- import {h as h$1,a as a$1}from'./chunk-3QP5BQ3L.js';h$1();var a={fetchedAt:"2026-05-20T10:38:49.001Z",source:"https://openrouter.ai/api/v1/models",count:357,models:[{id:"google/gemini-3.5-flash",name:"Google: Gemini 3.5 Flash",created:1779193800,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:1.5,outputPricePerMillion:9,modalities:["text","image","video","file","audio"]},{id:"anthropic/claude-opus-4.7-fast",name:"Anthropic: Claude Opus 4.7 (Fast)",created:1778613011,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:150,modalities:["text","image","file"]},{id:"perceptron/perceptron-mk1",name:"Perceptron: Perceptron Mk1",created:1778597029,contextLength:32768,maxOutputTokens:8192,inputPricePerMillion:.15,outputPricePerMillion:1.5,modalities:["text","image","video"]},{id:"inclusionai/ring-2.6-1t",name:"inclusionAI: Ring-2.6-1T",created:1778247440,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.075,outputPricePerMillion:.625,modalities:["text"]},{id:"google/gemini-3.1-flash-lite",name:"Google: Gemini 3.1 Flash Lite",created:1778168828,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:.25,outputPricePerMillion:1.5,modalities:["text","image","video","file","audio"]},{id:"baidu/cobuddy:free",name:"Baidu Qianfan: CoBuddy (free)",created:1778035480,contextLength:131072,maxOutputTokens:65536,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",created:1778000212,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:30,modalities:["text","image","file"]},{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",created:1777591821,contextLength:1e6,maxOutputTokens:0,inputPricePerMillion:1.25,outputPricePerMillion:2.5,modalities:["text","image"]},{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",created:1777577071,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.049999999999999996,outputPricePerMillion:.09999999999999999,modalities:["text"]},{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",created:1777570439,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:1.5,outputPricePerMillion:7.5,modalities:["text","image","file"]},{id:"openrouter/owl-alpha",name:"Owl Alpha",created:1777398589,contextLength:1048756,maxOutputTokens:262144,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",created:1777393095,contextLength:256e3,maxOutputTokens:65536,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text","audio","image","video"]},{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",created:1777389604,contextLength:131072,maxOutputTokens:8192,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",created:1777388504,contextLength:131072,maxOutputTokens:8192,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"~anthropic/claude-haiku-latest",name:"Anthropic Claude Haiku Latest",created:1777318492,contextLength:2e5,maxOutputTokens:64e3,inputPricePerMillion:1,outputPricePerMillion:5,modalities:["text","image","file"]},{id:"~openai/gpt-mini-latest",name:"OpenAI GPT Mini Latest",created:1777318471,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.75,outputPricePerMillion:4.5,modalities:["file","image","text"]},{id:"~google/gemini-pro-latest",name:"Google Gemini Pro Latest",created:1777318451,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:2,outputPricePerMillion:12,modalities:["audio","file","image","text","video"]},{id:"~moonshotai/kimi-latest",name:"MoonshotAI Kimi Latest",created:1777318428,contextLength:262142,maxOutputTokens:262142,inputPricePerMillion:.73,outputPricePerMillion:3.49,modalities:["text","image"]},{id:"~google/gemini-flash-latest",name:"Google Gemini Flash Latest",created:1777318398,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:1.5,outputPricePerMillion:9,modalities:["text","image","video","file","audio"]},{id:"~anthropic/claude-sonnet-latest",name:"Anthropic Claude Sonnet Latest",created:1777318368,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["text","image","file"]},{id:"~openai/gpt-latest",name:"OpenAI GPT Latest",created:1777318334,contextLength:105e4,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:30,modalities:["file","image","text"]},{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",created:1777261368,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.3,outputPricePerMillion:1.7999999999999998,modalities:["text","image","video"]},{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",created:1777261362,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.1875,outputPricePerMillion:1.125,modalities:["text","image","video"]},{id:"qwen/qwen3.6-35b-a3b",name:"Qwen: Qwen3.6 35B A3B",created:1777260255,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.149,outputPricePerMillion:1,modalities:["text","image","video"]},{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",created:1777260242,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:1.04,outputPricePerMillion:6.24,modalities:["text"]},{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",created:1777255064,contextLength:262144,maxOutputTokens:81920,inputPricePerMillion:.32,outputPricePerMillion:3.1999999999999997,modalities:["text","image","video"]},{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",created:1777051896,contextLength:105e4,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:180,modalities:["file","image","text"]},{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",created:1777051893,contextLength:105e4,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:30,modalities:["file","image","text"]},{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",created:1777000679,contextLength:1048576,maxOutputTokens:384e3,inputPricePerMillion:.435,outputPricePerMillion:.87,modalities:["text"]},{id:"deepseek/deepseek-v4-flash:free",name:"DeepSeek: DeepSeek V4 Flash (free)",created:1777000666,contextLength:1048576,maxOutputTokens:384e3,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",created:1777000666,contextLength:1048575,maxOutputTokens:0,inputPricePerMillion:.112,outputPricePerMillion:.224,modalities:["text"]},{id:"inclusionai/ling-2.6-1t",name:"inclusionAI: Ling-2.6-1T",created:1776948238,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.3,outputPricePerMillion:2.5,modalities:["text"]},{id:"tencent/hy3-preview",name:"Tencent: Hy3 preview",created:1776878150,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.06599999999999999,outputPricePerMillion:.26,modalities:["text"]},{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo-V2.5-Pro",created:1776874273,contextLength:1048576,maxOutputTokens:16384,inputPricePerMillion:1,outputPricePerMillion:3,modalities:["text"]},{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",created:1776874269,contextLength:1048576,maxOutputTokens:131072,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","audio","image","video"]},{id:"openai/gpt-5.4-image-2",name:"OpenAI: GPT-5.4 Image 2",created:1776797528,contextLength:272e3,maxOutputTokens:128e3,inputPricePerMillion:8,outputPricePerMillion:15,modalities:["image","text","file"]},{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6-flash",created:1776795886,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.01,outputPricePerMillion:.03,modalities:["text"]},{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",created:1776795361,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:25,modalities:["text","image","file"]},{id:"openrouter/pareto-code",name:"Pareto Code Router",created:1776747900,contextLength:2e6,maxOutputTokens:0,inputPricePerMillion:-1e6,outputPricePerMillion:-1e6,modalities:["text"]},{id:"baidu/qianfan-ocr-fast",name:"Baidu: Qianfan-OCR-Fast",created:1776707472,contextLength:65536,maxOutputTokens:28672,inputPricePerMillion:.6799999999999999,outputPricePerMillion:2.81,modalities:["image","text"]},{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",created:1776699402,contextLength:262142,maxOutputTokens:262142,inputPricePerMillion:.73,outputPricePerMillion:3.49,modalities:["text","image"]},{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",created:1776351100,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:25,modalities:["text","image","file"]},{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",created:1775592472,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:150,modalities:["text","image","file"]},{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",created:1775578025,contextLength:202800,maxOutputTokens:202800,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"google/gemma-4-26b-a4b-it:free",name:"Google: Gemma 4 26B A4B (free)",created:1775227989,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["image","text","video"]},{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B ",created:1775227989,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.06,outputPricePerMillion:.33,modalities:["image","text","video"]},{id:"google/gemma-4-31b-it:free",name:"Google: Gemma 4 31B (free)",created:1775148486,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["image","text","video"]},{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",created:1775148486,contextLength:262144,maxOutputTokens:16384,inputPricePerMillion:.12,outputPricePerMillion:.37,modalities:["image","text","video"]},{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",created:1775133557,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.325,outputPricePerMillion:1.95,modalities:["text","image","video"]},{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",created:1775061458,contextLength:202752,maxOutputTokens:131072,inputPricePerMillion:1.2,outputPricePerMillion:4,modalities:["image","text","video"]},{id:"arcee-ai/trinity-large-thinking:free",name:"Arcee AI: Trinity Large Thinking (free)",created:1775058318,contextLength:262144,maxOutputTokens:8e4,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",created:1775058318,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.22,outputPricePerMillion:.85,modalities:["text"]},{id:"x-ai/grok-4.20-multi-agent",name:"xAI: Grok 4.20 Multi-Agent",created:1774979158,contextLength:2e6,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","image","file"]},{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",created:1774979019,contextLength:2e6,maxOutputTokens:0,inputPricePerMillion:1.25,outputPricePerMillion:2.5,modalities:["text","image","file"]},{id:"google/lyria-3-pro-preview",name:"Google: Lyria 3 Pro Preview",created:1774907286,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text","image"]},{id:"google/lyria-3-clip-preview",name:"Google: Lyria 3 Clip Preview",created:1774907255,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text","image"]},{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",created:1774649310,contextLength:256e3,maxOutputTokens:8e4,inputPricePerMillion:.3,outputPricePerMillion:1.2,modalities:["text"]},{id:"rekaai/reka-edge",name:"Reka Edge",created:1774026965,contextLength:16384,maxOutputTokens:16384,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.09999999999999999,modalities:["image","text","video"]},{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",created:1773863703,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","audio","image","video"]},{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",created:1773863643,contextLength:1048576,maxOutputTokens:131072,inputPricePerMillion:1,outputPricePerMillion:3,modalities:["text"]},{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",created:1773836697,contextLength:196608,maxOutputTokens:131072,inputPricePerMillion:.27899999999999997,outputPricePerMillion:1.2,modalities:["text"]},{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",created:1773748187,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.19999999999999998,outputPricePerMillion:1.25,modalities:["file","image","text"]},{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",created:1773748178,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.75,outputPricePerMillion:4.5,modalities:["file","image","text"]},{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",created:1773695685,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text","image"]},{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",created:1773583573,contextLength:202752,maxOutputTokens:131072,inputPricePerMillion:1.2,outputPricePerMillion:4,modalities:["text"]},{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",created:1773245239,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",created:1773245239,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.09,outputPricePerMillion:.44999999999999996,modalities:["text"]},{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",created:1773157231,contextLength:262144,maxOutputTokens:131072,inputPricePerMillion:.25,outputPricePerMillion:2,modalities:["text","image","video"]},{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",created:1773152396,contextLength:262144,maxOutputTokens:81920,inputPricePerMillion:.04,outputPricePerMillion:.15,modalities:["text","image","video"]},{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",created:1772734366,contextLength:105e4,maxOutputTokens:128e3,inputPricePerMillion:30,outputPricePerMillion:180,modalities:["text","image","file"]},{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",created:1772734352,contextLength:105e4,maxOutputTokens:128e3,inputPricePerMillion:2.5,outputPricePerMillion:15,modalities:["text","image","file"]},{id:"inception/mercury-2",name:"Inception: Mercury 2",created:1772636275,contextLength:128e3,maxOutputTokens:5e4,inputPricePerMillion:.25,outputPricePerMillion:.75,modalities:["text"]},{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",created:1772564061,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["text","image","file"]},{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",created:1772512673,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:.25,outputPricePerMillion:1.5,modalities:["text","image","video","file","audio"]},{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",created:1772131107,contextLength:262144,maxOutputTokens:131072,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["text","image","video"]},{id:"google/gemini-3.1-flash-image-preview",name:"Google: Nano Banana 2 (Gemini 3.1 Flash Image Preview)",created:1772119558,contextLength:65536,maxOutputTokens:65536,inputPricePerMillion:.5,outputPricePerMillion:3,modalities:["image","text"]},{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",created:1772053822,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.13899999999999998,outputPricePerMillion:1,modalities:["text","image","video"]},{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",created:1772053810,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.195,outputPricePerMillion:1.56,modalities:["text","image","video"]},{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",created:1772053789,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.26,outputPricePerMillion:2.08,modalities:["text","image","video"]},{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",created:1772053776,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.065,outputPricePerMillion:.26,modalities:["text","image","video"]},{id:"liquid/lfm-2-24b-a2b",name:"LiquidAI: LFM2-24B-A2B",created:1772048711,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:.03,outputPricePerMillion:.12,modalities:["text"]},{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",created:1772045923,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:2,outputPricePerMillion:12,modalities:["text","audio","image","video","file"]},{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",created:1771959164,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["text","image","file"]},{id:"aion-labs/aion-2.0",name:"AionLabs: Aion-2.0",created:1771881306,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.7999999999999999,outputPricePerMillion:1.5999999999999999,modalities:["text"]},{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",created:1771509627,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:2,outputPricePerMillion:12,modalities:["audio","file","image","text","video"]},{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",created:1771342990,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["text","image","file"]},{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",created:1771229416,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.26,outputPricePerMillion:1.56,modalities:["text","image","video"]},{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",created:1771223018,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.39,outputPricePerMillion:2.34,modalities:["text","image","video"]},{id:"minimax/minimax-m2.5:free",name:"MiniMax: MiniMax M2.5 (free)",created:1770908502,contextLength:196608,maxOutputTokens:8192,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",created:1770908502,contextLength:196608,maxOutputTokens:196608,inputPricePerMillion:.15,outputPricePerMillion:1.15,modalities:["text"]},{id:"z-ai/glm-5",name:"Z.ai: GLM 5",created:1770829182,contextLength:202752,maxOutputTokens:0,inputPricePerMillion:.6,outputPricePerMillion:1.92,modalities:["text"]},{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",created:1770671901,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.78,outputPricePerMillion:3.9,modalities:["text"]},{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",created:1770219050,contextLength:1e6,maxOutputTokens:128e3,inputPricePerMillion:5,outputPricePerMillion:25,modalities:["text","image","file"]},{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",created:1770164101,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.11,outputPricePerMillion:.7999999999999999,modalities:["text"]},{id:"openrouter/free",name:"Free Models Router",created:1769917427,contextLength:2e5,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text","image"]},{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",created:1769728337,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.3,modalities:["text"]},{id:"arcee-ai/trinity-large-preview",name:"Arcee AI: Trinity Large Preview",created:1769552670,contextLength:131e3,maxOutputTokens:0,inputPricePerMillion:.15,outputPricePerMillion:.44999999999999996,modalities:["text"]},{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",created:1769487076,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.39999999999999997,outputPricePerMillion:1.9,modalities:["text","image"]},{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",created:1769481200,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text"]},{id:"minimax/minimax-m2-her",name:"MiniMax: MiniMax M2-her",created:1769177239,contextLength:65536,maxOutputTokens:2048,inputPricePerMillion:.3,outputPricePerMillion:1.2,modalities:["text"]},{id:"writer/palmyra-x5",name:"Writer: Palmyra X5",created:1769003823,contextLength:104e4,maxOutputTokens:8192,inputPricePerMillion:.6,outputPricePerMillion:6,modalities:["text"]},{id:"liquid/lfm-2.5-1.2b-thinking:free",name:"LiquidAI: LFM2.5-1.2B-Thinking (free)",created:1768927527,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"liquid/lfm-2.5-1.2b-instruct:free",name:"LiquidAI: LFM2.5-1.2B-Instruct (free)",created:1768927521,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"openai/gpt-audio",name:"OpenAI: GPT Audio",created:1768862569,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text","audio"]},{id:"openai/gpt-audio-mini",name:"OpenAI: GPT Audio Mini",created:1768859419,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:.6,outputPricePerMillion:2.4,modalities:["text","audio"]},{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",created:1768833913,contextLength:202752,maxOutputTokens:16384,inputPricePerMillion:.06,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",created:1768409315,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["text","image"]},{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",created:1766505011,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.075,outputPricePerMillion:.3,modalities:["image","text","video"]},{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",created:1766504997,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.25,outputPricePerMillion:2,modalities:["image","text","video"]},{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",created:1766454997,contextLength:196608,maxOutputTokens:196608,inputPricePerMillion:.29,outputPricePerMillion:.95,modalities:["text"]},{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",created:1766378014,contextLength:202752,maxOutputTokens:131072,inputPricePerMillion:.39999999999999997,outputPricePerMillion:1.75,modalities:["text"]},{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",created:1765987078,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:.5,outputPricePerMillion:3,modalities:["text","image","file","audio","video"]},{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",created:1765731308,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.3,modalities:["text"]},{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"NVIDIA: Nemotron 3 Nano 30B A3B (free)",created:1765731275,contextLength:256e3,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",created:1765731275,contextLength:262144,maxOutputTokens:228e3,inputPricePerMillion:.049999999999999996,outputPricePerMillion:.19999999999999998,modalities:["text"]},{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",created:1765389783,contextLength:128e3,maxOutputTokens:32e3,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["file","image","text"]},{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",created:1765389780,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:21,outputPricePerMillion:168,modalities:["image","text","file"]},{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",created:1765389775,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.75,outputPricePerMillion:14,modalities:["file","image","text"]},{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",created:1765285419,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","file"]},{id:"relace/relace-search",name:"Relace: Relace Search",created:1765213560,contextLength:256e3,maxOutputTokens:128e3,inputPricePerMillion:1,outputPricePerMillion:3,modalities:["text"]},{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",created:1765207462,contextLength:131072,maxOutputTokens:24e3,inputPricePerMillion:.3,outputPricePerMillion:.8999999999999999,modalities:["image","text","video"]},{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",created:1765204393,contextLength:131072,maxOutputTokens:163840,inputPricePerMillion:.135,outputPricePerMillion:.5,modalities:["text"]},{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",created:1765094847,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:.15,outputPricePerMillion:.15,modalities:["text"]},{id:"openrouter/bodybuilder",name:"Body Builder (beta)",created:1764903653,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:-1e6,outputPricePerMillion:-1e6,modalities:["text"]},{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",created:1764878934,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image"]},{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",created:1764696672,contextLength:1e6,maxOutputTokens:65535,inputPricePerMillion:.3,outputPricePerMillion:2.5,modalities:["text","image","video","file"]},{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",created:1764681735,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.19999999999999998,outputPricePerMillion:.19999999999999998,modalities:["text","image"]},{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",created:1764681654,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.15,outputPricePerMillion:.15,modalities:["text","image"]},{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",created:1764681560,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.09999999999999999,modalities:["text","image"]},{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",created:1764624472,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:.5,outputPricePerMillion:1.5,modalities:["text","image","file"]},{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",created:1764601720,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.045,outputPricePerMillion:.15,modalities:["text"]},{id:"deepseek/deepseek-v3.2-speciale",name:"DeepSeek: DeepSeek V3.2 Speciale",created:1764594837,contextLength:163840,maxOutputTokens:163840,inputPricePerMillion:.28700000000000003,outputPricePerMillion:.431,modalities:["text"]},{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",created:1764594642,contextLength:131072,maxOutputTokens:65536,inputPricePerMillion:.252,outputPricePerMillion:.378,modalities:["text"]},{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",created:1764212534,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.19999999999999998,outputPricePerMillion:1.1,modalities:["text"]},{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",created:1764010580,contextLength:2e5,maxOutputTokens:64e3,inputPricePerMillion:5,outputPricePerMillion:25,modalities:["file","image","text"]},{id:"allenai/olmo-3-32b-think",name:"AllenAI: Olmo 3 32B Think",created:1763758276,contextLength:65536,maxOutputTokens:65536,inputPricePerMillion:.15,outputPricePerMillion:.5,modalities:["text"]},{id:"google/gemini-3-pro-image-preview",name:"Google: Nano Banana Pro (Gemini 3 Pro Image Preview)",created:1763653797,contextLength:65536,maxOutputTokens:32768,inputPricePerMillion:2,outputPricePerMillion:12,modalities:["image","text"]},{id:"deepcogito/cogito-v2.1-671b",name:"Deep Cogito: Cogito v2.1 671B",created:1763071233,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:1.25,outputPricePerMillion:1.25,modalities:["text"]},{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",created:1763060305,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["image","text","file"]},{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",created:1763060302,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["file","image","text"]},{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",created:1763060298,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image"]},{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",created:1763057820,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.25,outputPricePerMillion:2,modalities:["image","text"]},{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",created:1762440622,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.6,outputPricePerMillion:2.5,modalities:["text"]},{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",created:1761950332,contextLength:1e6,maxOutputTokens:32e3,inputPricePerMillion:2.5,outputPricePerMillion:12.5,modalities:["text","image"]},{id:"perplexity/sonar-pro-search",name:"Perplexity: Sonar Pro Search",created:1761854366,contextLength:2e5,maxOutputTokens:8e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["text","image"]},{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",created:1761835144,contextLength:32e3,maxOutputTokens:0,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.3,modalities:["text","audio","file"]},{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",created:1761752836,contextLength:131072,maxOutputTokens:65536,inputPricePerMillion:.075,outputPricePerMillion:.3,modalities:["text"]},{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"NVIDIA: Nemotron Nano 12B 2 VL (free)",created:1761675565,contextLength:128e3,maxOutputTokens:128e3,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["image","text","video"]},{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",created:1761252093,contextLength:196608,maxOutputTokens:196608,inputPricePerMillion:.255,outputPricePerMillion:1,modalities:["text"]},{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",created:1761231332,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.10400000000000001,outputPricePerMillion:.41600000000000004,modalities:["text","image"]},{id:"ibm-granite/granite-4.0-h-micro",name:"IBM: Granite 4.0 Micro",created:1760927695,contextLength:131e3,maxOutputTokens:131e3,inputPricePerMillion:.017,outputPricePerMillion:.112,modalities:["text"]},{id:"microsoft/phi-4-mini-instruct",name:"Microsoft: Phi 4 Mini Instruct",created:1760726049,contextLength:128e3,maxOutputTokens:128e3,inputPricePerMillion:.08,outputPricePerMillion:.35,modalities:["text"]},{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",created:1760624583,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:2.5,outputPricePerMillion:2,modalities:["file","image","text"]},{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",created:1760547638,contextLength:2e5,maxOutputTokens:64e3,inputPricePerMillion:1,outputPricePerMillion:5,modalities:["text","image","file"]},{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",created:1760463746,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.117,outputPricePerMillion:1.365,modalities:["image","text"]},{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",created:1760463308,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.08,outputPricePerMillion:.5,modalities:["image","text"]},{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",created:1760447986,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:10,outputPricePerMillion:10,modalities:["image","text","file"]},{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",created:1760129661,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:10,outputPricePerMillion:40,modalities:["image","text","file"]},{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",created:1760129642,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["file","image","text"]},{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",created:1760101395,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"baidu/ernie-4.5-21b-a3b-thinking",name:"Baidu: ERNIE 4.5 21B A3B Thinking",created:1760048887,contextLength:131072,maxOutputTokens:65536,inputPricePerMillion:.07,outputPricePerMillion:.28,modalities:["text"]},{id:"google/gemini-2.5-flash-image",name:"Google: Nano Banana (Gemini 2.5 Flash Image)",created:1759870431,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.3,outputPricePerMillion:2.5,modalities:["image","text"]},{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",created:1759794479,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.13,outputPricePerMillion:1.56,modalities:["text","image"]},{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",created:1759794476,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.13,outputPricePerMillion:.52,modalities:["text","image"]},{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",created:1759776663,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:15,outputPricePerMillion:120,modalities:["image","text","file"]},{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",created:1759235576,contextLength:202752,maxOutputTokens:131072,inputPricePerMillion:.43,outputPricePerMillion:1.74,modalities:["text"]},{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",created:1759161676,contextLength:1e6,maxOutputTokens:64e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["text","image","file"]},{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",created:1759150481,contextLength:163840,maxOutputTokens:65536,inputPricePerMillion:.27,outputPricePerMillion:.41,modalities:["text"]},{id:"thedrummer/cydonia-24b-v4.1",name:"TheDrummer: Cydonia 24B V4.1",created:1758931878,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.3,outputPricePerMillion:.5,modalities:["text"]},{id:"relace/relace-apply-3",name:"Relace: Relace Apply 3",created:1758891572,contextLength:256e3,maxOutputTokens:128e3,inputPricePerMillion:.85,outputPricePerMillion:1.25,modalities:["text"]},{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",created:1758819686,contextLength:1048576,maxOutputTokens:65535,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["text","image","file","audio","video"]},{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",created:1758668690,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.26,outputPricePerMillion:2.6,modalities:["text","image"]},{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",created:1758668687,contextLength:262144,maxOutputTokens:16384,inputPricePerMillion:.19999999999999998,outputPricePerMillion:.88,modalities:["text","image"]},{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",created:1758662808,contextLength:262144,maxOutputTokens:32768,inputPricePerMillion:.78,outputPricePerMillion:3.9,modalities:["text"]},{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",created:1758662707,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.65,outputPricePerMillion:3.25,modalities:["text"]},{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",created:1758643403,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image"]},{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",created:1758548275,contextLength:163840,maxOutputTokens:32768,inputPricePerMillion:.27,outputPricePerMillion:.95,modalities:["text"]},{id:"alibaba/tongyi-deepresearch-30b-a3b",name:"Tongyi DeepResearch 30B A3B",created:1758210804,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.09,outputPricePerMillion:.44999999999999996,modalities:["text"]},{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",created:1758115536,contextLength:1e6,maxOutputTokens:65536,inputPricePerMillion:.195,outputPricePerMillion:.975,modalities:["text"]},{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",created:1757612284,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.0975,outputPricePerMillion:.78,modalities:["text"]},{id:"qwen/qwen3-next-80b-a3b-instruct:free",name:"Qwen: Qwen3 Next 80B A3B Instruct (free)",created:1757612213,contextLength:262144,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",created:1757612213,contextLength:262144,maxOutputTokens:16384,inputPricePerMillion:.09,outputPricePerMillion:1.1,modalities:["text"]},{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",created:1757347599,contextLength:1e6,maxOutputTokens:32768,inputPricePerMillion:.26,outputPricePerMillion:.78,modalities:["text"]},{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",created:1757347599,contextLength:1e6,maxOutputTokens:32768,inputPricePerMillion:.26,outputPricePerMillion:.78,modalities:["text"]},{id:"nvidia/nemotron-nano-9b-v2:free",name:"NVIDIA: Nemotron Nano 9B V2 (free)",created:1757106807,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",created:1757106807,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.04,outputPricePerMillion:.16,modalities:["text"]},{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",created:1757021147,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.6,outputPricePerMillion:2.5,modalities:["text"]},{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",created:1756399192,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.08,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"nousresearch/hermes-4-70b",name:"Nous: Hermes 4 70B",created:1756236182,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.13,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"nousresearch/hermes-4-405b",name:"Nous: Hermes 4 405B",created:1756235463,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:1,outputPricePerMillion:3,modalities:["text"]},{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",created:1755779628,contextLength:163840,maxOutputTokens:32768,inputPricePerMillion:.21,outputPricePerMillion:.7899999999999999,modalities:["text"]},{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",created:1755233061,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["audio","text"]},{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",created:1755095639,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","image","file"]},{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",created:1755034167,contextLength:12e4,maxOutputTokens:8e3,inputPricePerMillion:.07,outputPricePerMillion:.28,modalities:["text"]},{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",created:1755032836,contextLength:3e4,maxOutputTokens:8e3,inputPricePerMillion:.14,outputPricePerMillion:.56,modalities:["text","image"]},{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",created:1754922288,contextLength:65536,maxOutputTokens:16384,inputPricePerMillion:.6,outputPricePerMillion:1.7999999999999998,modalities:["text","image"]},{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",created:1754669020,contextLength:256e3,maxOutputTokens:4096,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["text"]},{id:"openai/gpt-5-chat",name:"OpenAI: GPT-5 Chat",created:1754587837,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["file","image","text"]},{id:"openai/gpt-5",name:"OpenAI: GPT-5",created:1754587413,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image","file"]},{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",created:1754587407,contextLength:4e5,maxOutputTokens:128e3,inputPricePerMillion:.25,outputPricePerMillion:2,modalities:["text","image","file"]},{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",created:1754587402,contextLength:4e5,maxOutputTokens:0,inputPricePerMillion:.049999999999999996,outputPricePerMillion:.39999999999999997,modalities:["text","image","file"]},{id:"openai/gpt-oss-120b:free",name:"OpenAI: gpt-oss-120b (free)",created:1754414231,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",created:1754414231,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.039,outputPricePerMillion:.18,modalities:["text"]},{id:"openai/gpt-oss-20b:free",name:"OpenAI: gpt-oss-20b (free)",created:1754414229,contextLength:131072,maxOutputTokens:8192,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",created:1754414229,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.03,outputPricePerMillion:.14,modalities:["text"]},{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",created:1754411591,contextLength:2e5,maxOutputTokens:32e3,inputPricePerMillion:15,outputPricePerMillion:75,modalities:["image","text","file"]},{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",created:1754079630,contextLength:256e3,maxOutputTokens:0,inputPricePerMillion:.3,outputPricePerMillion:.8999999999999999,modalities:["text","file"]},{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",created:1753972379,contextLength:16e4,maxOutputTokens:32768,inputPricePerMillion:.07,outputPricePerMillion:.27,modalities:["text"]},{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",created:1753806965,contextLength:262144,maxOutputTokens:262144,inputPricePerMillion:.09,outputPricePerMillion:.3,modalities:["text"]},{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",created:1753471347,contextLength:131072,maxOutputTokens:98304,inputPricePerMillion:.6,outputPricePerMillion:2.2,modalities:["text"]},{id:"z-ai/glm-4.5-air:free",name:"Z.ai: GLM 4.5 Air (free)",created:1753471258,contextLength:131072,maxOutputTokens:96e3,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",created:1753471258,contextLength:131072,maxOutputTokens:98304,inputPricePerMillion:.13,outputPricePerMillion:.85,modalities:["text"]},{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",created:1753449557,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.14950000000000002,outputPricePerMillion:1.495,modalities:["text"]},{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",created:1753376617,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.09999999999999999,modalities:["text"]},{id:"qwen/qwen3-coder:free",name:"Qwen: Qwen3 Coder 480B A35B (free)",created:1753230546,contextLength:262e3,maxOutputTokens:262e3,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",created:1753230546,contextLength:262144,maxOutputTokens:65536,inputPricePerMillion:.22,outputPricePerMillion:1.7999999999999998,modalities:["text"]},{id:"bytedance/ui-tars-1.5-7b",name:"ByteDance: UI-TARS 7B ",created:1753205056,contextLength:128e3,maxOutputTokens:2048,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.19999999999999998,modalities:["image","text"]},{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",created:1753200276,contextLength:1048576,maxOutputTokens:65535,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["text","image","file","audio","video"]},{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",created:1753119555,contextLength:262144,maxOutputTokens:16384,inputPricePerMillion:.071,outputPricePerMillion:.09999999999999999,modalities:["text"]},{id:"switchpoint/router",name:"Switchpoint Router",created:1752272899,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.85,outputPricePerMillion:3.4,modalities:["text"]},{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",created:1752263252,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.5700000000000001,outputPricePerMillion:2.3,modalities:["text"]},{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",created:1752161321,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","file"]},{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",created:1752160751,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.3,modalities:["text","file"]},{id:"cognitivecomputations/dolphin-mistral-24b-venice-edition:free",name:"Venice: Uncensored (free)",created:1752094966,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"tencent/hunyuan-a13b-instruct",name:"Tencent: Hunyuan A13B Instruct",created:1751987664,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.14,outputPricePerMillion:.5700000000000001,modalities:["text"]},{id:"morph/morph-v3-large",name:"Morph: Morph V3 Large",created:1751910858,contextLength:262144,maxOutputTokens:131072,inputPricePerMillion:.8999999999999999,outputPricePerMillion:1.9,modalities:["text"]},{id:"morph/morph-v3-fast",name:"Morph: Morph V3 Fast",created:1751910002,contextLength:81920,maxOutputTokens:38e3,inputPricePerMillion:.7999999999999999,outputPricePerMillion:1.2,modalities:["text"]},{id:"baidu/ernie-4.5-vl-424b-a47b",name:"Baidu: ERNIE 4.5 VL 424B A47B ",created:1751300903,contextLength:123e3,maxOutputTokens:16e3,inputPricePerMillion:.42,outputPricePerMillion:1.25,modalities:["image","text"]},{id:"baidu/ernie-4.5-300b-a47b",name:"Baidu: ERNIE 4.5 300B A47B ",created:1751300139,contextLength:123e3,maxOutputTokens:12e3,inputPricePerMillion:.28,outputPricePerMillion:1.1,modalities:["text"]},{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",created:1750443016,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:.075,outputPricePerMillion:.19999999999999998,modalities:["image","text"]},{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",created:1750200414,contextLength:1e6,maxOutputTokens:4e4,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2.2,modalities:["text"]},{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",created:1750172488,contextLength:1048576,maxOutputTokens:65535,inputPricePerMillion:.3,outputPricePerMillion:2.5,modalities:["file","image","text","audio","video"]},{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",created:1750169544,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image","file","audio","video"]},{id:"openai/o3-pro",name:"OpenAI: o3 Pro",created:1749598352,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:20,outputPricePerMillion:80,modalities:["text","file","image"]},{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",created:1749137257,contextLength:1048576,maxOutputTokens:65536,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["file","image","text","audio"]},{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",created:1748455170,contextLength:163840,maxOutputTokens:32768,inputPricePerMillion:.5,outputPricePerMillion:2.1500000000000004,modalities:["text"]},{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",created:1747931245,contextLength:2e5,maxOutputTokens:32e3,inputPricePerMillion:15,outputPricePerMillion:75,modalities:["image","text","file"]},{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",created:1747930371,contextLength:1e6,maxOutputTokens:64e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["image","text","file"]},{id:"google/gemma-3n-e4b-it",name:"Google: Gemma 3n 4B",created:1747776824,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:.06,outputPricePerMillion:.12,modalities:["text"]},{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",created:1746627341,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.39999999999999997,outputPricePerMillion:2,modalities:["text","image","file"]},{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",created:1746578513,contextLength:1048576,maxOutputTokens:65535,inputPricePerMillion:1.25,outputPricePerMillion:10,modalities:["text","image","file","audio","video"]},{id:"arcee-ai/spotlight",name:"Arcee AI: Spotlight",created:1746481552,contextLength:131072,maxOutputTokens:65537,inputPricePerMillion:.18,outputPricePerMillion:.18,modalities:["image","text"]},{id:"arcee-ai/maestro-reasoning",name:"Arcee AI: Maestro Reasoning",created:1746481269,contextLength:131072,maxOutputTokens:32e3,inputPricePerMillion:.8999999999999999,outputPricePerMillion:3.3000000000000003,modalities:["text"]},{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",created:1746478885,contextLength:131072,maxOutputTokens:64e3,inputPricePerMillion:.75,outputPricePerMillion:1.2,modalities:["text"]},{id:"arcee-ai/coder-large",name:"Arcee AI: Coder Large",created:1746478663,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:.5,outputPricePerMillion:.7999999999999999,modalities:["text"]},{id:"meta-llama/llama-guard-4-12b",name:"Meta: Llama Guard 4 12B",created:1745975193,contextLength:163840,maxOutputTokens:16384,inputPricePerMillion:.18,outputPricePerMillion:.18,modalities:["image","text"]},{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",created:1745878604,contextLength:40960,maxOutputTokens:2e4,inputPricePerMillion:.09,outputPricePerMillion:.44999999999999996,modalities:["text"]},{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",created:1745876632,contextLength:40960,maxOutputTokens:8192,inputPricePerMillion:.049999999999999996,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",created:1745876478,contextLength:40960,maxOutputTokens:40960,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.24,modalities:["text"]},{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",created:1745875945,contextLength:40960,maxOutputTokens:16384,inputPricePerMillion:.08,outputPricePerMillion:.28,modalities:["text"]},{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",created:1745875757,contextLength:131072,maxOutputTokens:8192,inputPricePerMillion:.45499999999999996,outputPricePerMillion:1.8199999999999998,modalities:["text"]},{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",created:1744824212,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:1.1,outputPricePerMillion:4.4,modalities:["image","text","file"]},{id:"openai/o3",name:"OpenAI: o3",created:1744823457,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["image","text","file"]},{id:"openai/o4-mini",name:"OpenAI: o4 Mini",created:1744820942,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:1.1,outputPricePerMillion:4.4,modalities:["image","text","file"]},{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",created:1744651385,contextLength:1047576,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["image","text","file"]},{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",created:1744651381,contextLength:1047576,maxOutputTokens:32768,inputPricePerMillion:.39999999999999997,outputPricePerMillion:1.5999999999999999,modalities:["image","text","file"]},{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",created:1744651369,contextLength:1047576,maxOutputTokens:32768,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["image","text","file"]},{id:"alfredpros/codellama-7b-instruct-solidity",name:"AlfredPros: CodeLLaMa 7B Instruct Solidity",created:1744641874,contextLength:4096,maxOutputTokens:4096,inputPricePerMillion:.7999999999999999,outputPricePerMillion:1.2,modalities:["text"]},{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",created:1743881822,contextLength:1048576,maxOutputTokens:16384,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text","image"]},{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",created:1743881519,contextLength:327680,maxOutputTokens:16384,inputPricePerMillion:.08,outputPricePerMillion:.3,modalities:["text","image"]},{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",created:1742824755,contextLength:163840,maxOutputTokens:16384,inputPricePerMillion:.19999999999999998,outputPricePerMillion:.77,modalities:["text"]},{id:"openai/o1-pro",name:"OpenAI: o1-pro",created:1742423211,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:150,outputPricePerMillion:600,modalities:["text","image","file"]},{id:"mistralai/mistral-small-3.1-24b-instruct",name:"Mistral: Mistral Small 3.1 24B",created:1742238937,contextLength:128e3,maxOutputTokens:128e3,inputPricePerMillion:.351,outputPricePerMillion:.5549999999999999,modalities:["text","image"]},{id:"google/gemma-3-4b-it",name:"Google: Gemma 3 4B",created:1741905510,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.04,outputPricePerMillion:.08,modalities:["text","image"]},{id:"google/gemma-3-12b-it",name:"Google: Gemma 3 12B",created:1741902625,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.04,outputPricePerMillion:.13,modalities:["text","image"]},{id:"cohere/command-a",name:"Cohere: Command A",created:1741894342,contextLength:256e3,maxOutputTokens:8192,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text"]},{id:"openai/gpt-4o-mini-search-preview",name:"OpenAI: GPT-4o-mini Search Preview",created:1741818122,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text"]},{id:"openai/gpt-4o-search-preview",name:"OpenAI: GPT-4o Search Preview",created:1741817949,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text"]},{id:"rekaai/reka-flash-3",name:"Reka Flash 3",created:1741812813,contextLength:65536,maxOutputTokens:65536,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.19999999999999998,modalities:["text"]},{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",created:1741756359,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.08,outputPricePerMillion:.16,modalities:["text","image"]},{id:"thedrummer/skyfall-36b-v2",name:"TheDrummer: Skyfall 36B V2",created:1741636566,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.55,outputPricePerMillion:.7999999999999999,modalities:["text"]},{id:"perplexity/sonar-reasoning-pro",name:"Perplexity: Sonar Reasoning Pro",created:1741313308,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["text","image"]},{id:"perplexity/sonar-pro",name:"Perplexity: Sonar Pro",created:1741312423,contextLength:2e5,maxOutputTokens:8e3,inputPricePerMillion:3,outputPricePerMillion:15,modalities:["text","image"]},{id:"perplexity/sonar-deep-research",name:"Perplexity: Sonar Deep Research",created:1741311246,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:8,modalities:["text"]},{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",created:1740506212,contextLength:1048576,maxOutputTokens:8192,inputPricePerMillion:.075,outputPricePerMillion:.3,modalities:["text","image","file","audio","video"]},{id:"mistralai/mistral-saba",name:"Mistral: Saba",created:1739803239,contextLength:32768,maxOutputTokens:0,inputPricePerMillion:.19999999999999998,outputPricePerMillion:.6,modalities:["text","file"]},{id:"meta-llama/llama-guard-3-8b",name:"Llama Guard 3 8B",created:1739401318,contextLength:131072,maxOutputTokens:131072,inputPricePerMillion:.48400000000000004,outputPricePerMillion:.03,modalities:["text"]},{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",created:1739372611,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:1.1,outputPricePerMillion:4.4,modalities:["text","file"]},{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",created:1738769413,contextLength:1e6,maxOutputTokens:8192,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.39999999999999997,modalities:["text","image","file","audio","video"]},{id:"aion-labs/aion-1.0",name:"AionLabs: Aion-1.0",created:1738697557,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:4,outputPricePerMillion:8,modalities:["text"]},{id:"aion-labs/aion-1.0-mini",name:"AionLabs: Aion-1.0-Mini",created:1738697107,contextLength:131072,maxOutputTokens:32768,inputPricePerMillion:.7,outputPricePerMillion:1.4,modalities:["text"]},{id:"aion-labs/aion-rp-llama-3.1-8b",name:"AionLabs: Aion-RP 1.0 (8B)",created:1738696718,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.7999999999999999,outputPricePerMillion:1.5999999999999999,modalities:["text"]},{id:"qwen/qwen2.5-vl-72b-instruct",name:"Qwen: Qwen2.5 VL 72B Instruct",created:1738410311,contextLength:32e3,maxOutputTokens:0,inputPricePerMillion:.25,outputPricePerMillion:.75,modalities:["text","image"]},{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",created:1738409840,contextLength:1e6,maxOutputTokens:32768,inputPricePerMillion:.26,outputPricePerMillion:.78,modalities:["text"]},{id:"openai/o3-mini",name:"OpenAI: o3 Mini",created:1738351721,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:1.1,outputPricePerMillion:4.4,modalities:["text","file"]},{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",created:1738255409,contextLength:32768,maxOutputTokens:16384,inputPricePerMillion:.049999999999999996,outputPricePerMillion:.08,modalities:["text"]},{id:"deepseek/deepseek-r1-distill-qwen-32b",name:"DeepSeek: R1 Distill Qwen 32B",created:1738194830,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.29,outputPricePerMillion:.29,modalities:["text"]},{id:"perplexity/sonar",name:"Perplexity: Sonar",created:1738013808,contextLength:127072,maxOutputTokens:0,inputPricePerMillion:1,outputPricePerMillion:1,modalities:["text","image"]},{id:"deepseek/deepseek-r1-distill-llama-70b",name:"DeepSeek: R1 Distill Llama 70B",created:1737663169,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.7,outputPricePerMillion:.7999999999999999,modalities:["text"]},{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",created:1737381095,contextLength:64e3,maxOutputTokens:16e3,inputPricePerMillion:.7,outputPricePerMillion:2.5,modalities:["text"]},{id:"minimax/minimax-01",name:"MiniMax: MiniMax-01",created:1736915462,contextLength:1000192,maxOutputTokens:1000192,inputPricePerMillion:.19999999999999998,outputPricePerMillion:1.1,modalities:["text","image"]},{id:"microsoft/phi-4",name:"Microsoft: Phi 4",created:1736489872,contextLength:16384,maxOutputTokens:16384,inputPricePerMillion:.065,outputPricePerMillion:.14,modalities:["text"]},{id:"sao10k/l3.1-70b-hanami-x1",name:"Sao10K: Llama 3.1 70B Hanami x1",created:1736302854,contextLength:16e3,maxOutputTokens:0,inputPricePerMillion:3,outputPricePerMillion:3,modalities:["text"]},{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",created:1735241320,contextLength:163840,maxOutputTokens:16384,inputPricePerMillion:.32,outputPricePerMillion:.8899999999999999,modalities:["text"]},{id:"sao10k/l3.3-euryale-70b",name:"Sao10K: Llama 3.3 Euryale 70B",created:1734535928,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.65,outputPricePerMillion:.75,modalities:["text"]},{id:"openai/o1",name:"OpenAI: o1",created:1734459999,contextLength:2e5,maxOutputTokens:1e5,inputPricePerMillion:15,outputPricePerMillion:60,modalities:["text","image","file"]},{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",created:1734158152,contextLength:128e3,maxOutputTokens:4e3,inputPricePerMillion:.0375,outputPricePerMillion:.15,modalities:["text"]},{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Meta: Llama 3.3 70B Instruct (free)",created:1733506137,contextLength:65536,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",created:1733506137,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.09999999999999999,outputPricePerMillion:.32,modalities:["text"]},{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",created:1733437363,contextLength:3e5,maxOutputTokens:5120,inputPricePerMillion:.06,outputPricePerMillion:.24,modalities:["text","image"]},{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",created:1733437237,contextLength:128e3,maxOutputTokens:5120,inputPricePerMillion:.035,outputPricePerMillion:.14,modalities:["text"]},{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",created:1733436303,contextLength:3e5,maxOutputTokens:5120,inputPricePerMillion:.7999999999999999,outputPricePerMillion:3.1999999999999997,modalities:["text","image"]},{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",created:1732127594,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text","image","file"]},{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",created:1731978685,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","file"]},{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",created:1731978415,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","file"]},{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",created:1731977388,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","image","file"]},{id:"qwen/qwen-2.5-coder-32b-instruct",name:"Qwen2.5 Coder 32B Instruct",created:1731368400,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.66,outputPricePerMillion:1,modalities:["text"]},{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",created:1731103448,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.39999999999999997,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",created:1730678400,contextLength:2e5,maxOutputTokens:8192,inputPricePerMillion:.7999999999999999,outputPricePerMillion:4,modalities:["text","image"]},{id:"anthracite-org/magnum-v4-72b",name:"Magnum v4 72B",created:1729555200,contextLength:16384,maxOutputTokens:2048,inputPricePerMillion:3,outputPricePerMillion:5,modalities:["text"]},{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",created:1729036800,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.04,outputPricePerMillion:.09999999999999999,modalities:["text"]},{id:"inflection/inflection-3-productivity",name:"Inflection: Inflection 3 Productivity",created:1728604800,contextLength:8e3,maxOutputTokens:1024,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text"]},{id:"inflection/inflection-3-pi",name:"Inflection: Inflection 3 Pi",created:1728604800,contextLength:8e3,maxOutputTokens:1024,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text"]},{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",created:1727654400,contextLength:32768,maxOutputTokens:32768,inputPricePerMillion:.16999999999999998,outputPricePerMillion:.43,modalities:["text"]},{id:"meta-llama/llama-3.2-11b-vision-instruct",name:"Meta: Llama 3.2 11B Vision Instruct",created:1727222400,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.245,outputPricePerMillion:.245,modalities:["text","image"]},{id:"meta-llama/llama-3.2-1b-instruct",name:"Meta: Llama 3.2 1B Instruct",created:1727222400,contextLength:6e4,maxOutputTokens:6e4,inputPricePerMillion:.027,outputPricePerMillion:.201,modalities:["text"]},{id:"meta-llama/llama-3.2-3b-instruct:free",name:"Meta: Llama 3.2 3B Instruct (free)",created:1727222400,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"meta-llama/llama-3.2-3b-instruct",name:"Meta: Llama 3.2 3B Instruct",created:1727222400,contextLength:8e4,maxOutputTokens:8e4,inputPricePerMillion:.0509,outputPricePerMillion:.335,modalities:["text"]},{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",created:1726704e3,contextLength:32768,maxOutputTokens:16384,inputPricePerMillion:.36,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",created:1724976e3,contextLength:128e3,maxOutputTokens:4e3,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text"]},{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",created:1724976e3,contextLength:128e3,maxOutputTokens:4e3,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text"]},{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",created:1724803200,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.85,outputPricePerMillion:.85,modalities:["text"]},{id:"nousresearch/hermes-3-llama-3.1-70b",name:"Nous: Hermes 3 70B Instruct",created:1723939200,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.3,outputPricePerMillion:.3,modalities:["text"]},{id:"nousresearch/hermes-3-llama-3.1-405b:free",name:"Nous: Hermes 3 405B Instruct (free)",created:1723766400,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:0,outputPricePerMillion:0,modalities:["text"]},{id:"nousresearch/hermes-3-llama-3.1-405b",name:"Nous: Hermes 3 405B Instruct",created:1723766400,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:1,outputPricePerMillion:1,modalities:["text"]},{id:"sao10k/l3-lunaris-8b",name:"Sao10K: Llama 3 8B Lunaris",created:1723507200,contextLength:8192,maxOutputTokens:16384,inputPricePerMillion:.04,outputPricePerMillion:.049999999999999996,modalities:["text"]},{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",created:1722902400,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text","image","file"]},{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",created:1721692800,contextLength:131072,maxOutputTokens:16384,inputPricePerMillion:.39999999999999997,outputPricePerMillion:.39999999999999997,modalities:["text"]},{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",created:1721692800,contextLength:16384,maxOutputTokens:16384,inputPricePerMillion:.02,outputPricePerMillion:.049999999999999996,modalities:["text"]},{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",created:1721347200,contextLength:131072,maxOutputTokens:0,inputPricePerMillion:.02,outputPricePerMillion:.03,modalities:["text"]},{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",created:1721260800,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text","image","file"]},{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",created:1721260800,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:.15,outputPricePerMillion:.6,modalities:["text","image","file"]},{id:"google/gemma-2-27b-it",name:"Google: Gemma 2 27B",created:1720828800,contextLength:8192,maxOutputTokens:2048,inputPricePerMillion:.65,outputPricePerMillion:.65,modalities:["text"]},{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",created:1718668800,contextLength:8192,maxOutputTokens:8192,inputPricePerMillion:1.48,outputPricePerMillion:1.48,modalities:["text"]},{id:"nousresearch/hermes-2-pro-llama-3-8b",name:"NousResearch: Hermes 2 Pro - Llama-3 8B",created:1716768e3,contextLength:8192,maxOutputTokens:8192,inputPricePerMillion:.14,outputPricePerMillion:.14,modalities:["text"]},{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",created:1715558400,contextLength:128e3,maxOutputTokens:16384,inputPricePerMillion:2.5,outputPricePerMillion:10,modalities:["text","image","file"]},{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",created:1715558400,contextLength:128e3,maxOutputTokens:4096,inputPricePerMillion:5,outputPricePerMillion:15,modalities:["text","image","file"]},{id:"meta-llama/llama-3-70b-instruct",name:"Meta: Llama 3 70B Instruct",created:1713398400,contextLength:8192,maxOutputTokens:8e3,inputPricePerMillion:.51,outputPricePerMillion:.74,modalities:["text"]},{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",created:1713398400,contextLength:8192,maxOutputTokens:8192,inputPricePerMillion:.04,outputPricePerMillion:.04,modalities:["text"]},{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",created:1713312e3,contextLength:65536,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","file"]},{id:"microsoft/wizardlm-2-8x22b",name:"WizardLM-2 8x22B",created:1713225600,contextLength:65535,maxOutputTokens:8e3,inputPricePerMillion:.62,outputPricePerMillion:.62,modalities:["text"]},{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",created:1712620800,contextLength:128e3,maxOutputTokens:4096,inputPricePerMillion:10,outputPricePerMillion:30,modalities:["text","image"]},{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",created:1710288e3,contextLength:2e5,maxOutputTokens:4096,inputPricePerMillion:.25,outputPricePerMillion:1.25,modalities:["text","image"]},{id:"mistralai/mistral-large",name:"Mistral Large",created:1708905600,contextLength:128e3,maxOutputTokens:0,inputPricePerMillion:2,outputPricePerMillion:6,modalities:["text","file"]},{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",created:1706140800,contextLength:4095,maxOutputTokens:4096,inputPricePerMillion:1,outputPricePerMillion:2,modalities:["text"]},{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",created:1706140800,contextLength:128e3,maxOutputTokens:4096,inputPricePerMillion:10,outputPricePerMillion:30,modalities:["text"]},{id:"openrouter/auto",name:"Auto Router",created:1699401600,contextLength:2e6,maxOutputTokens:0,inputPricePerMillion:-1e6,outputPricePerMillion:-1e6,modalities:["text","image","audio","file","video"]},{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",created:1699228800,contextLength:128e3,maxOutputTokens:4096,inputPricePerMillion:10,outputPricePerMillion:30,modalities:["text"]},{id:"mistralai/mistral-7b-instruct-v0.1",name:"Mistral: Mistral 7B Instruct v0.1",created:1695859200,contextLength:2824,maxOutputTokens:2824,inputPricePerMillion:.11,outputPricePerMillion:.19,modalities:["text"]},{id:"openai/gpt-3.5-turbo-instruct",name:"OpenAI: GPT-3.5 Turbo Instruct",created:1695859200,contextLength:4095,maxOutputTokens:4096,inputPricePerMillion:1.5,outputPricePerMillion:2,modalities:["text"]},{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",created:1693180800,contextLength:16385,maxOutputTokens:4096,inputPricePerMillion:3,outputPricePerMillion:4,modalities:["text"]},{id:"mancer/weaver",name:"Mancer: Weaver (alpha)",created:1690934400,contextLength:8e3,maxOutputTokens:2e3,inputPricePerMillion:.75,outputPricePerMillion:1,modalities:["text"]},{id:"undi95/remm-slerp-l2-13b",name:"ReMM SLERP 13B",created:1689984e3,contextLength:6144,maxOutputTokens:4096,inputPricePerMillion:.44999999999999996,outputPricePerMillion:.65,modalities:["text"]},{id:"gryphe/mythomax-l2-13b",name:"MythoMax 13B",created:1688256e3,contextLength:4096,maxOutputTokens:4096,inputPricePerMillion:.06,outputPricePerMillion:.06,modalities:["text"]},{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",created:1685232e3,contextLength:8191,maxOutputTokens:4096,inputPricePerMillion:30,outputPricePerMillion:60,modalities:["text"]},{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",created:1685232e3,contextLength:16385,maxOutputTokens:4096,inputPricePerMillion:.5,outputPricePerMillion:1.5,modalities:["text"]},{id:"openai/gpt-4",name:"OpenAI: GPT-4",created:1685232e3,contextLength:8191,maxOutputTokens:4096,inputPricePerMillion:30,outputPricePerMillion:60,modalities:["text"]}]};var c=a,r=null;function i(){return r??c}a$1(i,"loadSnapshot");function s(t){r=t;}a$1(s,"setOpenRouterSnapshot");function x(){return i()}a$1(x,"getOpenRouterSnapshot");function M(){return i().models}a$1(M,"getOpenRouterModels");function g(t){return i().models.find(n=>n.id===t)}a$1(g,"findOpenRouterModel");function h(t){let n=`${t.toLowerCase()}/`;return i().models.filter(l=>l.id.toLowerCase().startsWith(n))}a$1(h,"listOpenRouterModelsByVendor");
2
- export{s as a,x as b,M as c,g as d,h as e};
@@ -1,2 +0,0 @@
1
- import {h,a}from'./chunk-3QP5BQ3L.js';import {mkdirSync,createWriteStream}from'fs';import {homedir}from'os';import {join}from'path';h();function p(){let r=process.env.CODESHELL_RENDER_DEBUG;return r?r==="verbose"?"verbose":"summary":"off"}a(p,"detectMode");var d=p(),c=null;function v(){if(d==="off")return null;if(c)return c;let r=join(homedir(),".code-shell","logs","ui-ink");try{mkdirSync(r,{recursive:!0}),c=createWriteStream(join(r,"render-perf.log"),{flags:"a"});}catch{return null}return c}a(v,"getStream");var o=[],n=Date.now();function M(r){if(d==="off")return;let e=r.phases;if(!e)return;o.length===0&&(n=Date.now());let i={durMs:r.durationMs,dirtyNodes:e.yogaVisited,patches:e.patches,yogaCacheHits:e.yogaCacheHits,yogaLive:e.yogaLive};if(d==="verbose"){y({t:Date.now(),kind:"frame",...i});return}o.push(i);let u=Date.now();u-n>=1e3&&N(u);}a(M,"recordFrame");function N(r){if(o.length===0){n=r;return}let e=o.reduce((s,a)=>({durMs:s.durMs+a.durMs,dirtyNodes:s.dirtyNodes+a.dirtyNodes,patches:s.patches+a.patches,yogaCacheHits:s.yogaCacheHits+a.yogaCacheHits,yogaLive:Math.max(s.yogaLive,a.yogaLive)}),{durMs:0,dirtyNodes:0,patches:0,yogaCacheHits:0,yogaLive:0}),i=o.length,u=e.dirtyNodes===0?0:e.yogaCacheHits/e.dirtyNodes;y({t:r,kind:"summary",windowMs:r-n,frames:i,avgFrameMs:Number((e.durMs/i).toFixed(2)),dirtyNodes:e.dirtyNodes,patches:e.patches,cacheHitRatio:Number(u.toFixed(3)),yogaLive:e.yogaLive}),o.length=0,n=r;}a(N,"flushSummary");function y(r){let e=v();e&&e.write(JSON.stringify(r)+`
2
- `);}a(y,"write");var C={enabled:d!=="off",mode:d,recordFrame:M};export{M as a,C as b};