thursday-agent 0.12.0 → 0.13.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 (470) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +4 -4
  4. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/.next/server/app/_not-found/page.js +1 -1
  11. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  12. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  13. package/.next/server/app/_not-found.html +1 -1
  14. package/.next/server/app/_not-found.rsc +18 -19
  15. package/.next/server/app/_not-found.segments/_full.segment.rsc +18 -19
  16. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +14 -15
  17. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  18. package/.next/server/app/api/artifact/route.js +8 -8
  19. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/keep-working/route.js +7 -7
  21. package/.next/server/app/api/bot/keep-working/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  23. package/.next/server/app/api/bot/memory/route.js +7 -7
  24. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  25. package/.next/server/app/api/bot/route.js +7 -7
  26. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  27. package/.next/server/app/api/bot/thread/[id]/route.js +5 -5
  28. package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -1
  29. package/.next/server/app/api/bot/thread/route.js +3 -3
  30. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  31. package/.next/server/app/api/config/route.js +3 -3
  32. package/.next/server/app/api/config/route.js.nft.json +1 -1
  33. package/.next/server/app/api/events/route.js.nft.json +1 -1
  34. package/.next/server/app/api/favicon/[host]/route.js.nft.json +1 -1
  35. package/.next/server/app/api/file/[...path]/route.js +2 -2
  36. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  37. package/.next/server/app/api/llm-model/catalog/route.js +4 -4
  38. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  39. package/.next/server/app/api/llm-model/credits/route.js +4 -4
  40. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  41. package/.next/server/app/api/llm-model/route.js +6 -6
  42. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  43. package/.next/server/app/api/llm-model/subscription/route.js +6 -6
  44. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  45. package/.next/server/app/api/mcp/[name]/route.js +5 -5
  46. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  47. package/.next/server/app/api/mcp/oauth/callback/route.js +5 -5
  48. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  49. package/.next/server/app/api/mcp/route.js +5 -5
  50. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  51. package/.next/server/app/api/mcp/tools/route.js +5 -5
  52. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  53. package/.next/server/app/api/memory/edit/route.js +15 -14
  54. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  55. package/.next/server/app/api/memory/route.js +4 -4
  56. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  57. package/.next/server/app/api/reach/route.js +13 -12
  58. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  59. package/.next/server/app/api/routine/route.js +8 -9
  60. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  61. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  62. package/.next/server/app/api/skills/[source]/[name]/route.js +2 -2
  63. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  64. package/.next/server/app/api/skills/route.js +2 -2
  65. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  66. package/.next/server/app/api/thursday/call/route.js +6 -6
  67. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  68. package/.next/server/app/api/thursday/skills/route.js +6 -6
  69. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  70. package/.next/server/app/api/thursday/text/route.js +14 -13
  71. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  72. package/.next/server/app/api/thursday/tool-call/route.js +15 -14
  73. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  74. package/.next/server/app/api/workspace/files/route.js +10 -6
  75. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  76. package/.next/server/app/api/workspace/route.js +9 -4
  77. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  78. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +2 -2
  79. package/.next/server/app/artifact/[...path]/page.js +5 -4
  80. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  81. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  82. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  83. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  84. package/.next/server/app/page/server-reference-manifest.json +67 -56
  85. package/.next/server/app/page.js +10 -11
  86. package/.next/server/app/page.js.nft.json +1 -1
  87. package/.next/server/app/page_client-reference-manifest.js +1 -1
  88. package/.next/server/chunks/{[root-of-the-server]__0o49ztf._.js → [root-of-the-server]__0-k4_ie._.js} +2 -2
  89. package/.next/server/chunks/[root-of-the-server]__0209ah4._.js +6 -6
  90. package/.next/server/chunks/[root-of-the-server]__04wldw9._.js +1 -1
  91. package/.next/server/chunks/[root-of-the-server]__0h_x6q6._.js +2 -2
  92. package/.next/server/chunks/{[root-of-the-server]__0cfszwn._.js → [root-of-the-server]__0i23tc1._.js} +2 -2
  93. package/.next/server/chunks/[root-of-the-server]__0mrk2it._.js +1 -1
  94. package/.next/server/chunks/[root-of-the-server]__0nr-v8s._.js +1 -1
  95. package/.next/server/chunks/{[root-of-the-server]__1tg5got._.js → [root-of-the-server]__0paqm5y._.js} +2 -2
  96. package/.next/server/chunks/[root-of-the-server]__0qog7sm._.js +8 -0
  97. package/.next/server/chunks/[root-of-the-server]__0sm5xvm._.js +1 -1
  98. package/.next/server/chunks/[root-of-the-server]__0yisc5v._.js +5 -0
  99. package/.next/server/chunks/[root-of-the-server]__1-swlkw._.js +3 -3
  100. package/.next/server/chunks/[root-of-the-server]__12iddfq._.js +2 -2
  101. package/.next/server/chunks/{[root-of-the-server]__0npn_pn._.js → [root-of-the-server]__15p29m3._.js} +2 -2
  102. package/.next/server/chunks/[root-of-the-server]__17ses32._.js +3 -0
  103. package/.next/server/chunks/[root-of-the-server]__18-2tsq._.js +2 -2
  104. package/.next/server/chunks/[root-of-the-server]__1cjxw0-._.js +1 -1
  105. package/.next/server/chunks/[root-of-the-server]__1gi2nns._.js +5 -0
  106. package/.next/server/chunks/{[root-of-the-server]__0rqgb17._.js → [root-of-the-server]__1iauz8a._.js} +2 -2
  107. package/.next/server/chunks/[root-of-the-server]__1k3j52n._.js +1 -1
  108. package/.next/server/chunks/{[root-of-the-server]__209k6pk._.js → [root-of-the-server]__1lb_pxg._.js} +2 -2
  109. package/.next/server/chunks/[root-of-the-server]__1ndi14y._.js +1 -1
  110. package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +1 -1
  111. package/.next/server/chunks/[root-of-the-server]__1xqsrqq._.js +5 -0
  112. package/.next/server/chunks/[root-of-the-server]__1ygplx1._.js +1 -1
  113. package/.next/server/chunks/[root-of-the-server]__2163i40._.js +5 -0
  114. package/.next/server/chunks/_0ci0abh._.js +3 -0
  115. package/.next/server/chunks/_0eauz4t._.js +1 -1
  116. package/.next/server/chunks/_0f6ts7z._.js +1 -1
  117. package/.next/server/chunks/_0fg-1oj._.js +5 -0
  118. package/.next/server/chunks/_0khihjk._.js +2 -2
  119. package/.next/server/chunks/_0n74zsf._.js +1 -1
  120. package/.next/server/chunks/_0na2fj1._.js +2 -2
  121. package/.next/server/chunks/_0oh_99-._.js +3 -0
  122. package/.next/server/chunks/_0x-ej3f._.js +24 -24
  123. package/.next/server/chunks/_0z3nz21._.js +3 -0
  124. package/.next/server/chunks/_10tkr26._.js +1 -1
  125. package/.next/server/chunks/_12-amdu._.js +2 -2
  126. package/.next/server/chunks/_136j09a._.js +1 -1
  127. package/.next/server/chunks/_15740dw._.js +1 -1
  128. package/.next/server/chunks/_18izeh1._.js +5 -0
  129. package/.next/server/chunks/_1_5mnq4._.js +1 -1
  130. package/.next/server/chunks/_1ajbhv6._.js +2 -2
  131. package/.next/server/chunks/_1dc_d1q._.js +2 -2
  132. package/.next/server/chunks/_1drgfx4._.js +1 -1
  133. package/.next/server/chunks/_1e48czp._.js +2 -2
  134. package/.next/server/chunks/_1f06zo4._.js +3 -0
  135. package/.next/server/chunks/_1ic3bew._.js +2 -2
  136. package/.next/server/chunks/_1jn-aep._.js +2 -2
  137. package/.next/server/chunks/_1jn5btd._.js +6 -0
  138. package/.next/server/chunks/_1kg70wc._.js +2 -2
  139. package/.next/server/chunks/_1m2i5pt._.js +5 -0
  140. package/.next/server/chunks/_1ogqovh._.js +4 -4
  141. package/.next/server/chunks/_1qxheoa._.js +1 -1
  142. package/.next/server/chunks/_1ry6afh._.js +18 -0
  143. package/.next/server/chunks/_1taa4bs._.js +1 -1
  144. package/.next/server/chunks/_1tpr507._.js +1 -1
  145. package/.next/server/chunks/_1y8w80a._.js +1 -1
  146. package/.next/server/chunks/_1zxp-p6._.js +1 -1
  147. package/.next/server/chunks/_204744f._.js +5 -0
  148. package/.next/server/chunks/_20fsr_z._.js +1 -1
  149. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  150. package/.next/server/chunks/features_0-cnt0l._.js +1 -1
  151. package/.next/server/chunks/features_0hdaci0._.js +1 -1
  152. package/.next/server/chunks/features_0p85gv6._.js +3 -0
  153. package/.next/server/chunks/{node_modules_zod_v4_0_v5xf5._.js → node_modules_zod_v4_01bha1c._.js} +2 -2
  154. package/.next/server/chunks/{node_modules_zod_v4_0q9hvql._.js → node_modules_zod_v4_0b99z6a._.js} +2 -2
  155. package/.next/server/chunks/{node_modules_zod_v4_1jg8iwg._.js → node_modules_zod_v4_1zz6lo1._.js} +2 -2
  156. package/.next/server/chunks/ssr/[root-of-the-server]__04upd5v._.js +3 -0
  157. package/.next/server/chunks/ssr/[root-of-the-server]__0dxszdt._.js +3 -0
  158. package/.next/server/chunks/ssr/[root-of-the-server]__0eezycw._.js +3 -0
  159. package/.next/server/chunks/ssr/[root-of-the-server]__0hpp3nw._.js +1 -1
  160. package/.next/server/chunks/ssr/[root-of-the-server]__0yngu44._.js +3 -0
  161. package/.next/server/chunks/ssr/[root-of-the-server]__16z72ny._.js +6 -0
  162. package/.next/server/chunks/ssr/[root-of-the-server]__1u_ry86._.js +3 -0
  163. package/.next/server/chunks/ssr/{[root-of-the-server]__1iwyp1e._.js → [root-of-the-server]__1unh_ew._.js} +1 -1
  164. package/.next/server/chunks/ssr/[root-of-the-server]__20re7ya._.js +3 -0
  165. package/.next/server/chunks/ssr/_00pgq9d._.js +5 -0
  166. package/.next/server/chunks/ssr/_07ke63g._.js +3 -0
  167. package/.next/server/chunks/ssr/_0agcbk7._.js +3 -0
  168. package/.next/server/chunks/ssr/_0e-gw2_._.js +3 -0
  169. package/.next/server/chunks/ssr/{_0fbi6om._.js → _0f_om6y._.js} +3 -3
  170. package/.next/server/chunks/ssr/_0fqhhwi._.js +1 -1
  171. package/.next/server/chunks/ssr/{_026qnc9._.js → _0gpn71k._.js} +3 -3
  172. package/.next/server/chunks/ssr/_0iizjr9._.js +3 -0
  173. package/.next/server/chunks/ssr/_0ixvzo6._.js +75 -0
  174. package/.next/server/chunks/ssr/_0kkdx7t._.js +3 -0
  175. package/.next/server/chunks/ssr/_0lufvw7._.js +118 -0
  176. package/.next/server/chunks/ssr/_0vi6ky6._.js +115 -0
  177. package/.next/server/chunks/ssr/{_10f-jib._.js → _0yhji3e._.js} +2 -2
  178. package/.next/server/chunks/ssr/_0z38nha._.js +3 -0
  179. package/.next/server/chunks/ssr/{_10mo72m._.js → _11nx2d4._.js} +2 -2
  180. package/.next/server/chunks/ssr/_12mijol._.js +2 -2
  181. package/.next/server/chunks/ssr/_150463c._.js +164 -0
  182. package/.next/server/chunks/ssr/{_0rmaf32._.js → _17d2ikl._.js} +2 -2
  183. package/.next/server/chunks/ssr/_19jez1a._.js +3 -0
  184. package/.next/server/chunks/ssr/_1blui1m._.js +3 -0
  185. package/.next/server/chunks/ssr/_1d423aj._.js +4 -4
  186. package/.next/server/chunks/ssr/_1kbk28w._.js +3 -0
  187. package/.next/server/chunks/ssr/_1kj_r9v._.js +3 -0
  188. package/.next/server/chunks/ssr/_1mqn9mc._.js +1 -1
  189. package/.next/server/chunks/ssr/{_0u5xv6g._.js → _1myh7ss._.js} +2 -2
  190. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  191. package/.next/server/chunks/ssr/_1ou5sj0._.js +3 -0
  192. package/.next/server/chunks/ssr/_1p8xorg._.js +3 -0
  193. package/.next/server/chunks/ssr/_1tzacpl._.js +3 -0
  194. package/.next/server/chunks/ssr/_1xoch6f._.js +1 -1
  195. package/.next/server/chunks/ssr/_1yh5bj5._.js +1 -1
  196. package/.next/server/chunks/ssr/{_02c7o30._.js → _2021n9-._.js} +2 -2
  197. package/.next/server/chunks/ssr/_20argo3._.js +3 -0
  198. package/.next/server/chunks/ssr/features_bot_1ll3wp7._.js +3 -0
  199. package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +1 -1
  200. package/.next/server/chunks/ssr/features_bot_thread_query_ts_023eklt._.js +1 -1
  201. package/.next/server/chunks/ssr/features_config_1qxe5ur._.js +20 -0
  202. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +3 -3
  203. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  204. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  205. package/.next/server/chunks/ssr/features_workspace_00jz2hu._.js +1 -1
  206. package/.next/server/chunks/ssr/{node_modules_0ky76fz._.js → node_modules_06e0wlv._.js} +1 -1
  207. package/.next/server/chunks/ssr/{node_modules_0-x0zxm._.js → node_modules_0cj26-9._.js} +1 -1
  208. package/.next/server/chunks/ssr/{node_modules_0operbz._.js → node_modules_0d1rf5e._.js} +1 -1
  209. package/.next/server/chunks/ssr/{node_modules_0b0iy01._.js → node_modules_0e86703._.js} +1 -1
  210. package/.next/server/chunks/ssr/{node_modules_05b6e99._.js → node_modules_0es09am._.js} +1 -1
  211. package/.next/server/chunks/ssr/{node_modules_1iau_ea._.js → node_modules_0gr_dzf._.js} +1 -1
  212. package/.next/server/chunks/ssr/{node_modules_1hv-j1l._.js → node_modules_0gtcwz9._.js} +1 -1
  213. package/.next/server/chunks/ssr/{node_modules_1c2ikr9._.js → node_modules_0hi9h8f._.js} +1 -1
  214. package/.next/server/chunks/ssr/{node_modules_01u4ea3._.js → node_modules_0lkop0t._.js} +1 -1
  215. package/.next/server/chunks/ssr/{node_modules_1wvf3oo._.js → node_modules_0nghisk._.js} +1 -1
  216. package/.next/server/chunks/ssr/{node_modules_0yzmxfq._.js → node_modules_0stovz0._.js} +1 -1
  217. package/.next/server/chunks/ssr/{node_modules_00nrzz_._.js → node_modules_0we85kr._.js} +1 -1
  218. package/.next/server/chunks/ssr/{node_modules_01ed0yi._.js → node_modules_0ya7y1s._.js} +1 -1
  219. package/.next/server/chunks/ssr/{node_modules_0m3_5ge._.js → node_modules_0yrbwkj._.js} +1 -1
  220. package/.next/server/chunks/ssr/{node_modules_0v_-uht._.js → node_modules_1-x70ie._.js} +1 -1
  221. package/.next/server/chunks/ssr/{node_modules_07jp6tj._.js → node_modules_12fd9g0._.js} +1 -1
  222. package/.next/server/chunks/ssr/{node_modules_1wgnj8q._.js → node_modules_12wxrgr._.js} +1 -1
  223. package/.next/server/chunks/ssr/{node_modules_0azd56x._.js → node_modules_139uu4q._.js} +1 -1
  224. package/.next/server/chunks/ssr/{node_modules_1omg9xr._.js → node_modules_14gpoe1._.js} +1 -1
  225. package/.next/server/chunks/ssr/{node_modules_1ma_y68._.js → node_modules_18fmji6._.js} +1 -1
  226. package/.next/server/chunks/ssr/{node_modules_0ucridu._.js → node_modules_19kkel8._.js} +1 -1
  227. package/.next/server/chunks/ssr/{node_modules_0fpnetd._.js → node_modules_1gcine1._.js} +1 -1
  228. package/.next/server/chunks/ssr/{node_modules_1z3sh11._.js → node_modules_1h4trkm._.js} +1 -1
  229. package/.next/server/chunks/ssr/{node_modules_0lautv3._.js → node_modules_1mub_qu._.js} +1 -1
  230. package/.next/server/chunks/ssr/{node_modules_0ou0all._.js → node_modules_1p78svs._.js} +1 -1
  231. package/.next/server/chunks/ssr/{node_modules_19b0bir._.js → node_modules_1xp-7ep._.js} +1 -1
  232. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0tmjn9w._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0ay7_oi._.js} +1 -1
  233. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1_e8c3o._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_182ydq_._.js} +1 -1
  234. package/.next/server/middleware-build-manifest.js +3 -3
  235. package/.next/server/pages/404.html +1 -1
  236. package/.next/server/pages/500.html +1 -1
  237. package/.next/server/server-reference-manifest.js +1 -1
  238. package/.next/server/server-reference-manifest.json +69 -58
  239. package/.next/static/chunks/03df16hs01-xi.js +1 -0
  240. package/.next/static/chunks/0crocb7272z8k.js +1 -0
  241. package/.next/static/chunks/{0p9jcyqkpq71f.js → 0dqsenl3uk_8z.js} +1 -1
  242. package/.next/static/chunks/0hhn8mf953761.js +1 -0
  243. package/.next/static/chunks/0n1o3k0z4m7c_.js +1 -0
  244. package/.next/static/chunks/0oe2zavre2a7d.css +1 -0
  245. package/.next/static/chunks/0srg9tv4105-i.js +1 -0
  246. package/.next/static/chunks/0t599wrclly7i.js +18 -0
  247. package/.next/static/chunks/0x34bhth_sn35.js +1 -0
  248. package/.next/static/chunks/{0mscosx0eh3ee.js → 0x_6z8vt8hyf4.js} +3 -3
  249. package/.next/static/chunks/{0p50d-au6-3hx.js → 1_wstwzu1md-6.js} +2 -2
  250. package/.next/static/chunks/{40ij3wsn3vt7h.js → 1aughn81slf90.js} +1 -1
  251. package/.next/static/chunks/1g1j03h_l-e67.js +1 -0
  252. package/.next/static/chunks/1lp02y2nmddxg.js +1 -0
  253. package/.next/static/chunks/211s4xjtecj2l.js +1 -0
  254. package/.next/static/chunks/2244-cat2jlvd.js +1 -0
  255. package/.next/static/chunks/{2r6xnyg7ezyxr.js → 2eev_i93slion.js} +2 -2
  256. package/.next/static/chunks/2sjq4gsimlfqr.js +113 -0
  257. package/.next/static/chunks/{0qgn3u86jkbm7.js → 2uleilh8ph06-.js} +1 -1
  258. package/.next/static/chunks/{1czfknd4luo6t.js → 2zchsg03a1pdp.js} +1 -1
  259. package/.next/static/chunks/32tmfirfjpulv.js +1 -0
  260. package/.next/static/chunks/{2_c7mu6x1lu49.js → 376-s_i83irs-.js} +1 -1
  261. package/.next/static/chunks/3blk-kpn39xr-.js +1 -0
  262. package/.next/static/chunks/3eieehp7wquyu.js +1 -0
  263. package/.next/static/chunks/3kc-e7pcj50ae.js +1 -0
  264. package/.next/static/chunks/3rwpyuo9nrrop.js +17 -0
  265. package/.next/static/chunks/3sf4l25l353ja.js +1 -0
  266. package/.next/static/chunks/3vz7m1w688juj.js +3 -0
  267. package/.next/static/chunks/43skgt0h9woyu.js +1 -0
  268. package/app/api/events/app-event.client.ts +8 -2
  269. package/app/api/events/app-event.server.ts +7 -5
  270. package/app/api/events/app-event.ts +19 -8
  271. package/app/api/query-key.ts +13 -5
  272. package/bin/database.mjs +21 -11
  273. package/bin/thursday.mjs +5 -2
  274. package/components/ui/shiny-text.tsx +2 -2
  275. package/database/migrations/20260920024909_messy_baron_strucker/migration.sql +1 -0
  276. package/database/migrations/20260920024909_messy_baron_strucker/snapshot.json +1937 -0
  277. package/features/artifact/components/artifact-setting.tsx +18 -24
  278. package/features/bot/bot.action.ts +3 -0
  279. package/features/bot/bot.runner.ts +25 -3
  280. package/features/bot/bot.seed.ts +98 -22
  281. package/features/bot/components/bot-badge.tsx +2 -2
  282. package/features/bot/components/bot-mark.tsx +12 -3
  283. package/features/bot/components/bot-room.tsx +33 -10
  284. package/features/bot/components/bot-setting.tsx +88 -34
  285. package/features/bot/components/crew-motion.ts +161 -0
  286. package/features/bot/components/mark-palette.tsx +3 -3
  287. package/features/bot/components/room-conversation.tsx +13 -8
  288. package/features/bot/components/room-list.tsx +9 -5
  289. package/features/bot/components/room-pill.tsx +131 -41
  290. package/features/bot/components/thread-badge.tsx +4 -4
  291. package/features/bot/components/thread-setting.tsx +58 -19
  292. package/features/bot/mark.const.ts +24 -0
  293. package/features/bot/thread.query.ts +32 -14
  294. package/features/bot/thread.store.ts +19 -16
  295. package/features/config/components/config-badge.tsx +2 -2
  296. package/features/config/components/config-setting.tsx +63 -213
  297. package/features/config/config.const.ts +2 -1
  298. package/features/connectors/components/mcp-setting.tsx +60 -29
  299. package/features/intro/components/intro.tsx +2 -2
  300. package/features/memory/components/memory-setting.tsx +11 -7
  301. package/features/reach/channel.ts +9 -1
  302. package/features/reach/components/reach-guide.tsx +606 -105
  303. package/features/reach/discord.ts +18 -3
  304. package/features/reach/reach.schema.ts +6 -0
  305. package/features/reach/reach.ts +55 -2
  306. package/features/reach/slack.ts +2 -1
  307. package/features/reach/telegram.ts +5 -1
  308. package/features/routine/components/routine-setting.tsx +46 -18
  309. package/features/settings/components/setting-ui.tsx +17 -68
  310. package/features/settings/components/settings.tsx +4 -3
  311. package/features/settings/settings.alert.ts +8 -8
  312. package/features/skills/components/skills-setting.tsx +78 -12
  313. package/features/skills/skills.action.ts +12 -0
  314. package/features/skills/skills.query.ts +24 -0
  315. package/features/thursday/components/call-log.tsx +19 -14
  316. package/features/thursday/components/side-captions.tsx +3 -2
  317. package/features/thursday/components/thursday-setting.tsx +5 -6
  318. package/features/thursday/components/thursday.tsx +8 -9
  319. package/features/thursday/components/write-line.tsx +10 -5
  320. package/features/thursday/thursday.action.ts +4 -0
  321. package/features/thursday/thursday.query.ts +3 -2
  322. package/features/thursday/thursday.schema.ts +5 -0
  323. package/features/thursday/use-call-ring.ts +6 -1
  324. package/features/thursday/use-text-call.ts +25 -10
  325. package/features/thursday/use-thursday.ts +10 -1
  326. package/features/workspace/components/artifact-view.tsx +42 -33
  327. package/features/workspace/components/file-thumb.tsx +8 -4
  328. package/features/workspace/components/file-view.tsx +25 -2
  329. package/features/workspace/components/workspace-setting.tsx +27 -23
  330. package/features/workspace/workspace.query.ts +20 -1
  331. package/features/workspace/workspace.ts +14 -0
  332. package/guide/bots.md +27 -4
  333. package/guide/calls.md +5 -3
  334. package/guide/phone.md +23 -12
  335. package/guide/setup.md +20 -5
  336. package/guide/trouble.md +1 -1
  337. package/hooks/use-theme.ts +14 -0
  338. package/lib/protocol/events.client.ts +56 -14
  339. package/lib/protocol/events.server.ts +41 -12
  340. package/lib/utils.ts +1 -1
  341. package/package.json +1 -1
  342. package/scripts/reach-channels.test.mts +15 -2
  343. package/seed-skills/brief/daily-brief/SKILL.md +39 -0
  344. package/seed-skills/brief/daily-brief/page/brief.css +406 -0
  345. package/seed-skills/brief/daily-brief/references/brief.md +106 -0
  346. package/seed-skills/brief/daily-brief/references/preferences.md +67 -0
  347. package/seed-skills/brief/daily-brief/scripts/glance.mjs +128 -0
  348. package/seed-skills/brief/daily-brief/scripts/lib.mjs +182 -0
  349. package/seed-skills/brief/daily-brief/scripts/news.mjs +320 -0
  350. package/seed-skills/brief/daily-brief/scripts/page.mjs +322 -0
  351. package/seed-skills/brief/daily-brief/scripts/story.mjs +265 -0
  352. package/seed-skills/digest/README.md +20 -0
  353. package/seed-skills/digest/media-digest/SKILL.md +32 -0
  354. package/seed-skills/digest/media-digest/references/no-captions.md +20 -0
  355. package/seed-skills/digest/media-digest/references/page.md +56 -0
  356. package/seed-skills/digest/media-digest/references/reading.md +56 -0
  357. package/seed-skills/digest/media-digest/scripts/audio.mjs +232 -0
  358. package/seed-skills/digest/media-digest/scripts/digest.mjs +379 -0
  359. package/seed-skills/digest/media-digest/scripts/lib.mjs +284 -0
  360. package/seed-skills/digest/media-digest/scripts/part.mjs +16 -0
  361. package/seed-skills/digest/media-digest/scripts/text.mjs +287 -0
  362. package/seed-skills/digest/media-digest/scripts/yt.mjs +487 -0
  363. package/seed-skills/docs/README.md +32 -0
  364. package/seed-skills/docs/documents/SKILL.md +34 -0
  365. package/seed-skills/docs/documents/kit/package-lock.json +1596 -0
  366. package/seed-skills/docs/documents/kit/package.json +17 -0
  367. package/seed-skills/docs/documents/references/deck.md +63 -0
  368. package/seed-skills/docs/documents/references/invoice.md +64 -0
  369. package/seed-skills/docs/documents/references/pdf.md +59 -0
  370. package/seed-skills/docs/documents/references/print.md +43 -0
  371. package/seed-skills/docs/documents/references/sheets.md +49 -0
  372. package/seed-skills/docs/documents/references/translate.md +37 -0
  373. package/seed-skills/docs/documents/references/word.md +45 -0
  374. package/seed-skills/docs/documents/scripts/doc.mjs +123 -0
  375. package/seed-skills/docs/documents/scripts/lib/browser.mjs +259 -0
  376. package/seed-skills/docs/documents/scripts/lib/deck-chart.mjs +150 -0
  377. package/seed-skills/docs/documents/scripts/lib/deck.mjs +1132 -0
  378. package/seed-skills/docs/documents/scripts/lib/invoice.mjs +505 -0
  379. package/seed-skills/docs/documents/scripts/lib/kit.mjs +244 -0
  380. package/seed-skills/docs/documents/scripts/lib/pdf.mjs +645 -0
  381. package/seed-skills/docs/documents/scripts/lib/report.mjs +38 -0
  382. package/seed-skills/docs/documents/scripts/lib/sheet.mjs +523 -0
  383. package/seed-skills/docs/documents/scripts/lib/templates.mjs +34 -0
  384. package/seed-skills/docs/documents/scripts/lib/translate.mjs +691 -0
  385. package/seed-skills/docs/documents/scripts/lib/word.mjs +678 -0
  386. package/seed-skills/docs/documents/templates/letter.html +56 -0
  387. package/seed-skills/docs/documents/templates/print.css +219 -0
  388. package/seed-skills/docs/documents/templates/report.html +47 -0
  389. package/seed-skills/docs/documents/templates/resume.html +61 -0
  390. package/seed-skills/insta/instagram/references/post.md +31 -7
  391. package/seed-skills/trip/README.md +11 -0
  392. package/seed-skills/trip/travel/SKILL.md +40 -0
  393. package/seed-skills/trip/travel/page/itinerary.css +488 -0
  394. package/seed-skills/trip/travel/references/itinerary.md +70 -0
  395. package/seed-skills/trip/travel/references/plan.md +75 -0
  396. package/seed-skills/trip/travel/references/watch-and-book.md +39 -0
  397. package/seed-skills/trip/travel/scripts/flights.mjs +374 -0
  398. package/seed-skills/trip/travel/scripts/fx.mjs +57 -0
  399. package/seed-skills/trip/travel/scripts/hotels.mjs +356 -0
  400. package/seed-skills/trip/travel/scripts/itinerary.mjs +482 -0
  401. package/seed-skills/trip/travel/scripts/lib.mjs +120 -0
  402. package/seed-skills/trip/travel/scripts/selectors.mjs +78 -0
  403. package/seed-skills/trip/travel/scripts/watch.mjs +147 -0
  404. package/seed-skills/trip/travel/scripts/weather.mjs +150 -0
  405. package/seed-skills/tutor/picture-book/SKILL.md +6 -0
  406. package/seed-skills/tutor/picture-book/references/picture-book.md +22 -2
  407. package/.next/server/chunks/[root-of-the-server]__014ydvq._.js +0 -8
  408. package/.next/server/chunks/[root-of-the-server]__01d285y._.js +0 -5
  409. package/.next/server/chunks/[root-of-the-server]__04r4h-2._.js +0 -7
  410. package/.next/server/chunks/[root-of-the-server]__0ayldfn._.js +0 -5
  411. package/.next/server/chunks/[root-of-the-server]__17weeeg._.js +0 -5
  412. package/.next/server/chunks/[root-of-the-server]__1ai5lme._.js +0 -8
  413. package/.next/server/chunks/_05v8k21._.js +0 -7
  414. package/.next/server/chunks/_0k6qjcf._.js +0 -5
  415. package/.next/server/chunks/_1d_enhu._.js +0 -3
  416. package/.next/server/chunks/_1jc5g4p._.js +0 -6
  417. package/.next/server/chunks/_1nfr-75._.js +0 -3
  418. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0md6j0x._.js +0 -3
  419. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_14ih1vy._.js +0 -3
  420. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1d6ez5-._.js +0 -3
  421. package/.next/server/chunks/ssr/[root-of-the-server]__0a967km._.js +0 -3
  422. package/.next/server/chunks/ssr/[root-of-the-server]__0tzekbl._.js +0 -68
  423. package/.next/server/chunks/ssr/[root-of-the-server]__1756892._.js +0 -3
  424. package/.next/server/chunks/ssr/[root-of-the-server]__1mzi-ju._.js +0 -3
  425. package/.next/server/chunks/ssr/[root-of-the-server]__1nqw56a._.js +0 -3
  426. package/.next/server/chunks/ssr/[root-of-the-server]__1r77-88._.js +0 -3
  427. package/.next/server/chunks/ssr/[root-of-the-server]__1w9hqq8._.js +0 -8
  428. package/.next/server/chunks/ssr/_05pl_u8._.js +0 -3
  429. package/.next/server/chunks/ssr/_097-ljd._.js +0 -4
  430. package/.next/server/chunks/ssr/_0euzzf8._.js +0 -3
  431. package/.next/server/chunks/ssr/_0evkpto._.js +0 -3
  432. package/.next/server/chunks/ssr/_0igfcax._.js +0 -20
  433. package/.next/server/chunks/ssr/_0lu1n_x._.js +0 -3
  434. package/.next/server/chunks/ssr/_0nvh1h9._.js +0 -3
  435. package/.next/server/chunks/ssr/_0qmpw35._.js +0 -3
  436. package/.next/server/chunks/ssr/_0uv-qs4._.js +0 -3
  437. package/.next/server/chunks/ssr/_132qkfz._.js +0 -5
  438. package/.next/server/chunks/ssr/_15zqt-t._.js +0 -3
  439. package/.next/server/chunks/ssr/_16gfxpn._.js +0 -3
  440. package/.next/server/chunks/ssr/_184327j._.js +0 -3
  441. package/.next/server/chunks/ssr/_18ujhhq._.js +0 -3
  442. package/.next/server/chunks/ssr/_1lx6w_o._.js +0 -67
  443. package/.next/server/chunks/ssr/_1ntpny5._.js +0 -3
  444. package/.next/server/chunks/ssr/_1o1g4uk._.js +0 -5
  445. package/.next/server/chunks/ssr/_1xx4zlb._.js +0 -3
  446. package/.next/server/chunks/ssr/_2008vmi._.js +0 -164
  447. package/.next/server/chunks/ssr/features_bot_1n1s7bh._.js +0 -3
  448. package/.next/static/chunks/09pkygbht7ki8.js +0 -18
  449. package/.next/static/chunks/0bm-nhblcmmj4.js +0 -17
  450. package/.next/static/chunks/0c_g4-11sha-1.js +0 -1
  451. package/.next/static/chunks/0hhza87hkbqaz.js +0 -1
  452. package/.next/static/chunks/0samf80yu2b17.js +0 -1
  453. package/.next/static/chunks/0vlgzqo9ka90v.js +0 -1
  454. package/.next/static/chunks/1g9yyvculuxj2.js +0 -1
  455. package/.next/static/chunks/1jz8n0mhtdzr8.js +0 -1
  456. package/.next/static/chunks/206laxm6maiz2.js +0 -1
  457. package/.next/static/chunks/23nfu5g4vl_m7.js +0 -1
  458. package/.next/static/chunks/2h-tlhb2ffhkk.js +0 -1
  459. package/.next/static/chunks/2i5_w8olnrvo0.js +0 -3
  460. package/.next/static/chunks/2m6jd3586ijb-.js +0 -1
  461. package/.next/static/chunks/2m8iqwc6sykln.js +0 -1
  462. package/.next/static/chunks/33fyp-byw48ju.js +0 -65
  463. package/.next/static/chunks/35yd_27d9ylra.js +0 -1
  464. package/.next/static/chunks/3ag1i3__yl94f.js +0 -1
  465. package/.next/static/chunks/3m_ejzg-xn21r.css +0 -1
  466. package/.next/static/chunks/3s-jpd3ky49-n.js +0 -1
  467. package/features/reach/components/reach-state.tsx +0 -71
  468. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_buildManifest.js +0 -0
  469. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_clientMiddlewareManifest.js +0 -0
  470. /package/.next/static/{QSe0rTdXU5kh5BBzr2XBB → fiNGsQfna8qldl8wU8wqr}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},264079,e=>{"use strict";var t=e.i(469719),a=e.i(687388);let i=t.z.enum(["openai","chatgpt","anthropic","google","xai","vercel-ai-gateway","mistral","deepseek","groq","cerebras","togetherai","fireworks","deepinfra","cohere"]),r=t.z.object({provider:i,model:t.z.string().trim().min(1,"Model name is required").max(80)}),l=t.z.enum(["openai","google","xai","vercel-ai-gateway"]),n=t.z.object({provider:l,model:t.z.string().trim().min(1,"Model name is required").max(120)}),o={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",models:{image:[{id:"gpt-image-1-mini",label:"GPT Image 1 mini",tier:"small"},{id:"gpt-image-2.5-flare",label:"GPT Image 2.5 Flare",tier:"mid"},{id:"gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[],speech:[{id:"tts-1",label:"TTS 1",tier:"small"},{id:"gpt-4o-mini-tts",label:"4o mini TTS",tier:"mid"},{id:"tts-1-hd",label:"TTS 1 HD",tier:"large"}],transcription:[{id:"gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"gpt-transcribe",label:"GPT Transcribe",tier:"mid"}]}},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",models:{image:[{id:"gemini-3.1-flash-lite-image",label:"3.1 Flash Lite Image",tier:"small"},{id:"gemini-3.1-flash-image",label:"3.1 Flash Image",tier:"mid"},{id:"gemini-3-pro-image",label:"3 Pro Image",tier:"large"}],video:[{id:"veo-3.1-lite-generate-preview",label:"Veo 3.1 Lite",tier:"small"},{id:"veo-3.1-fast-generate-preview",label:"Veo 3.1 Fast",tier:"mid"},{id:"veo-3.1-generate-preview",label:"Veo 3.1",tier:"large"}],speech:[{id:"gemini-2.5-flash-preview-tts",label:"2.5 Flash TTS",tier:"small"},{id:"gemini-3.1-flash-tts-preview",label:"3.1 Flash TTS",tier:"mid"},{id:"gemini-2.5-pro-preview-tts",label:"2.5 Pro TTS",tier:"large"}],transcription:[{id:"gemini-3.5-transcribe",label:"3.5 Transcribe",tier:"mid"}]}},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",models:{image:[{id:"grok-imagine-image",label:"Grok Imagine",tier:"small"},{id:"grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"mid"}],video:[{id:"grok-imagine-video",label:"Grok Imagine Video",tier:"small"},{id:"grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"}],speech:[{id:"grok-tts",label:"Grok TTS",tier:"mid"}],transcription:[{id:"grok-stt",label:"Grok STT",tier:"mid"}]}},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",models:{image:[{id:"bytedance/seedream-5.0-lite",label:"Seedream 5.0 Lite",tier:"small"},{id:"bfl/flux-2-klein-9b",label:"FLUX 2 Klein 9B",tier:"small"},{id:"spacexai/grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"small"},{id:"bfl/flux-2-pro",label:"FLUX 2 Pro",tier:"mid"},{id:"bytedance/seedream-5.0-pro",label:"Seedream 5.0 Pro",tier:"mid"},{id:"recraft/recraft-v4.1",label:"Recraft V4.1",tier:"mid"},{id:"openai/gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[{id:"bytedance/seedance-2.0-mini",label:"Seedance 2.0 Mini",tier:"small"},{id:"google/veo-3.1-lite-generate-001",label:"Veo 3.1 Lite",tier:"small"},{id:"alibaba/wan-v2.6-t2v",label:"Wan 2.6",tier:"small"},{id:"google/veo-3.1-fast-generate-001",label:"Veo 3.1 Fast",tier:"mid"},{id:"bytedance/seedance-2.5",label:"Seedance 2.5",tier:"mid"},{id:"spacexai/grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"},{id:"klingai/kling-v3.0-t2v",label:"Kling 3.0",tier:"large"},{id:"google/veo-3.1-generate-001",label:"Veo 3.1",tier:"large"}],speech:[{id:"fish-audio/s1",label:"Fish Audio S1",tier:"small"},{id:"openai/tts-1",label:"OpenAI TTS 1",tier:"small"},{id:"spacexai/grok-tts",label:"Grok TTS",tier:"mid"},{id:"fish-audio/s2.1-pro",label:"Fish Audio S2.1 Pro",tier:"mid"},{id:"openai/tts-1-hd",label:"OpenAI TTS 1 HD",tier:"large"}],transcription:[{id:"spacexai/grok-stt",label:"Grok STT",tier:"small"},{id:"fish-audio/transcribe-1",label:"Fish Transcribe 1",tier:"small"},{id:"openai/gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"openai/gpt-4o-transcribe",label:"4o Transcribe",tier:"mid"},{id:"google/gemini-3.5-transcribe",label:"Gemini 3.5 Transcribe",tier:"mid"}]}}},s=Object.keys(o).map(e=>({id:e,...o[e]})),d={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",keysAt:"https://platform.openai.com/api-keys",keyLooks:"sk-…",suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:105e4},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:105e4},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:105e4},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:105e4}]},chatgpt:{label:"GPT Subscription",apiKeyName:"CHATGPT_SIGN_IN",signIn:!0,suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:272e3},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:272e3},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:272e3},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:272e3}]},anthropic:{label:"Claude",apiKeyName:"ANTHROPIC_API_KEY",keysAt:"https://platform.claude.com/settings/keys",keyLooks:"sk-ant-…",suggestModels:[{id:"claude-haiku-4-5",label:"Haiku 4.5",tier:"small"},{id:"claude-sonnet-5",label:"Sonnet 5",tier:"mid",context:1e6},{id:"claude-opus-5",label:"Opus 5",tier:"large",context:1e6},{id:"claude-fable-5-1",label:"Fable 5.1",tier:"large"}]},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",keysAt:"https://aistudio.google.com/apikey",keyLooks:"AIza…",suggestModels:[{id:"gemini-3.5-flash-lite",label:"3.5 Flash Lite",tier:"small",context:1e6},{id:"gemini-3.8-flash",label:"3.8 Flash",tier:"mid",context:1e6}]},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",keysAt:"https://console.x.ai",keyLooks:"xai-…",suggestModels:[{id:"grok-4.6",label:"Grok 4.6",tier:"large",context:5e5}]},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",keysAt:"https://vercel.com/docs/ai-gateway/authentication-and-byok/authentication",suggestModels:[{id:"zai/glm-5.3-flash",label:"GLM 5.3 Flash",tier:"small"},{id:"google/gemini-3.8-flash",label:"Gemini 3.8 Flash",tier:"small"},{id:"openai/gpt-5.6-luna",label:"GPT 5.6 Luna",tier:"small",context:105e4},{id:"zai/glm-5.3",label:"GLM 5.3",tier:"mid"},{id:"spacexai/grok-4.6",label:"Grok 4.6",tier:"mid",context:5e5},{id:"anthropic/claude-sonnet-5",label:"Claude Sonnet 5",tier:"mid"},{id:"openai/gpt-5.6-terra",label:"GPT 5.6 Terra",tier:"mid",context:105e4},{id:"moonshotai/kimi-k3",label:"Kimi K3",tier:"mid"},{id:"openai/gpt-5.6-sol",label:"GPT 5.6 Sol",tier:"large",context:105e4},{id:"anthropic/claude-opus-5",label:"Claude Opus 5",tier:"large",context:1e6},{id:"openai/gpt-6-astra",label:"GPT 6 Astra",tier:"large",context:105e4}]},mistral:{label:"Mistral",apiKeyName:"MISTRAL_API_KEY",keysAt:"https://console.mistral.ai/api-keys",suggestModels:[{id:"ministral-8b-latest",label:"Ministral 8B",tier:"small"},{id:"mistral-small-latest",label:"Small",tier:"mid"},{id:"mistral-medium-latest",label:"Medium",tier:"large"},{id:"mistral-large-latest",label:"Large",tier:"large"}]},deepseek:{label:"DeepSeek",apiKeyName:"DEEPSEEK_API_KEY",keysAt:"https://platform.deepseek.com/api_keys",keyLooks:"sk-…",suggestModels:[{id:"deepseek-flash",label:"V4.1 Flash",tier:"small",context:1e6},{id:"deepseek-v4-pro",label:"V4 Pro",tier:"large",context:1e6}]},groq:{label:"Groq",apiKeyName:"GROQ_API_KEY",keysAt:"https://console.groq.com/keys",keyLooks:"gsk_…",suggestModels:[{id:"openai/gpt-oss-20b",label:"GPT OSS 20B",tier:"small",context:131072},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"llama-3.3-70b-versatile",label:"Llama 3.3 70B",tier:"mid",context:131072}]},cerebras:{label:"Cerebras",apiKeyName:"CEREBRAS_API_KEY",keysAt:"https://cloud.cerebras.ai",keyLooks:"csk-…",suggestModels:[{id:"qwen-3.8-27b",label:"Qwen 3.8 27B",tier:"small",context:64e3},{id:"gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:65536}]},togetherai:{label:"Together",apiKeyName:"TOGETHER_AI_API_KEY",keysAt:"https://api.together.ai/settings/api-keys",suggestModels:[{id:"Qwen/Qwen3.5-9B",label:"Qwen 3.5 9B",tier:"small",context:262144},{id:"zai-org/GLM-5.3-Flash",label:"GLM 5.3 Flash",tier:"small",context:1048575},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1e6},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048575},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},fireworks:{label:"Fireworks",apiKeyName:"FIREWORKS_API_KEY",keysAt:"https://app.fireworks.ai/account/api-keys",keyLooks:"fw_…",suggestModels:[{id:"accounts/fireworks/models/glm-5p3-flash",label:"GLM 5.3 Flash",tier:"small",context:1048576},{id:"accounts/fireworks/models/deepseek-v4p1-flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"accounts/fireworks/models/minimax-m3",label:"MiniMax M3",tier:"mid",context:512e3},{id:"accounts/fireworks/models/glm-5p3",label:"GLM 5.3",tier:"large",context:1048576},{id:"accounts/fireworks/models/kimi-k3",label:"Kimi K3",tier:"large",context:1048576}]},deepinfra:{label:"DeepInfra",apiKeyName:"DEEPINFRA_API_KEY",keysAt:"https://deepinfra.com/dash/api_keys",suggestModels:[{id:"deepseek-ai/DeepSeek-V4-Flash-0731",label:"DeepSeek V4 Flash",tier:"small",context:1048576},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"zai-org/GLM-5.2",label:"GLM 5.2",tier:"mid",context:1048576},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048576},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},cohere:{label:"Cohere",apiKeyName:"COHERE_API_KEY",keysAt:"https://dashboard.cohere.com/api-keys",suggestModels:[{id:"command-r7b-12-2024",label:"Command R7B",tier:"small",context:128e3},{id:"command-a-03-2025",label:"Command A",tier:"mid",context:256e3},{id:"command-a-plus-05-2026",label:"Command A+",tier:"large",context:128e3}]}},m=Object.keys(d).map(e=>({id:e,...d[e]}));e.s(["MEDIA_MODEL_PROVIDERS",0,o,"MEDIA_MODEL_PROVIDER_LIST",0,s,"TEXT_MODEL_PROVIDERS",0,d,"TEXT_MODEL_PROVIDER_LIST",0,m,"canMakeKind",0,(e,t)=>(o[e]?.models[t]?.length??0)>0,"compactAtFor",0,e=>e&&e>0?Math.round(e*a.BOT_RUN.compactHeadroom):a.BOT_RUN.compactAt,"contextWindowOf",0,function(e,t,a=[]){if("vercel-ai-gateway"===e)return a.find(e=>e.id===t)?.contextWindow??null;let i=d[e].suggestModels;return i.find(e=>e.id===t)?.context??null},"defaultModelOf",0,e=>(e.suggestModels.find(e=>"mid"===e.tier)??e.suggestModels[0])?.id,"parseMediaModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=n.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"parseTextModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=r.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"textModelProviderSchema",0,i,"textModelRefSchema",0,r])},514499,e=>{"use strict";e.s(["COMMON_VALIDATE",0,{name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}}])},89929,609730,277988,e=>{"use strict";var t=e.i(874321);function a(e,a){return(0,t.constructFrom)(a||e,e)}e.s(["toDate",0,a],609730),e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let t=a(e),i=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return i.setUTCFullYear(t.getFullYear()),e-i}],89929),e.s(["normalizeDates",0,function(e,...a){let i=t.constructFrom.bind(null,e||a.find(e=>"object"==typeof e));return a.map(i)}],277988)},874321,438220,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],438220),e.s(["constructFrom",0,function(e,a){return"function"==typeof e?e(a):e&&"object"==typeof e&&t in e?e[t](a):e instanceof Date?new e.constructor(a):new Date(a)}],874321)},599447,e=>{"use strict";var t=e.i(874321);e.s(["constructNow",0,function(e){return(0,t.constructFrom)(e,Date.now())}])},881237,662001,e=>{"use strict";var t;let a={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e){return (t={})=>{let a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}let r={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},l={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function n(e){return(t,a)=>{let i;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;i=e.values[r]||e.values[t]}return i[e.argumentCallback?e.argumentCallback(t):t]}}let o={ordinalNumber:(e,t)=>{let a=Number(e),i=a%100;if(i>20||i<10)switch(i%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:n({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:n({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:n({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:n({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:n({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function s(e){return(t,a={})=>{let i,r=a.width,l=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=t.match(l);if(!n)return null;let o=n[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(s)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a}(s,e=>e.test(o)):function(e,t){for(let a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a}(s,e=>e.test(o));return i=e.valueCallback?e.valueCallback(d):d,{value:i=a.valueCallback?a.valueCallback(i):i,rest:t.slice(o.length)}}}let d={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{let i=e.match(t.matchPattern);if(!i)return null;let r=i[0],l=e.match(t.parsePattern);if(!l)return null;let n=t.valueCallback?t.valueCallback(l[0]):l[0];return{value:n=a.valueCallback?a.valueCallback(n):n,rest:e.slice(r.length)}}),era:s({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:s({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:s({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:s({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:s({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,i)=>{let r,l=a[e];if(r="string"==typeof l?l:1===t?l.one:l.other.replace("{{count}}",t.toString()),i?.addSuffix)if(i.comparison&&i.comparison>0)return"in "+r;else return r+" ago";return r},formatLong:r,formatRelative:(e,t,a,i)=>l[e],localize:o,match:d,options:{weekStartsOn:0,firstWeekContainsDate:1}}],881237);let m={};e.s(["getDefaultOptions",0,function(){return m}],662001)},469719,e=>{"use strict";var t=e.i(562810);e.s(["z",0,t])}];
1
+ module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},264079,e=>{"use strict";var t=e.i(469719),a=e.i(687388);let i=t.z.enum(["openai","chatgpt","anthropic","google","xai","vercel-ai-gateway","mistral","deepseek","groq","cerebras","togetherai","fireworks","deepinfra","cohere"]),r=t.z.object({provider:i,model:t.z.string().trim().min(1,"Model name is required").max(80)}),l=t.z.enum(["openai","google","xai","vercel-ai-gateway"]),n=t.z.object({provider:l,model:t.z.string().trim().min(1,"Model name is required").max(120)}),o={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",models:{image:[{id:"gpt-image-1-mini",label:"GPT Image 1 mini",tier:"small"},{id:"gpt-image-2.5-flare",label:"GPT Image 2.5 Flare",tier:"mid"},{id:"gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[],speech:[{id:"tts-1",label:"TTS 1",tier:"small"},{id:"gpt-4o-mini-tts",label:"4o mini TTS",tier:"mid"},{id:"tts-1-hd",label:"TTS 1 HD",tier:"large"}],transcription:[{id:"gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"gpt-transcribe",label:"GPT Transcribe",tier:"mid"}]}},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",models:{image:[{id:"gemini-3.1-flash-lite-image",label:"3.1 Flash Lite Image",tier:"small"},{id:"gemini-3.1-flash-image",label:"3.1 Flash Image",tier:"mid"},{id:"gemini-3-pro-image",label:"3 Pro Image",tier:"large"}],video:[{id:"veo-3.1-lite-generate-preview",label:"Veo 3.1 Lite",tier:"small"},{id:"veo-3.1-fast-generate-preview",label:"Veo 3.1 Fast",tier:"mid"},{id:"veo-3.1-generate-preview",label:"Veo 3.1",tier:"large"}],speech:[{id:"gemini-2.5-flash-preview-tts",label:"2.5 Flash TTS",tier:"small"},{id:"gemini-3.1-flash-tts-preview",label:"3.1 Flash TTS",tier:"mid"},{id:"gemini-2.5-pro-preview-tts",label:"2.5 Pro TTS",tier:"large"}],transcription:[{id:"gemini-3.5-transcribe",label:"3.5 Transcribe",tier:"mid"}]}},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",models:{image:[{id:"grok-imagine-image",label:"Grok Imagine",tier:"small"},{id:"grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"mid"}],video:[{id:"grok-imagine-video",label:"Grok Imagine Video",tier:"small"},{id:"grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"}],speech:[{id:"grok-tts",label:"Grok TTS",tier:"mid"}],transcription:[{id:"grok-stt",label:"Grok STT",tier:"mid"}]}},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",models:{image:[{id:"bytedance/seedream-5.0-lite",label:"Seedream 5.0 Lite",tier:"small"},{id:"bfl/flux-2-klein-9b",label:"FLUX 2 Klein 9B",tier:"small"},{id:"spacexai/grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"small"},{id:"bfl/flux-2-pro",label:"FLUX 2 Pro",tier:"mid"},{id:"bytedance/seedream-5.0-pro",label:"Seedream 5.0 Pro",tier:"mid"},{id:"recraft/recraft-v4.1",label:"Recraft V4.1",tier:"mid"},{id:"openai/gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[{id:"bytedance/seedance-2.0-mini",label:"Seedance 2.0 Mini",tier:"small"},{id:"google/veo-3.1-lite-generate-001",label:"Veo 3.1 Lite",tier:"small"},{id:"alibaba/wan-v2.6-t2v",label:"Wan 2.6",tier:"small"},{id:"google/veo-3.1-fast-generate-001",label:"Veo 3.1 Fast",tier:"mid"},{id:"bytedance/seedance-2.5",label:"Seedance 2.5",tier:"mid"},{id:"spacexai/grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"},{id:"klingai/kling-v3.0-t2v",label:"Kling 3.0",tier:"large"},{id:"google/veo-3.1-generate-001",label:"Veo 3.1",tier:"large"}],speech:[{id:"fish-audio/s1",label:"Fish Audio S1",tier:"small"},{id:"openai/tts-1",label:"OpenAI TTS 1",tier:"small"},{id:"spacexai/grok-tts",label:"Grok TTS",tier:"mid"},{id:"fish-audio/s2.1-pro",label:"Fish Audio S2.1 Pro",tier:"mid"},{id:"openai/tts-1-hd",label:"OpenAI TTS 1 HD",tier:"large"}],transcription:[{id:"spacexai/grok-stt",label:"Grok STT",tier:"small"},{id:"fish-audio/transcribe-1",label:"Fish Transcribe 1",tier:"small"},{id:"openai/gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"openai/gpt-4o-transcribe",label:"4o Transcribe",tier:"mid"},{id:"google/gemini-3.5-transcribe",label:"Gemini 3.5 Transcribe",tier:"mid"}]}}},s=Object.keys(o).map(e=>({id:e,...o[e]})),d={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",keysAt:"https://platform.openai.com/api-keys",keyLooks:"sk-…",suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:105e4},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:105e4},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:105e4},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:105e4}]},chatgpt:{label:"GPT Subscription",apiKeyName:"CHATGPT_SIGN_IN",signIn:!0,suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:272e3},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:272e3},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:272e3},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:272e3}]},anthropic:{label:"Claude",apiKeyName:"ANTHROPIC_API_KEY",keysAt:"https://platform.claude.com/settings/keys",keyLooks:"sk-ant-…",suggestModels:[{id:"claude-haiku-4-5",label:"Haiku 4.5",tier:"small"},{id:"claude-sonnet-5",label:"Sonnet 5",tier:"mid",context:1e6},{id:"claude-opus-5",label:"Opus 5",tier:"large",context:1e6},{id:"claude-fable-5-1",label:"Fable 5.1",tier:"large"}]},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",keysAt:"https://aistudio.google.com/apikey",keyLooks:"AIza…",suggestModels:[{id:"gemini-3.5-flash-lite",label:"3.5 Flash Lite",tier:"small",context:1e6},{id:"gemini-3.8-flash",label:"3.8 Flash",tier:"mid",context:1e6}]},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",keysAt:"https://console.x.ai",keyLooks:"xai-…",suggestModels:[{id:"grok-4.6",label:"Grok 4.6",tier:"large",context:5e5}]},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",keysAt:"https://vercel.com/docs/ai-gateway/authentication-and-byok/authentication",suggestModels:[{id:"zai/glm-5.3-flash",label:"GLM 5.3 Flash",tier:"small"},{id:"google/gemini-3.8-flash",label:"Gemini 3.8 Flash",tier:"small"},{id:"openai/gpt-5.6-luna",label:"GPT 5.6 Luna",tier:"small",context:105e4},{id:"zai/glm-5.3",label:"GLM 5.3",tier:"mid"},{id:"spacexai/grok-4.6",label:"Grok 4.6",tier:"mid",context:5e5},{id:"anthropic/claude-sonnet-5",label:"Claude Sonnet 5",tier:"mid"},{id:"openai/gpt-5.6-terra",label:"GPT 5.6 Terra",tier:"mid",context:105e4},{id:"moonshotai/kimi-k3",label:"Kimi K3",tier:"mid"},{id:"openai/gpt-5.6-sol",label:"GPT 5.6 Sol",tier:"large",context:105e4},{id:"anthropic/claude-opus-5",label:"Claude Opus 5",tier:"large",context:1e6},{id:"openai/gpt-6-astra",label:"GPT 6 Astra",tier:"large",context:105e4}]},mistral:{label:"Mistral",apiKeyName:"MISTRAL_API_KEY",keysAt:"https://console.mistral.ai/api-keys",suggestModels:[{id:"ministral-8b-latest",label:"Ministral 8B",tier:"small"},{id:"mistral-small-latest",label:"Small",tier:"mid"},{id:"mistral-medium-latest",label:"Medium",tier:"large"},{id:"mistral-large-latest",label:"Large",tier:"large"}]},deepseek:{label:"DeepSeek",apiKeyName:"DEEPSEEK_API_KEY",keysAt:"https://platform.deepseek.com/api_keys",keyLooks:"sk-…",suggestModels:[{id:"deepseek-flash",label:"V4.1 Flash",tier:"small",context:1e6},{id:"deepseek-v4-pro",label:"V4 Pro",tier:"large",context:1e6}]},groq:{label:"Groq",apiKeyName:"GROQ_API_KEY",keysAt:"https://console.groq.com/keys",keyLooks:"gsk_…",suggestModels:[{id:"openai/gpt-oss-20b",label:"GPT OSS 20B",tier:"small",context:131072},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"llama-3.3-70b-versatile",label:"Llama 3.3 70B",tier:"mid",context:131072}]},cerebras:{label:"Cerebras",apiKeyName:"CEREBRAS_API_KEY",keysAt:"https://cloud.cerebras.ai",keyLooks:"csk-…",suggestModels:[{id:"qwen-3.8-27b",label:"Qwen 3.8 27B",tier:"small",context:64e3},{id:"gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:65536}]},togetherai:{label:"Together",apiKeyName:"TOGETHER_AI_API_KEY",keysAt:"https://api.together.ai/settings/api-keys",suggestModels:[{id:"Qwen/Qwen3.5-9B",label:"Qwen 3.5 9B",tier:"small",context:262144},{id:"zai-org/GLM-5.3-Flash",label:"GLM 5.3 Flash",tier:"small",context:1048575},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1e6},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048575},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},fireworks:{label:"Fireworks",apiKeyName:"FIREWORKS_API_KEY",keysAt:"https://app.fireworks.ai/account/api-keys",keyLooks:"fw_…",suggestModels:[{id:"accounts/fireworks/models/glm-5p3-flash",label:"GLM 5.3 Flash",tier:"small",context:1048576},{id:"accounts/fireworks/models/deepseek-v4p1-flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"accounts/fireworks/models/minimax-m3",label:"MiniMax M3",tier:"mid",context:512e3},{id:"accounts/fireworks/models/glm-5p3",label:"GLM 5.3",tier:"large",context:1048576},{id:"accounts/fireworks/models/kimi-k3",label:"Kimi K3",tier:"large",context:1048576}]},deepinfra:{label:"DeepInfra",apiKeyName:"DEEPINFRA_API_KEY",keysAt:"https://deepinfra.com/dash/api_keys",suggestModels:[{id:"deepseek-ai/DeepSeek-V4-Flash-0731",label:"DeepSeek V4 Flash",tier:"small",context:1048576},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"zai-org/GLM-5.2",label:"GLM 5.2",tier:"mid",context:1048576},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048576},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},cohere:{label:"Cohere",apiKeyName:"COHERE_API_KEY",keysAt:"https://dashboard.cohere.com/api-keys",suggestModels:[{id:"command-r7b-12-2024",label:"Command R7B",tier:"small",context:128e3},{id:"command-a-03-2025",label:"Command A",tier:"mid",context:256e3},{id:"command-a-plus-05-2026",label:"Command A+",tier:"large",context:128e3}]}},m=Object.keys(d).map(e=>({id:e,...d[e]}));e.s(["MEDIA_MODEL_PROVIDERS",0,o,"MEDIA_MODEL_PROVIDER_LIST",0,s,"TEXT_MODEL_PROVIDERS",0,d,"TEXT_MODEL_PROVIDER_LIST",0,m,"canMakeKind",0,(e,t)=>(o[e]?.models[t]?.length??0)>0,"compactAtFor",0,e=>e&&e>0?Math.round(e*a.BOT_RUN.compactHeadroom):a.BOT_RUN.compactAt,"contextWindowOf",0,function(e,t,a=[]){if("vercel-ai-gateway"===e)return a.find(e=>e.id===t)?.contextWindow??null;let i=d[e].suggestModels;return i.find(e=>e.id===t)?.context??null},"defaultModelOf",0,e=>(e.suggestModels.find(e=>"mid"===e.tier)??e.suggestModels[0])?.id,"parseMediaModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=n.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"parseTextModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=r.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"textModelProviderSchema",0,i,"textModelRefSchema",0,r])},514499,e=>{"use strict";e.s(["COMMON_VALIDATE",0,{name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}}])},89929,609730,277988,e=>{"use strict";var t=e.i(874321);function a(e,a){return(0,t.constructFrom)(a||e,e)}e.s(["toDate",0,a],609730),e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let t=a(e),i=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return i.setUTCFullYear(t.getFullYear()),e-i}],89929),e.s(["normalizeDates",0,function(e,...a){let i=t.constructFrom.bind(null,e||a.find(e=>"object"==typeof e));return a.map(i)}],277988)},874321,438220,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],438220),e.s(["constructFrom",0,function(e,a){return"function"==typeof e?e(a):e&&"object"==typeof e&&t in e?e[t](a):e instanceof Date?new e.constructor(a):new Date(a)}],874321)},599447,e=>{"use strict";var t=e.i(874321);e.s(["constructNow",0,function(e){return(0,t.constructFrom)(e,Date.now())}])},881237,662001,e=>{"use strict";var t;let a={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e){return (t={})=>{let a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}let r={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},l={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function n(e){return(t,a)=>{let i;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;i=e.values[r]||e.values[t]}return i[e.argumentCallback?e.argumentCallback(t):t]}}let o={ordinalNumber:(e,t)=>{let a=Number(e),i=a%100;if(i>20||i<10)switch(i%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:n({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:n({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:n({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:n({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:n({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function s(e){return(t,a={})=>{let i,r=a.width,l=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=t.match(l);if(!n)return null;let o=n[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(s)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a}(s,e=>e.test(o)):function(e,t){for(let a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a}(s,e=>e.test(o));return i=e.valueCallback?e.valueCallback(d):d,{value:i=a.valueCallback?a.valueCallback(i):i,rest:t.slice(o.length)}}}let d={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{let i=e.match(t.matchPattern);if(!i)return null;let r=i[0],l=e.match(t.parsePattern);if(!l)return null;let n=t.valueCallback?t.valueCallback(l[0]):l[0];return{value:n=a.valueCallback?a.valueCallback(n):n,rest:e.slice(r.length)}}),era:s({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:s({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:s({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:s({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:s({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,i)=>{let r,l=a[e];if(r="string"==typeof l?l:1===t?l.one:l.other.replace("{{count}}",t.toString()),i?.addSuffix)if(i.comparison&&i.comparison>0)return"in "+r;else return r+" ago";return r},formatLong:r,formatRelative:(e,t,a,i)=>l[e],localize:o,match:d,options:{weekStartsOn:0,firstWeekContainsDate:1}}],881237);let m={};e.s(["getDefaultOptions",0,function(){return m}],662001)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__0cfszwn._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0i23tc1._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[70729,s=>{s.v(e=>Promise.all(["server/chunks/[externals]_node_crypto_1kn79-7._.js"].map(e=>s.l(e))).then(()=>e(666680)))},102473,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__18-2tsq._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(232347)))},242792,s=>{s.v(e=>Promise.all(["server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js","server/chunks/_10tkr26._.js","server/chunks/[root-of-the-server]__0nr-v8s._.js","server/chunks/_1y8w80a._.js","server/chunks/lib_logger_ts_07e65t5._.js","server/chunks/_1kg70wc._.js","server/chunks/_1ogqovh._.js"].map(e=>s.l(e))).then(()=>e(799791)))},327784,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0mrk2it._.js","server/chunks/features_0rfvely._.js","server/chunks/_1tpr507._.js","server/chunks/_05h2cii._.js","server/chunks/[root-of-the-server]__1wnzmx9._.js","server/chunks/_10tkr26._.js","server/chunks/_1jn-aep._.js","server/chunks/_1kg70wc._.js","server/chunks/features_0hdaci0._.js","server/chunks/_136j09a._.js","server/chunks/_1zxp-p6._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(49002)))},193435,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0h_x6q6._.js","server/chunks/features_0hdaci0._.js","server/chunks/_0f6ts7z._.js","server/chunks/_1e48czp._.js","server/chunks/_1y8w80a._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(5509)))},890054,s=>{s.v(e=>Promise.all(["server/chunks/_0eauz4t._.js"].map(e=>s.l(e))).then(()=>e(375814)))},51833,s=>{s.v(e=>Promise.all(["server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js","server/chunks/lib_logger_ts_07e65t5._.js","server/chunks/[root-of-the-server]__1cjxw0-._.js"].map(e=>s.l(e))).then(()=>e(871096)))},573349,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__1wbc1wv._.js"].map(e=>s.l(e))).then(()=>e(913803)))},566462,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0rl-fef._.js"].map(e=>s.l(e))).then(()=>e(313176)))},207580,s=>{s.v(e=>Promise.all(["server/chunks/[externals]__0y3n8y6._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0q8fc1x._.js"].map(e=>s.l(e))).then(()=>e(27996)))}];
1
+ module.exports=[70729,s=>{s.v(e=>Promise.all(["server/chunks/[externals]_node_crypto_1kn79-7._.js"].map(e=>s.l(e))).then(()=>e(666680)))},102473,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__18-2tsq._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(232347)))},242792,s=>{s.v(e=>Promise.all(["server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js","server/chunks/_10tkr26._.js","server/chunks/[root-of-the-server]__0nr-v8s._.js","server/chunks/_1y8w80a._.js","server/chunks/lib_logger_ts_07e65t5._.js","server/chunks/_1kg70wc._.js","server/chunks/_1ogqovh._.js"].map(e=>s.l(e))).then(()=>e(799791)))},327784,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0mrk2it._.js","server/chunks/features_0rfvely._.js","server/chunks/_1tpr507._.js","server/chunks/_05h2cii._.js","server/chunks/_1zxp-p6._.js","server/chunks/_10tkr26._.js","server/chunks/_1jn-aep._.js","server/chunks/_1kg70wc._.js","server/chunks/features_0hdaci0._.js","server/chunks/_136j09a._.js","server/chunks/[root-of-the-server]__1wnzmx9._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(49002)))},193435,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0h_x6q6._.js","server/chunks/features_0hdaci0._.js","server/chunks/_0f6ts7z._.js","server/chunks/_1e48czp._.js","server/chunks/_1y8w80a._.js","server/chunks/lib_logger_ts_07e65t5._.js"].map(e=>s.l(e))).then(()=>e(5509)))},890054,s=>{s.v(e=>Promise.all(["server/chunks/_0eauz4t._.js"].map(e=>s.l(e))).then(()=>e(375814)))},51833,s=>{s.v(e=>Promise.all(["server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js","server/chunks/lib_logger_ts_07e65t5._.js","server/chunks/[root-of-the-server]__1cjxw0-._.js"].map(e=>s.l(e))).then(()=>e(871096)))},573349,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__1wbc1wv._.js"].map(e=>s.l(e))).then(()=>e(913803)))},566462,s=>{s.v(e=>Promise.all(["server/chunks/[root-of-the-server]__0rl-fef._.js"].map(e=>s.l(e))).then(()=>e(313176)))},207580,s=>{s.v(e=>Promise.all(["server/chunks/[externals]__0y3n8y6._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0q8fc1x._.js"].map(e=>s.l(e))).then(()=>e(27996)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0mrk2it._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),874533,(e,t,a)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},666680,(e,t,a)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},912714,(e,t,a)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},660526,(e,t,a)=>{t.exports=e.x("node:os",()=>require("node:os"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},247839,e=>{"use strict";var t=e.i(853205),a=e.i(986129),i=e.i(556325),o=e.i(864328);let n={id:"openai",label:"OpenAI",apiKeyName:o.TEXT_MODEL_PROVIDERS.openai.apiKeyName};o.TEXT_MODEL_PROVIDERS.openai.suggestModels;let s=t.z.string().max(a.COMMON_VALIDATE.prompt.max).default(""),r=t.z.object({voice:t.z.string().trim().min(1).max(128).default("marin"),voicePrompt:s,backendModel:t.z.string().trim().min(1).max(128).default(i.LIVE_BACKEND_MODEL),backendPrompt:s,reasoningEffort:t.z.enum(["none","minimal","low","medium","high","xhigh"]).nullable().default("low"),webSearch:t.z.boolean().default(!0)});r.parse({}),e.s(["LIVE_PROVIDER",0,n,"LiveSettingsSchema",0,r])},799791,e=>e.a(async(t,a)=>{try{var i=e.i(336763),o=e.i(533102),n=e.i(876393),s=e.i(220376),r=e.i(724185);e.i(871096);var l=e.i(951056),c=t([n,r]);[n,r]=c.then?(await c)():c;let b=e=>({name:e.name,description:e.description,systemPrompt:e.systemPrompt,icon:e.icon,provider:e.provider,model:e.model,disabled:e.disabled,compactAt:e.compactAt});async function d(){let e=await n.database.select().from(s.botTable).orderBy(s.botTable.createdAt);return e.length?e.filter(e=>!e.disabled).map(b):[l.DEFAULT_BOT]}async function m(e){let t=await h(e);if(t)return b(t);let a=e.trim().toLowerCase(),[r]=await n.database.select().from(s.botTable).where((0,i.eq)(o.sql`lower(${s.botTable.name})`,a));return r?b(r):l.DEFAULT_BOT.name.toLowerCase()===a?l.DEFAULT_BOT:null}async function p(){return(0,l.isBotMemoryOn)(await (0,r.readConfig)(l.BOT_MEMORY_KEY))}async function E(){return(0,l.isKeepWorkingOn)(await (0,r.readConfig)(l.KEEP_WORKING_KEY))}async function h(e){let[t]=await n.database.select().from(s.botTable).where((0,i.eq)(s.botTable.name,e));return t??null}e.s(["findJobBot",0,m,"listJobBots",0,d,"readBotMemoryOn",0,p,"readKeepWorkingOn",0,E]),a()}catch(e){a(e)}},!1),656719,e=>{"use strict";var t=e.i(247839),a=e.i(864328),i=e.i(735186);let o=[t.LIVE_PROVIDER.apiKeyName],n={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"}},r="EXA_API_KEY",l="DEFAULT_MODEL",c={key:l,label:"Default model",hint:"What a bot thinks with until it picks its own",text:!0,choices:a.TEXT_MODEL_PROVIDER_LIST.flatMap(e=>e.suggestModels.map(t=>({value:`${e.id}/${t.id}`,label:`${e.label} \xb7 ${t.label}`,needs:e.apiKeyName})))},d=e=>o.includes(e.apiKeyName),m=e=>!!e.signIn||"vercel-ai-gateway"===e.id,p=e=>({key:e.apiKeyName,label:e.label,provider:e.id,signIn:e.signIn,keysAt:e.keysAt,keyLooks:e.keyLooks}),E=[{id:"voice",title:"voice",hint:"calls run on this key",section:"keys",require:"any",note:"required for calls",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(d).map(p)},{id:"easy",title:"the easy ways",hint:"one sign-in or one key opens every bot",section:"keys",require:"none",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(m).map(e=>({...p(e),..."vercel-ai-gateway"===e.id&&{recommended:!0}}))},{id:"text",title:"or a provider's own key",hint:"what bots think with — add any, or none",section:"keys",require:"none",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(e=>!d(e)&&!m(e)).map(p)},{id:"search",title:"search",hint:"how calls and bots look things up — one key, or their own model's",section:"keys",require:"none",entries:[{key:r,label:"Exa",hint:"web search in one call — dashboard.exa.ai",site:"exa.ai",keysAt:"https://dashboard.exa.ai/api-keys"}]},{id:"phone",title:"phone",hint:"write to Thursday from a chat app — nothing is opened to the outside",section:"keys",require:"none",entries:[{key:i.TELEGRAM_TOKEN_KEY,label:"Telegram",site:"telegram.org",hint:"a bot token from @BotFather — then write to your bot, and allow it here"},{key:i.DISCORD_TOKEN_KEY,label:"Discord",site:"discord.com",hint:"a bot token from discord.com/developers — add the bot to a server of yours, then write to it directly"},{key:i.SLACK_APP_TOKEN_KEY,label:"Slack · app token",site:"slack.com",hint:"starts with xapp- — opens the connection. Slack takes this and the bot token"},{key:i.SLACK_BOT_TOKEN_KEY,label:"Slack · bot token",site:"slack.com",hint:"starts with xoxb- — speaks as the app"}]},{id:"bots",title:"Bots",hint:"what a bot runs on when it has not picked its own — start small: a small model is quick and costs little",section:"models",require:"none",entries:[c]},{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(n).map(e=>({key:n[e],...s[e],kind:e,choices:a.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(E.flatMap(e=>e.entries).map(e=>[e.key,e])),E.flatMap(e=>e.entries.map(e=>e.key)),Object.fromEntries(E.flatMap(e=>e.entries).filter(e=>e.choices?.length).map(e=>[e.key,e.choices])),e.s(["DEFAULT_MODEL_KEY",0,l,"EXA_API_KEY",0,r,"MEDIA_MODEL_KEYS",0,n])},724185,e=>e.a(async(t,a)=>{try{var i=e.i(336763),o=e.i(876393),n=e.i(220376);e.i(656719);var s=t([o]);async function r(e){let t=process.env[e]?.trim();if(t)return t;let[a]=await o.database.select({value:n.configTable.value}).from(n.configTable).where((0,i.eq)(n.configTable.key,e));return a?.value.trim()||void 0}async function l(e,t){await o.database.insert(n.configTable).values({key:e,value:t}).onConflictDoUpdate({target:n.configTable.key,set:{value:t}})}async function c(e){await o.database.delete(n.configTable).where((0,i.eq)(n.configTable.key,e))}[o]=s.then?(await s)():s,e.s(["readConfig",0,r,"removeConfig",0,c,"writeConfig",0,l]),a()}catch(e){a(e)}},!1),735186,e=>{"use strict";let t="TELEGRAM_BOT_TOKEN",a="DISCORD_BOT_TOKEN",i="SLACK_APP_TOKEN",o="SLACK_BOT_TOKEN";e.s(["DISCORD_TOKEN_KEY",0,a,"REACH_CHANNELS",0,["telegram","discord","slack"],"REACH_KEYS",0,{telegram:[t],discord:[a],slack:[i,o]},"SLACK_APP_TOKEN_KEY",0,i,"SLACK_BOT_TOKEN_KEY",0,o,"TELEGRAM_TOKEN_KEY",0,t,"reachPersonKey",0,e=>`REACH_PERSON_${e.toUpperCase()}`])},556325,e=>{"use strict";var t=e.i(853205);let a=t.z.object({start:t.z.number().nonnegative(),end:t.z.number().nonnegative(),text:t.z.string()});t.z.object({reason:t.z.string().max(128),seconds:t.z.number().nonnegative().nullable()}),e.s(["LIVE_BACKEND_MODEL",0,"gpt-5.6-luna","LiveFragmentSchema",0,a])}];
1
+ module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),874533,(e,t,a)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},666680,(e,t,a)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},912714,(e,t,a)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},660526,(e,t,a)=>{t.exports=e.x("node:os",()=>require("node:os"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},247839,e=>{"use strict";var t=e.i(853205),a=e.i(986129),i=e.i(556325),o=e.i(864328);let n={id:"openai",label:"OpenAI",apiKeyName:o.TEXT_MODEL_PROVIDERS.openai.apiKeyName};o.TEXT_MODEL_PROVIDERS.openai.suggestModels;let s=t.z.string().max(a.COMMON_VALIDATE.prompt.max).default(""),r=t.z.object({voice:t.z.string().trim().min(1).max(128).default("marin"),voicePrompt:s,backendModel:t.z.string().trim().min(1).max(128).default(i.LIVE_BACKEND_MODEL),backendPrompt:s,reasoningEffort:t.z.enum(["none","minimal","low","medium","high","xhigh"]).nullable().default("low"),webSearch:t.z.boolean().default(!0)});r.parse({}),e.s(["LIVE_PROVIDER",0,n,"LiveSettingsSchema",0,r])},799791,e=>e.a(async(t,a)=>{try{var i=e.i(336763),o=e.i(533102),n=e.i(876393),s=e.i(220376),r=e.i(724185);e.i(871096);var l=e.i(951056),c=t([n,r]);[n,r]=c.then?(await c)():c;let b=e=>({name:e.name,description:e.description,systemPrompt:e.systemPrompt,icon:e.icon,provider:e.provider,model:e.model,disabled:e.disabled,compactAt:e.compactAt});async function d(){let e=await n.database.select().from(s.botTable).orderBy(s.botTable.createdAt);return e.length?e.filter(e=>!e.disabled).map(b):[l.DEFAULT_BOT]}async function m(e){let t=await h(e);if(t)return b(t);let a=e.trim().toLowerCase(),[r]=await n.database.select().from(s.botTable).where((0,i.eq)(o.sql`lower(${s.botTable.name})`,a));return r?b(r):l.DEFAULT_BOT.name.toLowerCase()===a?l.DEFAULT_BOT:null}async function E(){return(0,l.isBotMemoryOn)(await (0,r.readConfig)(l.BOT_MEMORY_KEY))}async function p(){return(0,l.isKeepWorkingOn)(await (0,r.readConfig)(l.KEEP_WORKING_KEY))}async function h(e){let[t]=await n.database.select().from(s.botTable).where((0,i.eq)(s.botTable.name,e));return t??null}e.s(["findJobBot",0,m,"listJobBots",0,d,"readBotMemoryOn",0,E,"readKeepWorkingOn",0,p]),a()}catch(e){a(e)}},!1),656719,e=>{"use strict";var t=e.i(247839),a=e.i(864328),i=e.i(735186);let o=[t.LIVE_PROVIDER.apiKeyName],n={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"}},r="EXA_API_KEY",l="DEFAULT_MODEL",c={key:l,label:"Default model",hint:"What a bot thinks with until it picks its own",text:!0,choices:a.TEXT_MODEL_PROVIDER_LIST.flatMap(e=>e.suggestModels.map(t=>({value:`${e.id}/${t.id}`,label:`${e.label} \xb7 ${t.label}`,needs:e.apiKeyName})))},d=e=>o.includes(e.apiKeyName),m=e=>!!e.signIn||"vercel-ai-gateway"===e.id,E=e=>({key:e.apiKeyName,label:e.label,provider:e.id,signIn:e.signIn,keysAt:e.keysAt,keyLooks:e.keyLooks}),p=[{id:"voice",title:"voice",hint:"calls run on this key",section:"keys",require:"any",note:"required for calls",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(d).map(E)},{id:"easy",title:"the easy ways",hint:"one sign-in or one key opens every bot",section:"keys",require:"none",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(m).map(e=>({...E(e),..."vercel-ai-gateway"===e.id&&{recommended:!0}}))},{id:"text",title:"or a provider's own key",hint:"what bots think with — add any, or none",section:"keys",require:"none",entries:a.TEXT_MODEL_PROVIDER_LIST.filter(e=>!d(e)&&!m(e)).map(E)},{id:"search",title:"search",hint:"how calls and bots look things up — one key, or their own model's",section:"keys",require:"none",entries:[{key:r,label:"Exa",hint:"web search in one call — dashboard.exa.ai",site:"exa.ai",keysAt:"https://dashboard.exa.ai/api-keys"}]},{id:"phone",title:"phone",hint:"tokens",section:"keys",require:"none",entries:[{key:i.TELEGRAM_TOKEN_KEY,label:"Telegram",site:"telegram.org",hint:"a bot token from @BotFather — then write to your bot, and allow it here"},{key:i.DISCORD_TOKEN_KEY,label:"Discord",site:"discord.com",hint:"a bot token from discord.com/developers — add the bot to a server of yours, then write to it directly"},{key:i.SLACK_APP_TOKEN_KEY,label:"Slack · app token",site:"slack.com",hint:"starts with xapp- — opens the connection. Slack takes this and the bot token"},{key:i.SLACK_BOT_TOKEN_KEY,label:"Slack · bot token",site:"slack.com",hint:"starts with xoxb- — speaks as the app"}]},{id:"bots",title:"Bots",hint:"what a bot runs on when it has not picked its own — start small: a small model is quick and costs little",section:"models",require:"none",entries:[c]},{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(n).map(e=>({key:n[e],...s[e],kind:e,choices:a.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(p.flatMap(e=>e.entries).map(e=>[e.key,e])),p.flatMap(e=>e.entries.map(e=>e.key)),Object.fromEntries(p.flatMap(e=>e.entries).filter(e=>e.choices?.length).map(e=>[e.key,e.choices])),e.s(["DEFAULT_MODEL_KEY",0,l,"EXA_API_KEY",0,r,"MEDIA_MODEL_KEYS",0,n])},724185,e=>e.a(async(t,a)=>{try{var i=e.i(336763),o=e.i(876393),n=e.i(220376);e.i(656719);var s=t([o]);async function r(e){let t=process.env[e]?.trim();if(t)return t;let[a]=await o.database.select({value:n.configTable.value}).from(n.configTable).where((0,i.eq)(n.configTable.key,e));return a?.value.trim()||void 0}async function l(e,t){await o.database.insert(n.configTable).values({key:e,value:t}).onConflictDoUpdate({target:n.configTable.key,set:{value:t}})}async function c(e){await o.database.delete(n.configTable).where((0,i.eq)(n.configTable.key,e))}[o]=s.then?(await s)():s,e.s(["readConfig",0,r,"removeConfig",0,c,"writeConfig",0,l]),a()}catch(e){a(e)}},!1),735186,e=>{"use strict";let t="TELEGRAM_BOT_TOKEN",a="DISCORD_BOT_TOKEN",i="SLACK_APP_TOKEN",o="SLACK_BOT_TOKEN";e.s(["DISCORD_TOKEN_KEY",0,a,"REACH_CHANNELS",0,["telegram","discord","slack"],"REACH_KEYS",0,{telegram:[t],discord:[a],slack:[i,o]},"SLACK_APP_TOKEN_KEY",0,i,"SLACK_BOT_TOKEN_KEY",0,o,"TELEGRAM_TOKEN_KEY",0,t,"reachPersonKey",0,e=>`REACH_PERSON_${e.toUpperCase()}`])},556325,e=>{"use strict";var t=e.i(853205);let a=t.z.object({start:t.z.number().nonnegative(),end:t.z.number().nonnegative(),text:t.z.string()});t.z.object({reason:t.z.string().max(128),seconds:t.z.number().nonnegative().nullable()}),e.s(["LIVE_BACKEND_MODEL",0,"gpt-5.6-luna","LiveFragmentSchema",0,a])}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0nr-v8s._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},264079,e=>{"use strict";var t=e.i(469719),a=e.i(687388);let i=t.z.enum(["openai","chatgpt","anthropic","google","xai","vercel-ai-gateway","mistral","deepseek","groq","cerebras","togetherai","fireworks","deepinfra","cohere"]),r=t.z.object({provider:i,model:t.z.string().trim().min(1,"Model name is required").max(80)}),l=t.z.enum(["openai","google","xai","vercel-ai-gateway"]),n=t.z.object({provider:l,model:t.z.string().trim().min(1,"Model name is required").max(120)}),o={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",models:{image:[{id:"gpt-image-1-mini",label:"GPT Image 1 mini",tier:"small"},{id:"gpt-image-2.5-flare",label:"GPT Image 2.5 Flare",tier:"mid"},{id:"gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[],speech:[{id:"tts-1",label:"TTS 1",tier:"small"},{id:"gpt-4o-mini-tts",label:"4o mini TTS",tier:"mid"},{id:"tts-1-hd",label:"TTS 1 HD",tier:"large"}],transcription:[{id:"gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"gpt-transcribe",label:"GPT Transcribe",tier:"mid"}]}},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",models:{image:[{id:"gemini-3.1-flash-lite-image",label:"3.1 Flash Lite Image",tier:"small"},{id:"gemini-3.1-flash-image",label:"3.1 Flash Image",tier:"mid"},{id:"gemini-3-pro-image",label:"3 Pro Image",tier:"large"}],video:[{id:"veo-3.1-lite-generate-preview",label:"Veo 3.1 Lite",tier:"small"},{id:"veo-3.1-fast-generate-preview",label:"Veo 3.1 Fast",tier:"mid"},{id:"veo-3.1-generate-preview",label:"Veo 3.1",tier:"large"}],speech:[{id:"gemini-2.5-flash-preview-tts",label:"2.5 Flash TTS",tier:"small"},{id:"gemini-3.1-flash-tts-preview",label:"3.1 Flash TTS",tier:"mid"},{id:"gemini-2.5-pro-preview-tts",label:"2.5 Pro TTS",tier:"large"}],transcription:[{id:"gemini-3.5-transcribe",label:"3.5 Transcribe",tier:"mid"}]}},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",models:{image:[{id:"grok-imagine-image",label:"Grok Imagine",tier:"small"},{id:"grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"mid"}],video:[{id:"grok-imagine-video",label:"Grok Imagine Video",tier:"small"},{id:"grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"}],speech:[{id:"grok-tts",label:"Grok TTS",tier:"mid"}],transcription:[{id:"grok-stt",label:"Grok STT",tier:"mid"}]}},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",models:{image:[{id:"bytedance/seedream-5.0-lite",label:"Seedream 5.0 Lite",tier:"small"},{id:"bfl/flux-2-klein-9b",label:"FLUX 2 Klein 9B",tier:"small"},{id:"spacexai/grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"small"},{id:"bfl/flux-2-pro",label:"FLUX 2 Pro",tier:"mid"},{id:"bytedance/seedream-5.0-pro",label:"Seedream 5.0 Pro",tier:"mid"},{id:"recraft/recraft-v4.1",label:"Recraft V4.1",tier:"mid"},{id:"openai/gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[{id:"bytedance/seedance-2.0-mini",label:"Seedance 2.0 Mini",tier:"small"},{id:"google/veo-3.1-lite-generate-001",label:"Veo 3.1 Lite",tier:"small"},{id:"alibaba/wan-v2.6-t2v",label:"Wan 2.6",tier:"small"},{id:"google/veo-3.1-fast-generate-001",label:"Veo 3.1 Fast",tier:"mid"},{id:"bytedance/seedance-2.5",label:"Seedance 2.5",tier:"mid"},{id:"spacexai/grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"},{id:"klingai/kling-v3.0-t2v",label:"Kling 3.0",tier:"large"},{id:"google/veo-3.1-generate-001",label:"Veo 3.1",tier:"large"}],speech:[{id:"fish-audio/s1",label:"Fish Audio S1",tier:"small"},{id:"openai/tts-1",label:"OpenAI TTS 1",tier:"small"},{id:"spacexai/grok-tts",label:"Grok TTS",tier:"mid"},{id:"fish-audio/s2.1-pro",label:"Fish Audio S2.1 Pro",tier:"mid"},{id:"openai/tts-1-hd",label:"OpenAI TTS 1 HD",tier:"large"}],transcription:[{id:"spacexai/grok-stt",label:"Grok STT",tier:"small"},{id:"fish-audio/transcribe-1",label:"Fish Transcribe 1",tier:"small"},{id:"openai/gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"openai/gpt-4o-transcribe",label:"4o Transcribe",tier:"mid"},{id:"google/gemini-3.5-transcribe",label:"Gemini 3.5 Transcribe",tier:"mid"}]}}},s=Object.keys(o).map(e=>({id:e,...o[e]})),d={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",keysAt:"https://platform.openai.com/api-keys",keyLooks:"sk-…",suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:105e4},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:105e4},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:105e4},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:105e4}]},chatgpt:{label:"GPT Subscription",apiKeyName:"CHATGPT_SIGN_IN",signIn:!0,suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:272e3},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:272e3},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:272e3},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:272e3}]},anthropic:{label:"Claude",apiKeyName:"ANTHROPIC_API_KEY",keysAt:"https://platform.claude.com/settings/keys",keyLooks:"sk-ant-…",suggestModels:[{id:"claude-haiku-4-5",label:"Haiku 4.5",tier:"small"},{id:"claude-sonnet-5",label:"Sonnet 5",tier:"mid",context:1e6},{id:"claude-opus-5",label:"Opus 5",tier:"large",context:1e6},{id:"claude-fable-5-1",label:"Fable 5.1",tier:"large"}]},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",keysAt:"https://aistudio.google.com/apikey",keyLooks:"AIza…",suggestModels:[{id:"gemini-3.5-flash-lite",label:"3.5 Flash Lite",tier:"small",context:1e6},{id:"gemini-3.8-flash",label:"3.8 Flash",tier:"mid",context:1e6}]},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",keysAt:"https://console.x.ai",keyLooks:"xai-…",suggestModels:[{id:"grok-4.6",label:"Grok 4.6",tier:"large",context:5e5}]},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",keysAt:"https://vercel.com/docs/ai-gateway/authentication-and-byok/authentication",suggestModels:[{id:"zai/glm-5.3-flash",label:"GLM 5.3 Flash",tier:"small"},{id:"google/gemini-3.8-flash",label:"Gemini 3.8 Flash",tier:"small"},{id:"openai/gpt-5.6-luna",label:"GPT 5.6 Luna",tier:"small",context:105e4},{id:"zai/glm-5.3",label:"GLM 5.3",tier:"mid"},{id:"spacexai/grok-4.6",label:"Grok 4.6",tier:"mid",context:5e5},{id:"anthropic/claude-sonnet-5",label:"Claude Sonnet 5",tier:"mid"},{id:"openai/gpt-5.6-terra",label:"GPT 5.6 Terra",tier:"mid",context:105e4},{id:"moonshotai/kimi-k3",label:"Kimi K3",tier:"mid"},{id:"openai/gpt-5.6-sol",label:"GPT 5.6 Sol",tier:"large",context:105e4},{id:"anthropic/claude-opus-5",label:"Claude Opus 5",tier:"large",context:1e6},{id:"openai/gpt-6-astra",label:"GPT 6 Astra",tier:"large",context:105e4}]},mistral:{label:"Mistral",apiKeyName:"MISTRAL_API_KEY",keysAt:"https://console.mistral.ai/api-keys",suggestModels:[{id:"ministral-8b-latest",label:"Ministral 8B",tier:"small"},{id:"mistral-small-latest",label:"Small",tier:"mid"},{id:"mistral-medium-latest",label:"Medium",tier:"large"},{id:"mistral-large-latest",label:"Large",tier:"large"}]},deepseek:{label:"DeepSeek",apiKeyName:"DEEPSEEK_API_KEY",keysAt:"https://platform.deepseek.com/api_keys",keyLooks:"sk-…",suggestModels:[{id:"deepseek-flash",label:"V4.1 Flash",tier:"small",context:1e6},{id:"deepseek-v4-pro",label:"V4 Pro",tier:"large",context:1e6}]},groq:{label:"Groq",apiKeyName:"GROQ_API_KEY",keysAt:"https://console.groq.com/keys",keyLooks:"gsk_…",suggestModels:[{id:"openai/gpt-oss-20b",label:"GPT OSS 20B",tier:"small",context:131072},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"llama-3.3-70b-versatile",label:"Llama 3.3 70B",tier:"mid",context:131072}]},cerebras:{label:"Cerebras",apiKeyName:"CEREBRAS_API_KEY",keysAt:"https://cloud.cerebras.ai",keyLooks:"csk-…",suggestModels:[{id:"qwen-3.8-27b",label:"Qwen 3.8 27B",tier:"small",context:64e3},{id:"gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:65536}]},togetherai:{label:"Together",apiKeyName:"TOGETHER_AI_API_KEY",keysAt:"https://api.together.ai/settings/api-keys",suggestModels:[{id:"Qwen/Qwen3.5-9B",label:"Qwen 3.5 9B",tier:"small",context:262144},{id:"zai-org/GLM-5.3-Flash",label:"GLM 5.3 Flash",tier:"small",context:1048575},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1e6},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048575},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},fireworks:{label:"Fireworks",apiKeyName:"FIREWORKS_API_KEY",keysAt:"https://app.fireworks.ai/account/api-keys",keyLooks:"fw_…",suggestModels:[{id:"accounts/fireworks/models/glm-5p3-flash",label:"GLM 5.3 Flash",tier:"small",context:1048576},{id:"accounts/fireworks/models/deepseek-v4p1-flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"accounts/fireworks/models/minimax-m3",label:"MiniMax M3",tier:"mid",context:512e3},{id:"accounts/fireworks/models/glm-5p3",label:"GLM 5.3",tier:"large",context:1048576},{id:"accounts/fireworks/models/kimi-k3",label:"Kimi K3",tier:"large",context:1048576}]},deepinfra:{label:"DeepInfra",apiKeyName:"DEEPINFRA_API_KEY",keysAt:"https://deepinfra.com/dash/api_keys",suggestModels:[{id:"deepseek-ai/DeepSeek-V4-Flash-0731",label:"DeepSeek V4 Flash",tier:"small",context:1048576},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"zai-org/GLM-5.2",label:"GLM 5.2",tier:"mid",context:1048576},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048576},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},cohere:{label:"Cohere",apiKeyName:"COHERE_API_KEY",keysAt:"https://dashboard.cohere.com/api-keys",suggestModels:[{id:"command-r7b-12-2024",label:"Command R7B",tier:"small",context:128e3},{id:"command-a-03-2025",label:"Command A",tier:"mid",context:256e3},{id:"command-a-plus-05-2026",label:"Command A+",tier:"large",context:128e3}]}},m=Object.keys(d).map(e=>({id:e,...d[e]}));e.s(["MEDIA_MODEL_PROVIDERS",0,o,"MEDIA_MODEL_PROVIDER_LIST",0,s,"TEXT_MODEL_PROVIDERS",0,d,"TEXT_MODEL_PROVIDER_LIST",0,m,"canMakeKind",0,(e,t)=>(o[e]?.models[t]?.length??0)>0,"compactAtFor",0,e=>e&&e>0?Math.round(e*a.BOT_RUN.compactHeadroom):a.BOT_RUN.compactAt,"contextWindowOf",0,function(e,t,a=[]){if("vercel-ai-gateway"===e)return a.find(e=>e.id===t)?.contextWindow??null;let i=d[e].suggestModels;return i.find(e=>e.id===t)?.context??null},"defaultModelOf",0,e=>(e.suggestModels.find(e=>"mid"===e.tier)??e.suggestModels[0])?.id,"parseMediaModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=n.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"parseTextModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=r.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"textModelProviderSchema",0,i,"textModelRefSchema",0,r])},514499,e=>{"use strict";e.s(["COMMON_VALIDATE",0,{name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}}])},89929,609730,277988,e=>{"use strict";var t=e.i(874321);function a(e,a){return(0,t.constructFrom)(a||e,e)}e.s(["toDate",0,a],609730),e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let t=a(e),i=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return i.setUTCFullYear(t.getFullYear()),e-i}],89929),e.s(["normalizeDates",0,function(e,...a){let i=t.constructFrom.bind(null,e||a.find(e=>"object"==typeof e));return a.map(i)}],277988)},874321,438220,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],438220),e.s(["constructFrom",0,function(e,a){return"function"==typeof e?e(a):e&&"object"==typeof e&&t in e?e[t](a):e instanceof Date?new e.constructor(a):new Date(a)}],874321)},599447,e=>{"use strict";var t=e.i(874321);e.s(["constructNow",0,function(e){return(0,t.constructFrom)(e,Date.now())}])},881237,662001,e=>{"use strict";var t;let a={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e){return (t={})=>{let a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}let r={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},l={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function n(e){return(t,a)=>{let i;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;i=e.values[r]||e.values[t]}return i[e.argumentCallback?e.argumentCallback(t):t]}}let o={ordinalNumber:(e,t)=>{let a=Number(e),i=a%100;if(i>20||i<10)switch(i%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:n({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:n({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:n({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:n({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:n({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function s(e){return(t,a={})=>{let i,r=a.width,l=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=t.match(l);if(!n)return null;let o=n[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(s)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a}(s,e=>e.test(o)):function(e,t){for(let a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a}(s,e=>e.test(o));return i=e.valueCallback?e.valueCallback(d):d,{value:i=a.valueCallback?a.valueCallback(i):i,rest:t.slice(o.length)}}}let d={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{let i=e.match(t.matchPattern);if(!i)return null;let r=i[0],l=e.match(t.parsePattern);if(!l)return null;let n=t.valueCallback?t.valueCallback(l[0]):l[0];return{value:n=a.valueCallback?a.valueCallback(n):n,rest:e.slice(r.length)}}),era:s({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:s({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:s({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:s({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:s({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,i)=>{let r,l=a[e];if(r="string"==typeof l?l:1===t?l.one:l.other.replace("{{count}}",t.toString()),i?.addSuffix)if(i.comparison&&i.comparison>0)return"in "+r;else return r+" ago";return r},formatLong:r,formatRelative:(e,t,a,i)=>l[e],localize:o,match:d,options:{weekStartsOn:0,firstWeekContainsDate:1}}],881237);let m={};e.s(["getDefaultOptions",0,function(){return m}],662001)},469719,e=>{"use strict";var t=e.i(562810);e.s(["z",0,t])}];
1
+ module.exports=[418520,e=>e.a(async(t,a)=>{try{var i=await e.y("@libsql/client-6da938047d5fc1cd");e.n(i),a()}catch(e){a(e)}},!0),902157,(e,t,a)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,a)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,a)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,a)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,a)=>{t.exports=e.x("node:util",()=>require("node:util"))},264079,e=>{"use strict";var t=e.i(469719),a=e.i(687388);let i=t.z.enum(["openai","chatgpt","anthropic","google","xai","vercel-ai-gateway","mistral","deepseek","groq","cerebras","togetherai","fireworks","deepinfra","cohere"]),r=t.z.object({provider:i,model:t.z.string().trim().min(1,"Model name is required").max(80)}),l=t.z.enum(["openai","google","xai","vercel-ai-gateway"]),n=t.z.object({provider:l,model:t.z.string().trim().min(1,"Model name is required").max(120)}),o={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",models:{image:[{id:"gpt-image-1-mini",label:"GPT Image 1 mini",tier:"small"},{id:"gpt-image-2.5-flare",label:"GPT Image 2.5 Flare",tier:"mid"},{id:"gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[],speech:[{id:"tts-1",label:"TTS 1",tier:"small"},{id:"gpt-4o-mini-tts",label:"4o mini TTS",tier:"mid"},{id:"tts-1-hd",label:"TTS 1 HD",tier:"large"}],transcription:[{id:"gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"gpt-transcribe",label:"GPT Transcribe",tier:"mid"}]}},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",models:{image:[{id:"gemini-3.1-flash-lite-image",label:"3.1 Flash Lite Image",tier:"small"},{id:"gemini-3.1-flash-image",label:"3.1 Flash Image",tier:"mid"},{id:"gemini-3-pro-image",label:"3 Pro Image",tier:"large"}],video:[{id:"veo-3.1-lite-generate-preview",label:"Veo 3.1 Lite",tier:"small"},{id:"veo-3.1-fast-generate-preview",label:"Veo 3.1 Fast",tier:"mid"},{id:"veo-3.1-generate-preview",label:"Veo 3.1",tier:"large"}],speech:[{id:"gemini-2.5-flash-preview-tts",label:"2.5 Flash TTS",tier:"small"},{id:"gemini-3.1-flash-tts-preview",label:"3.1 Flash TTS",tier:"mid"},{id:"gemini-2.5-pro-preview-tts",label:"2.5 Pro TTS",tier:"large"}],transcription:[{id:"gemini-3.5-transcribe",label:"3.5 Transcribe",tier:"mid"}]}},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",models:{image:[{id:"grok-imagine-image",label:"Grok Imagine",tier:"small"},{id:"grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"mid"}],video:[{id:"grok-imagine-video",label:"Grok Imagine Video",tier:"small"},{id:"grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"}],speech:[{id:"grok-tts",label:"Grok TTS",tier:"mid"}],transcription:[{id:"grok-stt",label:"Grok STT",tier:"mid"}]}},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",models:{image:[{id:"bytedance/seedream-5.0-lite",label:"Seedream 5.0 Lite",tier:"small"},{id:"bfl/flux-2-klein-9b",label:"FLUX 2 Klein 9B",tier:"small"},{id:"spacexai/grok-imagine-image-2.0",label:"Grok Imagine 2.0",tier:"small"},{id:"bfl/flux-2-pro",label:"FLUX 2 Pro",tier:"mid"},{id:"bytedance/seedream-5.0-pro",label:"Seedream 5.0 Pro",tier:"mid"},{id:"recraft/recraft-v4.1",label:"Recraft V4.1",tier:"mid"},{id:"openai/gpt-image-2.5-sunburst",label:"GPT Image 2.5 Sunburst",tier:"large"}],video:[{id:"bytedance/seedance-2.0-mini",label:"Seedance 2.0 Mini",tier:"small"},{id:"google/veo-3.1-lite-generate-001",label:"Veo 3.1 Lite",tier:"small"},{id:"alibaba/wan-v2.6-t2v",label:"Wan 2.6",tier:"small"},{id:"google/veo-3.1-fast-generate-001",label:"Veo 3.1 Fast",tier:"mid"},{id:"bytedance/seedance-2.5",label:"Seedance 2.5",tier:"mid"},{id:"spacexai/grok-imagine-video-1.5",label:"Grok Imagine Video 1.5",tier:"mid"},{id:"klingai/kling-v3.0-t2v",label:"Kling 3.0",tier:"large"},{id:"google/veo-3.1-generate-001",label:"Veo 3.1",tier:"large"}],speech:[{id:"fish-audio/s1",label:"Fish Audio S1",tier:"small"},{id:"openai/tts-1",label:"OpenAI TTS 1",tier:"small"},{id:"spacexai/grok-tts",label:"Grok TTS",tier:"mid"},{id:"fish-audio/s2.1-pro",label:"Fish Audio S2.1 Pro",tier:"mid"},{id:"openai/tts-1-hd",label:"OpenAI TTS 1 HD",tier:"large"}],transcription:[{id:"spacexai/grok-stt",label:"Grok STT",tier:"small"},{id:"fish-audio/transcribe-1",label:"Fish Transcribe 1",tier:"small"},{id:"openai/gpt-4o-mini-transcribe",label:"4o mini Transcribe",tier:"small"},{id:"openai/gpt-4o-transcribe",label:"4o Transcribe",tier:"mid"},{id:"google/gemini-3.5-transcribe",label:"Gemini 3.5 Transcribe",tier:"mid"}]}}},s=Object.keys(o).map(e=>({id:e,...o[e]})),d={openai:{label:"Open AI",apiKeyName:"OPENAI_API_KEY",keysAt:"https://platform.openai.com/api-keys",keyLooks:"sk-…",suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:105e4},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:105e4},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:105e4},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:105e4}]},chatgpt:{label:"GPT Subscription",apiKeyName:"CHATGPT_SIGN_IN",signIn:!0,suggestModels:[{id:"gpt-5.6-luna",label:"5.6 Luna",tier:"small",context:272e3},{id:"gpt-5.6-terra",label:"5.6 Terra",tier:"mid",context:272e3},{id:"gpt-5.6-sol",label:"5.6 Sol",tier:"large",context:272e3},{id:"gpt-6-astra",label:"6 Astra",tier:"large",context:272e3}]},anthropic:{label:"Claude",apiKeyName:"ANTHROPIC_API_KEY",keysAt:"https://platform.claude.com/settings/keys",keyLooks:"sk-ant-…",suggestModels:[{id:"claude-haiku-4-5",label:"Haiku 4.5",tier:"small"},{id:"claude-sonnet-5",label:"Sonnet 5",tier:"mid",context:1e6},{id:"claude-opus-5",label:"Opus 5",tier:"large",context:1e6},{id:"claude-fable-5-1",label:"Fable 5.1",tier:"large"}]},google:{label:"Gemini",apiKeyName:"GOOGLE_GENERATIVE_AI_API_KEY",keysAt:"https://aistudio.google.com/apikey",keyLooks:"AIza…",suggestModels:[{id:"gemini-3.5-flash-lite",label:"3.5 Flash Lite",tier:"small",context:1e6},{id:"gemini-3.8-flash",label:"3.8 Flash",tier:"mid",context:1e6}]},xai:{label:"xAI",apiKeyName:"XAI_API_KEY",keysAt:"https://console.x.ai",keyLooks:"xai-…",suggestModels:[{id:"grok-4.6",label:"Grok 4.6",tier:"large",context:5e5}]},"vercel-ai-gateway":{label:"Vercel AI GateWay",apiKeyName:"AI_GATEWAY_API_KEY",keysAt:"https://vercel.com/docs/ai-gateway/authentication-and-byok/authentication",suggestModels:[{id:"zai/glm-5.3-flash",label:"GLM 5.3 Flash",tier:"small"},{id:"google/gemini-3.8-flash",label:"Gemini 3.8 Flash",tier:"small"},{id:"openai/gpt-5.6-luna",label:"GPT 5.6 Luna",tier:"small",context:105e4},{id:"zai/glm-5.3",label:"GLM 5.3",tier:"mid"},{id:"spacexai/grok-4.6",label:"Grok 4.6",tier:"mid",context:5e5},{id:"anthropic/claude-sonnet-5",label:"Claude Sonnet 5",tier:"mid"},{id:"openai/gpt-5.6-terra",label:"GPT 5.6 Terra",tier:"mid",context:105e4},{id:"moonshotai/kimi-k3",label:"Kimi K3",tier:"mid"},{id:"openai/gpt-5.6-sol",label:"GPT 5.6 Sol",tier:"large",context:105e4},{id:"anthropic/claude-opus-5",label:"Claude Opus 5",tier:"large",context:1e6},{id:"openai/gpt-6-astra",label:"GPT 6 Astra",tier:"large",context:105e4}]},mistral:{label:"Mistral",apiKeyName:"MISTRAL_API_KEY",keysAt:"https://console.mistral.ai/api-keys",suggestModels:[{id:"ministral-8b-latest",label:"Ministral 8B",tier:"small"},{id:"mistral-small-latest",label:"Small",tier:"mid"},{id:"mistral-medium-latest",label:"Medium",tier:"large"},{id:"mistral-large-latest",label:"Large",tier:"large"}]},deepseek:{label:"DeepSeek",apiKeyName:"DEEPSEEK_API_KEY",keysAt:"https://platform.deepseek.com/api_keys",keyLooks:"sk-…",suggestModels:[{id:"deepseek-flash",label:"V4.1 Flash",tier:"small",context:1e6},{id:"deepseek-v4-pro",label:"V4 Pro",tier:"large",context:1e6}]},groq:{label:"Groq",apiKeyName:"GROQ_API_KEY",keysAt:"https://console.groq.com/keys",keyLooks:"gsk_…",suggestModels:[{id:"openai/gpt-oss-20b",label:"GPT OSS 20B",tier:"small",context:131072},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"llama-3.3-70b-versatile",label:"Llama 3.3 70B",tier:"mid",context:131072}]},cerebras:{label:"Cerebras",apiKeyName:"CEREBRAS_API_KEY",keysAt:"https://cloud.cerebras.ai",keyLooks:"csk-…",suggestModels:[{id:"qwen-3.8-27b",label:"Qwen 3.8 27B",tier:"small",context:64e3},{id:"gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:65536}]},togetherai:{label:"Together",apiKeyName:"TOGETHER_AI_API_KEY",keysAt:"https://api.together.ai/settings/api-keys",suggestModels:[{id:"Qwen/Qwen3.5-9B",label:"Qwen 3.5 9B",tier:"small",context:262144},{id:"zai-org/GLM-5.3-Flash",label:"GLM 5.3 Flash",tier:"small",context:1048575},{id:"openai/gpt-oss-120b",label:"GPT OSS 120B",tier:"mid",context:131072},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1e6},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048575},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},fireworks:{label:"Fireworks",apiKeyName:"FIREWORKS_API_KEY",keysAt:"https://app.fireworks.ai/account/api-keys",keyLooks:"fw_…",suggestModels:[{id:"accounts/fireworks/models/glm-5p3-flash",label:"GLM 5.3 Flash",tier:"small",context:1048576},{id:"accounts/fireworks/models/deepseek-v4p1-flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"accounts/fireworks/models/minimax-m3",label:"MiniMax M3",tier:"mid",context:512e3},{id:"accounts/fireworks/models/glm-5p3",label:"GLM 5.3",tier:"large",context:1048576},{id:"accounts/fireworks/models/kimi-k3",label:"Kimi K3",tier:"large",context:1048576}]},deepinfra:{label:"DeepInfra",apiKeyName:"DEEPINFRA_API_KEY",keysAt:"https://deepinfra.com/dash/api_keys",suggestModels:[{id:"deepseek-ai/DeepSeek-V4-Flash-0731",label:"DeepSeek V4 Flash",tier:"small",context:1048576},{id:"deepseek-ai/DeepSeek-V4.1-Flash",label:"DeepSeek V4.1 Flash",tier:"mid",context:1048576},{id:"zai-org/GLM-5.2",label:"GLM 5.2",tier:"mid",context:1048576},{id:"zai-org/GLM-5.3",label:"GLM 5.3",tier:"large",context:1048576},{id:"moonshotai/Kimi-K3",label:"Kimi K3",tier:"large",context:1048576}]},cohere:{label:"Cohere",apiKeyName:"COHERE_API_KEY",keysAt:"https://dashboard.cohere.com/api-keys",suggestModels:[{id:"command-r7b-12-2024",label:"Command R7B",tier:"small",context:128e3},{id:"command-a-03-2025",label:"Command A",tier:"mid",context:256e3},{id:"command-a-plus-05-2026",label:"Command A+",tier:"large",context:128e3}]}},m=Object.keys(d).map(e=>({id:e,...d[e]}));e.s(["MEDIA_MODEL_PROVIDERS",0,o,"MEDIA_MODEL_PROVIDER_LIST",0,s,"TEXT_MODEL_PROVIDERS",0,d,"TEXT_MODEL_PROVIDER_LIST",0,m,"canMakeKind",0,(e,t)=>(o[e]?.models[t]?.length??0)>0,"compactAtFor",0,e=>e&&e>0?Math.round(e*a.BOT_RUN.compactHeadroom):a.BOT_RUN.compactAt,"contextWindowOf",0,function(e,t,a=[]){if("vercel-ai-gateway"===e)return a.find(e=>e.id===t)?.contextWindow??null;let i=d[e].suggestModels;return i.find(e=>e.id===t)?.context??null},"defaultModelOf",0,e=>(e.suggestModels.find(e=>"mid"===e.tier)??e.suggestModels[0])?.id,"parseMediaModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=n.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"parseTextModel",0,function(e){let[t,...a]=(e??"").trim().split("/"),i=r.safeParse({provider:t,model:a.join("/")});return i.success?i.data:null},"textModelProviderSchema",0,i,"textModelRefSchema",0,r])},514499,e=>{"use strict";e.s(["COMMON_VALIDATE",0,{name:{max:16},shortDescription:{max:60},description:{max:100},prompt:{max:4e3}}])},89929,609730,277988,e=>{"use strict";var t=e.i(874321);function a(e,a){return(0,t.constructFrom)(a||e,e)}e.s(["toDate",0,a],609730),e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let t=a(e),i=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return i.setUTCFullYear(t.getFullYear()),e-i}],89929),e.s(["normalizeDates",0,function(e,...a){let i=t.constructFrom.bind(null,e||a.find(e=>"object"==typeof e));return a.map(i)}],277988)},874321,438220,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],438220),e.s(["constructFrom",0,function(e,a){return"function"==typeof e?e(a):e&&"object"==typeof e&&t in e?e[t](a):e instanceof Date?new e.constructor(a):new Date(a)}],874321)},599447,e=>{"use strict";var t=e.i(874321);e.s(["constructNow",0,function(e){return(0,t.constructFrom)(e,Date.now())}])},881237,662001,e=>{"use strict";var t;let a={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function i(e){return (t={})=>{let a=t.width?String(t.width):e.defaultWidth;return e.formats[a]||e.formats[e.defaultWidth]}}let r={date:i({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:i({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:i({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},l={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function n(e){return(t,a)=>{let i;if("formatting"===(a?.context?String(a.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=a?.width?String(a.width):t;i=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=a?.width?String(a.width):e.defaultWidth;i=e.values[r]||e.values[t]}return i[e.argumentCallback?e.argumentCallback(t):t]}}let o={ordinalNumber:(e,t)=>{let a=Number(e),i=a%100;if(i>20||i<10)switch(i%10){case 1:return a+"st";case 2:return a+"nd";case 3:return a+"rd"}return a+"th"},era:n({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:n({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:n({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:n({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:n({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function s(e){return(t,a={})=>{let i,r=a.width,l=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],n=t.match(l);if(!n)return null;let o=n[0],s=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],d=Array.isArray(s)?function(e,t){for(let a=0;a<e.length;a++)if(t(e[a]))return a}(s,e=>e.test(o)):function(e,t){for(let a in e)if(Object.prototype.hasOwnProperty.call(e,a)&&t(e[a]))return a}(s,e=>e.test(o));return i=e.valueCallback?e.valueCallback(d):d,{value:i=a.valueCallback?a.valueCallback(i):i,rest:t.slice(o.length)}}}let d={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,a={})=>{let i=e.match(t.matchPattern);if(!i)return null;let r=i[0],l=e.match(t.parsePattern);if(!l)return null;let n=t.valueCallback?t.valueCallback(l[0]):l[0];return{value:n=a.valueCallback?a.valueCallback(n):n,rest:e.slice(r.length)}}),era:s({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:s({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:s({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:s({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:s({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,i)=>{let r,l=a[e];if(r="string"==typeof l?l:1===t?l.one:l.other.replace("{{count}}",t.toString()),i?.addSuffix)if(i.comparison&&i.comparison>0)return"in "+r;else return r+" ago";return r},formatLong:r,formatRelative:(e,t,a,i)=>l[e],localize:o,match:d,options:{weekStartsOn:0,firstWeekContainsDate:1}}],881237);let m={};e.s(["getDefaultOptions",0,function(){return m}],662001)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1tg5got._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0paqm5y._.js.map
@@ -0,0 +1,8 @@
1
+ module.exports=[874533,(e,t,a)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},666680,(e,t,a)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},912714,(e,t,a)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},660526,(e,t,a)=>{t.exports=e.x("node:os",()=>require("node:os"))},944971,e=>{"use strict";var t=e.i(105249),a=e.i(264079),i=e.i(704161),r=e.i(514499),l=e.i(41444);let n="currentColor",o=[{id:"system",label:"System",value:n},{id:"slate",label:"Slate",value:"#64748B"},{id:"indigo",label:"Indigo",value:"#6366F1"},{id:"blue",label:"Blue",value:"#3B82F6"},{id:"cyan",label:"Cyan",value:"#06B6D4"},{id:"teal",label:"Teal",value:"#14B8A6"},{id:"green",label:"Green",value:"#22C55E"},{id:"lime",label:"Lime",value:"#84CC16"},{id:"amber",label:"Amber",value:"#F59E0B"},{id:"orange",label:"Orange",value:"#F97316"},{id:"red",label:"Red",value:"#EF4444"},{id:"pink",label:"Pink",value:"#EC4899"},{id:"violet",label:"Violet",value:"#8B5CF6"},{id:"fuchsia",label:"Fuchsia",value:"#D946EF"},{id:"rose",label:"Rose",value:"#F43F5E"},{id:"sky",label:"Sky",value:"#0EA5E9"},{id:"emerald",label:"Emerald",value:"#10B981"},{id:"yellow",label:"Yellow",value:"#EAB308"},{id:"stone",label:"Stone",value:"#78716C"}],s=Object.fromEntries(o.map(e=>[e.id,e.value]));o.filter(e=>e.value!==n).map(e=>e.value),s.amber,s.red,s.cyan,s.teal,s.green,s.lime,s.amber,s.orange,s.sky,s.emerald,s.yellow;let u=Object.keys({rainbow:{label:"Rainbow",look:"flow",colors:[0,45,90,140,190,240,290,330,360].map(e=>`oklch(0.77 0.16 ${e})`)},duo:{label:"Duo",look:"duo",colors:["#818CF8","#F472B6"]},aurora:{label:"Aurora",look:"aurora",edge:"dark",colors:["#1a2f73","#2c56c9","#34d399","#22d3ee","#a7f3d0"]},"aurora-pink":{label:"Pink aurora",look:"aurora",edge:"dark",colors:["#3a1478","#7c3aed","#f472b6","#e879f9","#fbcfe8"]}});var d=e.i(889034);let c=t.default.object({color:t.default.string().regex(/^(#[0-9a-fA-F]{6}|currentColor)$/,"Hex color").optional(),shape:t.default.enum(["blob","poly","squircle","heart"]).optional(),outline:t.default.boolean().optional(),paint:t.default.enum(u).optional()}),f=t.default.string().max(r.COMMON_VALIDATE.prompt.max),m=t.default.object({id:t.default.number(),name:t.default.string(),serverName:t.default.string()}),p=t.default.string().trim().transform(e=>e.replace(/\s+/g," ")).refine(e=>e.toLowerCase()!==d.ROOM_THURSDAY.toLowerCase(),"Thursday is reserved for the voice assistant.").pipe(t.default.string().min(1,"A name is required").max(r.COMMON_VALIDATE.name.max)),h=t.default.object({input:t.default.number(),output:t.default.number()});t.default.object({name:t.default.string(),description:t.default.string(),systemPrompt:t.default.string().nullish(),icon:c.nullish(),provider:a.textModelProviderSchema.nullish(),model:t.default.string().nullish(),compactAt:t.default.number().nullish(),disabled:t.default.boolean(),createdAt:i.DateLikeSchema,tools:m.array().default([]),tokens:h,lastJobAt:i.DateLikeSchema.nullish()}),t.default.object({name:p,description:t.default.string().trim().min(1,"Say what this bot is for").max(r.COMMON_VALIDATE.description.max),systemPrompt:f.optional(),icon:c.optional(),provider:a.textModelProviderSchema.nullish(),model:t.default.string().trim().max(80).nullish(),compactAt:t.default.coerce.number().int().min(8e3,"At least 8k").nullish(),disabled:t.default.boolean().optional(),toolIds:t.default.number().int().array().max(10).default([])}),t.default.object({file:t.default.string(),path:t.default.string(),line:t.default.string(),at:i.DateLikeSchema,bytes:t.default.number()});let g="Continue",b={thursday:"Thursday, on the call:",user:"The user, on screen:"},w=t.default.discriminatedUnion("type",[t.default.object({type:t.default.literal("text"),text:t.default.string()}),t.default.object({type:t.default.literal("image"),src:t.default.string()})]),S=t.default.object({id:t.default.string(),seq:t.default.number(),bot:t.default.string().nullable(),parent:t.default.string().nullable(),to:t.default.string().nullish(),at:i.DateLikeSchema}),y=t.default.discriminatedUnion("kind",[S.extend({kind:t.default.literal("user"),text:t.default.string()}),S.extend({kind:t.default.literal("text"),text:t.default.string()}),S.extend({kind:t.default.literal("note"),text:t.default.string()}),S.extend({kind:t.default.literal("stop"),text:t.default.string()}),S.extend({kind:t.default.literal("tool"),callId:t.default.string(),name:t.default.string(),input:t.default.string(),note:t.default.string().nullish(),path:t.default.string().nullish()}),S.extend({kind:t.default.literal("tool-result"),callId:t.default.string(),name:t.default.string(),results:w.array(),more:t.default.boolean()}),S.extend({kind:t.default.literal("ask"),callId:t.default.string(),to:t.default.string(),text:t.default.string(),question:t.default.boolean().optional()})]),A=t.default.object({question:t.default.string(),messageId:t.default.string().optional(),bot:t.default.string().optional(),options:t.default.string().array(),auto:t.default.boolean()});t.default.object({id:t.default.string(),bot:t.default.string(),label:t.default.string(),request:t.default.string(),status:t.default.enum(["running","waiting","done","cancelled"]),outcome:t.default.string().nullable(),ask:A.nullable(),seen:t.default.boolean(),routineId:t.default.string().nullable(),tokens:h,contextTokens:t.default.number(),contextBudget:t.default.number(),createdAt:i.DateLikeSchema,updatedAt:i.DateLikeSchema,lines:y.array(),room:d.RoomViewSchema}),e.s(["BOT_MEMORY_KEY",0,"BOT_MEMORY","COMPACT_AT_MIN",0,8e3,"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},"KEEP_WORKING_KEY",0,"KEEP_WORKING","THREAD_CONTINUE",0,g,"isAppStop",0,e=>{let t=e?.options??[];return!e?.messageId&&1===t.length&&t[0]===g},"isBotMemoryOn",0,e=>e?.trim()!=="off","isKeepWorkingOn",0,e=>e?.trim()==="on","tagSpeaker",0,(e,t)=>`${b[e]} ${t}`,"threadActivity",0,function(e,t=120){let a=null;for(let i=e.length-1;i>=0;i--){let r=e[i];if("tool"===r.kind)a??=`${r.name} ${r.note??r.input}`;else if("text"===r.kind)return(0,l.clip)(a?`${r.text} → ${a}`:r.text,t);else if("ask"===r.kind)return(0,l.clip)(`asked ${r.to}: ${r.text}`,t);else if("user"===r.kind)break}return a?(0,l.clip)(a,t):null},"untagSpeaker",0,e=>{for(let t of Object.values(b))if(e.startsWith(`${t} `))return e.slice(t.length+1);return e},"workHandle",0,e=>e.slice(0,6)],944971)},889034,e=>{"use strict";var t=e.i(469719);let a=t.z.object({to:t.z.string().trim().min(1),text:t.z.string().trim().min(1),kind:t.z.enum(["message","question"]).default("message"),options:t.z.array(t.z.string().trim().min(1)).nullish(),replyTo:t.z.string().nullish()}),i=t.z.enum(["queued","running","waiting","external","paused","done","cancelled"]),r=t.z.object({bot:t.z.string(),state:i}),l=t.z.object({id:t.z.string(),bot:t.z.string(),text:t.z.string(),options:t.z.string().array().optional()}),n=t.z.object({participants:r.array(),questions:l.array(),deliveries:t.z.object({id:t.z.string(),bot:t.z.string(),text:t.z.string(),delivered:t.z.boolean()}).array(),relays:t.z.object({id:t.z.number(),bot:t.z.string(),text:t.z.string(),kind:t.z.enum(["message","question","report","interrupted"]),messageId:t.z.string().nullable()}).array()});e.s(["RESUME_CHECK",0,"Resume from the saved state; inspect any tool whose result is missing before repeating it.","ROOM_THURSDAY",0,"Thursday","RoomMessageSchema",0,a,"RoomViewSchema",0,n])},786025,e=>{"use strict";var t=e.i(666680),a=e.i(902157),i=e.i(912714),r=e.i(660526),l=e.i(750227),n=e.i(687388),o=e.i(640911),s=e.i(874533),u=n;let d=new Set(["node_modules",".git",".next","dist","build",".venv","__pycache__",".turbo","coverage"]);async function*c(e){let t;try{t=await (0,i.readdir)(e,{withFileTypes:!0})}catch{return}for(let a of t){if(d.has(a.name)||a.name.startsWith("."))continue;let t=(0,l.join)(e,a.name);a.isDirectory()?yield*c(t):a.isFile()&&(yield t)}}async function f(e,t,a,r){if(e.length<=r.max)return e;let n=(0,l.join)(a,r.dir),o=(0,l.join)(n,`${new Date().toISOString().replace(/[:.]/g,"-")}-${t.replace(/[^a-zA-Z0-9_-]+/g,"_")}.txt`),s=o;try{await (0,i.mkdir)(n,{recursive:!0}),await (0,i.writeFile)(o,e),s=(0,l.relative)(a,o)||o}catch{s="(could not be written to a file)"}let u=(e.match(/\n/g)?.length??0)+1;return`${e.slice(0,r.head).trimEnd()}
2
+
3
+ [${t} cut at ${r.max.toLocaleString("en")} chars — the whole thing (${u} lines) is at ${s}. Read the part you need with \`sed -n\`.]
4
+
5
+ ${e.slice(-r.tail).trimStart()}`}let m=n.APP_DIR,p=(0,l.join)(n.DATA_DIR,n.PATHS.workspace),h=(process.env.THURSDAY_TOOL_PATH?.split(":")??[(0,l.join)(m,"node_modules",".bin")]).filter(Boolean),g=(0,l.join)(p,n.PATHS.artifacts),b=[n.PATHS.artifacts,n.PATHS.projects,n.PATHS.scratch,n.PATHS.bots],w=new Set([...b,".agents"]),S=(e,t)=>t===e||t.startsWith(e+l.sep),y=e=>(0,i.realpath)(e).catch(()=>null);async function A(e){let t=await y(p)??p,a=(0,l.resolve)(p,e);if(!S(p,a))return null;let i=a,r=await y(i);for(;null===r&&(0,l.dirname)(i)!==i;)i=(0,l.dirname)(i),r=await y(i);if(null===r)return null;let n=(0,l.relative)(i,a),o=n?(0,l.join)(r,n):r;return S(t,o)?o:null}function T(e,t){let a=t.trim().toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,40)||"job";return`${n.PATHS.scratch}/${a}-${e.slice(0,6)}`}let v=e=>e.replace(/[^\p{L}\p{N}_-]+/gu,"-"),k=e=>`${n.PATHS.bots}/${v(e)}`,E=e=>`${n.PATHS.artifacts}/${v(e)}`;async function x(e){let t=k(e),a=E(e);return await Promise.all([t,a].map(e=>(0,i.mkdir)((0,l.join)(p,e),{recursive:!0}))),{own:t,artifacts:a}}async function _(e,t){let a=T(e,t);return await (0,i.mkdir)((0,l.join)(p,a),{recursive:!0}),a}let P=e=>({PLAYWRIGHT_MCP_BROWSER:"chromium",...e?{PLAYWRIGHT_CLI_SESSION:`thread-${e}`,PLAYWRIGHT_MCP_VIEWPORT_SIZE:n.BROWSER_VIEWPORT}:{}}),$={runtimes:["node","python3","uv","bun","deno"],managers:["pnpm","npm","yarn"]};async function j(e){let t=Object.values($).flat(),{stdout:a}=await e.exec(t.map(e=>`command -v ${e} >/dev/null 2>&1 && printf '%s ' ${e}`).join("; "),{timeoutMs:1e4}),i=new Set(a.trim().split(/\s+/).filter(Boolean)),r=e=>({found:e.filter(e=>i.has(e)),missing:e.filter(e=>!i.has(e))});return{runtimes:r($.runtimes),managers:r($.managers),browser:null}}async function R(){await F(),await M()}async function O(e){await H(e,await L(e,!1))}async function I(e){await L(e,!0)}async function C(e){await H(e,await L(e,!0))}async function H(e,a){let n=process.env.XDG_CACHE_HOME||(0,l.join)((0,r.homedir)(),".cache"),s=await (0,i.realpath)(p).catch(()=>p),u=(0,l.join)(n,"ms-playwright","daemon",(0,t.createHash)("sha1").update(s).digest("hex").slice(0,16)),d=P(e).PLAYWRIGHT_CLI_SESSION;for(let e of(await (0,i.readdir)(u).catch(()=>[]))){let t=e.startsWith("ud-")?e.slice(3):e;(t===d||t.startsWith(`${d}-`)||t.startsWith(`${d}.`))&&(a.some(e=>t===e||t.startsWith(`${e}-`)||t.startsWith(`${e}.`))||await (0,i.rm)((0,l.join)(u,e),{recursive:!0,force:!0}).catch(t=>o.logger.warn(`browser data ${e}: ${String(t)}`)))}}async function L(e,t){let a=await N(),i=P(e),r=await a.exec("playwright-cli list --json",{env:i,timeoutMs:15e3}).catch(()=>null),l=[];try{let{browsers:e}=JSON.parse(r?.stdout??"");l=e?.filter(e=>e.name===i.PLAYWRIGHT_CLI_SESSION||e.name.startsWith(`${i.PLAYWRIGHT_CLI_SESSION}-`))??[]}catch{}let n=[];for(let e of l){if(e.attached||!t&&!1!==e.headed){n.push(e.name);continue}await a.exec("playwright-cli close",{env:{...i,PLAYWRIGHT_CLI_SESSION:e.name},timeoutMs:15e3}).catch(()=>{})}return await R(),n}let M=()=>D(n.PATHS.output),F=()=>D(".playwright-cli");async function D(e){let t=(0,l.join)(p,e),a=await (0,i.readdir)(t,{withFileTypes:!0}).catch(()=>[]),r=Date.now()-n.WORKSPACE_KEEP.forMs;for(let e of a){if(!e.isFile())continue;let a=(0,l.join)(t,e.name),n=await (0,i.stat)(a).catch(()=>null);n&&n.mtimeMs<r&&await (0,i.unlink)(a).catch(()=>{})}}async function W(){return(await (0,i.readdir)((0,l.join)(p,n.PATHS.scratch),{withFileTypes:!0}).catch(()=>[])).filter(e=>e.isDirectory()).map(e=>`${n.PATHS.scratch}/${e.name}`)}async function z(e){let t=Date.now()-n.WORKSPACE_KEEP.forMs,a=[];for(let r of e){let e=(0,l.join)(p,r),n=await (0,i.stat)(e).catch(()=>null);n?.isDirectory()&&!(n.mtimeMs>=t)&&(await (0,i.rm)(e,{recursive:!0,force:!0}).catch(()=>{}),a.push(r))}return a}let B={"pnpm-workspace.yaml":"packages:\n - '**'\n",".npmrc":"recursive-install=false\n"};async function N(){for(let e of[...b,".playwright"])await (0,i.mkdir)((0,l.join)(p,e),{recursive:!0});for(let[e,t]of Object.entries(B))await (0,i.writeFile)((0,l.join)(p,e),t,{flag:"wx"}).catch(()=>{});return(({workingDirectory:e,spill:t,toolPath:a})=>{let r=(0,l.resolve)(e),n=(a??[]).filter(Boolean).join(":"),o=e=>e.startsWith("/")||/^[A-Za-z]:/.test(e)?e:(0,l.resolve)(r,e);return{cwd:r,resolve:o,readFile:(e,t)=>(0,i.readFile)(o(e),t),async writeFile(e,t){let a=o(e);await (0,i.mkdir)((0,l.join)(a,".."),{recursive:!0}),await (0,i.writeFile)(a,t)},readdir:(e,t)=>(0,i.readdir)(o(e),t),fold:(e,a="output")=>f(e,a,r,t),async glob(e,{path:t=".",limit:a=200}={}){let i=o(t),r=RegExp("^"+e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*\//g,"(?:.*/)?").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]")+"$"),n=[];for await(let e of c(i)){let t=(0,l.relative)(i,e).split(l.sep).join("/");if((r.test(t)||r.test(e))&&n.push(e),n.length>=a)break}return n},exec:(e,{cwd:a,timeoutMs:i=u.EXEC_TIMEOUT_MS,signal:l,env:d}={})=>new Promise(c=>{let m,p,h=function(){let e={...process.env};for(let t of Object.keys(e))/KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL|_AUTH/i.test(t)&&delete e[t];return e.TERM="dumb",e.PAGER="cat",e.GIT_PAGER="cat",e}();n&&(h.PATH=`${h.PATH??""}:${n}`);let g=(0,s.spawn)(e,{shell:!0,cwd:a?o(a):r,env:{...h,...d},detached:!0}),b="",w="";g.stdout?.on("data",e=>b+=e),g.stderr?.on("data",e=>w+=e);let S=e=>{try{g.pid&&process.kill(-g.pid,e)}catch{g.kill(e)}},y=!1,A=async e=>{y||(y=!0,clearTimeout(v),clearTimeout(m),clearTimeout(p),l?.removeEventListener("abort",k),c({...e,stdout:await f(e.stdout,"stdout",r,t),stderr:await f(e.stderr,"stderr",r,t)}))},T=e=>{m||y||(w+=`
6
+ [${e}]`,S("SIGTERM"),m=setTimeout(()=>{w+="\n[Killed: it did not exit on SIGTERM]",S("SIGKILL"),p=setTimeout(()=>{g.stdout?.destroy(),g.stderr?.destroy(),A({stdout:b,stderr:w,exitCode:-1})},1e3)},u.EXEC_KILL_GRACE_MS))},v=setTimeout(()=>T(`Timed out after ${i}ms`),i),k=()=>T("Aborted");l?.aborted?k():l?.addEventListener("abort",k,{once:!0}),g.on("close",e=>A({stdout:b,stderr:w,exitCode:e??-1})),g.on("error",e=>A({stdout:b,stderr:w+String(e),exitCode:-1}))})}})({workingDirectory:p,spill:{dir:n.PATHS.output,...n.TOOL_OUTPUT},toolPath:h})}async function K(e,t){let a=e.map(e=>(0,l.resolve)(p,e));if(t){let e=0;for await(let i of c((0,l.join)(p,t)))if(a.push(i),(e+=1)>=500)break}let r=new Map;for(let e of a){let t=await (0,i.stat)(e).catch(()=>null);if(!t?.isFile())continue;let a=(0,l.relative)(p,e);r.set(a&&!a.startsWith("..")?a:e,t.mtimeMs)}return[...r].sort((e,t)=>e[1]-t[1]).map(([e])=>e)}async function Y(e,t){await (0,i.rm)((0,l.join)(p,T(e,t)),{recursive:!0,force:!0}).catch(()=>{})}e.s(["ARTIFACTS",0,g,"WORKSPACE",0,p,"botArtifacts",0,E,"botBrowserSession",0,(e,a)=>`${e}-bot-${(0,t.createHash)("sha256").update(a.trim().toLowerCase()).digest("hex").slice(0,20)}`,"botFolder",0,k,"botFolderName",0,v,"botShellEnv",0,e=>({THURSDAY_ARTIFACTS:E(e),THURSDAY_SKILLS:(0,l.join)(n.APP_DIR,n.PATHS.skills.default)}),"closeHiddenBrowser",0,O,"closeJobShell",0,I,"filesOnDisk",0,K,"insideWorkspace",0,A,"jobScratch",0,T,"jobShellEnv",0,P,"listScratchFolders",0,W,"openBotFolders",0,x,"openJobScratch",0,_,"openWorkspace",0,N,"pruneJobFiles",0,R,"readMachineTools",0,j,"removeJobBrowsers",0,C,"removeJobScratch",0,Y,"removeUnchangedFolders",0,z,"writeRefusal",0,function(e,t){if(S(p,e)){let i=(0,l.relative)(p,e),[r,o]=i.split(l.sep);return r&&w.has(r)?t&&r===n.PATHS.artifacts&&o&&o.toLowerCase()!==v(t).toLowerCase()&&!(0,a.existsSync)((0,l.join)(g,o))?`Not written: ${i} would sit loose at the top of ${n.PATHS.artifacts}/. Your finished work goes in ${E(t)}/.`:null:`Not written: ${i||"the workspace root"} is outside the workspace's folders. Finished work goes under ${t?E(t):n.PATHS.artifacts}/, code under ${n.PATHS.projects}/, your own kit under ${n.PATHS.bots}/, and this job's working material under ${n.PATHS.scratch}/.`}return S(m,e)?`Not written: ${e} is inside the app that is running you, not the user's files. Work in ${p}; outside it, write only where the user pointed you.`:null}],786025)},105249,e=>{"use strict";var t=e.i(562810);e.s(["default",0,t])}];
7
+
8
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0qog7sm._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[750227,(e,s,r)=>{s.exports=e.x("node:path",()=>require("node:path"))},59639,(e,s,r)=>{s.exports=e.x("node:process",()=>require("node:process"))},509656,(e,s,r)=>{s.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,s,r)=>{s.exports=e.x("node:util",()=>require("node:util"))},333925,e=>{"use strict";let s=process.env.THURSDAY_APP_DIR?.trim()||process.cwd(),r=process.env.THURSDAY_HOME?.trim()||process.cwd(),t=process.env.THURSDAY_URL?.trim()||`http://localhost:${process.env.PORT?.trim()||3e3}`,o=`file:${r}/local.db`,a=".ai-workspace",_={workspace:a,artifacts:"artifacts",projects:"projects",scratch:"scratch",bots:"bots",output:".output",signIns:".sign-ins",skills:{default:"skills",custom:`${a}/.agents/skills`,own:".agents/skills",seeds:"seed-skills"}};e.s(["APP_DIR",0,s,"APP_NAME",0,"Thursday","APP_URL",0,t,"ASCII_FACE",0,{charset:"emojiOnly",fontSize:{default:8,min:4,max:16},density:{default:1.4,min:.6,max:2}},"BOT_MEMORY_LIMITS",0,{files:20,chars:1e4},"BOT_RUN",0,{steps:100,compactAt:5e5,compactHeadroom:.8,summaryWords:{min:600,max:3e3,perTokens:200},participants:12,concurrent:4,turns:120,queuedMessages:200,silenceMs:3e5,overflowShrink:.6,retryMs:1e4,compactFiles:40},"BOT_WORK",0,{open:5,recent:5,said:80,files:2,reads:2,asked:400,readChars:4e3},"BROWSER_GONE_MS",0,1e4,"BROWSER_VIEWPORT",0,"700x700","CALL_EXEC_TIMEOUT_MS",0,15e3,"CALL_RELAY",0,{quietMs:7e3,perTurn:3,readMs:15e3,chars:600},"CHATGPT_SIGN_IN",0,{waitMs:6e5,renewBeforeMs:3e5},"CONNECTED_TOOL_TIMEOUT_MS",0,6e5,"DATA_DIR",0,r,"DB_FILE_NAME",0,o,"EXEC_KILL_GRACE_MS",0,5e3,"EXEC_TIMEOUT_MS",0,18e4,"FINISHED_NOTICE",0,{rows:5,words:240},"GIVEN_FILES",0,{dir:"inbox",maxBytes:0x1900000,perMessage:8},"INBOX_FINISHED",0,5,"IS_DEV",0,!1,"LIVE_CALL",0,{startupMs:3e4,closeMs:15e3,transcriptGapMs:1500,transcriptSaveMs:500,appendMs:15e3,backendOutputTokens:4096,reasoningCheckMs:5e3,keyCheckMs:5e3},"LOOK",0,{maxBytes:4194304},"MEMORY_CONVERSATION_PAGE",0,100,"MEMORY_LIMITS",0,{facts:400,factsPerNote:50,carried:20,expanded:10},"PATHS",0,_,"PROMPT_BUDGET",0,6e3,"PROMPT_LINE",0,{skill:90,toolArgs:30,jobOutcome:160,botMemory:100},"REACH",0,{pollSeconds:50,retryMs:5e3,idleMs:6e5,notifyAfterMs:6e4,chars:3500,files:3,fileBytes:0x2d00000},"RECENT_CALL",0,{rows:20,tokens:600},"ROUTINE",0,{tickMs:3e4,max:12,minHours:1,runsShown:5},"SEARCH",0,{sources:3,excerptChars:1200,timeoutMs:3e4},"STUDIO_SERVER",0,"studio","TEXT_CALL",0,{maxSteps:12,model:"text"},"THREAD_STATUS_LIMIT",0,10,"TOOL_OUTPUT",0,{max:8e3,head:5500,tail:1500},"WORKSPACE_KEEP",0,{forMs:2592e5,sweepEveryMs:36e5}])},207580,e=>{e.v(s=>Promise.all(["server/chunks/[externals]__0y3n8y6._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0q8fc1x._.js"].map(s=>e.l(s))).then(()=>s(27996)))}];
1
+ module.exports=[750227,(e,s,r)=>{s.exports=e.x("node:path",()=>require("node:path"))},59639,(e,s,r)=>{s.exports=e.x("node:process",()=>require("node:process"))},509656,(e,s,r)=>{s.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,s,r)=>{s.exports=e.x("node:util",()=>require("node:util"))},333925,e=>{"use strict";let s=process.env.THURSDAY_APP_DIR?.trim()||process.cwd(),r=process.env.THURSDAY_HOME?.trim()||process.cwd(),t=process.env.THURSDAY_URL?.trim()||`http://localhost:${process.env.PORT?.trim()||3e3}`,o=`file:${r}/local.db`,a=".ai-workspace",_={workspace:a,artifacts:"artifacts",projects:"projects",scratch:"scratch",bots:"bots",output:".output",signIns:".sign-ins",skills:{default:"skills",custom:`${a}/.agents/skills`,own:".agents/skills",seeds:"seed-skills"}};e.s(["APP_DIR",0,s,"APP_NAME",0,"Thursday","APP_URL",0,t,"ASCII_FACE",0,{charset:"emojiOnly",fontSize:{default:8,min:4,max:16},density:{default:1.4,min:.6,max:2}},"BOT_MEMORY_LIMITS",0,{files:20,chars:1e4},"BOT_RUN",0,{steps:100,compactAt:5e5,compactHeadroom:.8,summaryWords:{min:600,max:3e3,perTokens:200},participants:12,concurrent:4,turns:120,queuedMessages:200,silenceMs:3e5,overflowShrink:.6,retryMs:1e4,compactFiles:40},"BOT_WORK",0,{open:5,recent:5,said:80,files:2,reads:2,asked:400,readChars:4e3},"BROWSER_GONE_MS",0,1e4,"BROWSER_VIEWPORT",0,"700x700","CALL_EXEC_TIMEOUT_MS",0,15e3,"CALL_RELAY",0,{quietMs:7e3,perTurn:3,readMs:15e3,chars:600},"CHATGPT_SIGN_IN",0,{waitMs:6e5,renewBeforeMs:3e5},"CONNECTED_TOOL_TIMEOUT_MS",0,6e5,"DATA_DIR",0,r,"DB_FILE_NAME",0,o,"EXEC_KILL_GRACE_MS",0,5e3,"EXEC_TIMEOUT_MS",0,18e4,"FINISHED_NOTICE",0,{rows:5,words:240},"GIVEN_FILES",0,{dir:"inbox",maxBytes:0x1900000,perMessage:8},"HISTORY_KEEP",0,{forMs:7776e6,sweepEveryMs:216e5},"INBOX_FINISHED",0,5,"IS_DEV",0,!1,"LIVE_CALL",0,{startupMs:3e4,closeMs:15e3,transcriptGapMs:1500,transcriptSaveMs:500,appendMs:15e3,backendOutputTokens:4096,reasoningCheckMs:5e3,keyCheckMs:5e3},"LOOK",0,{maxBytes:4194304},"MEMORY_CONVERSATION_PAGE",0,100,"MEMORY_LIMITS",0,{facts:400,factsPerNote:50,carried:20,expanded:10},"PATHS",0,_,"PROMPT_BUDGET",0,6e3,"PROMPT_LINE",0,{skill:90,toolArgs:30,jobOutcome:160,botMemory:100},"REACH",0,{pollSeconds:50,retryMs:5e3,idleMs:6e5,notifyAfterMs:6e4,chars:3500,files:3,fileBytes:0x2d00000},"RECENT_CALL",0,{rows:20,tokens:600},"ROUTINE",0,{tickMs:3e4,max:12,minHours:1,runsShown:5},"SEARCH",0,{sources:3,excerptChars:1200,timeoutMs:3e4},"STUDIO_SERVER",0,"studio","TEXT_CALL",0,{maxSteps:12,model:"text"},"THREAD_STATUS_LIMIT",0,10,"TOOL_OUTPUT",0,{max:8e3,head:5500,tail:1500},"WORKSPACE_KEEP",0,{forMs:2592e5,sweepEveryMs:36e5}])},207580,e=>{e.v(s=>Promise.all(["server/chunks/[externals]__0y3n8y6._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0q8fc1x._.js"].map(s=>e.l(s))).then(()=>s(27996)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__0sm5xvm._.js.map
@@ -0,0 +1,5 @@
1
+ module.exports=[418520,e=>e.a(async(t,n)=>{try{var a=await e.y("@libsql/client-6da938047d5fc1cd");e.n(a),n()}catch(e){n(e)}},!0),902157,(e,t,n)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,n)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,n)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,n)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,n)=>{t.exports=e.x("node:util",()=>require("node:util"))},380690,e=>{"use strict";let t,n,a,r,i,o;var s,l=e.i(687388),u=e.i(640911);let d={threads:!0,routines:!0,memory:!0,mcp:!0,config:!0,reach:!0,signins:!0},c=globalThis,h=c.__appEvents??=(t=new Set,{emit(e){for(let n of[...t])try{n(e)}catch(e){console.error("event listener failed",e)}},subscribe:e=>(t.add(e),()=>{t.delete(e)})}),m=c.__presence??=(s=l.BROWSER_GONE_MS,n=!1,a=null,r=new Set,i=new Set,o=e=>{for(let t of[...e])try{t()}catch(e){console.error("presence listener failed",e)}},{get watching(){return n},track(e){if(e>0){a&&clearTimeout(a),a=null,n||(n=!0,o(i));return}!a&&n&&(a=setTimeout(()=>{a=null,n=!1,o(r)},s))},onGone:e=>(r.add(e),()=>r.delete(e)),onBack:e=>(i.add(e),()=>i.delete(e))}),f=c.__appEventStream??=function(e,t={}){let n=new TextEncoder,a=t.heartbeatMs??2e4,r=0;return{respond:(i,o)=>{let s=()=>{};return new Response(new ReadableStream({async start(l){let d=!1,c=new Map,h=[],m=e=>{if(!d)try{l.enqueue(n.encode(e))}catch{s()}},f=e=>m(`data: ${JSON.stringify(e)}
2
+
3
+ `),p=e=>{let n={last:null},a=setTimeout(()=>{c.delete(e),!d&&n.last&&(f(n.last),p(e))},t.coalesce?.ms);c.set(e,{timer:a,wait:n})},g=e=>{if(d)return;let n=t.coalesce?.keyOf(e)??null;if(null===n)return f(e);let a=c.get(n);if(a){a.wait.last=e;return}f(e),p(n)},y=e.subscribe(e=>h?h.push(e):g(e)),v=setInterval(()=>m(": ping\n\n"),a);r+=1,t.onWatchers?.(r),s=()=>{if(!d){for(let e of(d=!0,r-=1,t.onWatchers?.(r),y(),clearInterval(v),c.values()))clearTimeout(e.timer);try{l.close()}catch{}}},i.addEventListener("abort",s);try{for(let e of await o?.()??[])f(e)}catch(e){u.logger.error("event stream opening failed",e),s();return}let w=h;for(let e of(h=null,w))g(e)},cancel(){s()}}),{headers:{"Content-Type":"text/event-stream; charset=utf-8","Cache-Control":"no-store","X-Accel-Buffering":"no"}})},get watchers(){return r}}}(h,{coalesce:{ms:150,keyOf:e=>e.type in d?e.type:null},onWatchers:m.track});e.s(["appEventStream",0,f,"appEvents",0,h,"presence",0,m],380690)},594286,e=>e.a(async(t,n)=>{try{var a=e.i(619898),r=e.i(91264),i=e.i(53748),o=t([a]);[a]=o.then?(await o)():o;let s=(0,r.serverRoute)(async e=>{let t=new URL(e.url).searchParams,n=t.get("path");if(n){let e=await (0,a.findNoteByPath)(n);return e||(0,i.publicError)("Note not found"),e}let r=Number(t.get("offset")??0);return(0,a.findAllNotes)({offset:Number.isFinite(r)?r:0})});e.s(["GET",0,s]),n()}catch(e){n(e)}},!1),246827,e=>{"use strict";var t=e.i(747909),n=e.i(174017),a=e.i(996250),r=e.i(759756),i=e.i(561916),o=e.i(174677),s=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),h=e.i(666012),m=e.i(570101),f=e.i(626937),p=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220);let v=new t.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/memory/route",pathname:"/api/memory",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/memory/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(594286),...{}}),{workAsyncStorage:w,workUnitAsyncStorage:b,serverHooks:R}=v;async function M(e,t,a){a.requestMeta&&(0,r.setRequestMeta)(e,a.requestMeta),v.isDev&&(0,r.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/memory/route";w=w.replace(/\/index$/,"")||"/";let b=await v.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!b)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,deploymentId:M,params:C,nextConfig:P,parsedUrl:S,isDraftMode:x,prerenderManifest:E,routerServerContext:T,isOnDemandRevalidate:A,revalidateOnlyGenerated:k,resolvedPathname:W,clientReferenceManifest:N,serverActionsManifest:q}=b,O=(0,s.normalizeAppPath)(w),D=!!(E.dynamicRoutes[O]||E.routes[W]),_=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!x){let e=!!E.routes[W],t=E.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(P.adapterPath)return await _();throw new g.NoFallbackError}}let F=null;!D||v.isDev||x||(F="/index"===(F=W)?"/":F);let I=!0===v.isDev||!D,j=D&&!I;q&&N&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:N,serverActionsManifest:q});let H=e.method||"GET",U=(0,i.getTracer)(),B=U.getActiveScopeSpan(),L=!!(null==T?void 0:T.isWrappedByNextServer),X=!!(0,r.getRequestMeta)(e,"minimalMode"),J=(0,r.getRequestMeta)(e,"incrementalCache")||await v.getIncrementalCache(e,P,E,X);null==J||J.resetRequestCache(),globalThis.__incrementalCache=J;let z={params:C,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!P.experimental.authInterrupts,useCacheTimeout:P.experimental.useCacheTimeout},cacheComponents:!!P.cacheComponents,validationLevel:P.experimental.instantInsights.validationLevel,supportsDynamicResponse:I,incrementalCache:J,hmrRefreshHash:(0,r.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:P.cacheLife,staticPageGenerationTimeout:P.staticPageGenerationTimeout,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,n,a,r)=>v.onRequestError(e,t,a,r,T)},sharedContext:{buildId:R,deploymentId:M}},K=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),Y=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t)),$=async({previousCacheEntry:n})=>{try{if(!X&&A&&k&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await v.handle(Y,z);e.fetchMetrics=z.renderOpts.fetchMetrics;let i=z.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let o=z.renderOpts.collectedTags;if(!D)return await (0,h.sendResponse)(K,G,r,i),null;{let e=await r.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(r.headers);o&&(t[p.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let n=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=p.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=p.INFINITE_CACHE?!1!==n&&n>0?P.expireTime:void 0:z.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:n,expire:a}}}}catch(t){throw(null==n?void 0:n.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:A})},!1,T),t}},V=async(r,o)=>{try{var s,l;let r=await v.handleResponse({req:e,nextConfig:P,cacheKey:F,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:k,responseGenerator:$,waitUntil:a.waitUntil,isMinimalMode:X});if(!D)return;if((null==r||null==(s=r.value)?void 0:s.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==r||null==(l=r.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});X||t.setHeader("x-nextjs-cache",A?"REVALIDATED":r.isMiss?"MISS":r.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let i=(0,m.fromNodeOutgoingHttpHeaders)(r.value.headers);X&&D||i.delete(p.NEXT_CACHE_TAGS_HEADER),!r.cacheControl||t.getHeader("Cache-Control")||i.get("Cache-Control")||i.set("Cache-Control",(0,f.getCacheControlHeader)(r.cacheControl)),await (0,h.sendResponse)(K,G,new Response(r.value.body,{headers:i,status:r.value.status||200}));return}catch(t){if(t instanceof g.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:A})},!1,T),D)throw t;await (0,h.sendResponse)(K,G,new Response(null,{status:500}));return}finally{(()=>{if(!r)return;let e=t.statusCode;r.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(r.setStatus({code:i.SpanStatusCode.ERROR}),r.setAttribute("error.type",e.toString()));let n=U.getRootSpanAttributes();if(!n)return;if(n.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${n.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=n.get("next.route")||O,s=`${H} ${a}`;r.setAttributes({"next.route":a,"http.route":a,"next.span_name":s}),r.updateName(s),o&&o!==r&&(o.setAttribute("http.route",a),o.updateName(s))})()}};if(L&&B)await V(B,void 0);else{let t=U.getActiveScopeSpan();await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${H} ${w}`,kind:i.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},e=>V(e,t)),void 0,!L)}}e.s(["handler",0,M,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:w,workUnitAsyncStorage:b})},"routeModule",0,v,"serverHooks",0,R,"workAsyncStorage",0,w,"workUnitAsyncStorage",0,b])},268486,e=>{"use strict";var t=e.i(41444);e.s(["createKeyedLock",0,function(){let e=new Map,n=new Map;return function(a,r){let i=e.get(a);i||(i=(0,t.PromiseChain)(),e.set(a,i)),n.set(a,(n.get(a)??0)+1);let o=()=>{let t=(n.get(a)??1)-1;t>0?n.set(a,t):(n.delete(a),e.delete(a))};return i(r).then(e=>(o(),e),e=>{throw o(),e})}}])},89929,609730,277988,e=>{"use strict";var t=e.i(874321);function n(e,n){return(0,t.constructFrom)(n||e,e)}e.s(["toDate",0,n],609730),e.s(["getTimezoneOffsetInMilliseconds",0,function(e){let t=n(e),a=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return a.setUTCFullYear(t.getFullYear()),e-a}],89929),e.s(["normalizeDates",0,function(e,...n){let a=t.constructFrom.bind(null,e||n.find(e=>"object"==typeof e));return n.map(a)}],277988)},874321,438220,e=>{"use strict";let t=Symbol.for("constructDateFrom");e.s(["constructFromSymbol",0,t,"millisecondsInDay",0,864e5,"millisecondsInMinute",0,6e4,"millisecondsInWeek",0,6048e5,"minutesInDay",0,1440,"minutesInMonth",0,43200,"minutesInYear",0,525600],438220),e.s(["constructFrom",0,function(e,n){return"function"==typeof e?e(n):e&&"object"==typeof e&&t in e?e[t](n):e instanceof Date?new e.constructor(n):new Date(n)}],874321)},599447,e=>{"use strict";var t=e.i(874321);e.s(["constructNow",0,function(e){return(0,t.constructFrom)(e,Date.now())}])},881237,662001,e=>{"use strict";var t;let n={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function a(e){return (t={})=>{let n=t.width?String(t.width):e.defaultWidth;return e.formats[n]||e.formats[e.defaultWidth]}}let r={date:a({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:a({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:a({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},i={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function o(e){return(t,n)=>{let a;if("formatting"===(n?.context?String(n.context):"standalone")&&e.formattingValues){let t=e.defaultFormattingWidth||e.defaultWidth,r=n?.width?String(n.width):t;a=e.formattingValues[r]||e.formattingValues[t]}else{let t=e.defaultWidth,r=n?.width?String(n.width):e.defaultWidth;a=e.values[r]||e.values[t]}return a[e.argumentCallback?e.argumentCallback(t):t]}}let s={ordinalNumber:(e,t)=>{let n=Number(e),a=n%100;if(a>20||a<10)switch(a%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},era:o({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:o({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:e=>e-1}),month:o({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:o({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:o({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})};function l(e){return(t,n={})=>{let a,r=n.width,i=r&&e.matchPatterns[r]||e.matchPatterns[e.defaultMatchWidth],o=t.match(i);if(!o)return null;let s=o[0],l=r&&e.parsePatterns[r]||e.parsePatterns[e.defaultParseWidth],u=Array.isArray(l)?function(e,t){for(let n=0;n<e.length;n++)if(t(e[n]))return n}(l,e=>e.test(s)):function(e,t){for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n)&&t(e[n]))return n}(l,e=>e.test(s));return a=e.valueCallback?e.valueCallback(u):u,{value:a=n.valueCallback?n.valueCallback(a):a,rest:t.slice(s.length)}}}let u={ordinalNumber:(t={matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:e=>parseInt(e,10)},(e,n={})=>{let a=e.match(t.matchPattern);if(!a)return null;let r=a[0],i=e.match(t.parsePattern);if(!i)return null;let o=t.valueCallback?t.valueCallback(i[0]):i[0];return{value:o=n.valueCallback?n.valueCallback(o):o,rest:e.slice(r.length)}}),era:l({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:l({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:e=>e+1}),month:l({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:l({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:l({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})};e.s(["defaultLocale",0,{code:"en-US",formatDistance:(e,t,a)=>{let r,i=n[e];if(r="string"==typeof i?i:1===t?i.one:i.other.replace("{{count}}",t.toString()),a?.addSuffix)if(a.comparison&&a.comparison>0)return"in "+r;else return r+" ago";return r},formatLong:r,formatRelative:(e,t,n,a)=>i[e],localize:s,match:u,options:{weekStartsOn:0,firstWeekContainsDate:1}}],881237);let d={};e.s(["getDefaultOptions",0,function(){return d}],662001)}];
4
+
5
+ //# sourceMappingURL=%5Broot-of-the-server%5D__0yisc5v._.js.map
@@ -1,10 +1,10 @@
1
1
  module.exports=[874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},912714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},59639,(e,t,r)=>{t.exports=e.x("node:process",()=>require("node:process"))},509656,(e,t,r)=>{t.exports=e.x("node:tty",()=>require("node:tty"))},812057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},380690,e=>{"use strict";let t,r,a,i,n,o;var s,l=e.i(687388),c=e.i(640911);let u={threads:!0,routines:!0,memory:!0,mcp:!0,config:!0,reach:!0,signins:!0},d=globalThis,p=d.__appEvents??=(t=new Set,{emit(e){for(let r of[...t])try{r(e)}catch(e){console.error("event listener failed",e)}},subscribe:e=>(t.add(e),()=>{t.delete(e)})}),h=d.__presence??=(s=l.BROWSER_GONE_MS,r=!1,a=null,i=new Set,n=new Set,o=e=>{for(let t of[...e])try{t()}catch(e){console.error("presence listener failed",e)}},{get watching(){return r},track(e){if(e>0){a&&clearTimeout(a),a=null,r||(r=!0,o(n));return}!a&&r&&(a=setTimeout(()=>{a=null,r=!1,o(i)},s))},onGone:e=>(i.add(e),()=>i.delete(e)),onBack:e=>(n.add(e),()=>n.delete(e))}),f=d.__appEventStream??=function(e,t={}){let r=new TextEncoder,a=t.heartbeatMs??2e4,i=0;return{respond:(n,o)=>{let s=()=>{};return new Response(new ReadableStream({async start(l){let u=!1,d=new Map,p=[],h=e=>{if(!u)try{l.enqueue(r.encode(e))}catch{s()}},f=e=>h(`data: ${JSON.stringify(e)}
2
2
 
3
- `),w=e=>{let r=t.coalesce?.keyOf(e)??null;if(null===r)return f(e);let a=d.get(r);a&&clearTimeout(a),d.set(r,setTimeout(()=>{d.delete(r),f(e)},t.coalesce?.ms))},m=e.subscribe(e=>p?p.push(e):w(e)),S=setInterval(()=>h(": ping\n\n"),a);i+=1,t.onWatchers?.(i),s=()=>{if(!u){for(let e of(u=!0,i-=1,t.onWatchers?.(i),m(),clearInterval(S),d.values()))clearTimeout(e);try{l.close()}catch{}}},n.addEventListener("abort",s);try{for(let e of await o?.()??[])f(e)}catch(e){c.logger.error("event stream opening failed",e),s();return}let T=p;for(let e of(p=null,T))w(e)},cancel(){s()}}),{headers:{"Content-Type":"text/event-stream; charset=utf-8","Cache-Control":"no-store","X-Accel-Buffering":"no"}})},get watchers(){return i}}}(p,{coalesce:{ms:150,keyOf:e=>e.type in u?e.type:null},onWatchers:h.track}),w=d.__bootId??=crypto.randomUUID();e.s(["BOOT_ID",0,w,"appEventStream",0,f,"appEvents",0,p,"presence",0,h],380690)},786025,e=>{"use strict";var t=e.i(666680),r=e.i(902157),a=e.i(912714),i=e.i(660526),n=e.i(750227),o=e.i(687388),s=e.i(640911),l=e.i(874533),c=o;let u=new Set(["node_modules",".git",".next","dist","build",".venv","__pycache__",".turbo","coverage"]);async function*d(e){let t;try{t=await (0,a.readdir)(e,{withFileTypes:!0})}catch{return}for(let r of t){if(u.has(r.name)||r.name.startsWith("."))continue;let t=(0,n.join)(e,r.name);r.isDirectory()?yield*d(t):r.isFile()&&(yield t)}}async function p(e,t,r,i){if(e.length<=i.max)return e;let o=(0,n.join)(r,i.dir),s=(0,n.join)(o,`${new Date().toISOString().replace(/[:.]/g,"-")}-${t.replace(/[^a-zA-Z0-9_-]+/g,"_")}.txt`),l=s;try{await (0,a.mkdir)(o,{recursive:!0}),await (0,a.writeFile)(s,e),l=(0,n.relative)(r,s)||s}catch{l="(could not be written to a file)"}let c=(e.match(/\n/g)?.length??0)+1;return`${e.slice(0,i.head).trimEnd()}
3
+ `),w=e=>{let r={last:null},a=setTimeout(()=>{d.delete(e),!u&&r.last&&(f(r.last),w(e))},t.coalesce?.ms);d.set(e,{timer:a,wait:r})},m=e=>{if(u)return;let r=t.coalesce?.keyOf(e)??null;if(null===r)return f(e);let a=d.get(r);if(a){a.wait.last=e;return}f(e),w(r)},S=e.subscribe(e=>p?p.push(e):m(e)),T=setInterval(()=>h(": ping\n\n"),a);i+=1,t.onWatchers?.(i),s=()=>{if(!u){for(let e of(u=!0,i-=1,t.onWatchers?.(i),S(),clearInterval(T),d.values()))clearTimeout(e.timer);try{l.close()}catch{}}},n.addEventListener("abort",s);try{for(let e of await o?.()??[])f(e)}catch(e){c.logger.error("event stream opening failed",e),s();return}let y=p;for(let e of(p=null,y))m(e)},cancel(){s()}}),{headers:{"Content-Type":"text/event-stream; charset=utf-8","Cache-Control":"no-store","X-Accel-Buffering":"no"}})},get watchers(){return i}}}(p,{coalesce:{ms:150,keyOf:e=>e.type in u?e.type:null},onWatchers:h.track});e.s(["appEventStream",0,f,"appEvents",0,p,"presence",0,h],380690)},786025,e=>{"use strict";var t=e.i(666680),r=e.i(902157),a=e.i(912714),i=e.i(660526),n=e.i(750227),o=e.i(687388),s=e.i(640911),l=e.i(874533),c=o;let u=new Set(["node_modules",".git",".next","dist","build",".venv","__pycache__",".turbo","coverage"]);async function*d(e){let t;try{t=await (0,a.readdir)(e,{withFileTypes:!0})}catch{return}for(let r of t){if(u.has(r.name)||r.name.startsWith("."))continue;let t=(0,n.join)(e,r.name);r.isDirectory()?yield*d(t):r.isFile()&&(yield t)}}async function p(e,t,r,i){if(e.length<=i.max)return e;let o=(0,n.join)(r,i.dir),s=(0,n.join)(o,`${new Date().toISOString().replace(/[:.]/g,"-")}-${t.replace(/[^a-zA-Z0-9_-]+/g,"_")}.txt`),l=s;try{await (0,a.mkdir)(o,{recursive:!0}),await (0,a.writeFile)(s,e),l=(0,n.relative)(r,s)||s}catch{l="(could not be written to a file)"}let c=(e.match(/\n/g)?.length??0)+1;return`${e.slice(0,i.head).trimEnd()}
4
4
 
5
5
  [${t} cut at ${i.max.toLocaleString("en")} chars — the whole thing (${c} lines) is at ${l}. Read the part you need with \`sed -n\`.]
6
6
 
7
- ${e.slice(-i.tail).trimStart()}`}let h=o.APP_DIR,f=(0,n.join)(o.DATA_DIR,o.PATHS.workspace),w=(process.env.THURSDAY_TOOL_PATH?.split(":")??[(0,n.join)(h,"node_modules",".bin")]).filter(Boolean),m=(0,n.join)(f,o.PATHS.artifacts),S=[o.PATHS.artifacts,o.PATHS.projects,o.PATHS.scratch,o.PATHS.bots],T=new Set([...S,".agents"]),y=(e,t)=>t===e||t.startsWith(e+n.sep),g=e=>(0,a.realpath)(e).catch(()=>null);async function _(e){let t=await g(f)??f,r=(0,n.resolve)(f,e);if(!y(f,r))return null;let a=r,i=await g(a);for(;null===i&&(0,n.dirname)(a)!==a;)a=(0,n.dirname)(a),i=await g(a);if(null===i)return null;let o=(0,n.relative)(a,r),s=o?(0,n.join)(i,o):i;return y(t,s)?s:null}function A(e,t){let r=t.trim().toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,40)||"job";return`${o.PATHS.scratch}/${r}-${e.slice(0,6)}`}let v=e=>e.replace(/[^\p{L}\p{N}_-]+/gu,"-"),E=e=>`${o.PATHS.bots}/${v(e)}`,P=e=>`${o.PATHS.artifacts}/${v(e)}`;async function $(e){let t=E(e),r=P(e);return await Promise.all([t,r].map(e=>(0,a.mkdir)((0,n.join)(f,e),{recursive:!0}))),{own:t,artifacts:r}}async function b(e,t){let r=A(e,t);return await (0,a.mkdir)((0,n.join)(f,r),{recursive:!0}),r}let I=e=>({PLAYWRIGHT_MCP_BROWSER:"chromium",...e?{PLAYWRIGHT_CLI_SESSION:`thread-${e}`,PLAYWRIGHT_MCP_VIEWPORT_SIZE:o.BROWSER_VIEWPORT}:{}}),R={runtimes:["node","python3","uv","bun","deno"],managers:["pnpm","npm","yarn"]};async function H(e){let t=Object.values(R).flat(),{stdout:r}=await e.exec(t.map(e=>`command -v ${e} >/dev/null 2>&1 && printf '%s ' ${e}`).join("; "),{timeoutMs:1e4}),a=new Set(r.trim().split(/\s+/).filter(Boolean)),i=e=>({found:e.filter(e=>a.has(e)),missing:e.filter(e=>!a.has(e))});return{runtimes:i(R.runtimes),managers:i(R.managers),browser:null}}async function x(){await M(),await C()}async function j(e){await k(e,await L(e,!1))}async function O(e){await L(e,!0)}async function W(e){await k(e,await L(e,!0))}async function k(e,r){let o=process.env.XDG_CACHE_HOME||(0,n.join)((0,i.homedir)(),".cache"),l=await (0,a.realpath)(f).catch(()=>f),c=(0,n.join)(o,"ms-playwright","daemon",(0,t.createHash)("sha1").update(l).digest("hex").slice(0,16)),u=I(e).PLAYWRIGHT_CLI_SESSION;for(let e of(await (0,a.readdir)(c).catch(()=>[]))){let t=e.startsWith("ud-")?e.slice(3):e;(t===u||t.startsWith(`${u}-`)||t.startsWith(`${u}.`))&&(r.some(e=>t===e||t.startsWith(`${e}-`)||t.startsWith(`${e}.`))||await (0,a.rm)((0,n.join)(c,e),{recursive:!0,force:!0}).catch(t=>s.logger.warn(`browser data ${e}: ${String(t)}`)))}}async function L(e,t){let r=await B(),a=I(e),i=await r.exec("playwright-cli list --json",{env:a,timeoutMs:15e3}).catch(()=>null),n=[];try{let{browsers:e}=JSON.parse(i?.stdout??"");n=e?.filter(e=>e.name===a.PLAYWRIGHT_CLI_SESSION||e.name.startsWith(`${a.PLAYWRIGHT_CLI_SESSION}-`))??[]}catch{}let o=[];for(let e of n){if(e.attached||!t&&!1!==e.headed){o.push(e.name);continue}await r.exec("playwright-cli close",{env:{...a,PLAYWRIGHT_CLI_SESSION:e.name},timeoutMs:15e3}).catch(()=>{})}return await x(),o}let C=()=>F(o.PATHS.output),M=()=>F(".playwright-cli");async function F(e){let t=(0,n.join)(f,e),r=await (0,a.readdir)(t,{withFileTypes:!0}).catch(()=>[]),i=Date.now()-o.WORKSPACE_KEEP.forMs;for(let e of r){if(!e.isFile())continue;let r=(0,n.join)(t,e.name),o=await (0,a.stat)(r).catch(()=>null);o&&o.mtimeMs<i&&await (0,a.unlink)(r).catch(()=>{})}}async function D(){return(await (0,a.readdir)((0,n.join)(f,o.PATHS.scratch),{withFileTypes:!0}).catch(()=>[])).filter(e=>e.isDirectory()).map(e=>`${o.PATHS.scratch}/${e.name}`)}async function G(e){let t=Date.now()-o.WORKSPACE_KEEP.forMs,r=[];for(let i of e){let e=(0,n.join)(f,i),o=await (0,a.stat)(e).catch(()=>null);o?.isDirectory()&&!(o.mtimeMs>=t)&&(await (0,a.rm)(e,{recursive:!0,force:!0}).catch(()=>{}),r.push(i))}return r}let N={"pnpm-workspace.yaml":"packages:\n - '**'\n",".npmrc":"recursive-install=false\n"};async function B(){for(let e of[...S,".playwright"])await (0,a.mkdir)((0,n.join)(f,e),{recursive:!0});for(let[e,t]of Object.entries(N))await (0,a.writeFile)((0,n.join)(f,e),t,{flag:"wx"}).catch(()=>{});return(({workingDirectory:e,spill:t,toolPath:r})=>{let i=(0,n.resolve)(e),o=(r??[]).filter(Boolean).join(":"),s=e=>e.startsWith("/")||/^[A-Za-z]:/.test(e)?e:(0,n.resolve)(i,e);return{cwd:i,resolve:s,readFile:(e,t)=>(0,a.readFile)(s(e),t),async writeFile(e,t){let r=s(e);await (0,a.mkdir)((0,n.join)(r,".."),{recursive:!0}),await (0,a.writeFile)(r,t)},readdir:(e,t)=>(0,a.readdir)(s(e),t),fold:(e,r="output")=>p(e,r,i,t),async glob(e,{path:t=".",limit:r=200}={}){let a=s(t),i=RegExp("^"+e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*\//g,"(?:.*/)?").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]")+"$"),o=[];for await(let e of d(a)){let t=(0,n.relative)(a,e).split(n.sep).join("/");if((i.test(t)||i.test(e))&&o.push(e),o.length>=r)break}return o},exec:(e,{cwd:r,timeoutMs:a=c.EXEC_TIMEOUT_MS,signal:n,env:u}={})=>new Promise(d=>{let h,f,w=function(){let e={...process.env};for(let t of Object.keys(e))/KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL|_AUTH/i.test(t)&&delete e[t];return e.TERM="dumb",e.PAGER="cat",e.GIT_PAGER="cat",e}();o&&(w.PATH=`${w.PATH??""}:${o}`);let m=(0,l.spawn)(e,{shell:!0,cwd:r?s(r):i,env:{...w,...u},detached:!0}),S="",T="";m.stdout?.on("data",e=>S+=e),m.stderr?.on("data",e=>T+=e);let y=e=>{try{m.pid&&process.kill(-m.pid,e)}catch{m.kill(e)}},g=!1,_=async e=>{g||(g=!0,clearTimeout(v),clearTimeout(h),clearTimeout(f),n?.removeEventListener("abort",E),d({...e,stdout:await p(e.stdout,"stdout",i,t),stderr:await p(e.stderr,"stderr",i,t)}))},A=e=>{h||g||(T+=`
8
- [${e}]`,y("SIGTERM"),h=setTimeout(()=>{T+="\n[Killed: it did not exit on SIGTERM]",y("SIGKILL"),f=setTimeout(()=>{m.stdout?.destroy(),m.stderr?.destroy(),_({stdout:S,stderr:T,exitCode:-1})},1e3)},c.EXEC_KILL_GRACE_MS))},v=setTimeout(()=>A(`Timed out after ${a}ms`),a),E=()=>A("Aborted");n?.aborted?E():n?.addEventListener("abort",E,{once:!0}),m.on("close",e=>_({stdout:S,stderr:T,exitCode:e??-1})),m.on("error",e=>_({stdout:S,stderr:T+String(e),exitCode:-1}))})}})({workingDirectory:f,spill:{dir:o.PATHS.output,...o.TOOL_OUTPUT},toolPath:w})}async function Y(e,t){let r=e.map(e=>(0,n.resolve)(f,e));if(t){let e=0;for await(let a of d((0,n.join)(f,t)))if(r.push(a),(e+=1)>=500)break}let i=new Map;for(let e of r){let t=await (0,a.stat)(e).catch(()=>null);if(!t?.isFile())continue;let r=(0,n.relative)(f,e);i.set(r&&!r.startsWith("..")?r:e,t.mtimeMs)}return[...i].sort((e,t)=>e[1]-t[1]).map(([e])=>e)}async function K(e,t){await (0,a.rm)((0,n.join)(f,A(e,t)),{recursive:!0,force:!0}).catch(()=>{})}e.s(["ARTIFACTS",0,m,"WORKSPACE",0,f,"botArtifacts",0,P,"botBrowserSession",0,(e,r)=>`${e}-bot-${(0,t.createHash)("sha256").update(r.trim().toLowerCase()).digest("hex").slice(0,20)}`,"botFolder",0,E,"botFolderName",0,v,"botShellEnv",0,e=>({THURSDAY_ARTIFACTS:P(e),THURSDAY_SKILLS:(0,n.join)(o.APP_DIR,o.PATHS.skills.default)}),"closeHiddenBrowser",0,j,"closeJobShell",0,O,"filesOnDisk",0,Y,"insideWorkspace",0,_,"jobScratch",0,A,"jobShellEnv",0,I,"listScratchFolders",0,D,"openBotFolders",0,$,"openJobScratch",0,b,"openWorkspace",0,B,"pruneJobFiles",0,x,"readMachineTools",0,H,"removeJobBrowsers",0,W,"removeJobScratch",0,K,"removeUnchangedFolders",0,G,"writeRefusal",0,function(e,t){if(y(f,e)){let a=(0,n.relative)(f,e),[i,s]=a.split(n.sep);return i&&T.has(i)?t&&i===o.PATHS.artifacts&&s&&s.toLowerCase()!==v(t).toLowerCase()&&!(0,r.existsSync)((0,n.join)(m,s))?`Not written: ${a} would sit loose at the top of ${o.PATHS.artifacts}/. Your finished work goes in ${P(t)}/.`:null:`Not written: ${a||"the workspace root"} is outside the workspace's folders. Finished work goes under ${t?P(t):o.PATHS.artifacts}/, code under ${o.PATHS.projects}/, your own kit under ${o.PATHS.bots}/, and this job's working material under ${o.PATHS.scratch}/.`}return y(h,e)?`Not written: ${e} is inside the app that is running you, not the user's files. Work in ${f}; outside it, write only where the user pointed you.`:null}],786025)}];
7
+ ${e.slice(-i.tail).trimStart()}`}let h=o.APP_DIR,f=(0,n.join)(o.DATA_DIR,o.PATHS.workspace),w=(process.env.THURSDAY_TOOL_PATH?.split(":")??[(0,n.join)(h,"node_modules",".bin")]).filter(Boolean),m=(0,n.join)(f,o.PATHS.artifacts),S=[o.PATHS.artifacts,o.PATHS.projects,o.PATHS.scratch,o.PATHS.bots],T=new Set([...S,".agents"]),y=(e,t)=>t===e||t.startsWith(e+n.sep),g=e=>(0,a.realpath)(e).catch(()=>null);async function A(e){let t=await g(f)??f,r=(0,n.resolve)(f,e);if(!y(f,r))return null;let a=r,i=await g(a);for(;null===i&&(0,n.dirname)(a)!==a;)a=(0,n.dirname)(a),i=await g(a);if(null===i)return null;let o=(0,n.relative)(a,r),s=o?(0,n.join)(i,o):i;return y(t,s)?s:null}function _(e,t){let r=t.trim().toLowerCase().replace(/[^\p{L}\p{N}]+/gu,"-").replace(/^-+|-+$/g,"").slice(0,40)||"job";return`${o.PATHS.scratch}/${r}-${e.slice(0,6)}`}let v=e=>e.replace(/[^\p{L}\p{N}_-]+/gu,"-"),E=e=>`${o.PATHS.bots}/${v(e)}`,P=e=>`${o.PATHS.artifacts}/${v(e)}`;async function $(e){let t=E(e),r=P(e);return await Promise.all([t,r].map(e=>(0,a.mkdir)((0,n.join)(f,e),{recursive:!0}))),{own:t,artifacts:r}}async function b(e,t){let r=_(e,t);return await (0,a.mkdir)((0,n.join)(f,r),{recursive:!0}),r}let R=e=>({PLAYWRIGHT_MCP_BROWSER:"chromium",...e?{PLAYWRIGHT_CLI_SESSION:`thread-${e}`,PLAYWRIGHT_MCP_VIEWPORT_SIZE:o.BROWSER_VIEWPORT}:{}}),H={runtimes:["node","python3","uv","bun","deno"],managers:["pnpm","npm","yarn"]};async function x(e){let t=Object.values(H).flat(),{stdout:r}=await e.exec(t.map(e=>`command -v ${e} >/dev/null 2>&1 && printf '%s ' ${e}`).join("; "),{timeoutMs:1e4}),a=new Set(r.trim().split(/\s+/).filter(Boolean)),i=e=>({found:e.filter(e=>a.has(e)),missing:e.filter(e=>!a.has(e))});return{runtimes:i(H.runtimes),managers:i(H.managers),browser:null}}async function I(){await M(),await C()}async function j(e){await k(e,await L(e,!1))}async function O(e){await L(e,!0)}async function W(e){await k(e,await L(e,!0))}async function k(e,r){let o=process.env.XDG_CACHE_HOME||(0,n.join)((0,i.homedir)(),".cache"),l=await (0,a.realpath)(f).catch(()=>f),c=(0,n.join)(o,"ms-playwright","daemon",(0,t.createHash)("sha1").update(l).digest("hex").slice(0,16)),u=R(e).PLAYWRIGHT_CLI_SESSION;for(let e of(await (0,a.readdir)(c).catch(()=>[]))){let t=e.startsWith("ud-")?e.slice(3):e;(t===u||t.startsWith(`${u}-`)||t.startsWith(`${u}.`))&&(r.some(e=>t===e||t.startsWith(`${e}-`)||t.startsWith(`${e}.`))||await (0,a.rm)((0,n.join)(c,e),{recursive:!0,force:!0}).catch(t=>s.logger.warn(`browser data ${e}: ${String(t)}`)))}}async function L(e,t){let r=await B(),a=R(e),i=await r.exec("playwright-cli list --json",{env:a,timeoutMs:15e3}).catch(()=>null),n=[];try{let{browsers:e}=JSON.parse(i?.stdout??"");n=e?.filter(e=>e.name===a.PLAYWRIGHT_CLI_SESSION||e.name.startsWith(`${a.PLAYWRIGHT_CLI_SESSION}-`))??[]}catch{}let o=[];for(let e of n){if(e.attached||!t&&!1!==e.headed){o.push(e.name);continue}await r.exec("playwright-cli close",{env:{...a,PLAYWRIGHT_CLI_SESSION:e.name},timeoutMs:15e3}).catch(()=>{})}return await I(),o}let C=()=>F(o.PATHS.output),M=()=>F(".playwright-cli");async function F(e){let t=(0,n.join)(f,e),r=await (0,a.readdir)(t,{withFileTypes:!0}).catch(()=>[]),i=Date.now()-o.WORKSPACE_KEEP.forMs;for(let e of r){if(!e.isFile())continue;let r=(0,n.join)(t,e.name),o=await (0,a.stat)(r).catch(()=>null);o&&o.mtimeMs<i&&await (0,a.unlink)(r).catch(()=>{})}}async function D(){return(await (0,a.readdir)((0,n.join)(f,o.PATHS.scratch),{withFileTypes:!0}).catch(()=>[])).filter(e=>e.isDirectory()).map(e=>`${o.PATHS.scratch}/${e.name}`)}async function G(e){let t=Date.now()-o.WORKSPACE_KEEP.forMs,r=[];for(let i of e){let e=(0,n.join)(f,i),o=await (0,a.stat)(e).catch(()=>null);o?.isDirectory()&&!(o.mtimeMs>=t)&&(await (0,a.rm)(e,{recursive:!0,force:!0}).catch(()=>{}),r.push(i))}return r}let N={"pnpm-workspace.yaml":"packages:\n - '**'\n",".npmrc":"recursive-install=false\n"};async function B(){for(let e of[...S,".playwright"])await (0,a.mkdir)((0,n.join)(f,e),{recursive:!0});for(let[e,t]of Object.entries(N))await (0,a.writeFile)((0,n.join)(f,e),t,{flag:"wx"}).catch(()=>{});return(({workingDirectory:e,spill:t,toolPath:r})=>{let i=(0,n.resolve)(e),o=(r??[]).filter(Boolean).join(":"),s=e=>e.startsWith("/")||/^[A-Za-z]:/.test(e)?e:(0,n.resolve)(i,e);return{cwd:i,resolve:s,readFile:(e,t)=>(0,a.readFile)(s(e),t),async writeFile(e,t){let r=s(e);await (0,a.mkdir)((0,n.join)(r,".."),{recursive:!0}),await (0,a.writeFile)(r,t)},readdir:(e,t)=>(0,a.readdir)(s(e),t),fold:(e,r="output")=>p(e,r,i,t),async glob(e,{path:t=".",limit:r=200}={}){let a=s(t),i=RegExp("^"+e.replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*\*\//g,"(?:.*/)?").replace(/\*/g,"[^/]*").replace(/\?/g,"[^/]")+"$"),o=[];for await(let e of d(a)){let t=(0,n.relative)(a,e).split(n.sep).join("/");if((i.test(t)||i.test(e))&&o.push(e),o.length>=r)break}return o},exec:(e,{cwd:r,timeoutMs:a=c.EXEC_TIMEOUT_MS,signal:n,env:u}={})=>new Promise(d=>{let h,f,w=function(){let e={...process.env};for(let t of Object.keys(e))/KEY|TOKEN|SECRET|PASSWORD|CREDENTIAL|_AUTH/i.test(t)&&delete e[t];return e.TERM="dumb",e.PAGER="cat",e.GIT_PAGER="cat",e}();o&&(w.PATH=`${w.PATH??""}:${o}`);let m=(0,l.spawn)(e,{shell:!0,cwd:r?s(r):i,env:{...w,...u},detached:!0}),S="",T="";m.stdout?.on("data",e=>S+=e),m.stderr?.on("data",e=>T+=e);let y=e=>{try{m.pid&&process.kill(-m.pid,e)}catch{m.kill(e)}},g=!1,A=async e=>{g||(g=!0,clearTimeout(v),clearTimeout(h),clearTimeout(f),n?.removeEventListener("abort",E),d({...e,stdout:await p(e.stdout,"stdout",i,t),stderr:await p(e.stderr,"stderr",i,t)}))},_=e=>{h||g||(T+=`
8
+ [${e}]`,y("SIGTERM"),h=setTimeout(()=>{T+="\n[Killed: it did not exit on SIGTERM]",y("SIGKILL"),f=setTimeout(()=>{m.stdout?.destroy(),m.stderr?.destroy(),A({stdout:S,stderr:T,exitCode:-1})},1e3)},c.EXEC_KILL_GRACE_MS))},v=setTimeout(()=>_(`Timed out after ${a}ms`),a),E=()=>_("Aborted");n?.aborted?E():n?.addEventListener("abort",E,{once:!0}),m.on("close",e=>A({stdout:S,stderr:T,exitCode:e??-1})),m.on("error",e=>A({stdout:S,stderr:T+String(e),exitCode:-1}))})}})({workingDirectory:f,spill:{dir:o.PATHS.output,...o.TOOL_OUTPUT},toolPath:w})}async function Y(e,t){let r=e.map(e=>(0,n.resolve)(f,e));if(t){let e=0;for await(let a of d((0,n.join)(f,t)))if(r.push(a),(e+=1)>=500)break}let i=new Map;for(let e of r){let t=await (0,a.stat)(e).catch(()=>null);if(!t?.isFile())continue;let r=(0,n.relative)(f,e);i.set(r&&!r.startsWith("..")?r:e,t.mtimeMs)}return[...i].sort((e,t)=>e[1]-t[1]).map(([e])=>e)}async function K(e,t){await (0,a.rm)((0,n.join)(f,_(e,t)),{recursive:!0,force:!0}).catch(()=>{})}e.s(["ARTIFACTS",0,m,"WORKSPACE",0,f,"botArtifacts",0,P,"botBrowserSession",0,(e,r)=>`${e}-bot-${(0,t.createHash)("sha256").update(r.trim().toLowerCase()).digest("hex").slice(0,20)}`,"botFolder",0,E,"botFolderName",0,v,"botShellEnv",0,e=>({THURSDAY_ARTIFACTS:P(e),THURSDAY_SKILLS:(0,n.join)(o.APP_DIR,o.PATHS.skills.default)}),"closeHiddenBrowser",0,j,"closeJobShell",0,O,"filesOnDisk",0,Y,"insideWorkspace",0,A,"jobScratch",0,_,"jobShellEnv",0,R,"listScratchFolders",0,D,"openBotFolders",0,$,"openJobScratch",0,b,"openWorkspace",0,B,"pruneJobFiles",0,I,"readMachineTools",0,x,"removeJobBrowsers",0,W,"removeJobScratch",0,K,"removeUnchangedFolders",0,G,"writeRefusal",0,function(e,t){if(y(f,e)){let a=(0,n.relative)(f,e),[i,s]=a.split(n.sep);return i&&T.has(i)?t&&i===o.PATHS.artifacts&&s&&s.toLowerCase()!==v(t).toLowerCase()&&!(0,r.existsSync)((0,n.join)(m,s))?`Not written: ${a} would sit loose at the top of ${o.PATHS.artifacts}/. Your finished work goes in ${P(t)}/.`:null:`Not written: ${a||"the workspace root"} is outside the workspace's folders. Finished work goes under ${t?P(t):o.PATHS.artifacts}/, code under ${o.PATHS.projects}/, your own kit under ${o.PATHS.bots}/, and this job's working material under ${o.PATHS.scratch}/.`}return y(h,e)?`Not written: ${e} is inside the app that is running you, not the user's files. Work in ${f}; outside it, write only where the user pointed you.`:null}],786025)}];
9
9
 
10
10
  //# sourceMappingURL=%5Broot-of-the-server%5D__1-swlkw._.js.map