thursday-agent 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (197) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error.html +1 -1
  5. package/.next/server/app/_global-error.rsc +1 -1
  6. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  9. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  10. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  11. package/.next/server/app/_not-found.html +1 -1
  12. package/.next/server/app/_not-found.rsc +2 -2
  13. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  14. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  15. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  16. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  17. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  18. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  19. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/task/[id]/route.js.nft.json +1 -1
  21. package/.next/server/app/api/bot/task/route.js.nft.json +1 -1
  22. package/.next/server/app/api/config/route.js.nft.json +1 -1
  23. package/.next/server/app/api/events/route.js.nft.json +1 -1
  24. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  25. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  26. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  27. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  28. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  29. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  30. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  31. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  32. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  33. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  34. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  35. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  36. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  37. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  38. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  39. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  40. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  41. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
  42. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  43. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/page/server-reference-manifest.json +40 -40
  45. package/.next/server/app/page.js +2 -2
  46. package/.next/server/app/page.js.nft.json +1 -1
  47. package/.next/server/app/page_client-reference-manifest.js +1 -1
  48. package/.next/server/chunks/[root-of-the-server]__02va5wz._.js +1 -1
  49. package/.next/server/chunks/[root-of-the-server]__0ls6_8y._.js +4 -4
  50. package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +1 -1
  51. package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +2 -2
  52. package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +2 -2
  53. package/.next/server/chunks/[root-of-the-server]__1anc1p9._.js +1 -1
  54. package/.next/server/chunks/[root-of-the-server]__1ccon1w._.js +3 -3
  55. package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +4 -3
  56. package/.next/server/chunks/[root-of-the-server]__1wa1k7r._.js +3 -3
  57. package/.next/server/chunks/_0-fjql4._.js +5 -5
  58. package/.next/server/chunks/_00xh_q0._.js +3 -5
  59. package/.next/server/chunks/_05h2cii._.js +1 -1
  60. package/.next/server/chunks/_0fzqt2y._.js +48 -44
  61. package/.next/server/chunks/_0mecv0f._.js +5 -5
  62. package/.next/server/chunks/_0mh8j4m._.js +1 -1
  63. package/.next/server/chunks/_0wp4le3._.js +1 -1
  64. package/.next/server/chunks/_0y5fg-x._.js +1 -1
  65. package/.next/server/chunks/_1230wbx._.js +3 -3
  66. package/.next/server/chunks/_15hq89o._.js +1 -1
  67. package/.next/server/chunks/{_03kp0jp._.js → _1c78vw5._.js} +58 -56
  68. package/.next/server/chunks/_1j8k_j5._.js +1 -1
  69. package/.next/server/chunks/_1krd9rf._.js +1 -1
  70. package/.next/server/chunks/_1php4eq._.js +1 -1
  71. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  72. package/.next/server/chunks/features_1qf3cei._.js +1 -1
  73. package/.next/server/chunks/features_memory_1uqvksn._.js +2 -2
  74. package/.next/server/chunks/ssr/[root-of-the-server]__092knlj._.js +3 -0
  75. package/.next/server/chunks/ssr/{[root-of-the-server]__1eh7hid._.js → [root-of-the-server]__0s9dq5u._.js} +1 -1
  76. package/.next/server/chunks/ssr/{[root-of-the-server]__1cyjywu._.js → [root-of-the-server]__0s9l2sv._.js} +1 -1
  77. package/.next/server/chunks/ssr/{[root-of-the-server]__0zkv7z_._.js → [root-of-the-server]__0xsog8n._.js} +2 -2
  78. package/.next/server/chunks/ssr/[root-of-the-server]__10-dz5o._.js +13 -9
  79. package/.next/server/chunks/ssr/[root-of-the-server]__1gtlw6v._.js +2 -2
  80. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +1 -1
  81. package/.next/server/chunks/ssr/[root-of-the-server]__1ox7hbk._.js +1 -1
  82. package/.next/server/chunks/ssr/{[root-of-the-server]__0_69wqr._.js → [root-of-the-server]__202p40z._.js} +1 -1
  83. package/.next/server/chunks/ssr/_001_ms1._.js +1 -1
  84. package/.next/server/chunks/ssr/{_0c-ql2m._.js → _0fz4mf_._.js} +2 -2
  85. package/.next/server/chunks/ssr/{_07uchnc._.js → _0gb4gmf._.js} +2 -2
  86. package/.next/server/chunks/ssr/_0i_6q1w._.js +2 -2
  87. package/.next/server/chunks/ssr/{_20kd_n0._.js → _0ilna52._.js} +3 -3
  88. package/.next/server/chunks/ssr/{_0mo2w06._.js → _0n3toaw._.js} +2 -2
  89. package/.next/server/chunks/ssr/{_0mb8zc8._.js → _0s99bgb._.js} +2 -2
  90. package/.next/server/chunks/ssr/_0zcjrbg._.js +3 -0
  91. package/.next/server/chunks/ssr/{_13z3f85._.js → _1-_etts._.js} +2 -2
  92. package/.next/server/chunks/ssr/_13fke0x._.js +1 -1
  93. package/.next/server/chunks/ssr/{_01_6m32._.js → _1b2mjwr._.js} +2 -2
  94. package/.next/server/chunks/ssr/{_1eoqg_g._.js → _1f-dg-6._.js} +2 -2
  95. package/.next/server/chunks/ssr/{_0y0tiht._.js → _1fojd41._.js} +3 -3
  96. package/.next/server/chunks/ssr/_1gd8q8l._.js +3 -0
  97. package/.next/server/chunks/ssr/{_1xvgn77._.js → _1h0rw11._.js} +2 -2
  98. package/.next/server/chunks/ssr/_1jhd09t._.js +3 -0
  99. package/.next/server/chunks/ssr/{_0u2jv_x._.js → _1lz_cq2._.js} +46 -44
  100. package/.next/server/chunks/ssr/{_0kbkmar._.js → _1nnsk7z._.js} +2 -2
  101. package/.next/server/chunks/ssr/_1sji22n._.js +1 -1
  102. package/.next/server/chunks/ssr/_1vyd1ji._.js +1 -1
  103. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
  104. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  105. package/.next/server/chunks/ssr/{node_modules_0z5tsu8._.js → node_modules_00etblx._.js} +1 -1
  106. package/.next/server/chunks/ssr/{node_modules_1h4a4pp._.js → node_modules_04jf_m8._.js} +1 -1
  107. package/.next/server/chunks/ssr/{node_modules_0h5hnr1._.js → node_modules_08dhkiq._.js} +1 -1
  108. package/.next/server/chunks/ssr/{node_modules_1vqb6po._.js → node_modules_0940ns5._.js} +1 -1
  109. package/.next/server/chunks/ssr/{node_modules_1i7u1ia._.js → node_modules_09q35v_._.js} +1 -1
  110. package/.next/server/chunks/ssr/{node_modules_124bue5._.js → node_modules_0_-_a--._.js} +1 -1
  111. package/.next/server/chunks/ssr/{node_modules_0h7u60n._.js → node_modules_0arus10._.js} +1 -1
  112. package/.next/server/chunks/ssr/{node_modules_0rjg6t1._.js → node_modules_0b__sgl._.js} +1 -1
  113. package/.next/server/chunks/ssr/{node_modules_113tz0l._.js → node_modules_0cxaxk9._.js} +1 -1
  114. package/.next/server/chunks/ssr/{node_modules_0lm7_vm._.js → node_modules_0g7fzk3._.js} +1 -1
  115. package/.next/server/chunks/ssr/{node_modules_0h50b8n._.js → node_modules_0had7xd._.js} +1 -1
  116. package/.next/server/chunks/ssr/{node_modules_1-hc6uv._.js → node_modules_0pvd7q-._.js} +1 -1
  117. package/.next/server/chunks/ssr/{node_modules_1bc7gu8._.js → node_modules_0yugy6m._.js} +1 -1
  118. package/.next/server/chunks/ssr/{node_modules_0y_cded._.js → node_modules_14om4ar._.js} +1 -1
  119. package/.next/server/chunks/ssr/{node_modules_0zp9r92._.js → node_modules_14q6g4n._.js} +1 -1
  120. package/.next/server/chunks/ssr/{node_modules_0eu1va6._.js → node_modules_198nmll._.js} +1 -1
  121. package/.next/server/chunks/ssr/{node_modules_1t9cyee._.js → node_modules_1_pc9kq._.js} +1 -1
  122. package/.next/server/chunks/ssr/{node_modules_063xwpp._.js → node_modules_1aaxuef._.js} +1 -1
  123. package/.next/server/chunks/ssr/{node_modules_0bvraul._.js → node_modules_1cx_ql6._.js} +1 -1
  124. package/.next/server/chunks/ssr/{node_modules_1xx28h1._.js → node_modules_1cz2hle._.js} +1 -1
  125. package/.next/server/chunks/ssr/{node_modules_1l0qtdu._.js → node_modules_1efrqxi._.js} +1 -1
  126. package/.next/server/chunks/ssr/{node_modules_1juq3hs._.js → node_modules_1eg7m6c._.js} +1 -1
  127. package/.next/server/chunks/ssr/{node_modules_1_n3ztw._.js → node_modules_1gdh31p._.js} +1 -1
  128. package/.next/server/chunks/ssr/{node_modules_0mwym0g._.js → node_modules_1hpopmo._.js} +1 -1
  129. package/.next/server/chunks/ssr/{node_modules_1bgb6-f._.js → node_modules_1qpjvy5._.js} +1 -1
  130. package/.next/server/chunks/ssr/{node_modules_1uuj9x1._.js → node_modules_1vh5ntv._.js} +1 -1
  131. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0d3skpl._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1b748ic._.js} +1 -1
  132. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0i44kk5._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1z4hm5e._.js} +1 -1
  133. package/.next/server/chunks/ssr/{node_modules_@vercel_oidc_dist_0qe30a_._.js → node_modules_@vercel_oidc_dist_06mk8id._.js} +1 -1
  134. package/.next/server/middleware-build-manifest.js +3 -3
  135. package/.next/server/pages/404.html +1 -1
  136. package/.next/server/pages/500.html +1 -1
  137. package/.next/server/server-reference-manifest.js +1 -1
  138. package/.next/server/server-reference-manifest.json +41 -41
  139. package/.next/static/chunks/00rd4-v8r7axp.js +1 -0
  140. package/.next/static/chunks/{0tmgrnlje14-s.js → 08qe4as2q428z.js} +2 -2
  141. package/.next/static/chunks/{3ok9_x74rip3v.js → 0fl3gwe4-l6tz.js} +1 -1
  142. package/.next/static/chunks/{2a0k6jlq0_v1u.js → 0gnqdjn2lvdad.js} +2 -2
  143. package/.next/static/chunks/{1okqiww3pnwka.js → 0hwap1-p0m5sa.js} +1 -1
  144. package/.next/static/chunks/{1ekc7ul556kbl.js → 0w52rrrmuj9r9.js} +1 -1
  145. package/.next/static/chunks/{3agpgkwaa321p.js → 0wcprt5ot5she.js} +1 -1
  146. package/.next/static/chunks/{3xpbkl66ssib5.js → 15m575979un5f.js} +6 -6
  147. package/.next/static/chunks/{2fzs9fm8yarvq.js → 17p6tk6k88dq6.js} +1 -1
  148. package/.next/static/chunks/{26-pr2c9ro222.js → 1jd09sxcjddu1.js} +1 -1
  149. package/.next/static/chunks/{280t0_e99i276.js → 1w73ece_6bheu.js} +1 -1
  150. package/.next/static/chunks/{1grhjo7a5a0_-.js → 214ya3n5gxeih.js} +1 -1
  151. package/.next/static/chunks/22_zkas21rpna.js +1 -0
  152. package/.next/static/chunks/{0x79tx04dxbpp.js → 2u7xt6mxg44lf.js} +1 -1
  153. package/.next/static/chunks/{17donp69y4do7.js → 39j0fvpybzabl.js} +8 -8
  154. package/.next/static/chunks/{28cizcdaabd4h.js → 3akmqm77muj4-.js} +1 -1
  155. package/.next/static/chunks/3cq5g494yuke8.css +1 -0
  156. package/.next/static/chunks/3woj-xd7ki5_i.js +1 -0
  157. package/.next/static/chunks/{3cfi_q6d_wtci.js → 3zmcsnuo25zvq.js} +1 -1
  158. package/README.md +46 -23
  159. package/app/api/events/app-event.ts +0 -2
  160. package/bin/port.mjs +65 -0
  161. package/bin/thursday.mjs +2 -33
  162. package/docs/how-it-works.md +11 -7
  163. package/docs/images/face-dark.png +0 -0
  164. package/docs/images/face-light.png +0 -0
  165. package/docs/images/keeps-going.png +0 -0
  166. package/features/ai/chatgpt.ts +42 -20
  167. package/features/ai/load-tools.ts +20 -14
  168. package/features/ai/prompts/bot.prompt.ts +90 -88
  169. package/features/ai/prompts/thursday.prompt.ts +48 -41
  170. package/features/ai/tools/memory.tool.ts +65 -62
  171. package/features/ai/tools/tool-name.ts +0 -1
  172. package/features/ai/tools/workspace.tool.ts +3 -0
  173. package/features/bot/bot.action.ts +6 -1
  174. package/features/bot/bot.run.ts +11 -7
  175. package/features/bot/bot.runner.ts +34 -16
  176. package/features/bot/bot.schema.ts +25 -0
  177. package/features/bot/components/bot-room.tsx +57 -4
  178. package/features/bot/components/bot-tool.tsx +0 -1
  179. package/features/bot/task.query.ts +25 -6
  180. package/features/bot/task.store.ts +23 -4
  181. package/features/memory/components/memory-edit.tsx +7 -5
  182. package/features/thursday/components/thursday.tsx +0 -3
  183. package/features/thursday/tool-line.ts +0 -1
  184. package/features/thursday/use-thursday.ts +1 -1
  185. package/package.json +1 -1
  186. package/.next/server/chunks/ssr/[root-of-the-server]__1pduf5n._.js +0 -3
  187. package/.next/server/chunks/ssr/_14_lw10._.js +0 -3
  188. package/.next/server/chunks/ssr/_1spzm8z._.js +0 -3
  189. package/.next/server/chunks/ssr/lib_date-like_ts_02is0pw._.js +0 -3
  190. package/.next/static/chunks/0xzgvc0fkdb6t.js +0 -1
  191. package/.next/static/chunks/14hgtsjg-kael.css +0 -1
  192. package/.next/static/chunks/2hw2f6zmt7fmt.js +0 -1
  193. package/.next/static/chunks/3111pj5wnjgos.js +0 -1
  194. package/features/memory/components/memory-view.tsx +0 -84
  195. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_buildManifest.js +0 -0
  196. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_clientMiddlewareManifest.js +0 -0
  197. /package/.next/static/{x1cCqY0kWpR_VcYx_lWO5 → kaTO0UHqF1bMnWgCDik2f}/_ssgManifest.js +0 -0
@@ -1,15 +1,15 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,146538,412294,e=>{"use strict";var t=e.i(843476),a=e.i(689664),i=e.i(716327),n=e.i(758925),s=e.i(271645),o=e.i(798120),r=e.i(167881),l=e.i(736185),c=e.i(463415),h=e.i(23750),d=e.i(344974),m=e.i(609856),p=e.i(283653),u=e.i(265402),g=e.i(6799),v=e.i(95187);let f=(0,v.createServerReference)("7fafe9889bfe63d1e391f146da7740d5e4f0039cbc",v.callServer,void 0,v.findSourceMapURL,"startChatGptSignInAction");function b({variant:e}){let[a,i]=(0,s.useState)(!1),n=(0,s.useRef)(null),o=()=>{n.current&&clearInterval(n.current),n.current=null};(0,s.useEffect)(()=>o,[]);let[l,c]=(0,m.useServerAction)(f,{onOk:e=>{let t=window.open(e,"thursday-chatgpt","popup,width=520,height=720");if(!t)return void g.toast.add({type:"error",title:"The sign-in window was blocked",description:"Allow pop-ups for this page, then try again"});i(!0),o();let a=Date.now()+6e5;n.current=setInterval(()=>{!t.closed&&Date.now()<a||(o(),i(!1))},700)}});return(0,t.jsx)(r.Button,{variant:e,loading:c||a,onClick:()=>l(),children:"Sign in with ChatGPT"})}e.s(["ChatGptSignIn",0,b],412294);var w=e.i(611568),y=e.i(566595),x=e.i(7227),k=e.i(630374),S=e.i(421429),M=e.i(647163),j=e.i(968978);let z={anthropic:"anthropic",openai:"openai",google:"google",spacexai:"xai"},L={alibaba:[{d:"M12.604 1.34c.393.69.784 1.382 1.174 2.075a.18.18 0 00.157.091h5.552c.174 0 .322.11.446.327l1.454 2.57c.19.337.24.478.024.837-.26.43-.513.864-.76 1.3l-.367.658c-.106.196-.223.28-.04.512l2.652 4.637c.172.301.111.494-.043.77-.437.785-.882 1.564-1.335 2.34-.159.272-.352.375-.68.37-.777-.016-1.552-.01-2.327.016a.099.099 0 00-.081.05 575.097 575.097 0 01-2.705 4.74c-.169.293-.38.363-.725.364-.997.003-2.002.004-3.017.002a.537.537 0 01-.465-.271l-1.335-2.323a.09.09 0 00-.083-.049H4.982c-.285.03-.553-.001-.805-.092l-1.603-2.77a.543.543 0 01-.002-.54l1.207-2.12a.198.198 0 000-.197 550.951 550.951 0 01-1.875-3.272l-.79-1.395c-.16-.31-.173-.496.095-.965.465-.813.927-1.625 1.387-2.436.132-.234.304-.334.584-.335a338.3 338.3 0 012.589-.001.124.124 0 00.107-.063l2.806-4.895a.488.488 0 01.422-.246c.524-.001 1.053 0 1.583-.006L11.704 1c.341-.003.724.032.9.34zm-3.432.403a.06.06 0 00-.052.03L6.254 6.788a.157.157 0 01-.135.078H3.253c-.056 0-.07.025-.041.074l5.81 10.156c.025.042.013.062-.034.063l-2.795.015a.218.218 0 00-.2.116l-1.32 2.31c-.044.078-.021.118.068.118l5.716.008c.046 0 .08.02.104.061l1.403 2.454c.046.081.092.082.139 0l5.006-8.76.783-1.382a.055.055 0 01.096 0l1.424 2.53a.122.122 0 00.107.062l2.763-.02a.04.04 0 00.035-.02.041.041 0 000-.04l-2.9-5.086a.108.108 0 010-.113l.293-.507 1.12-1.977c.024-.041.012-.062-.035-.062H9.2c-.059 0-.073-.026-.043-.077l1.434-2.505a.107.107 0 000-.114L9.225 1.774a.06.06 0 00-.053-.031zm6.29 8.02c.046 0 .058.02.034.06l-.832 1.465-2.613 4.585a.056.056 0 01-.05.029.058.058 0 01-.05-.029L8.498 9.841c-.02-.034-.01-.052.028-.054l.216-.012 6.722-.012z"}],amazon:[{d:"M13.05 15.513h3.08c.214 0 .389.177.389.394v1.82a1.704 1.704 0 011.296 1.661c0 .943-.755 1.708-1.685 1.708-.931 0-1.686-.765-1.686-1.708 0-.807.554-1.484 1.297-1.662v-1.425h-2.69v4.663a.395.395 0 01-.188.338l-2.69 1.641a.385.385 0 01-.405-.002l-4.926-3.086a.395.395 0 01-.185-.336V16.3L2.196 14.87A.395.395 0 012 14.555L2 14.528V9.406c0-.14.073-.27.192-.34l2.465-1.462V4.448c0-.129.062-.249.165-.322l.021-.014L9.77 1.058a.385.385 0 01.407 0l2.69 1.675a.395.395 0 01.185.336V7.6h3.856V5.683a1.704 1.704 0 01-1.296-1.662c0-.943.755-1.708 1.685-1.708.931 0 1.685.765 1.685 1.708 0 .807-.553 1.484-1.296 1.662v2.311a.391.391 0 01-.389.394h-4.245v1.806h6.624a1.69 1.69 0 011.64-1.313c.93 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708a1.69 1.69 0 01-1.64-1.314H13.05v1.937h4.953l.915 1.18a1.66 1.66 0 01.84-.227c.931 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708-.93 0-1.685-.765-1.685-1.708 0-.346.102-.668.276-.937l-.724-.935H13.05v1.806zM9.973 1.856L7.93 3.122V6.09h-.778V3.604L5.435 4.669v2.945l2.11 1.36L9.712 7.61V5.334h.778V7.83c0 .136-.07.263-.184.335L7.963 9.638v2.081l1.422 1.009-.446.646-1.406-.998-1.53 1.005-.423-.66 1.605-1.055v-1.99L5.038 8.29l-2.26 1.34v1.676l1.972-1.189.398.677-2.37 1.429V14.3l2.166 1.258 2.27-1.368.397.677-2.176 1.311V19.3l1.876 1.175 2.365-1.426.398.678-2.017 1.216 1.918 1.201 2.298-1.403v-5.78l-4.758 2.893-.4-.675 5.158-3.136V3.289L9.972 1.856zM16.13 18.47a.913.913 0 00-.908.92c0 .507.406.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zm3.63-3.81a.913.913 0 00-.908.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92zm1.555-4.99a.913.913 0 00-.908.92c0 .507.407.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zM17.296 3.1a.913.913 0 00-.907.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92z"}],"arcee-ai":[{d:"M13.236 2.377L2.751 20.493H0L11.863 0l1.373 2.377zm3.554 6.156l-9.606 11.96H4.13L15.511 6.32l1.279 2.212zm6.908 11.96H14.05l8.406-2.151 1.242 2.15zm-3.42-5.922l-7.843 5.92H8.482l10.597-7.997 1.2 2.077z"}],bfl:[{d:"M0 20.683L12.01 2.5 24 20.683h-2.233L12.009 5.878 3.471 18.806h12.122l1.239 1.877H0z"},{d:"M8.069 16.724l2.073-3.115 2.074 3.115H8.069zM18.24 20.683l-5.668-8.707h2.177l5.686 8.707h-2.196zM19.74 11.676l2.13-3.19 2.13 3.19h-4.26z"}],bytedance:[{d:"M14.944 18.587l-1.704-.445V10.01l1.824-.462c1-.254 1.84-.461 1.88-.453.032 0 .056 2.235.056 4.972v4.973l-.176-.008c-.104 0-.952-.207-1.88-.446z"},{d:"M7 16.542c0-2.736.024-4.98.064-4.98.032-.008.872.2 1.88.454l1.816.461-.016 4.05-.024 4.049-1.632.422c-.896.23-1.736.445-1.856.469L7 21.523v-4.98z"},{d:"M19.24 12.477c0-9.03.008-9.515.144-9.475.072.024.784.207 1.576.406.792.207 1.576.405 1.744.445l.296.08-.016 8.56-.024 8.568-1.624.414c-.888.23-1.728.437-1.856.47l-.24.055v-9.523z"},{d:"M1 12.509c0-4.678.024-8.505.064-8.505.032 0 .872.207 1.872.454l1.824.461v7.582c0 4.16-.016 7.574-.032 7.574-.024 0-.872.215-1.88.47L1 21.013v-8.505z"}],cohere:[{d:"M8.128 14.099c.592 0 1.77-.033 3.398-.703 1.897-.781 5.672-2.2 8.395-3.656 1.905-1.018 2.74-2.366 2.74-4.18A4.56 4.56 0 0018.1 1H7.549A6.55 6.55 0 001 7.55c0 3.617 2.745 6.549 7.128 6.549z"},{d:"M9.912 18.61a4.387 4.387 0 012.705-4.052l3.323-1.38c3.361-1.394 7.06 1.076 7.06 4.715a5.104 5.104 0 01-5.105 5.104l-3.597-.001a4.386 4.386 0 01-4.386-4.387z"},{d:"M4.776 14.962A3.775 3.775 0 001 18.738v.489a3.776 3.776 0 007.551 0v-.49a3.775 3.775 0 00-3.775-3.775z"}],deepseek:[{d:"M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z"}],"fish-audio":[{d:"M23.12 12.13v.62c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.62c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m-1.77.37v1.74c0 .24.2.44.44.44.25 0 .44-.2.44-.44V12.5c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.76.43v1.99q0 .09.03.17.04.08.1.14.07.07.15.1t.17.03c.24 0 .44-.19.44-.44v-1.99c0-.25-.2-.44-.44-.44q-.09 0-.17.03t-.15.1q-.06.06-.1.14-.03.08-.03.17m-1.76.35v1.97c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-1.97c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m-1.77.32v1.65c0 .25.2.45.44.45s.44-.2.44-.45V13.6c0-.25-.2-.45-.44-.45s-.44.2-.44.45m-1.76 1.26v.3q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3v-.3q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3M0 9.38v.19c0 .24.2.44.44.44.25 0 .44-.2.44-.44v-.19c0-.25-.19-.44-.44-.44-.24 0-.44.19-.44.44m1.82.15v.81c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.81q0-.18-.13-.31t-.31-.13-.31.13-.13.31m1.81-.24v3.39q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V9.29q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3m1.83-.35v.22c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.22q0-.18-.13-.31T5.9 8.5t-.31.13-.13.31m0 2.94v2.34c0 .25.19.44.44.44.24 0 .44-.19.44-.44v-2.34c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m15.89-3.32V11c0 .25.2.44.44.44.25 0 .44-.19.44-.44V8.56c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.76-.39v3.28q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.17c0-.25-.2-.44-.44-.44q-.09 0-.17.03t-.15.1q-.06.06-.1.14-.03.08-.03.17M17.83 8v3.9c0 .24.19.44.44.44.24 0 .44-.2.44-.44V8c0-.25-.2-.44-.44-.44-.25 0-.44.19-.44.44m-1.77.11v3.96c0 .25.2.44.44.44s.44-.19.44-.44V8.11c0-.25-.2-.44-.44-.44s-.44.19-.44.44m-1.76.27v5.03q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.38c0-.25-.2-.44-.45-.44-.24 0-.44.19-.44.44m-1.8.46v5.75q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.84c0-.25-.2-.44-.45-.44-.24 0-.44.19-.44.44m-1.76.76v5.52c0 .24.2.44.44.44.25 0 .44-.2.44-.44V9.6c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.77 1.01v4.77q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3v-4.77q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3M23.12 9.6v1.22c0 .24.19.44.44.44.24 0 .44-.2.44-.44V9.6c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44M7.21 11.32V16c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-4.68q0-.18-.13-.31t-.31-.13-.31.13-.13.31"}],inception:[{d:"M14.767 1H7.884L1 7.883v6.884h6.884V7.883h6.883V1zM9.234 23h6.882L23 16.116V9.233h-6.884v6.883H9.234V23z"}],klingai:[{d:"M5.493 21.234c-1.112-1.451-1.109-4.263-.081-7.459l-4.557-2.63a1.683 1.683 0 01-.85-1.304 1.505 1.505 0 01.08-.622 13.18 13.18 0 011.037-2.255c3.476-6.02 10.916-8.23 16.619-4.938.46.266.82.67 1.081 1.184.785 1.545.685 4.096-.234 6.954l4.557 2.631c.339.196.596.492.736.832a1.53 1.53 0 01.034 1.093 13.146 13.146 0 01-1.037 2.255c-3.476 6.02-10.916 8.23-16.619 4.938a2.6 2.6 0 01-.766-.68zm11.096-6.615c-2.073 3.591-5.808 5.316-8.343 3.852-1.267-.731-1.994-2.122-2.145-3.778-.095-1.035.036-2.173.4-3.32.217-.684.517-1.37.902-2.039l.008-.014c2.073-3.59 5.808-5.315 8.343-3.852.633.366 1.13.895 1.49 1.54.986 1.772.922 4.415-.285 6.914-.111.23-.232.457-.362.683l-.008.014z"}],kwaipilot:[{d:"M11.765.03C5.327.03.108 5.25.108 11.686c0 3.514 1.556 6.665 4.015 8.804L9.89 8.665h6.451L9.31 23.083c.807.173 1.63.26 2.455.26 6.438 0 11.657-5.22 11.657-11.658S18.202.028 11.765.028V.03z"}],meta:[{d:"M6.897 4c1.915 0 3.516.932 5.43 3.376l.282-.373c.19-.246.383-.484.58-.71l.313-.35C14.588 4.788 15.792 4 17.225 4c1.273 0 2.469.557 3.491 1.516l.218.213c1.73 1.765 2.917 4.71 3.053 8.026l.011.392.002.25c0 1.501-.28 2.759-.818 3.7l-.14.23-.108.153c-.301.42-.664.758-1.086 1.009l-.265.142-.087.04a3.493 3.493 0 01-.302.118 4.117 4.117 0 01-1.33.208c-.524 0-.996-.067-1.438-.215-.614-.204-1.163-.56-1.726-1.116l-.227-.235c-.753-.812-1.534-1.976-2.493-3.586l-1.43-2.41-.544-.895-1.766 3.13-.343.592C7.597 19.156 6.227 20 4.356 20c-1.21 0-2.205-.42-2.936-1.182l-.168-.184c-.484-.573-.837-1.311-1.043-2.189l-.067-.32a8.69 8.69 0 01-.136-1.288L0 14.468c.002-.745.06-1.49.174-2.23l.1-.573c.298-1.53.828-2.958 1.536-4.157l.209-.34c1.177-1.83 2.789-3.053 4.615-3.16L6.897 4zm-.033 2.615l-.201.01c-.83.083-1.606.673-2.252 1.577l-.138.199-.01.018c-.67 1.017-1.185 2.378-1.456 3.845l-.004.022a12.591 12.591 0 00-.207 2.254l.002.188c.004.18.017.36.04.54l.043.291c.092.503.257.908.486 1.208l.117.137c.303.323.698.492 1.17.492 1.1 0 1.796-.676 3.696-3.641l2.175-3.4.454-.701-.139-.198C9.11 7.3 8.084 6.616 6.864 6.616zm10.196-.552l-.176.007c-.635.048-1.223.359-1.82.933l-.196.198c-.439.462-.887 1.064-1.367 1.807l.266.398c.18.274.362.56.55.858l.293.475 1.396 2.335.695 1.114c.583.926 1.03 1.6 1.408 2.082l.213.262c.282.326.529.54.777.673l.102.05c.227.1.457.138.718.138.176.002.35-.023.518-.073.338-.104.61-.32.813-.637l.095-.163.077-.162c.194-.459.29-1.06.29-1.785l-.006-.449c-.08-2.871-.938-5.372-2.2-6.798l-.176-.189c-.67-.683-1.444-1.074-2.27-1.074z"}],minimax:[{d:"M16.278 2c1.156 0 2.093.927 2.093 2.07v12.501a.74.74 0 00.744.709.74.74 0 00.743-.709V9.099a2.06 2.06 0 012.071-2.049A2.06 2.06 0 0124 9.1v6.561a.649.649 0 01-.652.645.649.649 0 01-.653-.645V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v7.472a2.037 2.037 0 01-2.048 2.026 2.037 2.037 0 01-2.048-2.026v-12.5a.785.785 0 00-.788-.753.785.785 0 00-.789.752l-.001 15.904A2.037 2.037 0 0113.441 22a2.037 2.037 0 01-2.048-2.026V18.04c0-.356.292-.645.652-.645.36 0 .652.289.652.645v1.934c0 .263.142.506.372.638.23.131.514.131.744 0a.734.734 0 00.372-.638V4.07c0-1.143.937-2.07 2.093-2.07zm-5.674 0c1.156 0 2.093.927 2.093 2.07v11.523a.648.648 0 01-.652.645.648.648 0 01-.652-.645V4.07a.785.785 0 00-.789-.78.785.785 0 00-.789.78v14.013a2.06 2.06 0 01-2.07 2.048 2.06 2.06 0 01-2.071-2.048V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v3.8a2.06 2.06 0 01-2.071 2.049A2.06 2.06 0 010 12.9v-1.378c0-.357.292-.646.652-.646.36 0 .653.29.653.646V12.9c0 .418.343.757.766.757s.766-.339.766-.757V9.099a2.06 2.06 0 012.07-2.048 2.06 2.06 0 012.071 2.048v8.984c0 .419.343.758.767.758.423 0 .766-.339.766-.758V4.07c0-1.143.937-2.07 2.093-2.07z"}],mistral:[{d:"M3.428 3.4h3.429v3.428h3.429v3.429h-.002 3.431V6.828h3.427V3.4h3.43v13.714H24v3.429H13.714v-3.428h-3.428v-3.429h-3.43v3.428h3.43v3.429H0v-3.429h3.428V3.4zm10.286 13.715h3.428v-3.429h-3.427v3.429z"}],moonshotai:[{d:"M1.052 16.916l9.539 2.552a21.007 21.007 0 00.06 2.033l5.956 1.593a11.997 11.997 0 01-5.586.865l-.18-.016-.044-.004-.084-.009-.094-.01a11.605 11.605 0 01-.157-.02l-.107-.014-.11-.016a11.962 11.962 0 01-.32-.051l-.042-.008-.075-.013-.107-.02-.07-.015-.093-.019-.075-.016-.095-.02-.097-.023-.094-.022-.068-.017-.088-.022-.09-.024-.095-.025-.082-.023-.109-.03-.062-.02-.084-.025-.093-.028-.105-.034-.058-.019-.08-.026-.09-.031-.066-.024a6.293 6.293 0 01-.044-.015l-.068-.025-.101-.037-.057-.022-.08-.03-.087-.035-.088-.035-.079-.032-.095-.04-.063-.028-.063-.027a5.655 5.655 0 01-.041-.018l-.066-.03-.103-.047-.052-.024-.096-.046-.062-.03-.084-.04-.086-.044-.093-.047-.052-.027-.103-.055-.057-.03-.058-.032a6.49 6.49 0 01-.046-.026l-.094-.053-.06-.034-.051-.03-.072-.041-.082-.05-.093-.056-.052-.032-.084-.053-.061-.039-.079-.05-.07-.047-.053-.035a7.785 7.785 0 01-.054-.036l-.044-.03-.044-.03a6.066 6.066 0 01-.04-.028l-.057-.04-.076-.054-.069-.05-.074-.054-.056-.042-.076-.057-.076-.059-.086-.067-.045-.035-.064-.052-.074-.06-.089-.073-.046-.039-.046-.039a7.516 7.516 0 01-.043-.037l-.045-.04-.061-.053-.07-.062-.068-.06-.062-.058-.067-.062-.053-.05-.088-.084a13.28 13.28 0 01-.099-.097l-.029-.028-.041-.042-.069-.07-.05-.051-.05-.053a6.457 6.457 0 01-.168-.179l-.08-.088-.062-.07-.071-.08-.042-.049-.053-.062-.058-.068-.046-.056a7.175 7.175 0 01-.027-.033l-.045-.055-.066-.082-.041-.052-.05-.064-.02-.025a11.99 11.99 0 01-1.44-2.402zm-1.02-5.794l11.353 3.037a20.468 20.468 0 00-.469 2.011l10.817 2.894a12.076 12.076 0 01-1.845 2.005L.657 15.923l-.016-.046-.035-.104a11.965 11.965 0 01-.05-.153l-.007-.023a11.896 11.896 0 01-.207-.741l-.03-.126-.018-.08-.021-.097-.018-.081-.018-.09-.017-.084-.018-.094c-.026-.141-.05-.283-.071-.426l-.017-.118-.011-.083-.013-.102a12.01 12.01 0 01-.019-.161l-.005-.047a12.12 12.12 0 01-.034-2.145zm1.593-5.15l11.948 3.196c-.368.605-.705 1.231-1.01 1.875l11.295 3.022c-.142.82-.368 1.612-.668 2.365l-11.55-3.09L.124 10.26l.015-.1.008-.049.01-.067.015-.087.018-.098c.026-.148.056-.295.088-.442l.028-.124.02-.085.024-.097c.022-.09.045-.18.07-.268l.028-.102.023-.083.03-.1.025-.082.03-.096.026-.082.031-.095a11.896 11.896 0 011.01-2.232zm4.442-4.4L17.352 4.59a20.77 20.77 0 00-1.688 1.721l7.823 2.093c.267.852.442 1.744.513 2.665L2.106 5.213l.045-.065.027-.04.04-.055.046-.065.055-.076.054-.072.064-.086.05-.065.057-.073.055-.07.06-.074.055-.069.065-.077.054-.066.066-.077.053-.06.072-.082.053-.06.067-.074.054-.058.073-.078.058-.06.063-.067.168-.17.1-.098.059-.056.076-.071a12.084 12.084 0 012.272-1.677zM12.017 0h.097l.082.001.069.001.054.002.068.002.046.001.076.003.047.002.06.003.054.002.087.005.105.007.144.011.088.007.044.004.077.008.082.008.047.005.102.012.05.006.108.014.081.01.042.006.065.01.207.032.07.012.065.011.14.026.092.018.11.022.046.01.075.016.041.01L14.7.3l.042.01.065.015.049.012.071.017.096.024.112.03.113.03.113.032.05.015.07.02.078.024.073.023.05.016.05.016.076.025.099.033.102.036.048.017.064.023.093.034.11.041.116.045.1.04.047.02.06.024.041.018.063.026.04.018.057.025.11.048.1.046.074.035.075.036.06.028.092.046.091.045.102.052.053.028.049.026.046.024.06.033.041.022.052.029.088.05.106.06.087.051.057.034.053.032.096.059.088.055.098.062.036.024.064.041.084.056.04.027.062.042.062.043.023.017c.054.037.108.075.161.114l.083.06.065.048.056.043.086.065.082.064.04.03.05.041.086.069.079.065.085.071c.712.6 1.353 1.283 1.909 2.031L7.222.994l.062-.027.065-.028.081-.034.086-.035c.113-.045.227-.09.341-.131l.096-.035.093-.033.084-.03.096-.031c.087-.03.176-.058.264-.085l.091-.027.086-.025.102-.03.085-.023.1-.026L9.04.37l.09-.023.091-.022.095-.022.09-.02.098-.021.091-.02.095-.018.092-.018.1-.018.091-.016.098-.017.092-.014.097-.015.092-.013.102-.013.091-.012.105-.012.09-.01.105-.01c.093-.01.186-.018.28-.024l.106-.008.09-.005.11-.006.093-.004.1-.004.097-.002.099-.002.197-.002z"}],morph:[{d:"M7.941 2c.23 0 .452.073.638.21.186.136.325.328.397.55l.593 1.814c.073.221.212.413.397.55.186.136.409.21.638.21h2.791c.23 0 .452-.074.638-.21a1.11 1.11 0 00.397-.55l.594-1.815a1.11 1.11 0 01.397-.55c.185-.136.408-.209.637-.209h1.7c.23 0 .453.073.639.21.185.136.324.328.397.55l.652 1.994c.118.361.41.635.77.728l2.957.752c.236.06.446.199.596.394.15.195.23.436.231.684v9.376c0 .248-.081.488-.231.684a1.09 1.09 0 01-.595.394l-2.957.752a1.086 1.086 0 00-.477.263 1.114 1.114 0 00-.293.465l-.653 1.994a1.11 1.11 0 01-.396.55c-.186.136-.41.21-.638.21h-1.702c-.229 0-.452-.073-.637-.21a1.11 1.11 0 01-.397-.55l-.364-1.11a1.131 1.131 0 01.15-1.002 1.074 1.074 0 01.885-.462h2.85c.29 0 .567-.116.772-.325.204-.208.32-.49.32-.785V6.444c0-.294-.116-.577-.32-.785a1.08 1.08 0 00-.771-.326h-3.273c-.29 0-.567.117-.772.326-.204.208-.32.49-.32.785v7.778c0 .295-.114.578-.319.786a1.08 1.08 0 01-.771.325h-2.182a1.08 1.08 0 01-.771-.325 1.122 1.122 0 01-.32-.786V6.444c0-.294-.115-.577-.32-.785a1.081 1.081 0 00-.77-.326H5.454c-.29 0-.567.117-.772.326-.204.208-.32.49-.32.785v11.112c0 .294.116.577.32.785.205.209.482.326.772.326h2.85a1.075 1.075 0 01.885.461 1.122 1.122 0 01.15 1.001l-.364 1.112a1.11 1.11 0 01-.397.55c-.185.136-.408.209-.637.209H6.24c-.229 0-.452-.073-.638-.21a1.11 1.11 0 01-.397-.55l-.652-1.994a1.114 1.114 0 00-.294-.465 1.086 1.086 0 00-.477-.263l-2.956-.752a1.09 1.09 0 01-.595-.394A1.124 1.124 0 010 16.688V7.312c0-.248.081-.489.231-.684.15-.195.36-.334.595-.394l2.957-.753c.178-.045.342-.136.477-.263.134-.127.235-.287.293-.464l.653-1.995a1.11 1.11 0 01.397-.55C5.788 2.075 6.01 2 6.24 2h1.701z"}],nvidia:[{d:"M10.212 8.976V7.62c.127-.01.256-.017.388-.021 3.596-.117 5.957 3.184 5.957 3.184s-2.548 3.647-5.282 3.647a3.227 3.227 0 01-1.063-.175v-4.109c1.4.174 1.681.812 2.523 2.258l1.873-1.627a4.905 4.905 0 00-3.67-1.846 6.594 6.594 0 00-.729.044m0-4.476v2.025c.13-.01.259-.019.388-.024 5.002-.174 8.261 4.226 8.261 4.226s-3.743 4.69-7.643 4.69c-.338 0-.675-.031-1.007-.092v1.25c.278.038.558.057.838.057 3.629 0 6.253-1.91 8.794-4.169.421.347 2.146 1.193 2.501 1.564-2.416 2.083-8.048 3.763-11.24 3.763-.308 0-.603-.02-.894-.048V19.5H24v-15H10.21zm0 9.756v1.068c-3.356-.616-4.287-4.21-4.287-4.21a7.173 7.173 0 014.287-2.138v1.172h-.005a3.182 3.182 0 00-2.502 1.178s.615 2.276 2.507 2.931m-5.961-3.3c1.436-1.935 3.604-3.148 5.961-3.336V6.523C5.81 6.887 2 10.723 2 10.723s2.158 6.427 8.21 7.015v-1.166C5.77 16 4.25 10.958 4.25 10.958h-.002z"}],perplexity:[{d:"M19.785 0v7.272H22.5V17.62h-2.935V24l-7.037-6.194v6.145h-1.091v-6.152L4.392 24v-6.465H1.5V7.188h2.884V0l7.053 6.494V.19h1.09v6.49L19.786 0zm-7.257 9.044v7.319l5.946 5.234V14.44l-5.946-5.397zm-1.099-.08l-5.946 5.398v7.235l5.946-5.234V8.965zm8.136 7.58h1.844V8.349H13.46l6.105 5.54v2.655zm-8.982-8.28H2.59v8.195h1.8v-2.576l6.192-5.62zM5.475 2.476v4.71h5.115l-5.115-4.71zm13.219 0l-5.115 4.71h5.115v-4.71z"}],recraft:[{d:"M19.667 8.275c0-4.57-4.15-8.275-9.27-8.275-1.774 0-3.213 3.705-3.213 8.275 0 1.143.09 2.233.253 3.224H4.29L1 23h9.4v-6.447c5.117 0 9.266-3.707 9.266-8.275l.001-.002zm-9.27-6.76c.93 0 1.682 3.028 1.682 6.76 0 3.733-.752 6.76-1.681 6.76-.93 0-1.681-3.027-1.681-6.76 0-3.732.752-6.76 1.68-6.76z"},{d:"M19.848 16.552h-9.44L14.028 23h9.438l-3.618-6.448z"}],stepfun:[{d:"M12 0C5.372 0 0 5.372 0 12s5.372 12 12 12 12-5.372 12-12S18.628 0 12 0zM8.762 19.614H4.376v-4.386h4.386v4.386zm5.423 0H9.798v-4.386h4.387v4.386zm0-5.42H9.798V9.81h4.387v4.386zm0-5.418H9.798V4.39h4.387v4.386zm5.422-.004h-4.386V4.386h4.386v4.386z"}],tencent:[{d:"M12 0c6.627 0 12 5.373 12 12s-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0zm1.652 1.123l-.01-.001c.533.097 1.023.233 1.41.404 6.084 2.683 7.396 9.214 1.601 14.338a3.781 3.781 0 01-5.337-.328 3.654 3.654 0 01-.884-3.044c-1.934.6-3.295 2.305-3.524 4.45-.204 1.912.324 4.044 2.056 5.634l.245.067C10.1 22.876 11.036 23 12 23c6.075 0 11-4.925 11-11 0-5.513-4.056-10.08-9.348-10.877zM2.748 6.21c-.178.269-.348.536-.51.803l-.235.394.078-.167A10.957 10.957 0 001 12c0 4.919 3.228 9.083 7.682 10.49l.214.065C3.523 18.528 2.84 14.149 6.47 8.68A2.234 2.234 0 102.748 6.21zm10.157-5.172c4.408 1.33 3.61 5.41 2.447 6.924-.86 1.117-2.922 1.46-3.708 2.238-.666.657-1.077 1.462-1.212 2.291A5.303 5.303 0 0112 12.258a5.672 5.672 0 001.404-11.169 10.51 10.51 0 00-.5-.052z"}],voyage:[{d:"M5.407 0v.066a.974.974 0 00-.048.245c-.011.11-.016.208-.016.295 0 .339.043.715.128 1.13.097.405.274.912.531 1.524l7.125 16.366L20.011 3.39c.161-.404.333-.846.515-1.327.182-.48.273-.966.273-1.458a1.406 1.406 0 00-.096-.54V0H24v.066c-.204.207-.45.578-.74 1.114-.29.535-.606 1.195-.949 1.982L13.095 24h-1.287L3.075 3.965c-.204-.47-.418-.923-.644-1.36-.214-.437-.418-.83-.61-1.18-.194-.36-.365-.66-.515-.9A5.666 5.666 0 001 .064V0h4.407z"}],xiaomi:[{d:"M12 0C8.016 0 4.756.255 2.493 2.516.23 4.776 0 8.033 0 12.012c0 3.98.23 7.235 2.494 9.497C4.757 23.77 8.017 24 12 24c3.983 0 7.243-.23 9.506-2.491C23.77 19.247 24 15.99 24 12.012c0-3.984-.233-7.243-2.502-9.504C19.234.252 15.978 0 12 0zM4.906 7.405h5.624c1.47 0 3.007.068 3.764.827.746.746.827 2.233.83 3.676v4.54a.15.15 0 0 1-.152.147h-1.947a.15.15 0 0 1-.152-.148V11.83c-.002-.806-.048-1.634-.464-2.051-.358-.36-1.026-.441-1.72-.458H7.158a.15.15 0 0 0-.151.147v6.98a.15.15 0 0 1-.152.148H4.906a.15.15 0 0 1-.15-.148V7.554a.15.15 0 0 1 .15-.149zm12.131 0h1.949a.15.15 0 0 1 .15.15v8.892a.15.15 0 0 1-.15.148h-1.949a.15.15 0 0 1-.151-.148V7.554a.15.15 0 0 1 .151-.149zM8.92 10.948h2.046c.083 0 .15.066.15.147v5.352a.15.15 0 0 1-.15.148H8.92a.15.15 0 0 1-.152-.148v-5.352a.15.15 0 0 1 .152-.147Z"}],zai:[{d:"M12.105 2L9.927 4.953H.653L2.83 2h9.276zM23.254 19.048L21.078 22h-9.242l2.174-2.952h9.244zM24 2L9.264 22H0L14.736 2H24z"}]};function N({owner:e,className:a}){let i=z[e];if(i)return(0,t.jsx)(j.ProviderIcon,{provider:i,className:a});let n=L[e];return n?(0,t.jsx)("svg",{viewBox:"0 0 24 24",fill:"currentColor",fillRule:"evenodd",className:a,"aria-hidden":"true",children:n.map(e=>(0,t.jsx)("path",{d:e.d,opacity:e.opacity},e.d))}):null}function A({models:e,kind:a,value:i,loading:n,onPick:o}){let[l,c]=(0,s.useState)(!1),[d,m]=(0,s.useState)(""),[p,g]=(0,s.useState)("cheap"),[v,f]=(0,s.useState)(i),b=e.filter(e=>e.type===(a??u.GATEWAY_TEXT)),j=a?b:b.filter(e=>e.tags.includes(u.GATEWAY_TOOL_USE)),z=d.trim().toLowerCase(),L=(z?j.filter(e=>`${e.id} ${e.label}`.toLowerCase().includes(z)):j).slice().sort(E[p].compare);return(0,t.jsxs)(k.Dialog,{open:l,onOpenChange:e=>{c(e),e?f(i):m("")},children:[(0,t.jsxs)(k.DialogTrigger,{render:(0,t.jsx)("button",{type:"button","aria-label":"Model",className:(0,M.cn)(h.inputClassName,"relative flex items-center pr-8 text-left font-mono text-sm")}),children:[(0,t.jsx)("span",{className:(0,M.cn)("min-w-0 flex-1 truncate",!i&&"font-sans text-muted-foreground"),children:i||"Pick a model"}),(0,t.jsx)("span",{className:"absolute inset-y-0 right-0 flex w-8 items-center justify-center text-muted-foreground",children:n&&0===j.length?(0,t.jsx)(w.LoaderCircle,{className:"size-3.5 animate-spin"}):(0,t.jsx)(y.Search,{className:"size-3.5"})})]}),(0,t.jsx)(k.DialogContent,{className:"h-[min(40rem,calc(100vh-3rem))] gap-0 overflow-hidden p-0 sm:max-w-2xl",children:(0,t.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[(0,t.jsxs)("div",{className:"shrink-0 space-y-1 px-6 pt-5 pb-4",children:[(0,t.jsxs)(k.DialogTitle,{className:"flex items-center gap-2.5 text-xl font-semibold",children:[(0,t.jsx)(x.VercelIcon,{className:"size-3.5"}),a?V[a]:"Text"," models"]}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:z?`${L.length} matching “${d.trim()}”`:a?`${j.length} on the gateway`:`${j.length} of ${b.length} on the gateway can call tools`})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-3 border-t border-border/60 px-6 py-3",children:[(0,t.jsxs)("div",{className:"relative min-w-0 flex-1",children:[(0,t.jsx)(y.Search,{className:"pointer-events-none absolute top-1/2 left-2.5 size-3.5 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(h.Input,{autoFocus:!0,"aria-label":"Search models",placeholder:"name, id or provider",spellCheck:!1,value:d,onChange:e=>m(e.target.value),className:"h-8 pl-8 font-mono text-xs"})]}),(0,t.jsx)(S.Segmented,{"aria-label":"Sort",options:O,value:p,onChange:g})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-4 px-6 pb-1.5 font-mono text-[10px] tracking-wide text-muted-foreground/60",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1",children:"model"}),(0,t.jsx)("span",{className:"w-28 text-right",children:"per 1M in / out"})]}),(0,t.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto border-t border-border/60",children:[L.map(e=>(0,t.jsx)(T,{model:e,picked:e.id===v,onPick:()=>f(e.id)},e.id)),0===L.length&&(0,t.jsxs)("div",{className:"flex flex-col items-start gap-2.5 p-10",children:[(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:z?`Nothing matches “${d.trim()}”.`:"Nothing on the shelf — search for an id."}),z&&(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(r.Button,{size:"sm",onClick:()=>f(d.trim()),children:["Use “",d.trim(),"” as the id"]}),(0,t.jsx)(r.Button,{variant:"outline",size:"sm",onClick:()=>m(""),children:"Clear search"})]})]})]}),(0,t.jsxs)("div",{className:"flex h-14 shrink-0 items-center gap-3 border-t border-border/60 px-6",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground",children:v||"Nothing picked — the field keeps what it has"}),(0,t.jsx)(r.Button,{variant:"outline",onClick:()=>c(!1),children:"Cancel"}),(0,t.jsx)(r.Button,{disabled:!v,onClick:()=>{o(v),c(!1)},children:"Use this model"})]})]})})]})}let V={image:"Image",video:"Video",speech:"Speech",transcription:"Transcription"},E={cheap:{label:"$↑",title:"Cheapest first",compare:(e,t)=>(e.price.in??1/0)-(t.price.in??1/0)},dear:{label:"$↓",title:"Dearest first",compare:(e,t)=>(t.price.in??-1)-(e.price.in??-1)},name:{label:"a–z",title:"By name",compare:(e,t)=>e.label.localeCompare(t.label)}},O=Object.keys(E).map(e=>({value:e,label:E[e].label,title:E[e].title})),C=e=>e>=1?e.toFixed(2):String(Number(e.toFixed(4)));function T({model:e,picked:i,onPick:n}){let{price:s}=e,o=null!==s.in||null!==s.out;return(0,t.jsxs)("button",{type:"button",onClick:n,className:(0,M.cn)("flex w-full items-center gap-4 border-b border-border/60 px-6 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",i?"bg-muted/40":"hover:bg-muted/50"),children:[(0,t.jsx)("span",{className:"grid size-[18px] shrink-0 place-items-center",children:(0,t.jsx)(N,{owner:e.owner,className:"size-[15px]"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)("span",{className:(0,M.cn)("truncate text-[13px]",i&&"font-medium"),children:e.label}),i&&(0,t.jsx)(a.Check,{className:"size-3.5 shrink-0"}),e.retiring&&(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground",children:"retiring"})]}),(0,t.jsx)("span",{className:"block truncate font-mono text-[11px] text-muted-foreground",children:e.id})]}),(0,t.jsxs)("span",{className:"flex w-28 shrink-0 flex-col items-end",children:[(0,t.jsx)("span",{className:(0,M.cn)("font-mono text-xs",o||s.free?"text-foreground":"text-muted-foreground"),children:s.free?"free":null===s.in&&null===s.out?s.note??"—":`${null===s.in?"—":C(s.in)} / ${null===s.out?"—":C(s.out)}`}),o&&s.note&&(0,t.jsx)("span",{className:"font-mono text-[9px] text-muted-foreground/70",children:s.note})]})]})}function I({provider:e,onSaved:a}){let[i,n]=(0,s.useState)(""),[l,c]=(0,m.useServerAction)(d.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{(0,p.revalidate)(o.queryKey.llmModel),(0,p.revalidate)(o.queryKey.config),a()}});return e.signIn?(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("p",{className:"px-1 font-mono text-[11px] text-muted-foreground",children:"Runs on your plan once you sign in"}),(0,t.jsx)(b,{variant:"outline"})]}):(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(h.Input,{value:i,onChange:e=>n(e.target.value),placeholder:e.apiKeyName,spellCheck:!1,type:"password"}),(0,t.jsx)(r.Button,{variant:"outline",loading:c,disabled:i.trim().length<8,onClick:()=>l(e.apiKeyName,i),children:"Save key"})]})}e.s(["ModelPicker",0,function({provider:e,model:s,kind:h,unset:d,onChange:m}){let{data:g=[],mutate:v}=(0,p.useServerRoute)(o.queryKey.llmModel),f=h?g.filter(e=>(0,u.canMakeKind)(e.id,h)):g,b=f.find(t=>t.id===e),w="vercel-ai-gateway"===e,y=(0,p.useServerRoute)(w&&o.queryKey.modelCatalog),x=(h&&b?u.MEDIA_MODEL_PROVIDERS[b.id]?.models[h]??[]:b?.suggestModels??[]).map(e=>({value:e.id,label:e.label,badge:e.tier,hint:e.id}));return(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(c.DropdownMenu,{children:[(0,t.jsxs)(c.DropdownMenuTrigger,{render:(0,t.jsx)(r.Button,{variant:"outline",className:"shrink-0"}),children:[b?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j.ProviderIcon,{provider:b.id,className:"size-4"}),b.label]}):(0,t.jsx)("span",{className:"text-muted-foreground",children:d??(h?"Not picked":"App default")}),(0,t.jsx)(i.ChevronDown,{className:"size-3.5 text-muted-foreground"})]}),(0,t.jsx)(c.DropdownMenuContent,{align:"start",children:f.map(i=>(0,t.jsxs)(c.DropdownMenuItem,{onClick:()=>m({provider:i.id,model:""}),children:[(0,t.jsx)(j.ProviderIcon,{provider:i.id,className:"size-4"}),i.label,i.hasKey?i.id===e&&(0,t.jsx)(a.Check,{className:"ml-auto size-3.5"}):(0,t.jsx)(n.KeyRound,{className:"ml-auto size-3 text-muted-foreground"})]},i.id))})]}),w&&b&&!y.error?(0,t.jsx)(A,{models:y.data??[],kind:h,value:s,loading:y.isLoading,onPick:e=>m({provider:b.id,model:e})}):(0,t.jsx)(l.Combobox,{value:s,onChange:e=>b&&m({provider:b.id,model:e}),options:x,disabled:!b?.hasKey,"aria-label":"Model",placeholder:b?"Type a model id":"Pick a provider",empty:y.error?"Could not read the catalog — type an id":"Not on the list — it still runs",className:"flex-1"})]}),b&&!b.hasKey&&(0,t.jsx)(I,{provider:b,onSaved:()=>v()}),w&&y.error&&(0,t.jsx)("p",{className:"px-1 font-mono text-[11px] text-destructive",children:y.error.message})]})}],146538)},451888,504565,981203,e=>{"use strict";var t=e.i(722219);e.s(["default",0,t],504565);var t=t,a=e.i(41533),i=e.i(265402),n=e.i(245629);let s={name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}};e.s(["COMMON_VALIDATE",0,s],981203);var o=e.i(864723);let r=t.object({color:t.string().regex(/^(#[0-9a-fA-F]{6}|currentColor)$/,"Hex color").optional(),shape:t.enum(o.MARK_SHAPES).optional(),outline:t.boolean().optional()}),l=t.string().max(s.prompt.max),c=t.object({id:t.number(),name:t.string(),serverName:t.string()}),h=t.string().trim().transform(e=>e.replace(/\s+/g," ")).pipe(t.string().min(1,"A name is required").max(s.name.max)),d=t.object({input:t.number(),output:t.number()});t.object({name:t.string(),description:t.string(),systemPrompt:t.string().nullish(),icon:r.nullish(),provider:i.textModelProviderSchema.nullish(),model:t.string().nullish(),compactAt:t.number().nullish(),disabled:t.boolean(),createdAt:n.DateLikeSchema,tools:c.array().default([]),tokens:d,lastJobAt:n.DateLikeSchema.nullish()}),t.object({name:h,description:t.string().trim().min(1,"Say what this bot is for").max(s.description.max),systemPrompt:l.optional(),icon:r.optional(),provider:i.textModelProviderSchema.nullish(),model:t.string().trim().max(80).nullish(),compactAt:t.coerce.number().int().min(8e3,"At least 8k").nullish(),disabled:t.boolean().optional(),toolIds:t.number().int().array().max(10).default([])}),t.object({file:t.string(),path:t.string(),line:t.string(),at:n.DateLikeSchema,bytes:t.number()});let m=a.PAGE_SIZE,p="Continue",u=t.discriminatedUnion("type",[t.object({type:t.literal("text"),text:t.string()}),t.object({type:t.literal("image"),src:t.string()})]),g=t.object({id:t.string(),seq:t.number(),bot:t.string().nullable(),parent:t.string().nullable(),at:n.DateLikeSchema}),v=t.discriminatedUnion("kind",[g.extend({kind:t.literal("user"),text:t.string()}),g.extend({kind:t.literal("text"),text:t.string()}),g.extend({kind:t.literal("note"),text:t.string()}),g.extend({kind:t.literal("tool"),callId:t.string(),name:t.string(),input:t.string(),note:t.string().nullish(),path:t.string().nullish()}),g.extend({kind:t.literal("tool-result"),callId:t.string(),name:t.string(),results:u.array(),more:t.boolean()}),g.extend({kind:t.literal("ask"),callId:t.string(),to:t.string(),text:t.string()}),g.extend({kind:t.literal("ask-result"),callId:t.string(),text:t.string()}),g.extend({kind:t.literal("waiting"),callId:t.string(),question:t.string(),options:t.string().array()})]),f=t.object({question:t.string(),options:t.string().array(),auto:t.boolean()});t.object({id:t.string(),bot:t.string(),label:t.string(),request:t.string(),status:t.enum(["running","waiting","done","failed"]),outcome:t.string().nullable(),ask:f.nullable(),seen:t.boolean(),tokens:d,contextTokens:t.number(),contextBudget:t.number(),createdAt:n.DateLikeSchema,updatedAt:n.DateLikeSchema,lines:v.array()}),e.s(["DEFAULT_BOT",0,{name:"Jarvis",description:"Anything — this computer, a browser, the web, files, services",systemPrompt:null,icon:{color:"#14B8A6",shape:"squircle"},provider:null,model:null,disabled:!1,compactAt:null},"MAX_PINNED_TOOLS",0,10,"TASK_CONTINUE",0,p,"TASK_HISTORY_PAGE",0,m,"botIconSchema",0,r,"isAppStop",0,e=>{let t=e?.options??[];return 1===t.length&&t[0]===p},"randomBotIcon",0,function(){return{color:(0,o.randomMarkColors)(1)[0],shape:o.MARK_SHAPES[Math.floor(Math.random()*o.MARK_SHAPES.length)]}}],451888)},730281,463625,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("7f146977640e230a08d980d2d2ec28e7dcf4438f21",t.callServer,void 0,t.findSourceMapURL,"createSeedBotsAction");e.s(["createSeedBotsAction",0,a],730281);var i=e.i(41533),n=e.i(213377),s=e.i(864723);let o=[{name:"Jarvis",description:"Any job — turns it into a plan, hands each part to whoever it belongs to, does the rest, answers with one result",hint:"Plans a job and hands out the parts",icon:{shape:"squircle"},recommended:!0,systemPrompt:"You are Jarvis. A job reaches you as a sentence and leaves as a plan: what it actually needs, in what order, and who does each part. Settle what is still open in one round rather than guessing at it, then send for what the job is made of before you build — a part another bot exists for is theirs, and everything nobody else is for is yours. You hold the whole while they hold pieces: the order the parts run in, the seams where what comes back has to fit together, and the single thing that is handed over at the end. The plan is how the job gets done, not what gets handed back."},{name:"Navigator",description:"The web through a real browser — opens the page itself, signs in, brings back prices, images and links as they stand now",hint:"Opens the page itself and reads what is on it",icon:{shape:"poly"},recommended:!0,systemPrompt:`You are Navigator. Every browser job is yours: load the \`${i.BROWSER_SKILL}\` skill first and work through it. A search result says a page exists; you say what is on it right now — so open it, sign in where it asks you to, and keep going past the first screen until you have the thing itself: exact figures, the links that open them, the images off the page. Nothing you did not see goes in what you hand back, and a page that refused you is a fact with a url on it, not a gap to fill in from memory. Whoever asked should never need to open the site after you.`},{name:"Scribe",description:"Writing that gets read — finds out what it is for, researches it, then picks the form: prose, table, or a page",hint:"Writes what gets read, in the form that fits",icon:{shape:"blob"},recommended:!0,systemPrompt:"You are Scribe. Who reads it and what they do next decides everything else, so learn that first, then research before you claim: every number and name you write traces back to something you actually read. Pick the form by the reading — a `.md` for something read once, a `.csv` for what gets sorted, a page (the `interactive-page` skill) for something used or something whose pictures are the point. When the request does not settle which it is — something read once or something used — ask before you write rather than committing a whole draft to a guess. Cut what the reader would skip, and never spend a paragraph where a table or a picture answers in one glance. One page they finish beats five they abandon."},{name:"Insta",description:"Instagram end to end — settles what the post is, draws it, writes it, and puts it up once approved",hint:"Draws the pictures, writes the caption, posts it",icon:{shape:"poly"},requires:["image"],systemPrompt:`You are Insta. One job takes a post from nothing to live on instagram.com — settle what it is, sign in, draw it, write it, put it up. Load the \`${i.BROWSER_SKILL}\` skill before any browser step.
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,146538,412294,e=>{"use strict";var t=e.i(843476),a=e.i(689664),i=e.i(716327),s=e.i(758925),n=e.i(271645),o=e.i(798120),r=e.i(167881),l=e.i(736185),c=e.i(463415),h=e.i(23750),d=e.i(905871),m=e.i(609856),p=e.i(283653),u=e.i(265402),g=e.i(6799),v=e.i(95187);let f=(0,v.createServerReference)("7fa2cf26e961795098f276046405e7c1f2ee1764a0",v.callServer,void 0,v.findSourceMapURL,"startChatGptSignInAction");function b({variant:e}){let[a,i]=(0,n.useState)(!1),s=(0,n.useRef)(null),o=()=>{s.current&&clearInterval(s.current),s.current=null};(0,n.useEffect)(()=>o,[]);let[l,c]=(0,m.useServerAction)(f,{onOk:e=>{let t=window.open(e,"thursday-chatgpt","popup,width=520,height=720");if(!t)return void g.toast.add({type:"error",title:"The sign-in window was blocked",description:"Allow pop-ups for this page, then try again"});i(!0),o();let a=Date.now()+6e5;s.current=setInterval(()=>{!t.closed&&Date.now()<a||(o(),i(!1))},700)}});return(0,t.jsx)(r.Button,{variant:e,loading:c||a,onClick:()=>l(),children:"Sign in with ChatGPT"})}e.s(["ChatGptSignIn",0,b],412294);var y=e.i(611568),w=e.i(566595),x=e.i(7227),k=e.i(630374),S=e.i(421429),M=e.i(647163),j=e.i(968978);let _={anthropic:"anthropic",openai:"openai",google:"google",spacexai:"xai"},L={alibaba:[{d:"M12.604 1.34c.393.69.784 1.382 1.174 2.075a.18.18 0 00.157.091h5.552c.174 0 .322.11.446.327l1.454 2.57c.19.337.24.478.024.837-.26.43-.513.864-.76 1.3l-.367.658c-.106.196-.223.28-.04.512l2.652 4.637c.172.301.111.494-.043.77-.437.785-.882 1.564-1.335 2.34-.159.272-.352.375-.68.37-.777-.016-1.552-.01-2.327.016a.099.099 0 00-.081.05 575.097 575.097 0 01-2.705 4.74c-.169.293-.38.363-.725.364-.997.003-2.002.004-3.017.002a.537.537 0 01-.465-.271l-1.335-2.323a.09.09 0 00-.083-.049H4.982c-.285.03-.553-.001-.805-.092l-1.603-2.77a.543.543 0 01-.002-.54l1.207-2.12a.198.198 0 000-.197 550.951 550.951 0 01-1.875-3.272l-.79-1.395c-.16-.31-.173-.496.095-.965.465-.813.927-1.625 1.387-2.436.132-.234.304-.334.584-.335a338.3 338.3 0 012.589-.001.124.124 0 00.107-.063l2.806-4.895a.488.488 0 01.422-.246c.524-.001 1.053 0 1.583-.006L11.704 1c.341-.003.724.032.9.34zm-3.432.403a.06.06 0 00-.052.03L6.254 6.788a.157.157 0 01-.135.078H3.253c-.056 0-.07.025-.041.074l5.81 10.156c.025.042.013.062-.034.063l-2.795.015a.218.218 0 00-.2.116l-1.32 2.31c-.044.078-.021.118.068.118l5.716.008c.046 0 .08.02.104.061l1.403 2.454c.046.081.092.082.139 0l5.006-8.76.783-1.382a.055.055 0 01.096 0l1.424 2.53a.122.122 0 00.107.062l2.763-.02a.04.04 0 00.035-.02.041.041 0 000-.04l-2.9-5.086a.108.108 0 010-.113l.293-.507 1.12-1.977c.024-.041.012-.062-.035-.062H9.2c-.059 0-.073-.026-.043-.077l1.434-2.505a.107.107 0 000-.114L9.225 1.774a.06.06 0 00-.053-.031zm6.29 8.02c.046 0 .058.02.034.06l-.832 1.465-2.613 4.585a.056.056 0 01-.05.029.058.058 0 01-.05-.029L8.498 9.841c-.02-.034-.01-.052.028-.054l.216-.012 6.722-.012z"}],amazon:[{d:"M13.05 15.513h3.08c.214 0 .389.177.389.394v1.82a1.704 1.704 0 011.296 1.661c0 .943-.755 1.708-1.685 1.708-.931 0-1.686-.765-1.686-1.708 0-.807.554-1.484 1.297-1.662v-1.425h-2.69v4.663a.395.395 0 01-.188.338l-2.69 1.641a.385.385 0 01-.405-.002l-4.926-3.086a.395.395 0 01-.185-.336V16.3L2.196 14.87A.395.395 0 012 14.555L2 14.528V9.406c0-.14.073-.27.192-.34l2.465-1.462V4.448c0-.129.062-.249.165-.322l.021-.014L9.77 1.058a.385.385 0 01.407 0l2.69 1.675a.395.395 0 01.185.336V7.6h3.856V5.683a1.704 1.704 0 01-1.296-1.662c0-.943.755-1.708 1.685-1.708.931 0 1.685.765 1.685 1.708 0 .807-.553 1.484-1.296 1.662v2.311a.391.391 0 01-.389.394h-4.245v1.806h6.624a1.69 1.69 0 011.64-1.313c.93 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708a1.69 1.69 0 01-1.64-1.314H13.05v1.937h4.953l.915 1.18a1.66 1.66 0 01.84-.227c.931 0 1.685.764 1.685 1.707 0 .943-.754 1.708-1.685 1.708-.93 0-1.685-.765-1.685-1.708 0-.346.102-.668.276-.937l-.724-.935H13.05v1.806zM9.973 1.856L7.93 3.122V6.09h-.778V3.604L5.435 4.669v2.945l2.11 1.36L9.712 7.61V5.334h.778V7.83c0 .136-.07.263-.184.335L7.963 9.638v2.081l1.422 1.009-.446.646-1.406-.998-1.53 1.005-.423-.66 1.605-1.055v-1.99L5.038 8.29l-2.26 1.34v1.676l1.972-1.189.398.677-2.37 1.429V14.3l2.166 1.258 2.27-1.368.397.677-2.176 1.311V19.3l1.876 1.175 2.365-1.426.398.678-2.017 1.216 1.918 1.201 2.298-1.403v-5.78l-4.758 2.893-.4-.675 5.158-3.136V3.289L9.972 1.856zM16.13 18.47a.913.913 0 00-.908.92c0 .507.406.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zm3.63-3.81a.913.913 0 00-.908.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92zm1.555-4.99a.913.913 0 00-.908.92c0 .507.407.918.908.918a.913.913 0 00.907-.919.913.913 0 00-.907-.92zM17.296 3.1a.913.913 0 00-.907.92c0 .508.406.92.907.92a.913.913 0 00.908-.92.913.913 0 00-.908-.92z"}],"arcee-ai":[{d:"M13.236 2.377L2.751 20.493H0L11.863 0l1.373 2.377zm3.554 6.156l-9.606 11.96H4.13L15.511 6.32l1.279 2.212zm6.908 11.96H14.05l8.406-2.151 1.242 2.15zm-3.42-5.922l-7.843 5.92H8.482l10.597-7.997 1.2 2.077z"}],bfl:[{d:"M0 20.683L12.01 2.5 24 20.683h-2.233L12.009 5.878 3.471 18.806h12.122l1.239 1.877H0z"},{d:"M8.069 16.724l2.073-3.115 2.074 3.115H8.069zM18.24 20.683l-5.668-8.707h2.177l5.686 8.707h-2.196zM19.74 11.676l2.13-3.19 2.13 3.19h-4.26z"}],bytedance:[{d:"M14.944 18.587l-1.704-.445V10.01l1.824-.462c1-.254 1.84-.461 1.88-.453.032 0 .056 2.235.056 4.972v4.973l-.176-.008c-.104 0-.952-.207-1.88-.446z"},{d:"M7 16.542c0-2.736.024-4.98.064-4.98.032-.008.872.2 1.88.454l1.816.461-.016 4.05-.024 4.049-1.632.422c-.896.23-1.736.445-1.856.469L7 21.523v-4.98z"},{d:"M19.24 12.477c0-9.03.008-9.515.144-9.475.072.024.784.207 1.576.406.792.207 1.576.405 1.744.445l.296.08-.016 8.56-.024 8.568-1.624.414c-.888.23-1.728.437-1.856.47l-.24.055v-9.523z"},{d:"M1 12.509c0-4.678.024-8.505.064-8.505.032 0 .872.207 1.872.454l1.824.461v7.582c0 4.16-.016 7.574-.032 7.574-.024 0-.872.215-1.88.47L1 21.013v-8.505z"}],cohere:[{d:"M8.128 14.099c.592 0 1.77-.033 3.398-.703 1.897-.781 5.672-2.2 8.395-3.656 1.905-1.018 2.74-2.366 2.74-4.18A4.56 4.56 0 0018.1 1H7.549A6.55 6.55 0 001 7.55c0 3.617 2.745 6.549 7.128 6.549z"},{d:"M9.912 18.61a4.387 4.387 0 012.705-4.052l3.323-1.38c3.361-1.394 7.06 1.076 7.06 4.715a5.104 5.104 0 01-5.105 5.104l-3.597-.001a4.386 4.386 0 01-4.386-4.387z"},{d:"M4.776 14.962A3.775 3.775 0 001 18.738v.489a3.776 3.776 0 007.551 0v-.49a3.775 3.775 0 00-3.775-3.775z"}],deepseek:[{d:"M23.748 4.482c-.254-.124-.364.113-.512.234-.051.039-.094.09-.137.136-.372.397-.806.657-1.373.626-.829-.046-1.537.214-2.163.848-.133-.782-.575-1.248-1.247-1.548-.352-.156-.708-.311-.955-.65-.172-.241-.219-.51-.305-.774-.055-.16-.11-.323-.293-.35-.2-.031-.278.136-.356.276-.313.572-.434 1.202-.422 1.84.027 1.436.633 2.58 1.838 3.393.137.093.172.187.129.323-.082.28-.18.552-.266.833-.055.179-.137.217-.329.14a5.526 5.526 0 01-1.736-1.18c-.857-.828-1.631-1.742-2.597-2.458a11.365 11.365 0 00-.689-.471c-.985-.957.13-1.743.388-1.836.27-.098.093-.432-.779-.428-.872.004-1.67.295-2.687.684a3.055 3.055 0 01-.465.137 9.597 9.597 0 00-2.883-.102c-1.885.21-3.39 1.102-4.497 2.623C.082 8.606-.231 10.684.152 12.85c.403 2.284 1.569 4.175 3.36 5.653 1.858 1.533 3.997 2.284 6.438 2.14 1.482-.085 3.133-.284 4.994-1.86.47.234.962.327 1.78.397.63.059 1.236-.03 1.705-.128.735-.156.684-.837.419-.961-2.155-1.004-1.682-.595-2.113-.926 1.096-1.296 2.746-2.642 3.392-7.003.05-.347.007-.565 0-.845-.004-.17.035-.237.23-.256a4.173 4.173 0 001.545-.475c1.396-.763 1.96-2.015 2.093-3.517.02-.23-.004-.467-.247-.588zM11.581 18c-2.089-1.642-3.102-2.183-3.52-2.16-.392.024-.321.471-.235.763.09.288.207.486.371.739.114.167.192.416-.113.603-.673.416-1.842-.14-1.897-.167-1.361-.802-2.5-1.86-3.301-3.307-.774-1.393-1.224-2.887-1.298-4.482-.02-.386.093-.522.477-.592a4.696 4.696 0 011.529-.039c2.132.312 3.946 1.265 5.468 2.774.868.86 1.525 1.887 2.202 2.891.72 1.066 1.494 2.082 2.48 2.914.348.292.625.514.891.677-.802.09-2.14.11-3.054-.614zm1-6.44a.306.306 0 01.415-.287.302.302 0 01.2.288.306.306 0 01-.31.307.303.303 0 01-.304-.308zm3.11 1.596c-.2.081-.399.151-.59.16a1.245 1.245 0 01-.798-.254c-.274-.23-.47-.358-.552-.758a1.73 1.73 0 01.016-.588c.07-.327-.008-.537-.239-.727-.187-.156-.426-.199-.688-.199a.559.559 0 01-.254-.078c-.11-.054-.2-.19-.114-.358.028-.054.16-.186.192-.21.356-.202.767-.136 1.146.016.352.144.618.408 1.001.782.391.451.462.576.685.914.176.265.336.537.445.848.067.195-.019.354-.25.452z"}],"fish-audio":[{d:"M23.12 12.13v.62c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.62c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m-1.77.37v1.74c0 .24.2.44.44.44.25 0 .44-.2.44-.44V12.5c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.76.43v1.99q0 .09.03.17.04.08.1.14.07.07.15.1t.17.03c.24 0 .44-.19.44-.44v-1.99c0-.25-.2-.44-.44-.44q-.09 0-.17.03t-.15.1q-.06.06-.1.14-.03.08-.03.17m-1.76.35v1.97c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-1.97c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m-1.77.32v1.65c0 .25.2.45.44.45s.44-.2.44-.45V13.6c0-.25-.2-.45-.44-.45s-.44.2-.44.45m-1.76 1.26v.3q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3v-.3q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3M0 9.38v.19c0 .24.2.44.44.44.25 0 .44-.2.44-.44v-.19c0-.25-.19-.44-.44-.44-.24 0-.44.19-.44.44m1.82.15v.81c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.81q0-.18-.13-.31t-.31-.13-.31.13-.13.31m1.81-.24v3.39q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V9.29q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3m1.83-.35v.22c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-.22q0-.18-.13-.31T5.9 8.5t-.31.13-.13.31m0 2.94v2.34c0 .25.19.44.44.44.24 0 .44-.19.44-.44v-2.34c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44m15.89-3.32V11c0 .25.2.44.44.44.25 0 .44-.19.44-.44V8.56c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.76-.39v3.28q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.17c0-.25-.2-.44-.44-.44q-.09 0-.17.03t-.15.1q-.06.06-.1.14-.03.08-.03.17M17.83 8v3.9c0 .24.19.44.44.44.24 0 .44-.2.44-.44V8c0-.25-.2-.44-.44-.44-.25 0-.44.19-.44.44m-1.77.11v3.96c0 .25.2.44.44.44s.44-.19.44-.44V8.11c0-.25-.2-.44-.44-.44s-.44.19-.44.44m-1.76.27v5.03q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.38c0-.25-.2-.44-.45-.44-.24 0-.44.19-.44.44m-1.8.46v5.75q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3V8.84c0-.25-.2-.44-.45-.44-.24 0-.44.19-.44.44m-1.76.76v5.52c0 .24.2.44.44.44.25 0 .44-.2.44-.44V9.6c0-.24-.19-.44-.44-.44-.24 0-.44.2-.44.44m-1.77 1.01v4.77q.01.17.14.3.13.11.3.12.18-.01.31-.12.13-.13.14-.3v-4.77q-.01-.17-.14-.3-.13-.11-.31-.12-.17.01-.3.12-.13.13-.14.3M23.12 9.6v1.22c0 .24.19.44.44.44.24 0 .44-.2.44-.44V9.6c0-.24-.2-.44-.44-.44-.25 0-.44.2-.44.44M7.21 11.32V16c0 .24.19.44.44.44.24 0 .44-.2.44-.44v-4.68q0-.18-.13-.31t-.31-.13-.31.13-.13.31"}],inception:[{d:"M14.767 1H7.884L1 7.883v6.884h6.884V7.883h6.883V1zM9.234 23h6.882L23 16.116V9.233h-6.884v6.883H9.234V23z"}],klingai:[{d:"M5.493 21.234c-1.112-1.451-1.109-4.263-.081-7.459l-4.557-2.63a1.683 1.683 0 01-.85-1.304 1.505 1.505 0 01.08-.622 13.18 13.18 0 011.037-2.255c3.476-6.02 10.916-8.23 16.619-4.938.46.266.82.67 1.081 1.184.785 1.545.685 4.096-.234 6.954l4.557 2.631c.339.196.596.492.736.832a1.53 1.53 0 01.034 1.093 13.146 13.146 0 01-1.037 2.255c-3.476 6.02-10.916 8.23-16.619 4.938a2.6 2.6 0 01-.766-.68zm11.096-6.615c-2.073 3.591-5.808 5.316-8.343 3.852-1.267-.731-1.994-2.122-2.145-3.778-.095-1.035.036-2.173.4-3.32.217-.684.517-1.37.902-2.039l.008-.014c2.073-3.59 5.808-5.315 8.343-3.852.633.366 1.13.895 1.49 1.54.986 1.772.922 4.415-.285 6.914-.111.23-.232.457-.362.683l-.008.014z"}],kwaipilot:[{d:"M11.765.03C5.327.03.108 5.25.108 11.686c0 3.514 1.556 6.665 4.015 8.804L9.89 8.665h6.451L9.31 23.083c.807.173 1.63.26 2.455.26 6.438 0 11.657-5.22 11.657-11.658S18.202.028 11.765.028V.03z"}],meta:[{d:"M6.897 4c1.915 0 3.516.932 5.43 3.376l.282-.373c.19-.246.383-.484.58-.71l.313-.35C14.588 4.788 15.792 4 17.225 4c1.273 0 2.469.557 3.491 1.516l.218.213c1.73 1.765 2.917 4.71 3.053 8.026l.011.392.002.25c0 1.501-.28 2.759-.818 3.7l-.14.23-.108.153c-.301.42-.664.758-1.086 1.009l-.265.142-.087.04a3.493 3.493 0 01-.302.118 4.117 4.117 0 01-1.33.208c-.524 0-.996-.067-1.438-.215-.614-.204-1.163-.56-1.726-1.116l-.227-.235c-.753-.812-1.534-1.976-2.493-3.586l-1.43-2.41-.544-.895-1.766 3.13-.343.592C7.597 19.156 6.227 20 4.356 20c-1.21 0-2.205-.42-2.936-1.182l-.168-.184c-.484-.573-.837-1.311-1.043-2.189l-.067-.32a8.69 8.69 0 01-.136-1.288L0 14.468c.002-.745.06-1.49.174-2.23l.1-.573c.298-1.53.828-2.958 1.536-4.157l.209-.34c1.177-1.83 2.789-3.053 4.615-3.16L6.897 4zm-.033 2.615l-.201.01c-.83.083-1.606.673-2.252 1.577l-.138.199-.01.018c-.67 1.017-1.185 2.378-1.456 3.845l-.004.022a12.591 12.591 0 00-.207 2.254l.002.188c.004.18.017.36.04.54l.043.291c.092.503.257.908.486 1.208l.117.137c.303.323.698.492 1.17.492 1.1 0 1.796-.676 3.696-3.641l2.175-3.4.454-.701-.139-.198C9.11 7.3 8.084 6.616 6.864 6.616zm10.196-.552l-.176.007c-.635.048-1.223.359-1.82.933l-.196.198c-.439.462-.887 1.064-1.367 1.807l.266.398c.18.274.362.56.55.858l.293.475 1.396 2.335.695 1.114c.583.926 1.03 1.6 1.408 2.082l.213.262c.282.326.529.54.777.673l.102.05c.227.1.457.138.718.138.176.002.35-.023.518-.073.338-.104.61-.32.813-.637l.095-.163.077-.162c.194-.459.29-1.06.29-1.785l-.006-.449c-.08-2.871-.938-5.372-2.2-6.798l-.176-.189c-.67-.683-1.444-1.074-2.27-1.074z"}],minimax:[{d:"M16.278 2c1.156 0 2.093.927 2.093 2.07v12.501a.74.74 0 00.744.709.74.74 0 00.743-.709V9.099a2.06 2.06 0 012.071-2.049A2.06 2.06 0 0124 9.1v6.561a.649.649 0 01-.652.645.649.649 0 01-.653-.645V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v7.472a2.037 2.037 0 01-2.048 2.026 2.037 2.037 0 01-2.048-2.026v-12.5a.785.785 0 00-.788-.753.785.785 0 00-.789.752l-.001 15.904A2.037 2.037 0 0113.441 22a2.037 2.037 0 01-2.048-2.026V18.04c0-.356.292-.645.652-.645.36 0 .652.289.652.645v1.934c0 .263.142.506.372.638.23.131.514.131.744 0a.734.734 0 00.372-.638V4.07c0-1.143.937-2.07 2.093-2.07zm-5.674 0c1.156 0 2.093.927 2.093 2.07v11.523a.648.648 0 01-.652.645.648.648 0 01-.652-.645V4.07a.785.785 0 00-.789-.78.785.785 0 00-.789.78v14.013a2.06 2.06 0 01-2.07 2.048 2.06 2.06 0 01-2.071-2.048V9.1a.762.762 0 00-.766-.758.762.762 0 00-.766.758v3.8a2.06 2.06 0 01-2.071 2.049A2.06 2.06 0 010 12.9v-1.378c0-.357.292-.646.652-.646.36 0 .653.29.653.646V12.9c0 .418.343.757.766.757s.766-.339.766-.757V9.099a2.06 2.06 0 012.07-2.048 2.06 2.06 0 012.071 2.048v8.984c0 .419.343.758.767.758.423 0 .766-.339.766-.758V4.07c0-1.143.937-2.07 2.093-2.07z"}],mistral:[{d:"M3.428 3.4h3.429v3.428h3.429v3.429h-.002 3.431V6.828h3.427V3.4h3.43v13.714H24v3.429H13.714v-3.428h-3.428v-3.429h-3.43v3.428h3.43v3.429H0v-3.429h3.428V3.4zm10.286 13.715h3.428v-3.429h-3.427v3.429z"}],moonshotai:[{d:"M1.052 16.916l9.539 2.552a21.007 21.007 0 00.06 2.033l5.956 1.593a11.997 11.997 0 01-5.586.865l-.18-.016-.044-.004-.084-.009-.094-.01a11.605 11.605 0 01-.157-.02l-.107-.014-.11-.016a11.962 11.962 0 01-.32-.051l-.042-.008-.075-.013-.107-.02-.07-.015-.093-.019-.075-.016-.095-.02-.097-.023-.094-.022-.068-.017-.088-.022-.09-.024-.095-.025-.082-.023-.109-.03-.062-.02-.084-.025-.093-.028-.105-.034-.058-.019-.08-.026-.09-.031-.066-.024a6.293 6.293 0 01-.044-.015l-.068-.025-.101-.037-.057-.022-.08-.03-.087-.035-.088-.035-.079-.032-.095-.04-.063-.028-.063-.027a5.655 5.655 0 01-.041-.018l-.066-.03-.103-.047-.052-.024-.096-.046-.062-.03-.084-.04-.086-.044-.093-.047-.052-.027-.103-.055-.057-.03-.058-.032a6.49 6.49 0 01-.046-.026l-.094-.053-.06-.034-.051-.03-.072-.041-.082-.05-.093-.056-.052-.032-.084-.053-.061-.039-.079-.05-.07-.047-.053-.035a7.785 7.785 0 01-.054-.036l-.044-.03-.044-.03a6.066 6.066 0 01-.04-.028l-.057-.04-.076-.054-.069-.05-.074-.054-.056-.042-.076-.057-.076-.059-.086-.067-.045-.035-.064-.052-.074-.06-.089-.073-.046-.039-.046-.039a7.516 7.516 0 01-.043-.037l-.045-.04-.061-.053-.07-.062-.068-.06-.062-.058-.067-.062-.053-.05-.088-.084a13.28 13.28 0 01-.099-.097l-.029-.028-.041-.042-.069-.07-.05-.051-.05-.053a6.457 6.457 0 01-.168-.179l-.08-.088-.062-.07-.071-.08-.042-.049-.053-.062-.058-.068-.046-.056a7.175 7.175 0 01-.027-.033l-.045-.055-.066-.082-.041-.052-.05-.064-.02-.025a11.99 11.99 0 01-1.44-2.402zm-1.02-5.794l11.353 3.037a20.468 20.468 0 00-.469 2.011l10.817 2.894a12.076 12.076 0 01-1.845 2.005L.657 15.923l-.016-.046-.035-.104a11.965 11.965 0 01-.05-.153l-.007-.023a11.896 11.896 0 01-.207-.741l-.03-.126-.018-.08-.021-.097-.018-.081-.018-.09-.017-.084-.018-.094c-.026-.141-.05-.283-.071-.426l-.017-.118-.011-.083-.013-.102a12.01 12.01 0 01-.019-.161l-.005-.047a12.12 12.12 0 01-.034-2.145zm1.593-5.15l11.948 3.196c-.368.605-.705 1.231-1.01 1.875l11.295 3.022c-.142.82-.368 1.612-.668 2.365l-11.55-3.09L.124 10.26l.015-.1.008-.049.01-.067.015-.087.018-.098c.026-.148.056-.295.088-.442l.028-.124.02-.085.024-.097c.022-.09.045-.18.07-.268l.028-.102.023-.083.03-.1.025-.082.03-.096.026-.082.031-.095a11.896 11.896 0 011.01-2.232zm4.442-4.4L17.352 4.59a20.77 20.77 0 00-1.688 1.721l7.823 2.093c.267.852.442 1.744.513 2.665L2.106 5.213l.045-.065.027-.04.04-.055.046-.065.055-.076.054-.072.064-.086.05-.065.057-.073.055-.07.06-.074.055-.069.065-.077.054-.066.066-.077.053-.06.072-.082.053-.06.067-.074.054-.058.073-.078.058-.06.063-.067.168-.17.1-.098.059-.056.076-.071a12.084 12.084 0 012.272-1.677zM12.017 0h.097l.082.001.069.001.054.002.068.002.046.001.076.003.047.002.06.003.054.002.087.005.105.007.144.011.088.007.044.004.077.008.082.008.047.005.102.012.05.006.108.014.081.01.042.006.065.01.207.032.07.012.065.011.14.026.092.018.11.022.046.01.075.016.041.01L14.7.3l.042.01.065.015.049.012.071.017.096.024.112.03.113.03.113.032.05.015.07.02.078.024.073.023.05.016.05.016.076.025.099.033.102.036.048.017.064.023.093.034.11.041.116.045.1.04.047.02.06.024.041.018.063.026.04.018.057.025.11.048.1.046.074.035.075.036.06.028.092.046.091.045.102.052.053.028.049.026.046.024.06.033.041.022.052.029.088.05.106.06.087.051.057.034.053.032.096.059.088.055.098.062.036.024.064.041.084.056.04.027.062.042.062.043.023.017c.054.037.108.075.161.114l.083.06.065.048.056.043.086.065.082.064.04.03.05.041.086.069.079.065.085.071c.712.6 1.353 1.283 1.909 2.031L7.222.994l.062-.027.065-.028.081-.034.086-.035c.113-.045.227-.09.341-.131l.096-.035.093-.033.084-.03.096-.031c.087-.03.176-.058.264-.085l.091-.027.086-.025.102-.03.085-.023.1-.026L9.04.37l.09-.023.091-.022.095-.022.09-.02.098-.021.091-.02.095-.018.092-.018.1-.018.091-.016.098-.017.092-.014.097-.015.092-.013.102-.013.091-.012.105-.012.09-.01.105-.01c.093-.01.186-.018.28-.024l.106-.008.09-.005.11-.006.093-.004.1-.004.097-.002.099-.002.197-.002z"}],morph:[{d:"M7.941 2c.23 0 .452.073.638.21.186.136.325.328.397.55l.593 1.814c.073.221.212.413.397.55.186.136.409.21.638.21h2.791c.23 0 .452-.074.638-.21a1.11 1.11 0 00.397-.55l.594-1.815a1.11 1.11 0 01.397-.55c.185-.136.408-.209.637-.209h1.7c.23 0 .453.073.639.21.185.136.324.328.397.55l.652 1.994c.118.361.41.635.77.728l2.957.752c.236.06.446.199.596.394.15.195.23.436.231.684v9.376c0 .248-.081.488-.231.684a1.09 1.09 0 01-.595.394l-2.957.752a1.086 1.086 0 00-.477.263 1.114 1.114 0 00-.293.465l-.653 1.994a1.11 1.11 0 01-.396.55c-.186.136-.41.21-.638.21h-1.702c-.229 0-.452-.073-.637-.21a1.11 1.11 0 01-.397-.55l-.364-1.11a1.131 1.131 0 01.15-1.002 1.074 1.074 0 01.885-.462h2.85c.29 0 .567-.116.772-.325.204-.208.32-.49.32-.785V6.444c0-.294-.116-.577-.32-.785a1.08 1.08 0 00-.771-.326h-3.273c-.29 0-.567.117-.772.326-.204.208-.32.49-.32.785v7.778c0 .295-.114.578-.319.786a1.08 1.08 0 01-.771.325h-2.182a1.08 1.08 0 01-.771-.325 1.122 1.122 0 01-.32-.786V6.444c0-.294-.115-.577-.32-.785a1.081 1.081 0 00-.77-.326H5.454c-.29 0-.567.117-.772.326-.204.208-.32.49-.32.785v11.112c0 .294.116.577.32.785.205.209.482.326.772.326h2.85a1.075 1.075 0 01.885.461 1.122 1.122 0 01.15 1.001l-.364 1.112a1.11 1.11 0 01-.397.55c-.185.136-.408.209-.637.209H6.24c-.229 0-.452-.073-.638-.21a1.11 1.11 0 01-.397-.55l-.652-1.994a1.114 1.114 0 00-.294-.465 1.086 1.086 0 00-.477-.263l-2.956-.752a1.09 1.09 0 01-.595-.394A1.124 1.124 0 010 16.688V7.312c0-.248.081-.489.231-.684.15-.195.36-.334.595-.394l2.957-.753c.178-.045.342-.136.477-.263.134-.127.235-.287.293-.464l.653-1.995a1.11 1.11 0 01.397-.55C5.788 2.075 6.01 2 6.24 2h1.701z"}],nvidia:[{d:"M10.212 8.976V7.62c.127-.01.256-.017.388-.021 3.596-.117 5.957 3.184 5.957 3.184s-2.548 3.647-5.282 3.647a3.227 3.227 0 01-1.063-.175v-4.109c1.4.174 1.681.812 2.523 2.258l1.873-1.627a4.905 4.905 0 00-3.67-1.846 6.594 6.594 0 00-.729.044m0-4.476v2.025c.13-.01.259-.019.388-.024 5.002-.174 8.261 4.226 8.261 4.226s-3.743 4.69-7.643 4.69c-.338 0-.675-.031-1.007-.092v1.25c.278.038.558.057.838.057 3.629 0 6.253-1.91 8.794-4.169.421.347 2.146 1.193 2.501 1.564-2.416 2.083-8.048 3.763-11.24 3.763-.308 0-.603-.02-.894-.048V19.5H24v-15H10.21zm0 9.756v1.068c-3.356-.616-4.287-4.21-4.287-4.21a7.173 7.173 0 014.287-2.138v1.172h-.005a3.182 3.182 0 00-2.502 1.178s.615 2.276 2.507 2.931m-5.961-3.3c1.436-1.935 3.604-3.148 5.961-3.336V6.523C5.81 6.887 2 10.723 2 10.723s2.158 6.427 8.21 7.015v-1.166C5.77 16 4.25 10.958 4.25 10.958h-.002z"}],perplexity:[{d:"M19.785 0v7.272H22.5V17.62h-2.935V24l-7.037-6.194v6.145h-1.091v-6.152L4.392 24v-6.465H1.5V7.188h2.884V0l7.053 6.494V.19h1.09v6.49L19.786 0zm-7.257 9.044v7.319l5.946 5.234V14.44l-5.946-5.397zm-1.099-.08l-5.946 5.398v7.235l5.946-5.234V8.965zm8.136 7.58h1.844V8.349H13.46l6.105 5.54v2.655zm-8.982-8.28H2.59v8.195h1.8v-2.576l6.192-5.62zM5.475 2.476v4.71h5.115l-5.115-4.71zm13.219 0l-5.115 4.71h5.115v-4.71z"}],recraft:[{d:"M19.667 8.275c0-4.57-4.15-8.275-9.27-8.275-1.774 0-3.213 3.705-3.213 8.275 0 1.143.09 2.233.253 3.224H4.29L1 23h9.4v-6.447c5.117 0 9.266-3.707 9.266-8.275l.001-.002zm-9.27-6.76c.93 0 1.682 3.028 1.682 6.76 0 3.733-.752 6.76-1.681 6.76-.93 0-1.681-3.027-1.681-6.76 0-3.732.752-6.76 1.68-6.76z"},{d:"M19.848 16.552h-9.44L14.028 23h9.438l-3.618-6.448z"}],stepfun:[{d:"M12 0C5.372 0 0 5.372 0 12s5.372 12 12 12 12-5.372 12-12S18.628 0 12 0zM8.762 19.614H4.376v-4.386h4.386v4.386zm5.423 0H9.798v-4.386h4.387v4.386zm0-5.42H9.798V9.81h4.387v4.386zm0-5.418H9.798V4.39h4.387v4.386zm5.422-.004h-4.386V4.386h4.386v4.386z"}],tencent:[{d:"M12 0c6.627 0 12 5.373 12 12s-5.373 12-12 12S0 18.627 0 12 5.373 0 12 0zm1.652 1.123l-.01-.001c.533.097 1.023.233 1.41.404 6.084 2.683 7.396 9.214 1.601 14.338a3.781 3.781 0 01-5.337-.328 3.654 3.654 0 01-.884-3.044c-1.934.6-3.295 2.305-3.524 4.45-.204 1.912.324 4.044 2.056 5.634l.245.067C10.1 22.876 11.036 23 12 23c6.075 0 11-4.925 11-11 0-5.513-4.056-10.08-9.348-10.877zM2.748 6.21c-.178.269-.348.536-.51.803l-.235.394.078-.167A10.957 10.957 0 001 12c0 4.919 3.228 9.083 7.682 10.49l.214.065C3.523 18.528 2.84 14.149 6.47 8.68A2.234 2.234 0 102.748 6.21zm10.157-5.172c4.408 1.33 3.61 5.41 2.447 6.924-.86 1.117-2.922 1.46-3.708 2.238-.666.657-1.077 1.462-1.212 2.291A5.303 5.303 0 0112 12.258a5.672 5.672 0 001.404-11.169 10.51 10.51 0 00-.5-.052z"}],voyage:[{d:"M5.407 0v.066a.974.974 0 00-.048.245c-.011.11-.016.208-.016.295 0 .339.043.715.128 1.13.097.405.274.912.531 1.524l7.125 16.366L20.011 3.39c.161-.404.333-.846.515-1.327.182-.48.273-.966.273-1.458a1.406 1.406 0 00-.096-.54V0H24v.066c-.204.207-.45.578-.74 1.114-.29.535-.606 1.195-.949 1.982L13.095 24h-1.287L3.075 3.965c-.204-.47-.418-.923-.644-1.36-.214-.437-.418-.83-.61-1.18-.194-.36-.365-.66-.515-.9A5.666 5.666 0 001 .064V0h4.407z"}],xiaomi:[{d:"M12 0C8.016 0 4.756.255 2.493 2.516.23 4.776 0 8.033 0 12.012c0 3.98.23 7.235 2.494 9.497C4.757 23.77 8.017 24 12 24c3.983 0 7.243-.23 9.506-2.491C23.77 19.247 24 15.99 24 12.012c0-3.984-.233-7.243-2.502-9.504C19.234.252 15.978 0 12 0zM4.906 7.405h5.624c1.47 0 3.007.068 3.764.827.746.746.827 2.233.83 3.676v4.54a.15.15 0 0 1-.152.147h-1.947a.15.15 0 0 1-.152-.148V11.83c-.002-.806-.048-1.634-.464-2.051-.358-.36-1.026-.441-1.72-.458H7.158a.15.15 0 0 0-.151.147v6.98a.15.15 0 0 1-.152.148H4.906a.15.15 0 0 1-.15-.148V7.554a.15.15 0 0 1 .15-.149zm12.131 0h1.949a.15.15 0 0 1 .15.15v8.892a.15.15 0 0 1-.15.148h-1.949a.15.15 0 0 1-.151-.148V7.554a.15.15 0 0 1 .151-.149zM8.92 10.948h2.046c.083 0 .15.066.15.147v5.352a.15.15 0 0 1-.15.148H8.92a.15.15 0 0 1-.152-.148v-5.352a.15.15 0 0 1 .152-.147Z"}],zai:[{d:"M12.105 2L9.927 4.953H.653L2.83 2h9.276zM23.254 19.048L21.078 22h-9.242l2.174-2.952h9.244zM24 2L9.264 22H0L14.736 2H24z"}]};function z({owner:e,className:a}){let i=_[e];if(i)return(0,t.jsx)(j.ProviderIcon,{provider:i,className:a});let s=L[e];return s?(0,t.jsx)("svg",{viewBox:"0 0 24 24",fill:"currentColor",fillRule:"evenodd",className:a,"aria-hidden":"true",children:s.map(e=>(0,t.jsx)("path",{d:e.d,opacity:e.opacity},e.d))}):null}function N({models:e,kind:a,value:i,loading:s,onPick:o}){let[l,c]=(0,n.useState)(!1),[d,m]=(0,n.useState)(""),[p,g]=(0,n.useState)("cheap"),[v,f]=(0,n.useState)(i),b=e.filter(e=>e.type===(a??u.GATEWAY_TEXT)),j=a?b:b.filter(e=>e.tags.includes(u.GATEWAY_TOOL_USE)),_=d.trim().toLowerCase(),L=(_?j.filter(e=>`${e.id} ${e.label}`.toLowerCase().includes(_)):j).slice().sort(O[p].compare);return(0,t.jsxs)(k.Dialog,{open:l,onOpenChange:e=>{c(e),e?f(i):m("")},children:[(0,t.jsxs)(k.DialogTrigger,{render:(0,t.jsx)("button",{type:"button","aria-label":"Model",className:(0,M.cn)(h.inputClassName,"relative flex items-center pr-8 text-left font-mono text-sm")}),children:[(0,t.jsx)("span",{className:(0,M.cn)("min-w-0 flex-1 truncate",!i&&"font-sans text-muted-foreground"),children:i||"Pick a model"}),(0,t.jsx)("span",{className:"absolute inset-y-0 right-0 flex w-8 items-center justify-center text-muted-foreground",children:s&&0===j.length?(0,t.jsx)(y.LoaderCircle,{className:"size-3.5 animate-spin"}):(0,t.jsx)(w.Search,{className:"size-3.5"})})]}),(0,t.jsx)(k.DialogContent,{className:"h-[min(40rem,calc(100vh-3rem))] gap-0 overflow-hidden p-0 sm:max-w-2xl",children:(0,t.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[(0,t.jsxs)("div",{className:"shrink-0 space-y-1 px-6 pt-5 pb-4",children:[(0,t.jsxs)(k.DialogTitle,{className:"flex items-center gap-2.5 text-xl font-semibold",children:[(0,t.jsx)(x.VercelIcon,{className:"size-3.5"}),a?A[a]:"Text"," models"]}),(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:_?`${L.length} matching “${d.trim()}”`:a?`${j.length} on the gateway`:`${j.length} of ${b.length} on the gateway can call tools`})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-3 border-t border-border/60 px-6 py-3",children:[(0,t.jsxs)("div",{className:"relative min-w-0 flex-1",children:[(0,t.jsx)(w.Search,{className:"pointer-events-none absolute top-1/2 left-2.5 size-3.5 -translate-y-1/2 text-muted-foreground"}),(0,t.jsx)(h.Input,{autoFocus:!0,"aria-label":"Search models",placeholder:"name, id or provider",spellCheck:!1,value:d,onChange:e=>m(e.target.value),className:"h-8 pl-8 font-mono text-xs"})]}),(0,t.jsx)(S.Segmented,{"aria-label":"Sort",options:V,value:p,onChange:g})]}),(0,t.jsxs)("div",{className:"flex shrink-0 items-center gap-4 px-6 pb-1.5 font-mono text-[10px] tracking-wide text-muted-foreground/60",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1",children:"model"}),(0,t.jsx)("span",{className:"w-28 text-right",children:"per 1M in / out"})]}),(0,t.jsxs)("div",{className:"min-h-0 flex-1 overflow-y-auto border-t border-border/60",children:[L.map(e=>(0,t.jsx)(C,{model:e,picked:e.id===v,onPick:()=>f(e.id)},e.id)),0===L.length&&(0,t.jsxs)("div",{className:"flex flex-col items-start gap-2.5 p-10",children:[(0,t.jsx)("p",{className:"font-mono text-xs text-muted-foreground",children:_?`Nothing matches “${d.trim()}”.`:"Nothing on the shelf — search for an id."}),_&&(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(r.Button,{size:"sm",onClick:()=>f(d.trim()),children:["Use “",d.trim(),"” as the id"]}),(0,t.jsx)(r.Button,{variant:"outline",size:"sm",onClick:()=>m(""),children:"Clear search"})]})]})]}),(0,t.jsxs)("div",{className:"flex h-14 shrink-0 items-center gap-3 border-t border-border/60 px-6",children:[(0,t.jsx)("span",{className:"min-w-0 flex-1 truncate font-mono text-xs text-muted-foreground",children:v||"Nothing picked — the field keeps what it has"}),(0,t.jsx)(r.Button,{variant:"outline",onClick:()=>c(!1),children:"Cancel"}),(0,t.jsx)(r.Button,{disabled:!v,onClick:()=>{o(v),c(!1)},children:"Use this model"})]})]})})]})}let A={image:"Image",video:"Video",speech:"Speech",transcription:"Transcription"},O={cheap:{label:"$↑",title:"Cheapest first",compare:(e,t)=>(e.price.in??1/0)-(t.price.in??1/0)},dear:{label:"$↓",title:"Dearest first",compare:(e,t)=>(t.price.in??-1)-(e.price.in??-1)},name:{label:"a–z",title:"By name",compare:(e,t)=>e.label.localeCompare(t.label)}},V=Object.keys(O).map(e=>({value:e,label:O[e].label,title:O[e].title})),E=e=>e>=1?e.toFixed(2):String(Number(e.toFixed(4)));function C({model:e,picked:i,onPick:s}){let{price:n}=e,o=null!==n.in||null!==n.out;return(0,t.jsxs)("button",{type:"button",onClick:s,className:(0,M.cn)("flex w-full items-center gap-4 border-b border-border/60 px-6 py-2.5 text-left outline-none focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",i?"bg-muted/40":"hover:bg-muted/50"),children:[(0,t.jsx)("span",{className:"grid size-[18px] shrink-0 place-items-center",children:(0,t.jsx)(z,{owner:e.owner,className:"size-[15px]"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[(0,t.jsx)("span",{className:(0,M.cn)("truncate text-[13px]",i&&"font-medium"),children:e.label}),i&&(0,t.jsx)(a.Check,{className:"size-3.5 shrink-0"}),e.retiring&&(0,t.jsx)("span",{className:"shrink-0 font-mono text-[10px] text-muted-foreground",children:"retiring"})]}),(0,t.jsx)("span",{className:"block truncate font-mono text-[11px] text-muted-foreground",children:e.id})]}),(0,t.jsxs)("span",{className:"flex w-28 shrink-0 flex-col items-end",children:[(0,t.jsx)("span",{className:(0,M.cn)("font-mono text-xs",o||n.free?"text-foreground":"text-muted-foreground"),children:n.free?"free":null===n.in&&null===n.out?n.note??"—":`${null===n.in?"—":E(n.in)} / ${null===n.out?"—":E(n.out)}`}),o&&n.note&&(0,t.jsx)("span",{className:"font-mono text-[9px] text-muted-foreground/70",children:n.note})]})]})}function T({provider:e,onSaved:a}){let[i,s]=(0,n.useState)(""),[l,c]=(0,m.useServerAction)(d.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{(0,p.revalidate)(o.queryKey.llmModel),(0,p.revalidate)(o.queryKey.config),a()}});return e.signIn?(0,t.jsxs)("div",{className:"flex items-center justify-between gap-2",children:[(0,t.jsx)("p",{className:"px-1 font-mono text-[11px] text-muted-foreground",children:"Runs on your plan once you sign in"}),(0,t.jsx)(b,{variant:"outline"})]}):(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsx)(h.Input,{value:i,onChange:e=>s(e.target.value),placeholder:e.apiKeyName,spellCheck:!1,type:"password"}),(0,t.jsx)(r.Button,{variant:"outline",loading:c,disabled:i.trim().length<8,onClick:()=>l(e.apiKeyName,i),children:"Save key"})]})}e.s(["ModelPicker",0,function({provider:e,model:n,kind:h,unset:d,onChange:m}){let{data:g=[],mutate:v}=(0,p.useServerRoute)(o.queryKey.llmModel),f=h?g.filter(e=>(0,u.canMakeKind)(e.id,h)):g,b=f.find(t=>t.id===e),y="vercel-ai-gateway"===e,w=(0,p.useServerRoute)(y&&o.queryKey.modelCatalog),x=(h&&b?u.MEDIA_MODEL_PROVIDERS[b.id]?.models[h]??[]:b?.suggestModels??[]).map(e=>({value:e.id,label:e.label,badge:e.tier,hint:e.id}));return(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsxs)("div",{className:"flex gap-2",children:[(0,t.jsxs)(c.DropdownMenu,{children:[(0,t.jsxs)(c.DropdownMenuTrigger,{render:(0,t.jsx)(r.Button,{variant:"outline",className:"shrink-0"}),children:[b?(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(j.ProviderIcon,{provider:b.id,className:"size-4"}),b.label]}):(0,t.jsx)("span",{className:"text-muted-foreground",children:d??(h?"Not picked":"App default")}),(0,t.jsx)(i.ChevronDown,{className:"size-3.5 text-muted-foreground"})]}),(0,t.jsx)(c.DropdownMenuContent,{align:"start",children:f.map(i=>(0,t.jsxs)(c.DropdownMenuItem,{onClick:()=>m({provider:i.id,model:""}),children:[(0,t.jsx)(j.ProviderIcon,{provider:i.id,className:"size-4"}),i.label,i.hasKey?i.id===e&&(0,t.jsx)(a.Check,{className:"ml-auto size-3.5"}):(0,t.jsx)(s.KeyRound,{className:"ml-auto size-3 text-muted-foreground"})]},i.id))})]}),y&&b&&!w.error?(0,t.jsx)(N,{models:w.data??[],kind:h,value:n,loading:w.isLoading,onPick:e=>m({provider:b.id,model:e})}):(0,t.jsx)(l.Combobox,{value:n,onChange:e=>b&&m({provider:b.id,model:e}),options:x,disabled:!b?.hasKey,"aria-label":"Model",placeholder:b?"Type a model id":"Pick a provider",empty:w.error?"Could not read the catalog — type an id":"Not on the list — it still runs",className:"flex-1"})]}),b&&!b.hasKey&&(0,t.jsx)(T,{provider:b,onSaved:()=>v()}),y&&w.error&&(0,t.jsx)("p",{className:"px-1 font-mono text-[11px] text-destructive",children:w.error.message})]})}],146538)},213377,e=>{"use strict";e.s(["STUDIO_TOOLS",0,{generate_image:"generate_image",generate_speech:"generate_speech",transcribe:"transcribe",generate_video:"generate_video"},"TOOL_NAMES",0,{memory_recall:"memory_recall",memory_remember:"memory_remember",memory_forget:"memory_forget",memory_conversation:"memory_conversation",bash:"bash",write_file:"write_file",tool_search:"tool_search",tool_call:"tool_call",load_skill:"load_skill",web_search:"web_search",delegate:"delegate",task:"task",ask_bot:"ask_bot",ask_thursday:"ask_thursday",ask_back:"ask_back",answer:"answer",end_call:"end_call"}])},451888,504565,981203,e=>{"use strict";var t=e.i(722219);e.s(["default",0,t],504565);var t=t,a=e.i(41533),i=e.i(265402),s=e.i(245629);let n={name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}};e.s(["COMMON_VALIDATE",0,n],981203);var o=e.i(864723);let r=t.object({color:t.string().regex(/^(#[0-9a-fA-F]{6}|currentColor)$/,"Hex color").optional(),shape:t.enum(o.MARK_SHAPES).optional(),outline:t.boolean().optional()}),l=t.string().max(n.prompt.max),c=t.object({id:t.number(),name:t.string(),serverName:t.string()}),h=t.string().trim().transform(e=>e.replace(/\s+/g," ")).pipe(t.string().min(1,"A name is required").max(n.name.max)),d=t.object({input:t.number(),output:t.number()});t.object({name:t.string(),description:t.string(),systemPrompt:t.string().nullish(),icon:r.nullish(),provider:i.textModelProviderSchema.nullish(),model:t.string().nullish(),compactAt:t.number().nullish(),disabled:t.boolean(),createdAt:s.DateLikeSchema,tools:c.array().default([]),tokens:d,lastJobAt:s.DateLikeSchema.nullish()}),t.object({name:h,description:t.string().trim().min(1,"Say what this bot is for").max(n.description.max),systemPrompt:l.optional(),icon:r.optional(),provider:i.textModelProviderSchema.nullish(),model:t.string().trim().max(80).nullish(),compactAt:t.coerce.number().int().min(8e3,"At least 8k").nullish(),disabled:t.boolean().optional(),toolIds:t.number().int().array().max(10).default([])}),t.object({file:t.string(),path:t.string(),line:t.string(),at:s.DateLikeSchema,bytes:t.number()});let m=a.PAGE_SIZE,p="Continue",u=t.discriminatedUnion("type",[t.object({type:t.literal("text"),text:t.string()}),t.object({type:t.literal("image"),src:t.string()})]),g=t.object({id:t.string(),seq:t.number(),bot:t.string().nullable(),parent:t.string().nullable(),at:s.DateLikeSchema}),v=t.discriminatedUnion("kind",[g.extend({kind:t.literal("user"),text:t.string()}),g.extend({kind:t.literal("text"),text:t.string()}),g.extend({kind:t.literal("note"),text:t.string()}),g.extend({kind:t.literal("stop"),text:t.string()}),g.extend({kind:t.literal("tool"),callId:t.string(),name:t.string(),input:t.string(),note:t.string().nullish(),path:t.string().nullish()}),g.extend({kind:t.literal("tool-result"),callId:t.string(),name:t.string(),results:u.array(),more:t.boolean()}),g.extend({kind:t.literal("ask"),callId:t.string(),to:t.string(),text:t.string()}),g.extend({kind:t.literal("ask-result"),callId:t.string(),text:t.string()}),g.extend({kind:t.literal("waiting"),callId:t.string(),question:t.string(),options:t.string().array()})]),f=t.object({question:t.string(),options:t.string().array(),auto:t.boolean()});t.object({id:t.string(),bot:t.string(),label:t.string(),request:t.string(),status:t.enum(["running","waiting","done","failed"]),outcome:t.string().nullable(),ask:f.nullable(),seen:t.boolean(),tokens:d,contextTokens:t.number(),contextBudget:t.number(),createdAt:s.DateLikeSchema,updatedAt:s.DateLikeSchema,lines:v.array()}),e.s(["DEFAULT_BOT",0,{name:"Jarvis",description:"Anything — this computer, a browser, the web, files, services",systemPrompt:null,icon:{color:"#14B8A6",shape:"squircle"},provider:null,model:null,disabled:!1,compactAt:null},"MAX_PINNED_TOOLS",0,10,"TASK_CONTINUE",0,p,"TASK_HISTORY_PAGE",0,m,"botIconSchema",0,r,"isAppStop",0,e=>{let t=e?.options??[];return 1===t.length&&t[0]===p},"randomBotIcon",0,function(){return{color:(0,o.randomMarkColors)(1)[0],shape:o.MARK_SHAPES[Math.floor(Math.random()*o.MARK_SHAPES.length)]}}],451888)},461569,463625,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("7fbba25fbc238da78607616372d2248ff6f07a1267",t.callServer,void 0,t.findSourceMapURL,"createSeedBotsAction");e.s(["createSeedBotsAction",0,a],461569);var i=e.i(41533),s=e.i(213377),n=e.i(864723);let o=[{name:"Jarvis",description:"Any job — turns it into a plan, hands each part to whoever it belongs to, does the rest, answers with one result",hint:"Plans a job and hands out the parts",icon:{shape:"squircle"},recommended:!0,systemPrompt:"You are Jarvis. A job reaches you as a sentence and leaves as a plan: what it actually needs, in what order, and who does each part. Settle what is still open in one round rather than guessing at it, then send for what the job is made of before you build — a part another bot exists for is theirs, and everything nobody else is for is yours. You hold the whole while they hold pieces: the order the parts run in, the seams where what comes back has to fit together, and the single thing that is handed over at the end. The plan is how the job gets done, not what gets handed back."},{name:"Navigator",description:"The web through a real browser — opens the page itself, signs in, brings back prices, images and links as they stand now",hint:"Opens the page itself and reads what is on it",icon:{shape:"poly"},recommended:!0,systemPrompt:`You are Navigator. Every browser job is yours: load the \`${i.BROWSER_SKILL}\` skill first and work through it. A search result says a page exists; you say what is on it right now — so open it, sign in where it asks you to, and keep going past the first screen until you have the thing itself: exact figures, the links that open them, the images off the page. Nothing you did not see goes in what you hand back, and a page that refused you is a fact with a url on it, not a gap to fill in from memory. Whoever asked should never need to open the site after you.`},{name:"Scribe",description:"Writing that gets read — finds out what it is for, researches it, then picks the form: prose, table, or a page",hint:"Writes what gets read, in the form that fits",icon:{shape:"blob"},recommended:!0,systemPrompt:"You are Scribe. Who reads it and what they do next decides everything else, so learn that first, then research before you claim: every number and name you write traces back to something you actually read. Pick the form by the reading — a `.md` for something read once, a `.csv` for what gets sorted, a page (the `interactive-page` skill) for something used or something whose pictures are the point. When the request does not settle which it is — something read once or something used — ask before you write rather than committing a whole draft to a guess. Cut what the reader would skip, and never spend a paragraph where a table or a picture answers in one glance. One page they finish beats five they abandon."},{name:"Insta",description:"Instagram end to end — settles what the post is, draws it, writes it, and puts it up once approved",hint:"Draws the pictures, writes the caption, posts it",icon:{shape:"poly"},requires:["image"],systemPrompt:`You are Insta. One job takes a post from nothing to live on instagram.com — settle what it is, sign in, draw it, write it, put it up. Load the \`${i.BROWSER_SKILL}\` skill before any browser step.
2
2
 
3
- Settle it in one question. Ask only for what the request leaves open, in a single \`${n.TOOL_NAMES.ask_thursday}\`: the topic, how many pictures, whether to build a cover, and whether they name the music or you pick. A request that already says its topic is not asked for it again. Told to decide yourself: \`${n.TOOL_NAMES.web_search}\` for what is current on that topic, three pictures, a cover, and a recent track from Instagram's own list. Never ask twice for one round.
3
+ Settle it in one question. Ask only for what the request leaves open, in a single \`${s.TOOL_NAMES.ask_thursday}\`: the topic, how many pictures, whether to build a cover, and whether they name the music or you pick. A request that already says its topic is not asked for it again. Told to decide yourself: \`${s.TOOL_NAMES.web_search}\` for what is current on that topic, three pictures, a cover, and a recent track from Instagram's own list. Never ask twice for one round.
4
4
 
5
- Then check the tools are there. \`${n.TOOL_NAMES.tool_search}\` with \`server: "${i.STUDIO_SERVER}"\` and \`tools: ["${n.STUDIO_TOOLS.generate_image}", "${n.STUDIO_TOOLS.generate_video}"]\` — one call returns both schemas, and a name that does not come back means nobody picked that model, so the tool does not exist. Missing what the job needs: \`${n.TOOL_NAMES.ask_thursday}\` saying to pick an image (or video) model in Settings › Models, and stop. Never work around a tool that is not there.
5
+ Then check the tools are there. \`${s.TOOL_NAMES.tool_search}\` with \`server: "${i.STUDIO_SERVER}"\` and \`tools: ["${s.STUDIO_TOOLS.generate_image}", "${s.STUDIO_TOOLS.generate_video}"]\` — one call returns both schemas, and a name that does not come back means nobody picked that model, so the tool does not exist. Missing what the job needs: \`${s.TOOL_NAMES.ask_thursday}\` saying to pick an image (or video) model in Settings › Models, and stop. Never work around a tool that is not there.
6
6
 
7
7
  Sign in once, and into an account made for this rather than their own — the session is kept and every later job posts as whoever it is. Your file is \`bots/Insta/.auth/instagram.json\`, the login page is \`https://www.instagram.com/accounts/login/\`, and the skill carries the rest.
8
8
 
9
9
  Anything covering the screen is closed before you read what is under it. It is in the way, not a sign-in problem.
10
10
 
11
11
  Pictures come from two places. Draw them when the post is an idea or a mood; take the real one off the web when it is about something that happened, since a drawn picture passed off as the event is a lie. To take one: open the page and \`curl -o\` its image url into your folder. What is on someone's page is theirs — name the source, or draw one instead.
12
- Draw. \`${n.TOOL_NAMES.tool_call}\` with \`server: "${i.STUDIO_SERVER}"\`, the tool, its \`args\`, and a \`description\` line saying what the call is for. \`aspectRatio\` is \`"1:1"\` for feed, \`"3:4"\` portrait, \`"9:16"\` story or reel. Put the whole picture in \`prompt\` — subject, framing, light, palette — the image model sees nothing of this job. Issue every picture in one step and repeat the same look in each prompt, or the slides come back in different hands. Keep what you use under \`artifacts/\`.
12
+ Draw. \`${s.TOOL_NAMES.tool_call}\` with \`server: "${i.STUDIO_SERVER}"\`, the tool, its \`args\`, and a \`description\` line saying what the call is for. \`aspectRatio\` is \`"1:1"\` for feed, \`"3:4"\` portrait, \`"9:16"\` story or reel. Put the whole picture in \`prompt\` — subject, framing, light, palette — the image model sees nothing of this job. Issue every picture in one step and repeat the same look in each prompt, or the slides come back in different hands. Keep what you use under \`artifacts/\`.
13
13
 
14
14
  The cover is built, not drawn: image models mangle text. Write one HTML file over the first picture — a transparent-to-black gradient darkening one end, and a single bold headline over it, placed where the picture is empty rather than over its subject: bottom-left, bottom, or bottom-right. Then \`resize 1080 1350\`, serve it and open it the way the skill does, \`screenshot\`. That is slide one.
15
15
 
@@ -17,13 +17,13 @@ Write the caption to be read: what this is, in the user's voice, no invented fac
17
17
 
18
18
  The composer is the one part not to memorise. Its refs change on every snapshot, so take a fresh one at each step and read what is actually there: Create, the files, crop and edit, music, caption — and stop on the last screen, before Share. Music: search the name they gave, or take a current one that fits the topic. No music step on this format means there is none.
19
19
 
20
- Ask before it goes up. \`${n.TOOL_NAMES.ask_thursday}\` with the caption as written, the picture paths and the track you picked; options \`Post it\` / \`Change something\`. Share only on the first. Nothing is published on your own judgement, whatever the request said.
20
+ Ask before it goes up. \`${s.TOOL_NAMES.ask_thursday}\` with the caption as written, the picture paths and the track you picked; options \`Post it\` / \`Change something\`. Share only on the first. Nothing is published on your own judgement, whatever the request said.
21
21
 
22
22
  Answer with the post's url once it is up, and the file paths either way.`},{name:"Voyage",description:"Plans a trip — the days in walking order, a map for each one, and a page with the pictures",hint:"Plans the days, maps them, builds the page",icon:{shape:"blob"},systemPrompt:`You are Voyage. A trip leaves you as a plan someone can walk: what to see, in what order, on which day, with the map and the pictures. Load the \`${i.BROWSER_SKILL}\` skill before any browser step.
23
23
 
24
- Settle it in one question. Ask only what the request leaves open, in a single \`${n.TOOL_NAMES.ask_thursday}\`: where, which dates, how many nights, who is going, roughly what budget, and what they care about — food, museums, walking, quiet. Never ask twice for one round.
24
+ Settle it in one question. Ask only what the request leaves open, in a single \`${s.TOOL_NAMES.ask_thursday}\`: where, which dates, how many nights, who is going, roughly what budget, and what they care about — food, museums, walking, quiet. Never ask twice for one round.
25
25
 
26
- Research in one step, not six. Send every \`${n.TOOL_NAMES.web_search}\` at once: the weather those dates usually bring, entry rules, currency and what things cost, plugs, how transit works there, and what is on or shut while they are there. A festival or a Monday closure changes the plan, so it is research, not colour.
26
+ Research in one step, not six. Send every \`${s.TOOL_NAMES.web_search}\` at once: the weather those dates usually bring, entry rules, currency and what things cost, plugs, how transit works there, and what is on or shut while they are there. A festival or a Monday closure changes the plan, so it is research, not colour.
27
27
 
28
28
  Then open the pages for the places you shortlist — hours, closing days and prices are what search results get wrong. While you are on a page, take its pictures with \`--raw eval "JSON.stringify([...document.images].filter(i => i.naturalWidth > 200).map(i => i.currentSrc))"\` and keep whose page they came from.
29
29
 
@@ -37,4 +37,4 @@ Photos in one step too: every \`curl -o\` in a single \`bash\` call, into the tr
37
37
 
38
38
  The page is the deliverable: the days in order, the map under each, the photos with whose page they came from, and the facts that decide what to pack. If someone on your roster writes pages, it is theirs and they get steps of their own — send the days as written, the paths of every shot and photo, and each fact with its source, because they cannot see your thread. If nobody does, write it yourself with the \`interactive-page\` skill.
39
39
 
40
- Answer with the folder under \`artifacts/\` and what is in it: the page, a map per day, the pictures.`}],r=o.filter(e=>e.recommended);e.s(["BOT_SEEDS",0,o,"RECOMMENDED_SEEDS",0,r,"rollSeedColors",0,()=>(0,s.randomMarkColors)(o.length)],463625)},992112,e=>{"use strict";var t=e.i(265402);let a=[...new Set(Object.values(t.SPEACH_MODEL_PROVIDERS).map(e=>e.apiKeyName))],i={image:"IMAGE_MODEL",video:"VIDEO_MODEL",speech:"SPEECH_MODEL",transcription:"TRANSCRIPTION_MODEL"},n={image:{label:"Image model",hint:"What bots draw with"},video:{label:"Video model",hint:"What bots film with — minutes a clip"},speech:{label:"Speech model",hint:"What reads text aloud into a file"},transcription:{label:"Transcription model",hint:"What turns a recording into text"}},s="EXA_API_KEY",o={key:"DEFAULT_MODEL",label:"Default model",hint:"What a bot thinks with until it picks its own",text:!0,choices:t.TEXT_MODEL_PROVIDER_LIST.flatMap(e=>e.suggestModels.map(t=>({value:`${e.id}/${t.id}`,label:`${e.label} \xb7 ${t.label}`,needs:e.apiKeyName})))},r=e=>a.includes(e.apiKeyName),l=e=>({key:e.apiKeyName,label:e.label,provider:e.id,signIn:e.signIn}),c=[{id:"voice",title:"voice",hint:"calls run on one of these",section:"keys",require:"any",note:"one is required",entries:t.TEXT_MODEL_PROVIDER_LIST.filter(r).map(l)},{id:"text",title:"models",hint:"what bots think with — add any, or none",section:"keys",require:"none",entries:t.TEXT_MODEL_PROVIDER_LIST.filter(e=>!r(e)).map(l)},{id:"search",title:"search",hint:"how bots look things up — one key, or their own model's",section:"keys",require:"none",entries:[{key:s,label:"Exa",hint:"web search in one call — dashboard.exa.ai"}]},{id:"bots",title:"Bots",hint:"what a bot runs on when it has not picked its own",section:"models",require:"none",entries:[o]},{id:"studio",title:"Studio",hint:"what a bot draws, films and speaks with — off until you pick one",section:"models",require:"none",entries:Object.keys(i).map(e=>({key:i[e],...n[e],kind:e,choices:t.MEDIA_MODEL_PROVIDER_LIST.flatMap(t=>t.models[e].map(e=>({value:`${t.id}/${e.id}`,label:`${t.label} \xb7 ${e.label}`,needs:t.apiKeyName})))}))}];Object.fromEntries(c.flatMap(e=>e.entries).map(e=>[e.key,e])),c.flatMap(e=>e.entries.map(e=>e.key)),Object.fromEntries(c.flatMap(e=>e.entries).filter(e=>e.choices?.length).map(e=>[e.key,e.choices])),e.s(["CONFIG_GROUPS",0,c,"EXA_API_KEY",0,s,"MEDIA_MODEL_KEYS",0,i,"groupSatisfied",0,function(e,t){return"none"===e.require||(e.requireKeys??e.entries.map(e=>e.key)).some(t)},"isConfigSet",0,function(e,t){return e?.some(e=>e.key===t&&e.set)??!1},"mediaModelWords",0,e=>`${"image"===e?"an":"a"} ${e} model`])},344974,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("7f37945ceb686a8a33e09428221c3e9cd25fdcbbe6",t.callServer,void 0,t.findSourceMapURL,"setConfigAction");e.s(["setConfigAction",0,a])},758925,e=>{"use strict";var t=e.i(456420);let a={name:"key-round",size:24,node:[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]};a.node;let i=(0,t.default)(a);e.s(["KeyRound",0,i],758925)},779266,989409,e=>{"use strict";var t=e.i(456420);let a={name:"rotate-ccw-clock",size:24,node:[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],aliases:["history"]};a.node;let i=(0,t.default)(a);e.s(["History",0,i],779266);let n=(0,e.i(768834).create)()(e=>({open:!1,section:"thursday",show:t=>e(e=>({open:!0,section:t??e.section})),hide:()=>e({open:!1}),pick:t=>e({section:t})}));e.s(["openSettings",0,e=>n.getState().show(e),"useSettingsStore",0,n],989409)},747925,e=>{"use strict";var t=e.i(456420);let a={name:"wrench",size:24,node:[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]};a.node;let i=(0,t.default)(a);e.s(["Wrench",0,i],747925)},768834,e=>{"use strict";var t=e.i(271645);let a=e=>{let t,a=new Set,i=(e,i)=>{let n="function"==typeof e?e(t):e;if(!Object.is(n,t)){let e=t;t=(null!=i?i:"object"!=typeof n||null===n)?n:Object.assign({},t,n),a.forEach(a=>a(t,e))}},n=()=>t,s={setState:i,getState:n,getInitialState:()=>o,subscribe:e=>(a.add(e),()=>a.delete(e))},o=t=e(i,n,s);return s},i=e=>{let i=e?a(e):a,n=e=>(function(e,a=e=>e){let i=t.default.useSyncExternalStore(e.subscribe,t.default.useCallback(()=>a(e.getState()),[e,a]),t.default.useCallback(()=>a(e.getInitialState()),[e,a]));return t.default.useDebugValue(i),i})(i,e);return Object.assign(n,i),n};e.s(["create",0,e=>e?i(e):i],768834)}]);
40
+ Answer with the folder under \`artifacts/\` and what is in it: the page, a map per day, the pictures.`}],r=o.filter(e=>e.recommended);e.s(["BOT_SEEDS",0,o,"RECOMMENDED_SEEDS",0,r,"rollSeedColors",0,()=>(0,n.randomMarkColors)(o.length)],463625)},992112,e=>{"use strict";var t=e.i(265402);let a=[...new Set(Object.values(t.SPEACH_MODEL_PROVIDERS).map(e=>e.apiKeyName))],i={image:"IMAGE_MODEL",video:"VIDEO_MODEL",speech:"SPEECH_MODEL",transcription:"TRANSCRIPTION_MODEL"},s={image:{label:"Image model",hint:"What bots draw with"},video:{label:"Video model",hint:"What bots film with — minutes a clip"},speech:{label:"Speech model",hint:"What reads text aloud into a file"},transcription:{label:"Transcription model",hint:"What turns a recording into text"}},n="EXA_API_KEY",o={key:"DEFAULT_MODEL",label:"Default model",hint:"What a bot thinks with until it picks its own",text:!0,choices:t.TEXT_MODEL_PROVIDER_LIST.flatMap(e=>e.suggestModels.map(t=>({value:`${e.id}/${t.id}`,label:`${e.label} \xb7 ${t.label}`,needs:e.apiKeyName})))},r=e=>a.includes(e.apiKeyName),l=e=>({key:e.apiKeyName,label:e.label,provider:e.id,signIn:e.signIn}),c=[{id:"voice",title:"voice",hint:"calls run on one of these",section:"keys",require:"any",note:"one is required",entries:t.TEXT_MODEL_PROVIDER_LIST.filter(r).map(l)},{id:"text",title:"models",hint:"what bots think with — add any, or none",section:"keys",require:"none",entries:t.TEXT_MODEL_PROVIDER_LIST.filter(e=>!r(e)).map(l)},{id:"search",title:"search",hint:"how bots look things up — one key, or their own model's",section:"keys",require:"none",entries:[{key:n,label:"Exa",hint:"web search in one call — dashboard.exa.ai"}]},{id:"bots",title:"Bots",hint:"what a bot runs on when it has not picked its own",section:"models",require:"none",entries:[o]},{id:"studio",title:"Studio",hint:"what a bot draws, films and speaks with — off until you pick one",section:"models",require:"none",entries:Object.keys(i).map(e=>({key:i[e],...s[e],kind:e,choices:t.MEDIA_MODEL_PROVIDER_LIST.flatMap(t=>t.models[e].map(e=>({value:`${t.id}/${e.id}`,label:`${t.label} \xb7 ${e.label}`,needs:t.apiKeyName})))}))}];Object.fromEntries(c.flatMap(e=>e.entries).map(e=>[e.key,e])),c.flatMap(e=>e.entries.map(e=>e.key)),Object.fromEntries(c.flatMap(e=>e.entries).filter(e=>e.choices?.length).map(e=>[e.key,e.choices])),e.s(["CONFIG_GROUPS",0,c,"EXA_API_KEY",0,n,"MEDIA_MODEL_KEYS",0,i,"groupSatisfied",0,function(e,t){return"none"===e.require||(e.requireKeys??e.entries.map(e=>e.key)).some(t)},"isConfigSet",0,function(e,t){return e?.some(e=>e.key===t&&e.set)??!1},"mediaModelWords",0,e=>`${"image"===e?"an":"a"} ${e} model`])},905871,e=>{"use strict";var t=e.i(95187);let a=(0,t.createServerReference)("7fde39230efc27b270e4135e1dbc5c3f5c21149804",t.callServer,void 0,t.findSourceMapURL,"setConfigAction");e.s(["setConfigAction",0,a])},758925,e=>{"use strict";var t=e.i(456420);let a={name:"key-round",size:24,node:[["path",{d:"M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z",key:"1s6t7t"}],["circle",{cx:"16.5",cy:"7.5",r:".5",fill:"currentColor",key:"w0ekpg"}]]};a.node;let i=(0,t.default)(a);e.s(["KeyRound",0,i],758925)},779266,989409,e=>{"use strict";var t=e.i(456420);let a={name:"rotate-ccw-clock",size:24,node:[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],aliases:["history"]};a.node;let i=(0,t.default)(a);e.s(["History",0,i],779266);let s=(0,e.i(768834).create)()(e=>({open:!1,section:"thursday",show:t=>e(e=>({open:!0,section:t??e.section})),hide:()=>e({open:!1}),pick:t=>e({section:t})}));e.s(["openSettings",0,e=>s.getState().show(e),"useSettingsStore",0,s],989409)},747925,e=>{"use strict";var t=e.i(456420);let a={name:"wrench",size:24,node:[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]]};a.node;let i=(0,t.default)(a);e.s(["Wrench",0,i],747925)},768834,e=>{"use strict";var t=e.i(271645);let a=e=>{let t,a=new Set,i=(e,i)=>{let s="function"==typeof e?e(t):e;if(!Object.is(s,t)){let e=t;t=(null!=i?i:"object"!=typeof s||null===s)?s:Object.assign({},t,s),a.forEach(a=>a(t,e))}},s=()=>t,n={setState:i,getState:s,getInitialState:()=>o,subscribe:e=>(a.add(e),()=>a.delete(e))},o=t=e(i,s,n);return n},i=e=>{let i=e?a(e):a,s=e=>(function(e,a=e=>e){let i=t.default.useSyncExternalStore(e.subscribe,t.default.useCallback(()=>a(e.getState()),[e,a]),t.default.useCallback(()=>a(e.getInitialState()),[e,a]));return t.default.useDebugValue(i),i})(i,e);return Object.assign(s,i),s};e.s(["create",0,e=>e?i(e):i],768834)}]);
@@ -1 +1 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,805995,e=>{"use strict";var t=e.i(843476),n=e.i(493801),i=e.i(456420);let s={name:"audio-lines",size:24,node:[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]]};s.node;let r=(0,i.default)(s),o={name:"captions",size:24,node:[["rect",{width:"18",height:"14",x:"3",y:"5",rx:"2",ry:"2",key:"12ruh7"}],["path",{d:"M7 15h4M15 15h2M7 11h2M13 11h4",key:"1ueiar"}]],aliases:["subtitles"]};o.node;let a=(0,i.default)(o);var l=e.i(689664),d=e.i(867927);let c={name:"clapperboard",size:24,node:[["path",{d:"m12.296 3.464 3.02 3.956",key:"qash78"}],["path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z",key:"1h7j8b"}],["path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"4lm6w1"}],["path",{d:"m6.18 5.276 3.1 3.899",key:"zjj9t3"}]]};c.node;let u=(0,i.default)(c);var m=e.i(815170),f=e.i(758925),g=e.i(566595),h=e.i(466787),x=e.i(271645),y=e.i(798120),p=e.i(167881),k=e.i(23750),v=e.i(917162),j=e.i(671428),b=e.i(412294),S=e.i(146538),N=e.i(968978),w=e.i(265402),C=e.i(635963),M=e.i(95187);let I=(0,M.createServerReference)("7f9bc624b9c7f137e24cde3bf2bd49ab2a3d39404c",M.callServer,void 0,M.findSourceMapURL,"removeConfigAction");var A=e.i(344974),D=e.i(992112),K=e.i(895836),T=e.i(609856),R=e.i(283653),z=e.i(647163);let $={[D.EXA_API_KEY]:g.Search},q={image:m.Image,video:u,speech:r,transcription:a};function O({section:e}){let{data:n,isLoading:i,error:s}=(0,R.useServerRoute)(y.queryKey.config);if(i)return(0,t.jsx)(K.SettingSkeleton,{rows:4});if(s)return(0,t.jsx)(K.SettingError,{message:s.message});let r=e=>(0,D.isConfigSet)(n,e),o=e=>n?.find(t=>t.key===e)?.value,a=D.CONFIG_GROUPS.filter(t=>t.section===e),l=a.flatMap(e=>e.entries);return(0,t.jsx)(K.SettingScreen,{footer:(0,t.jsx)(K.SettingRailNote,{children:"keys"===e?(0,t.jsxs)(t.Fragment,{children:[l.filter(e=>r(e.key)).length," of"," ",l.length," set",a.some(e=>!(0,D.groupSatisfied)(e,r))?" · a call needs one voice key":" · your keys stay on this machine"]}):(0,t.jsxs)(t.Fragment,{children:[l.length," of ",l.length," resolved ·"," ",l.filter(e=>o(e.key)).length," pinned"]})}),children:a.map(e=>(0,t.jsx)(K.SettingGroup,{label:e.title,hint:e.hint,right:(0,t.jsx)(F,{group:e,isSet:r}),children:(0,t.jsx)(K.SettingItems,{children:e.entries.map(n=>n.choices?(0,t.jsx)(H,{entry:n,choices:n.choices,value:o(n.key),isSet:r},n.key):(0,t.jsx)(B,{entry:n,set:r(n.key),needed:!(0,D.groupSatisfied)(e,r)},n.key))})},e.id))})}function F({group:e,isSet:n}){return"none"===e.require?null:(0,D.groupSatisfied)(e,n)?(0,t.jsxs)("span",{className:"flex items-center gap-1 font-mono text-[11px] text-muted-foreground",children:[(0,t.jsx)(l.Check,{className:"size-3"}),"ready"]}):(0,t.jsxs)("span",{className:(0,z.cn)("flex items-center gap-1 font-mono text-[11px]",z.WAITING_INK),children:[(0,t.jsx)(h.TriangleAlert,{className:"size-3"}),e.note??"Required"]})}function B({entry:e,set:n,needed:i}){let s=_(e,n),r=W(e,n),o=U(e,n),a=r.data?E(r.data):P(n,i,s.data,e.signIn);return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.signIn?(i=e,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(Q,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(V,{entry:s,set:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(Y,{entry:e})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",children:e.signIn?n?L(r.data,o):"sign in with your account":e.key})]}),s.isLoading||r.isLoading?(0,t.jsx)(j.Skeleton,{className:"h-3 w-20 shrink-0"}):(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 items-center gap-1.5 font-mono text-xs",a.ink),children:[a.warn?(0,t.jsx)(h.TriangleAlert,{className:"size-3"}):n&&(0,t.jsx)(l.Check,{className:"size-3"}),a.text]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}let G=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});function P(e,t,n,i){return e?n?"refused"in n?{text:"Key refused",ink:"text-destructive",warn:!0}:{text:`${G.format(n.balance)} left`,ink:n.low?z.WAITING_INK:"text-muted-foreground",warn:n.low}:{text:i?"Signed in":"Set",ink:"text-muted-foreground",warn:!1}:t?{text:"Needed",ink:z.WAITING_INK,warn:!0}:{text:i?"Signed out":"Not set",ink:"text-muted-foreground/60",warn:!1}}function _(e,t){return(0,R.useServerRoute)(t&&"vercel-ai-gateway"===e.provider?y.queryKey.gatewayCredits:null)}function U(e,t){let{data:n}=(0,R.useServerRoute)(t&&e.signIn?y.queryKey.llmModel:null);return n?.find(t=>t.id===e.provider)?.plan??null}function W(e,t){return(0,R.useServerRoute)(t&&e.signIn?y.queryKey.subscriptionUsage:null)}function E(e){return"refused"in e?{text:"Sign-in refused",ink:"text-destructive",warn:!0}:{text:e.spent?"Limit reached":`${e.usedPercent}% used`,ink:e.high?z.WAITING_INK:"text-muted-foreground",warn:e.high}}function L(e,t){let i=!e||"refused"in e?null:e,s=`${i?.plan??t??"unknown"} plan`;return i?.resetsAt?`${s} \xb7 resets in ${(0,n.formatDistanceToNowStrict)(new Date(i.resetsAt))}`:s}function Y({entry:e}){if(e.provider)return(0,t.jsx)(N.ProviderIcon,{provider:e.provider,className:"size-4"});let n=$[e.key]??f.KeyRound;return(0,t.jsx)(n,{className:"size-4 text-muted-foreground"})}function H({entry:e,choices:n,value:i,isSet:s}){let r=n.find(e=>e.value===i),o=n.filter(e=>s(e.needs)),a=i&&!r?i:null,l=e.kind?q[e.kind]:C.BotsMark;return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.kind||e.text?(i=e,v.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,t.jsx)(X,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(J,{entry:s,choices:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(l,{className:"size-4 text-muted-foreground"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-1",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[!r&&!a&&(0,t.jsx)("span",{className:(0,z.cn)("shrink-0 rounded-[5px] border border-border/60 px-1 font-mono text-[10px]",e.kind?z.WAITING_INK:"text-muted-foreground"),children:e.kind?"off":"auto"}),(0,t.jsx)("span",{className:"truncate font-mono text-xs text-muted-foreground",children:r?.label??a??(e.kind?"Not offered to bots until you pick one":o[0]?.label??"No key for any of these yet")})]})]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}function X({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=i?.find(t=>t.key===e.key)?.value,[r,o]=(0,x.useState)(()=>{let t=e.text?(0,w.parseTextModel)(s):(0,w.parseMediaModel)(s);return{provider:t?.provider??null,model:t?.model??""}}),a=()=>{(0,R.revalidate)(y.queryKey.config),n()},[l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:a}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:a});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:"Close"})]}),children:(0,t.jsx)(S.ModelPicker,{kind:e.kind,provider:r.provider,model:r.model,onChange:t=>{o(t),t.model.trim()&&l(e.key,`${t.provider}/${t.model.trim()}`)}})})}function J({entry:e,choices:n,onDone:i}){let{data:s}=(0,R.useServerRoute)(y.queryKey.config),r=s?.find(t=>t.key===e.key)?.value,o=()=>{(0,R.revalidate)(y.queryKey.config),i()},[a,l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:o}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:o});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[r&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Close"})]}),children:(0,t.jsx)(K.SettingChoiceRows,{options:n.map(e=>({value:e.value,label:e.label,disabled:!(0,D.isConfigSet)(s,e.needs)&&`needs ${e.needs}`})),value:r,onChange:t=>a(e.key,t),disabled:l})})}function Q({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=(0,D.isConfigSet)(i,e.key),r=U(e,s),o=W(e,s),a=o.data?E(o.data):null,[l,d]=(0,T.useServerAction)(I,{okMessage:`Signed out of ${e.label}`,onOk:()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel),n()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:s?(0,t.jsxs)(t.Fragment,{children:["Signed in ·"," ",(0,t.jsx)("span",{className:"font-mono",children:L(o.data,r)}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}):"Sign in with your ChatGPT account instead of a key",footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:d,onClick:()=>l(e.key),children:"Sign out"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:s?"Close":"Cancel"}),!s&&(0,t.jsx)(b.ChatGptSignIn,{})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(K.SettingNote,{children:s?"Bots on this subscription spend your plan's usage, not a key. When it runs out, the job stops and says when it resets.":"The sign-in opens in its own window. Approve it there, and this turns to signed in by itself."}),o.data&&"refused"in o.data&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.data.refused})]})})}function V({entry:e,set:n,onDone:i}){let[s,r]=(0,x.useState)(""),{data:o}=_(e,n),a=o?P(n,!1,o):null,l=()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel)},[d,c]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{l(),i()}}),[u,m]=(0,T.useServerAction)(I,{okMessage:`${e.label} key removed`,onOk:()=>{l(),i()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono",children:e.key}),e.hint&&(0,t.jsxs)(t.Fragment,{children:[" · ",e.hint]}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}),footer:(0,t.jsxs)(t.Fragment,{children:[n&&(0,t.jsx)(p.Button,{variant:"ghost",loading:m,onClick:()=>u(e.key),children:"Remove"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Cancel"}),(0,t.jsx)(p.Button,{loading:c,disabled:s.trim().length<8,onClick:()=>d(e.key,s),children:n?"Replace":"Save"})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(k.Input,{value:s,onChange:e=>r(e.target.value),onKeyDown:t=>{"Enter"===t.key&&s.trim().length>=8&&d(e.key,s)},placeholder:n?"New value — replaces the current key":e.key,spellCheck:!1,type:"password",autoFocus:!0}),o&&"refused"in o&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.refused})]})})}e.s(["ConfigGroups",0,O,"ConfigSetting",0,function(){return(0,t.jsx)(O,{section:"keys"})}],805995)},493801,e=>{"use strict";var t=e.i(24708),n=e.i(55545),i=e.i(455024),s=e.i(99151),r=e.i(845110),o=e.i(281092),a=e.i(234662);e.s(["formatDistanceToNowStrict",0,function(e,l){return function(e,t,l){var d;let c,u,m=(0,i.getDefaultOptions)(),f=l?.locale??m.locale??n.defaultLocale,g=(u=(0,o.toDate)(e)-(0,o.toDate)(t))<0?-1:u>0?1:u;if(isNaN(g))throw RangeError("Invalid time value");let h=Object.assign({},l,{addSuffix:l?.addSuffix,comparison:g}),[x,y]=(0,r.normalizeDates)(l?.in,...g>0?[t,e]:[e,t]),p=(d=l?.roundingMethod??"round",e=>{let t=(d?Math[d]:Math.trunc)(e);return 0===t?0:t}),k=y.getTime()-x.getTime(),v=k/a.millisecondsInMinute,j=(k-((0,s.getTimezoneOffsetInMilliseconds)(y)-(0,s.getTimezoneOffsetInMilliseconds)(x)))/a.millisecondsInMinute,b=l?.unit;if("second"===(c=b||(v<1?"second":v<60?"minute":v<a.minutesInDay?"hour":j<a.minutesInMonth?"day":j<a.minutesInYear?"month":"year"))){let e=p(k/1e3);return f.formatDistance("xSeconds",e,h)}if("minute"===c){let e=p(v);return f.formatDistance("xMinutes",e,h)}if("hour"===c){let e=p(v/60);return f.formatDistance("xHours",e,h)}if("day"===c){let e=p(j/a.minutesInDay);return f.formatDistance("xDays",e,h)}if("month"===c){let e=p(j/a.minutesInMonth);return 12===e&&"month"!==b?f.formatDistance("xYears",1,h):f.formatDistance("xMonths",e,h)}else{let e=p(j/a.minutesInYear);return f.formatDistance("xYears",e,h)}}(e,(0,t.constructNow)(e),l)}],493801)},466787,e=>{"use strict";var t=e.i(755566);e.s(["TriangleAlert",()=>t.default])}]);
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,805995,e=>{"use strict";var t=e.i(843476),n=e.i(493801),i=e.i(456420);let s={name:"audio-lines",size:24,node:[["path",{d:"M2 10v3",key:"1fnikh"}],["path",{d:"M6 6v11",key:"11sgs0"}],["path",{d:"M10 3v18",key:"yhl04a"}],["path",{d:"M14 8v7",key:"3a1oy3"}],["path",{d:"M18 5v13",key:"123xd1"}],["path",{d:"M22 10v3",key:"154ddg"}]]};s.node;let r=(0,i.default)(s),o={name:"captions",size:24,node:[["rect",{width:"18",height:"14",x:"3",y:"5",rx:"2",ry:"2",key:"12ruh7"}],["path",{d:"M7 15h4M15 15h2M7 11h2M13 11h4",key:"1ueiar"}]],aliases:["subtitles"]};o.node;let a=(0,i.default)(o);var l=e.i(689664),d=e.i(867927);let c={name:"clapperboard",size:24,node:[["path",{d:"m12.296 3.464 3.02 3.956",key:"qash78"}],["path",{d:"M20.2 6 3 11l-.9-2.4c-.3-1.1.3-2.2 1.3-2.5l13.5-4c1.1-.3 2.2.3 2.5 1.3z",key:"1h7j8b"}],["path",{d:"M3 11h18v8a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",key:"4lm6w1"}],["path",{d:"m6.18 5.276 3.1 3.899",key:"zjj9t3"}]]};c.node;let u=(0,i.default)(c);var m=e.i(815170),g=e.i(758925),f=e.i(566595),h=e.i(466787),x=e.i(271645),y=e.i(798120),p=e.i(167881),k=e.i(23750),v=e.i(917162),j=e.i(671428),S=e.i(412294),N=e.i(146538),b=e.i(968978),w=e.i(265402),C=e.i(635963),M=e.i(95187);let I=(0,M.createServerReference)("7fa4730e940da24972c78a6934ce626fdecd092165",M.callServer,void 0,M.findSourceMapURL,"removeConfigAction");var A=e.i(905871),D=e.i(992112),K=e.i(895836),T=e.i(609856),R=e.i(283653),z=e.i(647163);let $={[D.EXA_API_KEY]:f.Search},q={image:m.Image,video:u,speech:r,transcription:a};function O({section:e}){let{data:n,isLoading:i,error:s}=(0,R.useServerRoute)(y.queryKey.config);if(i)return(0,t.jsx)(K.SettingSkeleton,{rows:4});if(s)return(0,t.jsx)(K.SettingError,{message:s.message});let r=e=>(0,D.isConfigSet)(n,e),o=e=>n?.find(t=>t.key===e)?.value,a=D.CONFIG_GROUPS.filter(t=>t.section===e),l=a.flatMap(e=>e.entries);return(0,t.jsx)(K.SettingScreen,{footer:(0,t.jsx)(K.SettingRailNote,{children:"keys"===e?(0,t.jsxs)(t.Fragment,{children:[l.filter(e=>r(e.key)).length," of"," ",l.length," set",a.some(e=>!(0,D.groupSatisfied)(e,r))?" · a call needs one voice key":" · your keys stay on this machine"]}):(0,t.jsxs)(t.Fragment,{children:[l.length," of ",l.length," resolved ·"," ",l.filter(e=>o(e.key)).length," pinned"]})}),children:a.map(e=>(0,t.jsx)(K.SettingGroup,{label:e.title,hint:e.hint,right:(0,t.jsx)(F,{group:e,isSet:r}),children:(0,t.jsx)(K.SettingItems,{children:e.entries.map(n=>n.choices?(0,t.jsx)(H,{entry:n,choices:n.choices,value:o(n.key),isSet:r},n.key):(0,t.jsx)(B,{entry:n,set:r(n.key),needed:!(0,D.groupSatisfied)(e,r)},n.key))})},e.id))})}function F({group:e,isSet:n}){return"none"===e.require?null:(0,D.groupSatisfied)(e,n)?(0,t.jsxs)("span",{className:"flex items-center gap-1 font-mono text-[11px] text-muted-foreground",children:[(0,t.jsx)(l.Check,{className:"size-3"}),"ready"]}):(0,t.jsxs)("span",{className:(0,z.cn)("flex items-center gap-1 font-mono text-[11px]",z.WAITING_INK),children:[(0,t.jsx)(h.TriangleAlert,{className:"size-3"}),e.note??"Required"]})}function B({entry:e,set:n,needed:i}){let s=_(e,n),r=W(e,n),o=U(e,n),a=r.data?E(r.data):P(n,i,s.data,e.signIn);return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.signIn?(i=e,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(Q,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(V,{entry:s,set:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(Y,{entry:e})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-0.5",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsx)("span",{className:"block truncate font-mono text-xs text-muted-foreground",children:e.signIn?n?L(r.data,o):"sign in with your account":e.key})]}),s.isLoading||r.isLoading?(0,t.jsx)(j.Skeleton,{className:"h-3 w-20 shrink-0"}):(0,t.jsxs)("span",{className:(0,z.cn)("flex shrink-0 items-center gap-1.5 font-mono text-xs",a.ink),children:[a.warn?(0,t.jsx)(h.TriangleAlert,{className:"size-3"}):n&&(0,t.jsx)(l.Check,{className:"size-3"}),a.text]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}let G=new Intl.NumberFormat("en-US",{style:"currency",currency:"USD"});function P(e,t,n,i){return e?n?"refused"in n?{text:"Key refused",ink:"text-destructive",warn:!0}:{text:`${G.format(n.balance)} left`,ink:n.low?z.WAITING_INK:"text-muted-foreground",warn:n.low}:{text:i?"Signed in":"Set",ink:"text-muted-foreground",warn:!1}:t?{text:"Needed",ink:z.WAITING_INK,warn:!0}:{text:i?"Signed out":"Not set",ink:"text-muted-foreground/60",warn:!1}}function _(e,t){return(0,R.useServerRoute)(t&&"vercel-ai-gateway"===e.provider?y.queryKey.gatewayCredits:null)}function U(e,t){let{data:n}=(0,R.useServerRoute)(t&&e.signIn?y.queryKey.llmModel:null);return n?.find(t=>t.id===e.provider)?.plan??null}function W(e,t){return(0,R.useServerRoute)(t&&e.signIn?y.queryKey.subscriptionUsage:null)}function E(e){return"refused"in e?{text:"Sign-in refused",ink:"text-destructive",warn:!0}:{text:e.spent?"Limit reached":`${e.usedPercent}% used`,ink:e.high?z.WAITING_INK:"text-muted-foreground",warn:e.high}}function L(e,t){let i=!e||"refused"in e?null:e,s=`${i?.plan??t??"unknown"} plan`;return i?.resetsAt?`${s} \xb7 resets in ${(0,n.formatDistanceToNowStrict)(new Date(i.resetsAt))}`:s}function Y({entry:e}){if(e.provider)return(0,t.jsx)(b.ProviderIcon,{provider:e.provider,className:"size-4"});let n=$[e.key]??g.KeyRound;return(0,t.jsx)(n,{className:"size-4 text-muted-foreground"})}function H({entry:e,choices:n,value:i,isSet:s}){let r=n.find(e=>e.value===i),o=n.filter(e=>s(e.needs)),a=i&&!r?i:null,l=e.kind?q[e.kind]:C.BotsMark;return(0,t.jsxs)("button",{type:"button",onClick:()=>{var i,s,r;return e.kind||e.text?(i=e,v.notify.component({className:"sm:max-w-lg",renderer:({close:e})=>(0,t.jsx)(X,{entry:i,onDone:e})})):(s=e,r=n,v.notify.component({className:"sm:max-w-md",renderer:({close:e})=>(0,t.jsx)(J,{entry:s,choices:r,onDone:e})}))},className:"group flex w-full items-center gap-3 p-4 text-left outline-none transition-colors hover:bg-muted/50 focus-visible:ring-3 focus-visible:ring-ring/50 focus-visible:ring-inset",children:[(0,t.jsx)("span",{className:"grid size-8 shrink-0 place-items-center rounded-lg bg-muted/60",children:(0,t.jsx)(l,{className:"size-4 text-muted-foreground"})}),(0,t.jsxs)("span",{className:"min-w-0 flex-1 space-y-1",children:[(0,t.jsx)("span",{className:"block truncate text-sm font-medium",children:e.label}),(0,t.jsxs)("span",{className:"flex min-w-0 items-center gap-1.5",children:[!r&&!a&&(0,t.jsx)("span",{className:(0,z.cn)("shrink-0 rounded-[5px] border border-border/60 px-1 font-mono text-[10px]",e.kind?z.WAITING_INK:"text-muted-foreground"),children:e.kind?"off":"auto"}),(0,t.jsx)("span",{className:"truncate font-mono text-xs text-muted-foreground",children:r?.label??a??(e.kind?"Not offered to bots until you pick one":o[0]?.label??"No key for any of these yet")})]})]}),(0,t.jsx)(d.ChevronRight,{className:"size-4 shrink-0 text-muted-foreground/60 transition-colors group-hover:text-foreground"})]})}function X({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=i?.find(t=>t.key===e.key)?.value,[r,o]=(0,x.useState)(()=>{let t=e.text?(0,w.parseTextModel)(s):(0,w.parseMediaModel)(s);return{provider:t?.provider??null,model:t?.model??""}}),a=()=>{(0,R.revalidate)(y.queryKey.config),n()},[l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:a}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:a});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:"Close"})]}),children:(0,t.jsx)(N.ModelPicker,{kind:e.kind,provider:r.provider,model:r.model,onChange:t=>{o(t),t.model.trim()&&l(e.key,`${t.provider}/${t.model.trim()}`)}})})}function J({entry:e,choices:n,onDone:i}){let{data:s}=(0,R.useServerRoute)(y.queryKey.config),r=s?.find(t=>t.key===e.key)?.value,o=()=>{(0,R.revalidate)(y.queryKey.config),i()},[a,l]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} saved`,onOk:o}),[d,c]=(0,T.useServerAction)(I,{okMessage:e.kind?`${e.label} switched off`:`${e.label} back to automatic`,onOk:o});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:e.hint,footer:(0,t.jsxs)(t.Fragment,{children:[r&&(0,t.jsx)(p.Button,{variant:"ghost",loading:c,onClick:()=>d(e.key),children:e.kind?"Turn off":"Automatic"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Close"})]}),children:(0,t.jsx)(K.SettingChoiceRows,{options:n.map(e=>({value:e.value,label:e.label,disabled:!(0,D.isConfigSet)(s,e.needs)&&`needs ${e.needs}`})),value:r,onChange:t=>a(e.key,t),disabled:l})})}function Q({entry:e,onDone:n}){let{data:i}=(0,R.useServerRoute)(y.queryKey.config),s=(0,D.isConfigSet)(i,e.key),r=U(e,s),o=W(e,s),a=o.data?E(o.data):null,[l,d]=(0,T.useServerAction)(I,{okMessage:`Signed out of ${e.label}`,onOk:()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel),n()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:s?(0,t.jsxs)(t.Fragment,{children:["Signed in ·"," ",(0,t.jsx)("span",{className:"font-mono",children:L(o.data,r)}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}):"Sign in with your ChatGPT account instead of a key",footer:(0,t.jsxs)(t.Fragment,{children:[s&&(0,t.jsx)(p.Button,{variant:"ghost",loading:d,onClick:()=>l(e.key),children:"Sign out"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:n,children:s?"Close":"Cancel"}),!s&&(0,t.jsx)(S.ChatGptSignIn,{})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(K.SettingNote,{children:s?"Bots on this subscription spend your plan's usage, not a key. When it runs out, the job stops and says when it resets.":"The sign-in opens in its own window. Approve it there, and this turns to signed in by itself."}),o.data&&"refused"in o.data&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.data.refused})]})})}function V({entry:e,set:n,onDone:i}){let[s,r]=(0,x.useState)(""),{data:o}=_(e,n),a=o?P(n,!1,o):null,l=()=>{(0,R.revalidate)(y.queryKey.config),(0,R.revalidate)(y.queryKey.llmModel)},[d,c]=(0,T.useServerAction)(A.setConfigAction,{okMessage:`${e.label} key saved`,onOk:()=>{l(),i()}}),[u,m]=(0,T.useServerAction)(I,{okMessage:`${e.label} key removed`,onOk:()=>{l(),i()}});return(0,t.jsx)(K.SettingDialogContent,{title:e.label,description:(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("span",{className:"font-mono",children:e.key}),e.hint&&(0,t.jsxs)(t.Fragment,{children:[" · ",e.hint]}),a&&(0,t.jsxs)(t.Fragment,{children:[" · ",(0,t.jsx)("span",{className:(0,z.cn)("font-mono",a.ink),children:a.text})]})]}),footer:(0,t.jsxs)(t.Fragment,{children:[n&&(0,t.jsx)(p.Button,{variant:"ghost",loading:m,onClick:()=>u(e.key),children:"Remove"}),(0,t.jsx)(p.Button,{variant:"ghost",onClick:i,children:"Cancel"}),(0,t.jsx)(p.Button,{loading:c,disabled:s.trim().length<8,onClick:()=>d(e.key,s),children:n?"Replace":"Save"})]}),children:(0,t.jsxs)("div",{className:"space-y-2",children:[(0,t.jsx)(k.Input,{value:s,onChange:e=>r(e.target.value),onKeyDown:t=>{"Enter"===t.key&&s.trim().length>=8&&d(e.key,s)},placeholder:n?"New value — replaces the current key":e.key,spellCheck:!1,type:"password",autoFocus:!0}),o&&"refused"in o&&(0,t.jsx)(K.SettingNote,{className:"wrap-break-word text-destructive",children:o.refused})]})})}e.s(["ConfigGroups",0,O,"ConfigSetting",0,function(){return(0,t.jsx)(O,{section:"keys"})}],805995)},493801,e=>{"use strict";var t=e.i(24708),n=e.i(55545),i=e.i(455024),s=e.i(99151),r=e.i(845110),o=e.i(281092),a=e.i(234662);e.s(["formatDistanceToNowStrict",0,function(e,l){return function(e,t,l){var d;let c,u,m=(0,i.getDefaultOptions)(),g=l?.locale??m.locale??n.defaultLocale,f=(u=(0,o.toDate)(e)-(0,o.toDate)(t))<0?-1:u>0?1:u;if(isNaN(f))throw RangeError("Invalid time value");let h=Object.assign({},l,{addSuffix:l?.addSuffix,comparison:f}),[x,y]=(0,r.normalizeDates)(l?.in,...f>0?[t,e]:[e,t]),p=(d=l?.roundingMethod??"round",e=>{let t=(d?Math[d]:Math.trunc)(e);return 0===t?0:t}),k=y.getTime()-x.getTime(),v=k/a.millisecondsInMinute,j=(k-((0,s.getTimezoneOffsetInMilliseconds)(y)-(0,s.getTimezoneOffsetInMilliseconds)(x)))/a.millisecondsInMinute,S=l?.unit;if("second"===(c=S||(v<1?"second":v<60?"minute":v<a.minutesInDay?"hour":j<a.minutesInMonth?"day":j<a.minutesInYear?"month":"year"))){let e=p(k/1e3);return g.formatDistance("xSeconds",e,h)}if("minute"===c){let e=p(v);return g.formatDistance("xMinutes",e,h)}if("hour"===c){let e=p(v/60);return g.formatDistance("xHours",e,h)}if("day"===c){let e=p(j/a.minutesInDay);return g.formatDistance("xDays",e,h)}if("month"===c){let e=p(j/a.minutesInMonth);return 12===e&&"month"!==S?g.formatDistance("xYears",1,h):g.formatDistance("xMonths",e,h)}else{let e=p(j/a.minutesInYear);return g.formatDistance("xYears",e,h)}}(e,(0,t.constructNow)(e),l)}],493801)},466787,e=>{"use strict";var t=e.i(755566);e.s(["TriangleAlert",()=>t.default])}]);