thursday-agent 0.29.0 → 0.30.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 (525) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +1 -0
  3. package/.next/build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +6 -0
  6. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  7. package/.next/server/app/_global-error.html +1 -1
  8. package/.next/server/app/_global-error.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  13. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_not-found.html +1 -1
  15. package/.next/server/app/_not-found.rsc +3 -3
  16. package/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
  17. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
  18. package/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -3
  19. package/.next/server/app/api/artifact/route.js +13 -14
  20. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  21. package/.next/server/app/api/bot/memory/files/route.js +11 -6
  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 +11 -11
  24. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  25. package/.next/server/app/api/bot/route.js +11 -11
  26. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  27. package/.next/server/app/api/bot/thread/file/route.js +19 -19
  28. package/.next/server/app/api/bot/thread/file/route.js.nft.json +1 -1
  29. package/.next/server/app/api/bot/thread/lessons/route/app-paths-manifest.json +3 -0
  30. package/.next/server/app/api/bot/thread/lessons/route/build-manifest.json +12 -0
  31. package/.next/server/app/api/bot/thread/lessons/route/server-reference-manifest.json +4 -0
  32. package/.next/server/app/api/bot/thread/lessons/route.js +18 -0
  33. package/.next/server/app/api/bot/thread/lessons/route.js.map +5 -0
  34. package/.next/server/app/api/bot/thread/lessons/route.js.nft.json +1 -0
  35. package/.next/server/app/api/bot/thread/lessons/route_client-reference-manifest.js +3 -0
  36. package/.next/server/app/api/bot/thread/route.js +8 -9
  37. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  38. package/.next/server/app/api/bot/tool-result/[id]/route.js +10 -11
  39. package/.next/server/app/api/bot/tool-result/[id]/route.js.nft.json +1 -1
  40. package/.next/server/app/api/config/route.js +6 -7
  41. package/.next/server/app/api/config/route.js.nft.json +1 -1
  42. package/.next/server/app/api/events/route.js +4 -4
  43. package/.next/server/app/api/events/route.js.nft.json +1 -1
  44. package/.next/server/app/api/favicon/[host]/route.js +3 -3
  45. package/.next/server/app/api/favicon/[host]/route.js.nft.json +1 -1
  46. package/.next/server/app/api/file/[...path]/route.js +11 -6
  47. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  48. package/.next/server/app/api/llm-model/automatic/route.js +10 -11
  49. package/.next/server/app/api/llm-model/automatic/route.js.nft.json +1 -1
  50. package/.next/server/app/api/llm-model/catalog/[provider]/route.js +10 -11
  51. package/.next/server/app/api/llm-model/catalog/[provider]/route.js.nft.json +1 -1
  52. package/.next/server/app/api/llm-model/credits/[provider]/route.js +10 -11
  53. package/.next/server/app/api/llm-model/credits/[provider]/route.js.nft.json +1 -1
  54. package/.next/server/app/api/llm-model/route.js +8 -9
  55. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  56. package/.next/server/app/api/llm-model/subscription/route.js +8 -9
  57. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  58. package/.next/server/app/api/mcp/[name]/route.js +8 -9
  59. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  60. package/.next/server/app/api/mcp/oauth/callback/route.js +10 -11
  61. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  62. package/.next/server/app/api/mcp/route.js +8 -9
  63. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  64. package/.next/server/app/api/mcp/tools/route.js +8 -9
  65. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  66. package/.next/server/app/api/memory/edit/route.js +19 -19
  67. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  68. package/.next/server/app/api/memory/route.js +6 -7
  69. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  70. package/.next/server/app/api/reach/route.js +20 -20
  71. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  72. package/.next/server/app/api/routine/route.js +12 -12
  73. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  74. package/.next/server/app/api/running/route.js +3 -3
  75. package/.next/server/app/api/running/route.js.nft.json +1 -1
  76. package/.next/server/app/api/signins/route.js +11 -7
  77. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  78. package/.next/server/app/api/skills/[source]/[name]/route.js +14 -14
  79. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  80. package/.next/server/app/api/skills/route.js +14 -14
  81. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  82. package/.next/server/app/api/thursday/call/end/route.js +19 -19
  83. package/.next/server/app/api/thursday/call/end/route.js.nft.json +1 -1
  84. package/.next/server/app/api/thursday/call/plan/route.js +19 -19
  85. package/.next/server/app/api/thursday/call/plan/route.js.nft.json +1 -1
  86. package/.next/server/app/api/thursday/call/route.js +11 -12
  87. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  88. package/.next/server/app/api/thursday/settings/route.js +11 -12
  89. package/.next/server/app/api/thursday/settings/route.js.nft.json +1 -1
  90. package/.next/server/app/api/thursday/text/route.js +20 -20
  91. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  92. package/.next/server/app/api/thursday/tool-call/route.js +20 -20
  93. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  94. package/.next/server/app/api/update/route.js +10 -11
  95. package/.next/server/app/api/update/route.js.nft.json +1 -1
  96. package/.next/server/app/api/workspace/files/route.js +13 -13
  97. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  98. package/.next/server/app/api/workspace/route.js +13 -13
  99. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  100. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +11 -11
  101. package/.next/server/app/artifact/[...path]/page.js +11 -11
  102. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  103. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  104. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  105. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  106. package/.next/server/app/page/server-reference-manifest.json +101 -68
  107. package/.next/server/app/page.js +10 -10
  108. package/.next/server/app/page.js.nft.json +1 -1
  109. package/.next/server/app/page_client-reference-manifest.js +1 -1
  110. package/.next/server/app-paths-manifest.json +1 -0
  111. package/.next/server/chunks/[root-of-the-server]__0-xeb9k._.js +3 -0
  112. package/.next/server/chunks/{[root-of-the-server]__0qkh140._.js → [root-of-the-server]__01lftiq._.js} +1 -1
  113. package/.next/server/chunks/[root-of-the-server]__022hmm4._.js +1 -1
  114. package/.next/server/chunks/{[root-of-the-server]__1im7w7z._.js → [root-of-the-server]__02td13j._.js} +1 -1
  115. package/.next/server/chunks/[root-of-the-server]__03bjojd._.js +2 -2
  116. package/.next/server/chunks/[root-of-the-server]__03jn6g5._.js +3 -0
  117. package/.next/server/chunks/[root-of-the-server]__05wauq3._.js +12 -0
  118. package/.next/server/chunks/[root-of-the-server]__06eoz24._.js +5 -0
  119. package/.next/server/chunks/{[root-of-the-server]__0sfx6id._.js → [root-of-the-server]__0_jtzqu._.js} +2 -2
  120. package/.next/server/chunks/[root-of-the-server]__0_k10q9._.js +3 -0
  121. package/.next/server/chunks/{[root-of-the-server]__1l4feoc._.js → [root-of-the-server]__0cmzvf7._.js} +1 -1
  122. package/.next/server/chunks/[root-of-the-server]__0cq8fp4._.js +3 -0
  123. package/.next/server/chunks/[root-of-the-server]__0cyki0f._.js +8 -0
  124. package/.next/server/chunks/[root-of-the-server]__0fvz6w5._.js +6 -0
  125. package/.next/server/chunks/[root-of-the-server]__0kj7-jk._.js +3 -0
  126. package/.next/server/chunks/{[root-of-the-server]__1p1ww2o._.js → [root-of-the-server]__0mq_mis._.js} +1 -1
  127. package/.next/server/chunks/[root-of-the-server]__0ncs9uu._.js +1 -1
  128. package/.next/server/chunks/{[root-of-the-server]__00dtf7h._.js → [root-of-the-server]__0o6p3jk._.js} +2 -2
  129. package/.next/server/chunks/[root-of-the-server]__0opzn4f._.js +3 -0
  130. package/.next/server/chunks/{[root-of-the-server]__0ags3y9._.js → [root-of-the-server]__0puaol7._.js} +2 -2
  131. package/.next/server/chunks/[root-of-the-server]__0qhf60h._.js +1 -1
  132. package/.next/server/chunks/{[root-of-the-server]__0ah_uba._.js → [root-of-the-server]__0s6-921._.js} +1 -1
  133. package/.next/server/chunks/{[root-of-the-server]__0n4xgfd._.js → [root-of-the-server]__0sg3_9d._.js} +2 -2
  134. package/.next/server/chunks/[root-of-the-server]__0t9e405._.js +3 -0
  135. package/.next/server/chunks/{[root-of-the-server]__20zucml._.js → [root-of-the-server]__0ubu0sh._.js} +1 -1
  136. package/.next/server/chunks/[root-of-the-server]__0ucigrb._.js +3 -0
  137. package/.next/server/chunks/{[root-of-the-server]__0_qe8iq._.js → [root-of-the-server]__0wnd1ac._.js} +2 -2
  138. package/.next/server/chunks/[root-of-the-server]__1-ga0kh._.js +5 -0
  139. package/.next/server/chunks/[root-of-the-server]__10x2qg8._.js +5 -0
  140. package/.next/server/chunks/{[root-of-the-server]__0fo9gc5._.js → [root-of-the-server]__114bnf1._.js} +1 -1
  141. package/.next/server/chunks/[root-of-the-server]__1343ru3._.js +3 -0
  142. package/.next/server/chunks/{[root-of-the-server]__1g6_6it._.js → [root-of-the-server]__16682o8._.js} +1 -1
  143. package/.next/server/chunks/[root-of-the-server]__16bbvlw._.js +7 -0
  144. package/.next/server/chunks/{[root-of-the-server]__1ui547o._.js → [root-of-the-server]__16cwbuc._.js} +1 -1
  145. package/.next/server/chunks/{[root-of-the-server]__05fq824._.js → [root-of-the-server]__17luxss._.js} +2 -2
  146. package/.next/server/chunks/[root-of-the-server]__17ses32._.js +3 -0
  147. package/.next/server/chunks/[root-of-the-server]__1_04mcf._.js +1 -1
  148. package/.next/server/chunks/{[root-of-the-server]__1m9dh1w._.js → [root-of-the-server]__1ahc9c9._.js} +1 -1
  149. package/.next/server/chunks/[root-of-the-server]__1bewni6._.js +8 -0
  150. package/.next/server/chunks/{[root-of-the-server]__0lg1fok._.js → [root-of-the-server]__1bk734v._.js} +1 -1
  151. package/.next/server/chunks/{[root-of-the-server]__0atf1-_._.js → [root-of-the-server]__1btmuni._.js} +5 -5
  152. package/.next/server/chunks/[root-of-the-server]__1e2aiae._.js +3 -0
  153. package/.next/server/chunks/[root-of-the-server]__1fjmju_._.js +3 -0
  154. package/.next/server/chunks/[root-of-the-server]__1j-6f71._.js +3 -0
  155. package/.next/server/chunks/{[root-of-the-server]__0btxiu1._.js → [root-of-the-server]__1ltmy5k._.js} +2 -2
  156. package/.next/server/chunks/[root-of-the-server]__1mf425m._.js +8 -0
  157. package/.next/server/chunks/[root-of-the-server]__1ndi14y._.js +1 -1
  158. package/.next/server/chunks/[root-of-the-server]__1o7z93z._.js +1 -1
  159. package/.next/server/chunks/[root-of-the-server]__1orn-5b._.js +11 -0
  160. package/.next/server/chunks/[root-of-the-server]__1pho9cl._.js +3 -0
  161. package/.next/server/chunks/[root-of-the-server]__1q2jauq._.js +3 -0
  162. package/.next/server/chunks/[root-of-the-server]__1rs2v4h._.js +5 -0
  163. package/.next/server/chunks/{[root-of-the-server]__1ivv7te._.js → [root-of-the-server]__1rso8xj._.js} +2 -2
  164. package/.next/server/chunks/[root-of-the-server]__1xr0wxp._.js +3 -0
  165. package/.next/server/chunks/[root-of-the-server]__1yiazek._.js +3 -0
  166. package/.next/server/chunks/{[root-of-the-server]__0a2v56f._.js → [root-of-the-server]__20_po2e._.js} +2 -2
  167. package/.next/server/chunks/{[root-of-the-server]__0gmxpev._.js → [root-of-the-server]__20v-jxs._.js} +2 -2
  168. package/.next/server/chunks/[root-of-the-server]__212_w8j._.js +5 -0
  169. package/.next/server/chunks/_0-g8m2a._.js +72 -0
  170. package/.next/server/chunks/_0-qt5if._.js +1 -1
  171. package/.next/server/chunks/_00uhvhe._.js +12 -12
  172. package/.next/server/chunks/_02tecta._.js +5 -0
  173. package/.next/server/chunks/_04862qx._.js +3 -0
  174. package/.next/server/chunks/_05p90of._.js +3 -0
  175. package/.next/server/chunks/{_1_30lb4._.js → _06tj0ik._.js} +2 -2
  176. package/.next/server/chunks/_06u9yo-._.js +1 -1
  177. package/.next/server/chunks/_07mczew._.js +1 -1
  178. package/.next/server/chunks/_07pkeds._.js +2 -2
  179. package/.next/server/chunks/_08-mlqd._.js +1 -1
  180. package/.next/server/chunks/_08354bn._.js +12 -12
  181. package/.next/server/chunks/_08bp8w1._.js +3 -0
  182. package/.next/server/chunks/_0adsimt._.js +3 -0
  183. package/.next/server/chunks/_0bcx24d._.js +8 -0
  184. package/.next/server/chunks/{_0e8ks1n._.js → _0chqx-h._.js} +16 -12
  185. package/.next/server/chunks/_0d4f7pc._.js +5 -0
  186. package/.next/server/chunks/_0d9208_._.js +6 -0
  187. package/.next/server/chunks/{_0lip2ae._.js → _0ejet8x._.js} +16 -12
  188. package/.next/server/chunks/_0eowjm_._.js +72 -0
  189. package/.next/server/chunks/_0gxz_1b._.js +1 -1
  190. package/.next/server/chunks/_0iy3dus._.js +1 -1
  191. package/.next/server/chunks/_0jzv71c._.js +5 -0
  192. package/.next/server/chunks/{_0hin38_._.js → _0khihjk._.js} +6 -6
  193. package/.next/server/chunks/_0lrns0i._.js +3 -0
  194. package/.next/server/chunks/_0nbkv9k._.js +7 -0
  195. package/.next/server/chunks/_0p94gu0._.js +57 -0
  196. package/.next/server/chunks/_0pzqm_r._.js +3 -3
  197. package/.next/server/chunks/_0s515yz._.js +57 -0
  198. package/.next/server/chunks/_0supk_r._.js +5 -0
  199. package/.next/server/chunks/_0sxwm3y._.js +3 -0
  200. package/.next/server/chunks/_0tkzlv1._.js +3 -3
  201. package/.next/server/chunks/{_02o3ay7._.js → _0tzxrjg._.js} +2 -2
  202. package/.next/server/chunks/_0u0pa-b._.js +72 -0
  203. package/.next/server/chunks/_0umx0sn._.js +3 -0
  204. package/.next/server/chunks/_0vojr2u._.js +3 -0
  205. package/.next/server/chunks/_0wyh244._.js +12 -12
  206. package/.next/server/chunks/_0xlv72v._.js +57 -0
  207. package/.next/server/chunks/{_0a9x0xp._.js → _0y-5vzm._.js} +2 -2
  208. package/.next/server/chunks/{_0xt812m._.js → _0z06xn0._.js} +16 -12
  209. package/.next/server/chunks/_0zwjr-g._.js +1 -1
  210. package/.next/server/chunks/_1002x_9._.js +72 -0
  211. package/.next/server/chunks/{_0cdeabn._.js → _1299dpz._.js} +2 -2
  212. package/.next/server/chunks/_12htlm_._.js +9 -0
  213. package/.next/server/chunks/_13tat6z._.js +1 -1
  214. package/.next/server/chunks/_143moy6._.js +5 -0
  215. package/.next/server/chunks/_186uku9._.js +1 -1
  216. package/.next/server/chunks/_190pdee._.js +3 -0
  217. package/.next/server/chunks/_1951_6o._.js +3 -0
  218. package/.next/server/chunks/_19h6ag7._.js +3 -0
  219. package/.next/server/chunks/_1_0gehg._.js +3 -3
  220. package/.next/server/chunks/_1be0yao._.js +12 -12
  221. package/.next/server/chunks/_1dtm9bs._.js +1 -1
  222. package/.next/server/chunks/_1e1t6tm._.js +57 -0
  223. package/.next/server/chunks/_1e1yip3._.js +3 -0
  224. package/.next/server/chunks/{_0uet1h6._.js → _1e48czp._.js} +6 -6
  225. package/.next/server/chunks/_1fqa4ax._.js +72 -0
  226. package/.next/server/chunks/_1gb0_wm._.js +3 -0
  227. package/.next/server/chunks/_1i6626u._.js +3 -0
  228. package/.next/server/chunks/_1jca8ws._.js +3 -0
  229. package/.next/server/chunks/_1k6bmez._.js +1 -1
  230. package/.next/server/chunks/{_10qam6o._.js → _1kg70wc._.js} +6 -6
  231. package/.next/server/chunks/_1ko5shz._.js +1 -1
  232. package/.next/server/chunks/{_12a_gfz._.js → _1kqgeww._.js} +16 -12
  233. package/.next/server/chunks/_1kwmzab._.js +1 -1
  234. package/.next/server/chunks/_1l5qbki._.js +6 -0
  235. package/.next/server/chunks/_1mlsbwy._.js +3 -0
  236. package/.next/server/chunks/_1nej_f5._.js +72 -0
  237. package/.next/server/chunks/_1o15f0b._.js +3 -0
  238. package/.next/server/chunks/_1omiszv._.js +57 -0
  239. package/.next/server/chunks/_1otx63k._.js +3 -0
  240. package/.next/server/chunks/_1pwai-w._.js +72 -0
  241. package/.next/server/chunks/_1qdqpgf._.js +3 -0
  242. package/.next/server/chunks/_1qo2kxe._.js +3 -0
  243. package/.next/server/chunks/_1qoa_n_._.js +3 -0
  244. package/.next/server/chunks/_1qwi06-._.js +5 -0
  245. package/.next/server/chunks/_1qxheoa._.js +1 -1
  246. package/.next/server/chunks/{_1skgy7b._.js → _1ry6afh._.js} +6 -6
  247. package/.next/server/chunks/_1u9tb9z._.js +57 -0
  248. package/.next/server/chunks/_1v7z66t._.js +5 -0
  249. package/.next/server/chunks/_1vdlc8g._.js +5 -0
  250. package/.next/server/chunks/_1x2xiyw._.js +1 -1
  251. package/.next/server/chunks/_1y-e2mk._.js +79 -0
  252. package/.next/server/chunks/_1yx285_._.js +1 -1
  253. package/.next/server/chunks/_1za6dtx._.js +72 -0
  254. package/.next/server/chunks/_1zsrejy._.js +3 -0
  255. package/.next/server/chunks/_1zvhk_m._.js +1 -1
  256. package/.next/server/chunks/{_0m3sdq8._.js → _20sfopz._.js} +16 -12
  257. package/.next/server/chunks/_next-internal_server_app_api_bot_thread_lessons_route_actions_0zt-nr6.js +3 -0
  258. package/.next/server/chunks/config_ts_1g4sz5o._.js +1 -1
  259. package/.next/server/chunks/features_0-728_-._.js +1 -1
  260. package/.next/server/chunks/features_0uy40ze._.js +1 -1
  261. package/.next/server/chunks/features_0vyrnq0._.js +3 -0
  262. package/.next/server/chunks/features_116bwtn._.js +1 -1
  263. package/.next/server/chunks/features_14kex_m._.js +3 -3
  264. package/.next/server/chunks/features_1cb9luv._.js +1 -1
  265. package/.next/server/chunks/features_1jd2zjm._.js +8 -8
  266. package/.next/server/chunks/features_1xn6un-._.js +3 -3
  267. package/.next/server/chunks/features_bot_1d6ghh5._.js +1 -1
  268. package/.next/server/chunks/features_bot_1dfrdsb._.js +1 -1
  269. package/.next/server/chunks/ssr/{[root-of-the-server]__0nfq6eh._.js → [root-of-the-server]__0ama9d0._.js} +2 -2
  270. package/.next/server/chunks/ssr/[root-of-the-server]__0auk-ke._.js +1 -1
  271. package/.next/server/chunks/ssr/{[root-of-the-server]__1vgf-i-._.js → [root-of-the-server]__0p0cgo1._.js} +2 -2
  272. package/.next/server/chunks/ssr/{[root-of-the-server]__07mxab7._.js → [root-of-the-server]__0rpm20m._.js} +2 -2
  273. package/.next/server/chunks/ssr/[root-of-the-server]__0vcuiyu._.js +3 -0
  274. package/.next/server/chunks/ssr/{[root-of-the-server]__18l3o37._.js → [root-of-the-server]__0x2--_p._.js} +2 -2
  275. package/.next/server/chunks/ssr/{[root-of-the-server]__1njrrpi._.js → [root-of-the-server]__145268e._.js} +2 -2
  276. package/.next/server/chunks/ssr/{[root-of-the-server]__0bgf9r2._.js → [root-of-the-server]__153-ebp._.js} +2 -2
  277. package/.next/server/chunks/ssr/[root-of-the-server]__16jc196._.js +1 -1
  278. package/.next/server/chunks/ssr/[root-of-the-server]__1867koj._.js +1 -1
  279. package/.next/server/chunks/ssr/[root-of-the-server]__1hqly37._.js +3 -0
  280. package/.next/server/chunks/ssr/[root-of-the-server]__1j-bkt7._.js +3 -0
  281. package/.next/server/chunks/ssr/[root-of-the-server]__1nb9kc9._.js +3 -0
  282. package/.next/server/chunks/ssr/[root-of-the-server]__1t38-p_._.js +1 -1
  283. package/.next/server/chunks/ssr/_0692i-a._.js +1 -1
  284. package/.next/server/chunks/ssr/{_0x9aecq._.js → _0732nef._.js} +2 -2
  285. package/.next/server/chunks/ssr/_0cu8_pz._.js +3 -0
  286. package/.next/server/chunks/ssr/_0gk_72-._.js +3 -0
  287. package/.next/server/chunks/ssr/_0jvrmoz._.js +9 -0
  288. package/.next/server/chunks/ssr/{_1rlfzdj._.js → _0k06tdw._.js} +3 -3
  289. package/.next/server/chunks/ssr/{_0tfponz._.js → _0l_qakv._.js} +2 -2
  290. package/.next/server/chunks/ssr/_0lqzdd0._.js +3 -0
  291. package/.next/server/chunks/ssr/{_1k5f6cg._.js → _0p18b0z._.js} +2 -2
  292. package/.next/server/chunks/ssr/{_04f6fil._.js → _0pg2mgq._.js} +3 -3
  293. package/.next/server/chunks/ssr/{_0ps83ki._.js → _0rm-9aj._.js} +2 -2
  294. package/.next/server/chunks/ssr/_128r03g._.js +10 -10
  295. package/.next/server/chunks/ssr/_17fa2ns._.js +12 -12
  296. package/.next/server/chunks/ssr/_18cjc9o._.js +3 -0
  297. package/.next/server/chunks/ssr/_1_px1o-._.js +1 -1
  298. package/.next/server/chunks/ssr/_1a_w_du._.js +1 -1
  299. package/.next/server/chunks/ssr/_1crszf7._.js +2 -2
  300. package/.next/server/chunks/ssr/_1e_9qjr._.js +1 -1
  301. package/.next/server/chunks/ssr/_1ehd80b._.js +3 -0
  302. package/.next/server/chunks/ssr/{_06o_p34._.js → _1fua8fv._.js} +2 -2
  303. package/.next/server/chunks/ssr/_1m290ru._.js +3 -0
  304. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  305. package/.next/server/chunks/ssr/{_16qphtt._.js → _1q30h74._.js} +2 -2
  306. package/.next/server/chunks/ssr/_1q9r6u6._.js +1 -1
  307. package/.next/server/chunks/ssr/_1soynbw._.js +2 -2
  308. package/.next/server/chunks/ssr/{_079xt7h._.js → _1v_5j9l._.js} +23 -19
  309. package/.next/server/chunks/ssr/_1x_6jyh._.js +3 -0
  310. package/.next/server/chunks/ssr/{components_ui_markdown-body_tsx_1ac61z0._.js → components_ui_markdown-body_tsx_0ywzjrl._.js} +2 -2
  311. package/.next/server/chunks/ssr/features_0rrgq_t._.js +1 -1
  312. package/.next/server/chunks/ssr/features_ai_components_model-picker_tsx_0ucb1y9._.js +1 -1
  313. package/.next/server/chunks/ssr/features_bot_1stfytf._.js +1 -1
  314. package/.next/server/chunks/ssr/features_bot_components_01ye2wp._.js +1 -1
  315. package/.next/server/chunks/ssr/features_bot_components_bot-setting_tsx_01ajft6._.js +2 -2
  316. package/.next/server/chunks/ssr/features_bot_components_thread-setting_tsx_0yae7zy._.js +1 -1
  317. package/.next/server/chunks/ssr/features_config_components_config-setting_tsx_0xfwqdg._.js +1 -1
  318. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  319. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  320. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  321. package/.next/server/chunks/ssr/features_skills_components_skills-setting_tsx_1wtuuip._.js +1 -1
  322. package/.next/server/chunks/ssr/features_thursday_components_thursday-setting_tsx_1_6ydrc._.js +1 -1
  323. package/.next/server/chunks/ssr/{node_modules_1rtx020._.js → node_modules_0-s3xam._.js} +1 -1
  324. package/.next/server/chunks/ssr/{node_modules_0ukjqyk._.js → node_modules_02p2t58._.js} +1 -1
  325. package/.next/server/chunks/ssr/{node_modules_1kv5-zo._.js → node_modules_03gt5eg._.js} +1 -1
  326. package/.next/server/chunks/ssr/{node_modules_0t4ep0l._.js → node_modules_03ytewb._.js} +1 -1
  327. package/.next/server/chunks/ssr/{node_modules_0dfjba7._.js → node_modules_05yikon._.js} +1 -1
  328. package/.next/server/chunks/ssr/{node_modules_0x_r46g._.js → node_modules_060s01j._.js} +2 -2
  329. package/.next/server/chunks/ssr/{node_modules_15f2sid._.js → node_modules_07k-xj6._.js} +1 -1
  330. package/.next/server/chunks/ssr/{node_modules_0i3xlf-._.js → node_modules_08xo4p2._.js} +2 -2
  331. package/.next/server/chunks/ssr/{node_modules_0o5tzyn._.js → node_modules_09e0lw8._.js} +1 -1
  332. package/.next/server/chunks/ssr/{node_modules_1umqska._.js → node_modules_0a1kt26._.js} +1 -1
  333. package/.next/server/chunks/ssr/{node_modules_0w-dsl0._.js → node_modules_0ahwwc6._.js} +2 -2
  334. package/.next/server/chunks/ssr/{node_modules_0k-r85l._.js → node_modules_0c2vpni._.js} +2 -2
  335. package/.next/server/chunks/ssr/{node_modules_1g9_m7_._.js → node_modules_0e7nwfw._.js} +1 -1
  336. package/.next/server/chunks/ssr/{node_modules_1o_q011._.js → node_modules_0er1nmg._.js} +2 -2
  337. package/.next/server/chunks/ssr/{node_modules_122hfb2._.js → node_modules_0f3769j._.js} +1 -1
  338. package/.next/server/chunks/ssr/{node_modules_1lwcjnq._.js → node_modules_0fi5we8._.js} +1 -1
  339. package/.next/server/chunks/ssr/{node_modules_03ntdqv._.js → node_modules_0i2j6g6._.js} +1 -1
  340. package/.next/server/chunks/ssr/{node_modules_1rrbt-g._.js → node_modules_0ka66-h._.js} +1 -1
  341. package/.next/server/chunks/ssr/{node_modules_1k9u0x_._.js → node_modules_0keiwh2._.js} +2 -2
  342. package/.next/server/chunks/ssr/{node_modules_1kqsyd_._.js → node_modules_0mihldg._.js} +1 -1
  343. package/.next/server/chunks/ssr/{node_modules_0-8ygub._.js → node_modules_0mujceo._.js} +1 -1
  344. package/.next/server/chunks/ssr/{node_modules_162v3_m._.js → node_modules_0ntw_qg._.js} +1 -1
  345. package/.next/server/chunks/ssr/{node_modules_0zw6cf-._.js → node_modules_0py4_6y._.js} +1 -1
  346. package/.next/server/chunks/ssr/{node_modules_1jvg854._.js → node_modules_0qu8a5o._.js} +1 -1
  347. package/.next/server/chunks/ssr/{node_modules_0b8revr._.js → node_modules_0sk7kv9._.js} +1 -1
  348. package/.next/server/chunks/ssr/{node_modules_13rr6rm._.js → node_modules_0ted14c._.js} +2 -2
  349. package/.next/server/chunks/ssr/{node_modules_0pv4uha._.js → node_modules_0u78wn3._.js} +1 -1
  350. package/.next/server/chunks/ssr/{node_modules_152kfg-._.js → node_modules_0umtxxj._.js} +1 -1
  351. package/.next/server/chunks/ssr/{node_modules_1w2-as3._.js → node_modules_0ze7604._.js} +1 -1
  352. package/.next/server/chunks/ssr/{node_modules_1p_tdep._.js → node_modules_116k0n3._.js} +1 -1
  353. package/.next/server/chunks/ssr/{node_modules_0507yvc._.js → node_modules_15_65ve._.js} +1 -1
  354. package/.next/server/chunks/ssr/{node_modules_1rxd-pq._.js → node_modules_16hmz5b._.js} +1 -1
  355. package/.next/server/chunks/ssr/{node_modules_0mbx677._.js → node_modules_16ki2uq._.js} +1 -1
  356. package/.next/server/chunks/ssr/{node_modules_0tx0umb._.js → node_modules_19xrd6b._.js} +2 -2
  357. package/.next/server/chunks/ssr/{node_modules_16wbh_d._.js → node_modules_1_c3zat._.js} +2 -2
  358. package/.next/server/chunks/ssr/{node_modules_0kdzuew._.js → node_modules_1axn4aw._.js} +2 -2
  359. package/.next/server/chunks/ssr/{node_modules_1j59ehc._.js → node_modules_1bjctcm._.js} +1 -1
  360. package/.next/server/chunks/ssr/{node_modules_1awgatr._.js → node_modules_1cxx8tm._.js} +1 -1
  361. package/.next/server/chunks/ssr/{node_modules_012orll._.js → node_modules_1d7evv9._.js} +1 -1
  362. package/.next/server/chunks/ssr/{node_modules_1mxdor4._.js → node_modules_1depc7o._.js} +1 -1
  363. package/.next/server/chunks/ssr/{node_modules_1p5__vf._.js → node_modules_1dm5c-u._.js} +1 -1
  364. package/.next/server/chunks/ssr/{node_modules_02fw1bp._.js → node_modules_1fdivhl._.js} +1 -1
  365. package/.next/server/chunks/ssr/{node_modules_1u5xb0j._.js → node_modules_1gxpcyd._.js} +1 -1
  366. package/.next/server/chunks/ssr/{node_modules_1838s3x._.js → node_modules_1ih7lxu._.js} +2 -2
  367. package/.next/server/chunks/ssr/{node_modules_1tqxzmp._.js → node_modules_1k-0av-._.js} +1 -1
  368. package/.next/server/chunks/ssr/{node_modules_1_rbg_o._.js → node_modules_1kpg87p._.js} +1 -1
  369. package/.next/server/chunks/ssr/{node_modules_0x_do0y._.js → node_modules_1le-lim._.js} +2 -2
  370. package/.next/server/chunks/ssr/{node_modules_0qrh5xo._.js → node_modules_1lnx_h4._.js} +1 -1
  371. package/.next/server/chunks/ssr/{node_modules_06oedzb._.js → node_modules_1mwxdhp._.js} +1 -1
  372. package/.next/server/chunks/ssr/{node_modules_02t-i_c._.js → node_modules_1q2a30m._.js} +2 -2
  373. package/.next/server/chunks/ssr/{node_modules_1hgqn53._.js → node_modules_1soi3y1._.js} +2 -2
  374. package/.next/server/chunks/ssr/{node_modules_1ywecve._.js → node_modules_1sphzx9._.js} +1 -1
  375. package/.next/server/chunks/ssr/{node_modules_04e__3n._.js → node_modules_1tfn213._.js} +2 -2
  376. package/.next/server/chunks/ssr/{node_modules_1v065ct._.js → node_modules_1vmqt-a._.js} +1 -1
  377. package/.next/server/chunks/ssr/{node_modules_1qyanf-._.js → node_modules_1w8ljz0._.js} +2 -2
  378. package/.next/server/chunks/ssr/{node_modules_1sum8sx._.js → node_modules_208s6_i._.js} +1 -1
  379. package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_1y07ypr._.js → node_modules_katex_dist_katex_mjs_0jhievg._.js} +1 -1
  380. package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_1l3addz._.js → node_modules_katex_dist_katex_mjs_1zcod1m._.js} +1 -1
  381. package/.next/server/middleware-build-manifest.js +3 -3
  382. package/.next/server/pages/404.html +1 -1
  383. package/.next/server/pages/500.html +1 -1
  384. package/.next/server/server-reference-manifest.js +1 -1
  385. package/.next/server/server-reference-manifest.json +102 -69
  386. package/.next/static/chunks/078xraafllix3.js +1 -0
  387. package/.next/static/chunks/{1j2zjawu_2th7.js → 0nev6q2iq077s.js} +1 -1
  388. package/.next/static/chunks/{2adz3q18q052w.js → 0ocx6nt76fc71.js} +1 -1
  389. package/.next/static/chunks/0oo3vqzbrckzw.js +1 -0
  390. package/.next/static/chunks/{2b08w7t0hc1fp.js → 0piazplcpaho6.js} +1 -1
  391. package/.next/static/chunks/{0rx67d-x-1mmv.js → 0totfwrzgu9zy.js} +1 -1
  392. package/.next/static/chunks/{1s5t41jiomssd.css → 0tpwm72wdln0d.css} +1 -1
  393. package/.next/static/chunks/{1c3tarihhldvd.js → 0u_wx1-lmoae2.js} +1 -1
  394. package/.next/static/chunks/152u4p6c_6spk.js +1 -0
  395. package/.next/static/chunks/{0yp1so_h9mfhf.js → 1fignuuc030t2.js} +1 -1
  396. package/.next/static/chunks/2-zfbypxf0agx.js +1 -0
  397. package/.next/static/chunks/{36hfkcfa5a6be.js → 21wm184xoke98.js} +9 -9
  398. package/.next/static/chunks/{14e3ie8pgxgdb.js → 25-zh-0nfxqyg.js} +1 -1
  399. package/.next/static/chunks/29p2mdrn-z1oz.js +1 -0
  400. package/.next/static/chunks/{3hl237797_a8e.js → 2biit-egkb-xl.js} +2 -2
  401. package/.next/static/chunks/{29r_coa80ubpw.js → 2cciu1ow-svbf.js} +1 -1
  402. package/.next/static/chunks/{0xlr5fmtxb42l.js → 2kt0nc5m372ie.js} +2 -2
  403. package/.next/static/chunks/2v486bh_6kl11.js +1 -0
  404. package/.next/static/chunks/33_a4j5altfr5.js +1 -0
  405. package/.next/static/chunks/37pwubc1t0jyy.js +1 -0
  406. package/.next/static/chunks/{0eepme181mw6f.js → 38rbtwatw658l.js} +1 -1
  407. package/.next/static/chunks/{233p45nuh4m5b.css → 3d-1vk5hzu5rq.css} +2 -2
  408. package/.next/static/chunks/{2voeol7_1tit_.js → 3da8rr3q6pt0b.js} +1 -1
  409. package/.next/static/chunks/3i12sqqp1v8a8.js +1 -0
  410. package/.next/static/chunks/{2h5rvagz5wdhy.js → 3iwdx3_gikxbg.js} +1 -1
  411. package/.next/static/chunks/{3a98r51s8rjtt.js → 3k_xm_e4grb9u.js} +1 -1
  412. package/.next/static/chunks/{1b-3utyj58fn1.js → 3odtl00mfb4u7.js} +1 -1
  413. package/.next/static/chunks/3wblbyhomh9va.js +1 -0
  414. package/.next/static/chunks/{42xlx1decmn82.js → 3x2goglbfw5t7.js} +1 -1
  415. package/database/migrations/20261006014533_first_mercury/migration.sql +16 -0
  416. package/database/migrations/20261006014533_first_mercury/snapshot.json +2134 -0
  417. package/database/migrations/20261006022849_purple_young_avengers/migration.sql +1 -0
  418. package/database/migrations/20261006022849_purple_young_avengers/snapshot.json +2144 -0
  419. package/database/migrations/20261006040316_lazy_ogun/migration.sql +3 -0
  420. package/database/migrations/20261006040316_lazy_ogun/snapshot.json +2174 -0
  421. package/database/migrations/20261006043313_modern_goliath/migration.sql +1 -0
  422. package/database/migrations/20261006043313_modern_goliath/snapshot.json +2184 -0
  423. package/guide/bots.md +29 -0
  424. package/guide/phone.md +3 -1
  425. package/package.json +1 -1
  426. package/.next/server/chunks/[root-of-the-server]__00qilm2._.js +0 -3
  427. package/.next/server/chunks/[root-of-the-server]__01jpmcj._.js +0 -11
  428. package/.next/server/chunks/[root-of-the-server]__0bzz4u5._.js +0 -8
  429. package/.next/server/chunks/[root-of-the-server]__0d-dfqm._.js +0 -5
  430. package/.next/server/chunks/[root-of-the-server]__0elyqrt._.js +0 -3
  431. package/.next/server/chunks/[root-of-the-server]__0jqidnu._.js +0 -8
  432. package/.next/server/chunks/[root-of-the-server]__0mmynvy._.js +0 -5
  433. package/.next/server/chunks/[root-of-the-server]__0mzzwmt._.js +0 -8
  434. package/.next/server/chunks/[root-of-the-server]__0qo3zap._.js +0 -8
  435. package/.next/server/chunks/[root-of-the-server]__0rqmdxt._.js +0 -6
  436. package/.next/server/chunks/[root-of-the-server]__0sea36s._.js +0 -10
  437. package/.next/server/chunks/[root-of-the-server]__0unmyur._.js +0 -6
  438. package/.next/server/chunks/[root-of-the-server]__0wimh1u._.js +0 -8
  439. package/.next/server/chunks/[root-of-the-server]__0zezbds._.js +0 -5
  440. package/.next/server/chunks/[root-of-the-server]__12hkdpz._.js +0 -8
  441. package/.next/server/chunks/[root-of-the-server]__13dy1f5._.js +0 -5
  442. package/.next/server/chunks/[root-of-the-server]__13hng6h._.js +0 -3
  443. package/.next/server/chunks/[root-of-the-server]__14inehv._.js +0 -3
  444. package/.next/server/chunks/[root-of-the-server]__17kdjf6._.js +0 -5
  445. package/.next/server/chunks/[root-of-the-server]__17yv6lg._.js +0 -5
  446. package/.next/server/chunks/[root-of-the-server]__1ac25yp._.js +0 -12
  447. package/.next/server/chunks/[root-of-the-server]__1hjb8wf._.js +0 -3
  448. package/.next/server/chunks/[root-of-the-server]__1jcu_e9._.js +0 -5
  449. package/.next/server/chunks/[root-of-the-server]__1jmr2ed._.js +0 -8
  450. package/.next/server/chunks/[root-of-the-server]__1onvx8x._.js +0 -5
  451. package/.next/server/chunks/[root-of-the-server]__1r2kimd._.js +0 -3
  452. package/.next/server/chunks/[root-of-the-server]__1rjj4i4._.js +0 -3
  453. package/.next/server/chunks/[root-of-the-server]__1s3umyw._.js +0 -3
  454. package/.next/server/chunks/[root-of-the-server]__212tz6e._.js +0 -8
  455. package/.next/server/chunks/_0-mqt2w._.js +0 -3
  456. package/.next/server/chunks/_0bcg3vg._.js +0 -6
  457. package/.next/server/chunks/_0cm67bo._.js +0 -6
  458. package/.next/server/chunks/_0gifi_2._.js +0 -7
  459. package/.next/server/chunks/_0li046e._.js +0 -3
  460. package/.next/server/chunks/_0mirg2-._.js +0 -3
  461. package/.next/server/chunks/_0oj2slk._.js +0 -5
  462. package/.next/server/chunks/_0oyz9x0._.js +0 -3
  463. package/.next/server/chunks/_0pljp-1._.js +0 -3
  464. package/.next/server/chunks/_0rdxqrk._.js +0 -5
  465. package/.next/server/chunks/_0sxih1y._.js +0 -3
  466. package/.next/server/chunks/_0u-96in._.js +0 -9
  467. package/.next/server/chunks/_0wjia9n._.js +0 -5
  468. package/.next/server/chunks/_0x2mdif._.js +0 -5
  469. package/.next/server/chunks/_0xa89lt._.js +0 -3
  470. package/.next/server/chunks/_0y2a-fg._.js +0 -3
  471. package/.next/server/chunks/_0ynjnhl._.js +0 -5
  472. package/.next/server/chunks/_1-sk_q4._.js +0 -3
  473. package/.next/server/chunks/_1355-km._.js +0 -3
  474. package/.next/server/chunks/_14-kmob._.js +0 -5
  475. package/.next/server/chunks/_1d7gbgb._.js +0 -3
  476. package/.next/server/chunks/_1d_enhu._.js +0 -3
  477. package/.next/server/chunks/_1evvnbp._.js +0 -18
  478. package/.next/server/chunks/_1g10pf5._.js +0 -3
  479. package/.next/server/chunks/_1icgbi8._.js +0 -18
  480. package/.next/server/chunks/_1ihge52._.js +0 -6
  481. package/.next/server/chunks/_1k92b3d._.js +0 -3
  482. package/.next/server/chunks/_1nfr-75._.js +0 -3
  483. package/.next/server/chunks/_1o2r4ja._.js +0 -5
  484. package/.next/server/chunks/_1pv6xbq._.js +0 -5
  485. package/.next/server/chunks/_1qgix-j._.js +0 -3
  486. package/.next/server/chunks/_1sd6nev._.js +0 -3
  487. package/.next/server/chunks/_1t8fv7b._.js +0 -18
  488. package/.next/server/chunks/_1ufbxe1._.js +0 -5
  489. package/.next/server/chunks/features_workspace_workspace_ts_13h82gv._.js +0 -3
  490. package/.next/server/chunks/features_workspace_workspace_ts_1iyjroj._.js +0 -8
  491. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0omj5b1._.js +0 -3
  492. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0s2o664._.js +0 -3
  493. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_0ufuc3s._.js +0 -3
  494. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1cvpr1j._.js +0 -3
  495. package/.next/server/chunks/node_modules_consola_dist_chunks_prompt_mjs_1y49572._.js +0 -3
  496. package/.next/server/chunks/node_modules_zod_v4_03dw6sa._.js +0 -57
  497. package/.next/server/chunks/node_modules_zod_v4_0h0-drr._.js +0 -57
  498. package/.next/server/chunks/node_modules_zod_v4_0uctlhw._.js +0 -57
  499. package/.next/server/chunks/node_modules_zod_v4_13mu186._.js +0 -57
  500. package/.next/server/chunks/node_modules_zod_v4_17gxt3_._.js +0 -57
  501. package/.next/server/chunks/node_modules_zod_v4_1mygyfn._.js +0 -3
  502. package/.next/server/chunks/node_modules_zod_v4_1u-rl3b._.js +0 -57
  503. package/.next/server/chunks/ssr/[root-of-the-server]__0lv-wr_._.js +0 -3
  504. package/.next/server/chunks/ssr/[root-of-the-server]__0utwbb5._.js +0 -3
  505. package/.next/server/chunks/ssr/[root-of-the-server]__1fvh0zn._.js +0 -3
  506. package/.next/server/chunks/ssr/[root-of-the-server]__1ynag_l._.js +0 -3
  507. package/.next/server/chunks/ssr/_01l1svp._.js +0 -3
  508. package/.next/server/chunks/ssr/_01m2s2p._.js +0 -3
  509. package/.next/server/chunks/ssr/_0f3t9pm._.js +0 -9
  510. package/.next/server/chunks/ssr/_183f3bo._.js +0 -3
  511. package/.next/server/chunks/ssr/_1kj3d2q._.js +0 -3
  512. package/.next/server/chunks/ssr/_1tu2bpk._.js +0 -3
  513. package/.next/server/chunks/ssr/lib_utils_ts_0_f1xvm._.js +0 -3
  514. package/.next/static/chunks/051z85h3ofmif.js +0 -1
  515. package/.next/static/chunks/1l0_q-kf0cbaj.js +0 -1
  516. package/.next/static/chunks/1la1aeosxvwmz.js +0 -1
  517. package/.next/static/chunks/227tjgj_th6uf.js +0 -1
  518. package/.next/static/chunks/2jo02hrgs_zqm.js +0 -1
  519. package/.next/static/chunks/3k7fum0yljmyr.js +0 -1
  520. package/.next/static/chunks/3sawwm4vucnzn.js +0 -1
  521. package/.next/static/chunks/3sjv-rshh-98q.js +0 -1
  522. package/.next/static/chunks/3tejx8kiotsia.js +0 -1
  523. /package/.next/static/{mTdCVAiiVKCutbZcekyHn → nXUvWsiGKRvNRk8kqeJ-u}/_buildManifest.js +0 -0
  524. /package/.next/static/{mTdCVAiiVKCutbZcekyHn → nXUvWsiGKRvNRk8kqeJ-u}/_clientMiddlewareManifest.js +0 -0
  525. /package/.next/static/{mTdCVAiiVKCutbZcekyHn → nXUvWsiGKRvNRk8kqeJ-u}/_ssgManifest.js +0 -0
@@ -0,0 +1,5 @@
1
+ module.exports=[139886,e=>{"use strict";let t=e=>e.split("/").map(encodeURIComponent).join("/");e.s(["queryKey",0,{memory:"/api/memory",memoryPage:e=>({url:"/api/memory",query:{offset:e||null}}),mcp:"/api/mcp",mcpServer:e=>({url:"/api/mcp",pathVariable:[e]}),mcpTools:"/api/mcp/tools",skills:"/api/skills",skillNode:(e,t,r)=>({url:"/api/skills",pathVariable:[e,t],query:{path:r}}),bot:"/api/bot",botMemory:"/api/bot/memory",botMemoryFiles:e=>({url:"/api/bot/memory/files",query:{bot:e}}),routines:"/api/routine",threads:"/api/bot/thread",threadHistory:(e,t)=>({url:"/api/bot/thread",query:{history:1,before:e,q:t||void 0}}),thread:e=>({url:"/api/bot/thread",query:{id:e}}),lessons:e=>({url:"/api/bot/thread/lessons",query:e}),fileNotes:"/api/bot/thread/file",fileNote:(e,t)=>({url:"/api/bot/thread/file",query:{path:e,from:t}}),toolResult:(e,t)=>({url:"/api/bot/tool-result",pathVariable:[e],query:{call:t}}),workspace:"/api/workspace",workspaceFolder:(e,t)=>({url:"/api/workspace",query:{path:e||null,rows:t}}),workspaceFiles:e=>({url:"/api/workspace/files",query:{paths:JSON.stringify(e)}}),artifacts:"/api/artifact",artifactShelf:e=>({url:"/api/artifact",query:{rows:e}}),artifactSet:(e,t)=>({url:"/api/artifact",query:{set:e,rows:t}}),file:e=>`/api/file/${t(e)}`,fileFace:e=>`/api/file/${t(e)}?face`,favicon:e=>`/api/favicon/${encodeURIComponent(e)}`,fileView:e=>`/artifact/${t(e)}`,events:"/api/events",config:"/api/config",callHistory:e=>({url:"/api/thursday/call",query:{before:e}}),thursdaySettings:"/api/thursday/settings",toolCall:"/api/thursday/tool-call",callEnd:"/api/thursday/call/end",signIns:"/api/signins",reach:"/api/reach",textCall:"/api/thursday/text",memoryEdit:"/api/memory/edit",llmModel:"/api/llm-model",automaticModel:"/api/llm-model/automatic",modelCatalog:e=>`/api/llm-model/catalog/${e}`,keyCredits:e=>`/api/llm-model/credits/${e}`,subscriptionUsage:"/api/llm-model/subscription",running:"/api/running",update:"/api/update"}])},973589,e=>{"use strict";var t=e.i(902157),r=e.i(912714),n=e.i(750227),i=e.i(333925);let a=(0,n.join)(i.APP_DIR,"guide"),o=".guide";async function s(){if(!(0,t.existsSync)(a))return;let e=(0,n.join)(i.DATA_DIR,i.PATHS.workspace,o);await (0,r.rm)(e,{recursive:!0,force:!0}),await (0,r.cp)(a,e,{recursive:!0})}e.s(["botGuideLine",0,()=>`How ${i.APP_NAME} itself works for the user — its screens and settings — is written under \`${o}/\` here, \`index.md\` first; read it only when the job is about the app.`,"guideLine",0,()=>`How ${i.APP_NAME} works for the person using it — its screens, its settings, what it connects to, what to do when something stops — is written under \`${o}/\` here, \`index.md\` first. Read it whenever an answer depends on how the app works: what can be asked for, where something is changed, a wish that needs a setting switched on, something that stopped or was refused. Answer from it rather than from what you assume.`,"installGuide",0,s])},75752,e=>e.a(async(t,r)=>{try{var n=e.i(912714),i=e.i(750227),a=e.i(333925),o=e.i(871096),s=t([o]);[o]=s.then?(await s)():s;let m=e=>`${(0,o.botFolder)(e)}/memory`;async function l(e,t=a.BOT_MEMORY_LIMITS.files){let r=m(e),n=(0,i.join)(o.WORKSPACE,r),s=(await c(n)).sort((e,t)=>t.info.mtimeMs-e.info.mtimeMs),u=await Promise.all(s.slice(0,t).map(async({name:e,info:t})=>({file:e,path:`${r}/${e}`,line:await f((0,i.join)(n,e)),at:new Date(t.mtimeMs),bytes:t.size})));return{folder:r,entries:u,total:s.length}}async function c(e,{strict:t=!1}={}){let r=e=>{if(t&&"ENOENT"!==e.code)throw e;return null},a=await (0,n.readdir)(e).catch(r)??[];return(await Promise.all(a.filter(e=>!e.startsWith(".")).map(async t=>{let a=await (0,n.stat)((0,i.join)(e,t)).catch(r);return a?.isFile()?{name:t,info:a}:null}))).filter(e=>null!==e)}async function u(e){let t=(0,i.join)(o.WORKSPACE,m(e)),r=new Map;return await Promise.all((await c(t)).map(async({name:e,info:o})=>{let s=o.size>4*a.BOT_MEMORY_LIMITS.chars?null:await (0,n.readFile)((0,i.join)(t,e),"utf8").catch(()=>null);r.set(e,{text:null!==s&&h(s)<=a.BOT_MEMORY_LIMITS.chars?s:null,size:o.size,mtimeMs:o.mtimeMs,atime:o.atime,mtime:o.mtime})})),r}async function d(e,t){let r=m(e),s=(0,i.join)(o.WORKSPACE,r),{files:l,chars:u}=a.BOT_MEMORY_LIMITS,d=[],f=[],p=0;for(let{name:e,info:a}of(await c(s))){p+=1;let o=t.get(e);if(o&&o.size===a.size&&o.mtimeMs===a.mtimeMs)continue;let l=(0,i.join)(s,e),c=h(await (0,n.readFile)(l,"utf8").catch(()=>""));if(c<=u){o||f.push(e);continue}let m=`${c.toLocaleString("en-US")} characters, past the ${u.toLocaleString("en-US")} a memory file holds`;o?null!==o.text?(await (0,n.writeFile)(l,o.text),await (0,n.utimes)(l,o.atime,o.mtime),d.push(`Not kept: \`${r}/${e}\` came to ${m}, so it is back as it was. Write it again shorter.`)):d.push(`\`${r}/${e}\` is ${m}. Shorten it.`):(await (0,n.rm)(l,{force:!0}),p-=1,d.push(`Not kept: \`${r}/${e}\` came to ${m}, so it was removed. Write it again shorter.`))}if(p>l&&f.length){await Promise.all(f.map(e=>(0,n.rm)((0,i.join)(s,e),{force:!0})));let e=f.map(e=>`\`${r}/${e}\``).join(", ");d.push(`Not kept: your memory holds ${l} files at most and this made ${p}, so ${e} ${1===f.length?"was":"were"} removed. Delete or merge files no longer worth keeping, then write it again.`)}return d.length?d.join("\n"):null}let h=e=>[...e.trim()].length;async function f(e){let t=await (0,n.open)(e,"r").catch(()=>null);if(!t)return"";try{let e=Buffer.alloc(1024),{bytesRead:r}=await t.read(e,0,1024,0);return p(e.toString("utf8",0,r))}finally{await t.close()}}function p(e){let t=e.split("\n").map(e=>e.trim()).filter(Boolean);if("---"===t[0]){let e=t.find(e=>e.startsWith("description:"));if(e)return e.slice(12).trim().replace(/^["']|["']$/g,"");let r=t.indexOf("---",1);return r>0?(t[r+1]??"").replace(/^#+\s*/,""):""}return(t[0]??"").replace(/^#+\s*/,"")}e.s(["botMemoryFolder",0,m,"holdBotMemory",0,u,"keepBotMemory",0,d,"listBotMemory",0,l,"listingLine",0,p,"readMemoryFolder",0,c]),r()}catch(e){r(e)}},!1),487338,e=>e.a(async(t,r)=>{try{var n=e.i(336763),i=e.i(396918),a=e.i(232347);e.i(333925);var o=e.i(876393),s=e.i(220376),l=e.i(75752),c=t([o,l]);[o,l]=c.then?(await c)():c;let f=()=>{a.appEvents.emit({type:"threads"}),a.appEvents.emit({type:"bots"})};async function u(e){await o.database.transaction(async t=>{var r,a,o,c,u;let d,[f]=await t.select().from(s.botLessonTable).where((0,n.and)((0,n.eq)(s.botLessonTable.bot,e.bot),(0,n.eq)(s.botLessonTable.kind,e.kind),(0,n.eq)(s.botLessonTable.name,e.name),e.thread?(0,n.eq)(s.botLessonTable.threadId,e.thread.id):(0,n.isNull)(s.botLessonTable.threadId),(0,n.isNull)(s.botLessonTable.undoneAt))).orderBy((0,i.desc)(s.botLessonTable.id)).limit(1),h=f&&(r=f,a=e.before,null===r.after==(null===a)&&Object.keys({...r.before?.files,...r.after?.files}).every(e=>p(r.after,e)===p(a,e))),w=h?function(e,t){if(!e.before)return null;let r={...t?.files};for(let t of Object.keys({...e.before.files,...e.after?.files}))t in e.before.files?r[t]=e.before.files[t]:delete r[t];return{files:r,unheld:[...e.before.unheld]}}(f,e.before):e.before,g=function(e,t){if(!e&&!t)return null;let r=[...new Set([...Object.keys(e?.files??{}),...Object.keys(t?.files??{})])].filter(r=>p(e,r)!==p(t,r));if(e&&t&&!r.length&&!m(e.unheld,t.unheld).length&&!m(t.unheld,e.unheld).length)return null;let n=e=>e&&{files:Object.fromEntries(r.flatMap(t=>t in e.files?[[t,e.files[t]]]:[])),unheld:[...e.unheld]};return{before:n(e),after:n(t)}}(w,e.after),y=(o=e.kind,c=e.name,u=e.after??w,(d=Object.entries(u?.files??{}).filter(([e])=>"memory"===o||e.endsWith("/SKILL.md")).sort(([e],[t])=>e.length-t.length)[0])&&(0,l.listingLine)(d[1])||c);h?g?await t.update(s.botLessonTable).set({...g,line:y,updatedAt:new Date}).where((0,n.eq)(s.botLessonTable.id,f.id)):await t.delete(s.botLessonTable).where((0,n.eq)(s.botLessonTable.id,f.id)):g&&await t.insert(s.botLessonTable).values({bot:e.bot,threadId:e.thread?.id??null,threadLabel:e.thread?.label??"",kind:e.kind,name:e.name,line:y,...g})}),f()}let p=(e,t)=>e?.files[t]??null,m=(e,t)=>e.filter(e=>!t.includes(e));async function d(e){let t=await o.database.delete(s.botLessonTable).where((0,n.lt)(s.botLessonTable.updatedAt,e)).returning({id:s.botLessonTable.id});return t.length&&f(),t.length}e.s(["deleteOldLessons",0,d,"noteLesson",0,u,"sameKept",0,function(e,t){if(!e||!t)return e===t;let r=Object.keys(e.files);return r.length===Object.keys(t.files).length&&r.every(r=>e.files[r]===t.files[r])&&[...e.unheld].sort().join("\n")===[...t.unheld].sort().join("\n")}]),r()}catch(e){r(e)}},!1),746565,e=>{"use strict";let t="currentColor",r=[{id:"system",label:"System",value:t},{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"}],n=Object.fromEntries(r.map(e=>[e.id,e.value])),i=r.filter(e=>e.value!==t).map(e=>e.value),a=[n.amber,n.red],o={[n.cyan]:"#009dbb",[n.teal]:"#00a190",[n.green]:"#00a640",[n.lime]:"#5ca100",[n.amber]:"#d07b00",[n.orange]:"#ec6700",[n.sky]:"#0098dc",[n.emerald]:"#00a46d",[n.yellow]:"#bb8600"},s={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"]}},l=Object.keys(s);e.s(["MARK_INK",0,n,"MARK_PAINTS",0,s,"MARK_PAINT_IDS",0,l,"MARK_SHAPES",0,["blob","poly","squircle","heart"],"MARK_SYSTEM",0,t,"markInk",0,(e,t)=>t?e:o[e]??e,"randomMarkFill",0,function(){let e=[...i.filter(e=>!a.includes(e)).map(e=>({color:e})),...l.map(e=>({paint:e}))];return e[Math.floor(Math.random()*e.length)]}])},379651,e=>e.a(async(t,r)=>{try{var n=e.i(666680),i=e.i(912714),a=e.i(750227),o=e.i(749906),s=e.i(232347),l=e.i(333925),c=e.i(871096),u=e.i(938281),d=e.i(991243),f=e.i(377205),p=t([c]);[c]=p.then?(await p)():p;let L=(0,a.join)(l.DATA_DIR,l.PATHS.signIns),x=o.object({site:o.string().min(1),account:o.string().min(1),bots:o.array(o.string()),asking:o.array(o.string()),keptAt:o.string(),usedAt:o.string().nullable(),state:o.unknown()}),C=(e,t)=>(0,a.join)(L,`${encodeURIComponent((0,f.siteOf)(e))}@${(0,n.createHash)("sha256").update(t).digest("hex").slice(0,16)}.json`),R=e=>(0,a.join)(L,`${encodeURIComponent((0,f.siteOf)(e))}.json`);function m(e){let[,t]=/^([^@]+)(?:@[0-9a-f]{16})?\.json$/.exec(e)??[];if(!t)return null;try{return decodeURIComponent(t)}catch{return null}}async function h(e){try{let t=x.safeParse(JSON.parse(await (0,i.readFile)(e,"utf8")));return t.success?t.data:null}catch{return null}}async function w(e,t){let r=await h(C(e,t));if(r)return r;let n=await h(R(e));return n?.site===(0,f.siteOf)(e)&&n.account===t?n:null}async function g(e,t){let r=R(e),n=await h(r);n?.site===(0,f.siteOf)(e)&&n.account===t&&await (0,i.rm)(r,{force:!0})}async function y(e){await (0,i.mkdir)(L,{recursive:!0});let t=C(e.site,e.account),r=`${t}.saving`;try{await (0,i.writeFile)(r,JSON.stringify(e),{mode:384}),await (0,i.rename)(r,t)}catch(e){throw await (0,i.rm)(r,{force:!0}).catch(()=>{}),e}await g(e.site,e.account),s.appEvents.emit({type:"signins"})}let N=globalThis.__signInsVault??=(0,d.createKeyedLock)(),D=e=>N("vault",e);async function b(){let e=await (0,i.readdir)(L).catch(()=>[]);return[...new Set(e.flatMap(e=>m(e)??[]))].sort()}async function k(e){let t=(await (0,i.readdir)(L).catch(()=>[])).filter(t=>{let r=m(t);return null!==r&&(!e||e(r))});return(await Promise.all(t.map(async e=>{let r=await h((0,a.join)(L,e));if(!r)return null;let n=(0,a.basename)(C(r.site,r.account));return e===n?r:e!==(0,a.basename)(R(r.site))||t.includes(n)?null:r}))).flatMap(e=>e?[e]:[]).sort((e,t)=>e.site.localeCompare(t.site)||e.account.localeCompare(t.account))}async function v(e){let t=(0,f.siteOf)(e),r=await b(),n=r.includes(t)?t:r.filter(e=>t.endsWith(`.${e}`)).sort((e,t)=>t.length-e.length)[0];return n?k(e=>e===n):[]}function O(e){return D(async()=>{let t=await v(e.site),r=t[0]?.site??(0,f.siteOf)(e.site),n=e.account.trim()||r,i=t.map(e=>e.account),a=t.find(e=>e.account===n);if(a&&e.another)return{kind:"clash",site:r,accounts:i};if(a&&!a.bots.includes(e.bot)){let t=a.asking.includes(e.bot)?a:{...a,asking:[...a.asking,e.bot]};return t!==a&&await y(t),{kind:"taken",signIn:(({state:e,...t})=>t)(t)}}if(!a&&t.length&&!e.another)return{kind:"unlisted",site:r,accounts:i};let o={site:r,account:n,bots:[...new Set([...a?.bots??[],e.bot])],asking:(a?.asking??[]).filter(t=>t!==e.bot),keptAt:new Date().toISOString(),usedAt:a?.usedAt??null,state:e.state};return await y(o),{kind:"kept",signIn:(({state:e,...t})=>t)(o),replaced:!!a}})}async function j(e,t){return(await (0,c.listBrowsers)(e,t)).find(e=>e.name===t.PLAYWRIGHT_CLI_SESSION)??null}async function S(e,t){let r=await j(e,t);return r?r.attached?"theirs":"own":null}async function T(e,t){let r=await j(e,t);return!!r&&!r.attached&&!0===r.headed}let F=globalThis.__signInsBrowser??=(0,d.createKeyedLock)(),B=(e,t)=>F(e.PLAYWRIGHT_CLI_SESSION??"",t),W=globalThis.__signInsLentByAccount??=new Map,V="__thursdaySignIns";async function _(e,t){let r=await e.exec(`playwright-cli --raw run-code "async page => page.context().${V} ?? null"`,{env:t,timeoutMs:l.BROWSER_CLI.readMs});if(0===r.exitCode)try{let e=JSON.parse(r.stdout);return"string"==typeof e?e:null}catch{return}}let H=!1;async function I(e,t,r){let n=await e.exec(`playwright-cli --raw run-code "async page => { page.context().${V} = '${r}'; return true; }"`,{env:t,timeoutMs:l.BROWSER_CLI.readMs});return 0===n.exitCode&&(!!H||(H=await _(e,t)===r))}async function A(e,t,r,i,a){let o=t.PLAYWRIGHT_CLI_SESSION;if(!o)return;let s=W.get(o);if("kept"===a&&s?.bot===r&&await _(e,t)===s.mark)return void s.sites.set(i.site,i.account);let l=(0,n.randomUUID)().replaceAll("-","");await I(e,t,l)?W.set(o,{bot:r,mark:l,sites:new Map([[i.site,i.account]])}):(W.delete(o),u.logger.warn(`sign-ins: ${o}'s browser could not be marked, so ${i.site} is not renewed from it`))}async function E(e,t){let r=t.PLAYWRIGHT_CLI_SESSION??"",n=W.get(r);n&&!await I(e,t,n.mark)&&W.delete(r)}let q=e=>`${e.name}
2
+ ${e.domain}
3
+ ${e.path}`;async function P(e,t){let r,n=t.PLAYWRIGHT_CLI_SESSION??"",i=W.get(n);if(!i?.sites.size)return;if(await S(e,t)!=="own")return void W.delete(n);let a=async()=>{let r=await _(e,t);return void 0!==r&&r!==i.mark&&W.delete(n),r===i.mark};if(!await a())return;let o=(0,c.browserStateFile)();try{let n=await e.exec((0,c.saveBrowserState)(o),{env:t,timeoutMs:l.BROWSER_CLI.loadMs});if(0!==n.exitCode)return;let i=JSON.parse(await e.readFile(o,"utf-8"));r=new Map((i.cookies??[]).map(e=>[q(e),e]))}finally{await e.exec(`rm -f ${o}`)}if(W.get(n)===i&&await a())for(let[e,t]of i.sites)await D(async()=>{let n=await w(e,t),a=n?.state;if(!n||!a?.cookies||!n.bots.includes(i.bot))return;let o=!1,s=a.cookies.map(e=>{let t=r.get(q(e));return t&&JSON.stringify(t)!==JSON.stringify(e)?(o=!0,t):e});o&&await y({...n,state:{...a,cookies:s}})})}async function $(e){let t=(0,c.jobShellEnv)(e);if(!W.get(t.PLAYWRIGHT_CLI_SESSION??"")?.sites.size)return;let r=await (0,c.openWorkspace)();await B(t,()=>P(r,t))}async function M(){let e=(0,a.join)(c.WORKSPACE,l.PATHS.bots);for(let t of(await (0,i.readdir)(e).catch(()=>[]))){let r=(0,a.join)(e,t,".auth");for(let e of(await (0,i.readdir)(r).catch(()=>[]))){if(!e.endsWith(".json"))continue;let n=(0,a.join)(r,e);try{let o=JSON.parse(await (0,i.readFile)(n,"utf8")),s=e.slice(0,-5),l=(await (0,i.readFile)((0,a.join)(r,"account.txt"),"utf8").catch(()=>"")).trim(),c=await O({site:s,account:l,bot:t,state:o});if("unlisted"===c.kind&&(c=await O({site:s,account:l,bot:t,state:o,another:!0})),"kept"!==c.kind&&"taken"!==c.kind)throw Error(`${s} (${l}) could not be told apart`);await (0,i.rm)(n),u.logger.info("kept"===c.kind?`sign-ins: took in ${t}'s ${s}`:`sign-ins: ${s} is kept for another bot already; ${t}'s old copy was removed and ${t} is asking for it`)}catch(e){u.logger.warn(`sign-ins: could not take in ${n}`,e)}}}}e.s(["adoptKeptSessions",0,M,"borrowSignIn",0,function(e,t,r){return D(async()=>{let n=await v(e);if(!n.length)return{kind:"none",kept:await b()};let i=r?.trim(),a=i?n.find(e=>e.account===i):1===n.length?n[0]:void 0;if(!a)return{kind:"pick",site:n[0].site,accounts:n.map(e=>e.account)};if(!a.bots.includes(t))return a.asking.includes(t)||await y({...a,asking:[...a.asking,t]}),{kind:"ask",signIn:(({state:e,...t})=>t)(a)};let o={...a,usedAt:new Date().toISOString()};return await y(o),{kind:"state",signIn:(({state:e,...t})=>t)(o),state:a.state}})},"carryHold",0,E,"forgetBrowser",0,function(e){W.delete(e.PLAYWRIGHT_CLI_SESSION??"")},"holdSignIn",0,A,"inBrowser",0,B,"keepSignIn",0,O,"releaseSignIn",0,function(e,t){let r=W.get(e.PLAYWRIGHT_CLI_SESSION??"");if(!r)return;let n=(0,f.siteOf)(t);for(let e of[...r.sites.keys()])(e===n||n.endsWith(`.${e}`)||e.endsWith(`.${n}`))&&r.sites.delete(e)},"renewHeld",0,P,"renewSignIns",0,$,"sessionBrowser",0,S,"sessionWindow",0,T]),r()}catch(e){r(e)}},!1),377205,e=>{"use strict";e.s(["siteOf",0,e=>e.trim().toLowerCase().replace(/^[a-z]+:\/\//,"").replace(/^www\./,"").replace(/[/?#].*$/,"")])},375814,e=>{"use strict";var t=e.i(139886),r=e.i(333925);let n=e=>`text/${e}; charset=utf-8`,i={md:{kind:"markdown",mime:n("markdown")},markdown:{kind:"markdown",mime:n("markdown")},csv:{kind:"csv",mime:n("csv")},json:{kind:"json",mime:"application/json; charset=utf-8"},txt:{kind:"text",mime:n("plain")},log:{kind:"text",mime:n("plain")},html:{kind:"frame",mime:n("html")},htm:{kind:"frame",mime:n("html")},pdf:{kind:"frame",mime:"application/pdf"},png:{kind:"image",mime:"image/png"},jpg:{kind:"image",mime:"image/jpeg"},jpeg:{kind:"image",mime:"image/jpeg"},gif:{kind:"image",mime:"image/gif"},webp:{kind:"image",mime:"image/webp"},svg:{kind:"image",mime:"image/svg+xml"},mp3:{kind:"audio",mime:"audio/mpeg"},wav:{kind:"audio",mime:"audio/wav"},mp4:{kind:"video",mime:"video/mp4"},webm:{kind:"video",mime:"video/webm"},docx:{kind:"none",mime:"application/vnd.openxmlformats-officedocument.wordprocessingml.document"},xlsx:{kind:"none",mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"},pptx:{kind:"none",mime:"application/vnd.openxmlformats-officedocument.presentationml.presentation"},css:{kind:"none",mime:n("css")},js:{kind:"none",mime:n("javascript")},woff2:{kind:"none",mime:"font/woff2"}},a=e=>e.split(".").pop()?.toLowerCase()??"",o=e=>i[a(e)]?.kind??"none",s=new Set(["css","js","woff2"]),l=Object.keys(i).filter(e=>!s.has(e)),c=RegExp(String.raw`(?<![\p{L}\p{N}_/:@%-])\/?(?:[\p{L}\p{N}_.@%-]+/)*[\p{L}\p{N}_@%-]+(?:\.[\p{L}\p{N}_-]+)*\.(?:${l.join("|")})\b`,"giu"),u=`${r.PATHS.workspace}/`,d=t.queryKey.file(""),f=e=>e.startsWith(`${r.PATHS.artifacts}/`)&&["md","markdown","html","htm"].includes(a(e));e.s(["extensionOf",0,a,"isPicture",0,e=>"image"===o(e)&&"svg"!==a(e),"leadFirst",0,function(e){let t=e.findIndex(f);return t>0?[e[t],...e.filter((e,r)=>r!==t)]:e},"mimeOf",0,e=>i[a(e)]?.mime??"application/octet-stream","pathsIn",0,function(e){let t=e.replace(/\b[a-z][\w+.-]*:\/\/\S+/gi," ").replace(/\b[a-z][\w+.-]+:(?=\/)/gi," "),r=new Set,n="";for(let[e]of t.matchAll(c)){let t=!e.includes("/"),i=function(e){let t,r,n=(r=(t=function(e){if(!e.startsWith(d))return e;let t=e.slice(d.length);try{return decodeURIComponent(t)}catch{return t}}(e.trim())).indexOf(u))>=0?t.slice(r+u.length)||null:t.startsWith("/")||/^[A-Za-z]:/.test(t)||t.split("/").includes("..")?null:t||null;if(!n)return null;let[i,...a]=n.split("/");return a.length&&i.includes(".")?null:n}(t?n+e:e);t||(n=i?.slice(0,i.lastIndexOf("/")+1)??""),i&&r.add(i)}return[...r].slice(0,12)},"viewKindOf",0,o])},991243,e=>{"use strict";var t=e.i(64774);e.s(["createKeyedLock",0,function(){let e=new Map,r=new Map;return function(n,i){let a=e.get(n);a||(a=(0,t.PromiseChain)(),e.set(n,a)),r.set(n,(r.get(n)??0)+1);let o=()=>{let t=(r.get(n)??1)-1;t>0?r.set(n,t):(r.delete(n),e.delete(n))};return a(i).then(e=>(o(),e),e=>{throw o(),e})}}])},198306,(e,t,r)=>{"use strict";var n=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of o(t))l.call(e,s)||s===r||i(e,s,{get:()=>t[s],enumerable:!(n=a(t,s))||n.enumerable});return e},u=(e,t,r)=>(r=null!=e?n(s(e)):{},c(!t&&e&&e.__esModule?r:i(r,"default",{value:e,enumerable:!0}),e)),d={},f={isValidAccessToken:()=>k,readAuthConfig:()=>y,writeAuthConfig:()=>b};for(var p in f)i(d,p,{get:f[p],enumerable:!0});t.exports=c(i({},"__esModule",{value:!0}),d);var m=u(e.r(522734)),h=u(e.r(814747)),w=e.r(913803);function g(){let e=(0,w.getVercelDataDir)();if(!e)throw Error(`Unable to find Vercel CLI data directory. Your platform: ${process.platform}. Supported: darwin, linux, win32.`);return h.join(e,"auth.json")}function y(){try{let e=g();if(!m.existsSync(e))return null;let t=m.readFileSync(e,"utf8");if(!t)return null;return JSON.parse(t)}catch(e){return null}}function b(e){let t=g(),r=h.dirname(t);m.existsSync(r)||m.mkdirSync(r,{mode:504,recursive:!0}),m.writeFileSync(t,JSON.stringify(e,null,2),{mode:384})}function k(e,t=0){if(!e.token)return!1;if("number"!=typeof e.expiresAt)return!0;let r=Math.floor(Date.now()/1e3);return e.expiresAt>=r+t/1e3}},736374,(e,t,r)=>{"use strict";var n=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={AccessTokenMissingError:()=>u,RefreshAccessTokenFailedError:()=>d};for(var c in l)n(s,c,{get:l[c],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of a(t))o.call(e,s)||void 0===s||n(e,s,{get:()=>t[s],enumerable:!(r=i(t,s))||r.enumerable});return e})(n({},"__esModule",{value:!0}),s);class u extends Error{constructor(){super("No authentication found. Please log in with the Vercel CLI (vercel login)."),this.name="AccessTokenMissingError"}}class d extends Error{constructor(e){super("Failed to refresh authentication token.",{cause:e}),this.name="RefreshAccessTokenFailedError"}}},903736,(e,t,r)=>{"use strict";var n=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={processTokenResponse:()=>h,refreshTokenRequest:()=>m};for(var c in l)n(s,c,{get:l[c],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of a(t))o.call(e,s)||void 0===s||n(e,s,{get:()=>t[s],enumerable:!(r=i(t,s))||r.enumerable});return e})(n({},"__esModule",{value:!0}),s);var u=e.r(446786);let d=`@vercel/oidc node-${process.version} ${(0,u.platform)()} (${(0,u.arch)()}) ${(0,u.hostname)()}`,f=null;async function p(){if(f)return f;let e=await fetch("https://vercel.com/.well-known/openid-configuration",{headers:{"user-agent":d}});if(!e.ok)throw Error("Failed to discover OAuth endpoints");let t=await e.json();if(!t||"string"!=typeof t.token_endpoint)throw Error("Invalid OAuth discovery response");let r=t.token_endpoint;return f=r,r}async function m(e){let t=await p();return await fetch(t,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded","user-agent":d},body:new URLSearchParams({client_id:"cl_HYyOPBNtFMfHhaUn9L4QPfTZz6TP47bp",grant_type:"refresh_token",...e})})}async function h(e){let t=await e.json();return e.ok?"object"!=typeof t||null===t?[Error("Invalid token response")]:"string"!=typeof t.access_token?[Error("Missing access_token in response")]:"Bearer"!==t.token_type?[Error("Invalid token_type in response")]:"number"!=typeof t.expires_in?[Error("Missing expires_in in response")]:[null,t]:[Error("object"==typeof t&&t&&"error"in t?String(t.error):"Token refresh failed")]}},424134,(e,t,r)=>{"use strict";var n=Object.defineProperty,i=Object.getOwnPropertyDescriptor,a=Object.getOwnPropertyNames,o=Object.prototype.hasOwnProperty,s={},l={VercelOidcTokenError:()=>u};for(var c in l)n(s,c,{get:l[c],enumerable:!0});t.exports=((e,t,r)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of a(t))o.call(e,s)||void 0===s||n(e,s,{get:()=>t[s],enumerable:!(r=i(t,s))||r.enumerable});return e})(n({},"__esModule",{value:!0}),s);class u extends Error{constructor(e,t){super(e),this.name="VercelOidcTokenError",this.cause=t}toString(){return this.cause?`${this.name}: ${this.message}: ${this.cause}`:`${this.name}: ${this.message}`}}},713292,(e,t,r)=>{"use strict";var n=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of o(t))l.call(e,s)||s===r||i(e,s,{get:()=>t[s],enumerable:!(n=a(t,s))||n.enumerable});return e},u=(e,t,r)=>(r=null!=e?n(s(e)):{},c(!t&&e&&e.__esModule?r:i(r,"default",{value:e,enumerable:!0}),e)),d={},f={findRootDir:()=>y,getUserDataDir:()=>b};for(var p in f)i(d,p,{get:f[p],enumerable:!0});t.exports=c(i({},"__esModule",{value:!0}),d);var m=u(e.r(814747)),h=u(e.r(522734)),w=u(e.r(446786)),g=e.r(424134);function y(){try{let e=process.cwd();for(;e!==m.default.dirname(e);){let t=m.default.join(e,".vercel");if(h.default.existsSync(t))return e;e=m.default.dirname(e)}}catch(e){throw new g.VercelOidcTokenError("Token refresh only supported in node server environments")}return null}function b(){if(process.env.XDG_DATA_HOME)return process.env.XDG_DATA_HOME;switch(w.default.platform()){case"darwin":return m.default.join(w.default.homedir(),"Library/Application Support");case"linux":return m.default.join(w.default.homedir(),".local/share");case"win32":if(process.env.LOCALAPPDATA)return process.env.LOCALAPPDATA;return null;default:return null}}},913803,(e,t,r)=>{"use strict";var n=Object.create,i=Object.defineProperty,a=Object.getOwnPropertyDescriptor,o=Object.getOwnPropertyNames,s=Object.getPrototypeOf,l=Object.prototype.hasOwnProperty,c=(e,t,r,n)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let s of o(t))l.call(e,s)||s===r||i(e,s,{get:()=>t[s],enumerable:!(n=a(t,s))||n.enumerable});return e},u=(e,t,r)=>(r=null!=e?n(s(e)):{},c(!t&&e&&e.__esModule?r:i(r,"default",{value:e,enumerable:!0}),e)),d={},f={assertVercelOidcTokenResponse:()=>S,findProjectInfo:()=>T,getTokenPayload:()=>A,getVercelDataDir:()=>v,getVercelOidcToken:()=>j,getVercelToken:()=>O,isExpired:()=>E,loadToken:()=>I,saveToken:()=>_};for(var p in f)i(d,p,{get:f[p],enumerable:!0});t.exports=c(i({},"__esModule",{value:!0}),d);var m=u(e.r(814747)),h=u(e.r(522734)),w=e.r(424134),g=e.r(713292),y=e.r(198306),b=e.r(903736),k=e.r(736374);function v(){let e=(0,g.getUserDataDir)();return e?m.join(e,"com.vercel.cli"):null}async function O(e){let t=(0,y.readAuthConfig)();if(!t?.token)throw new k.AccessTokenMissingError;if((0,y.isValidAccessToken)(t,e?.expirationBufferMs))return t.token;if(!t.refreshToken)throw(0,y.writeAuthConfig)({}),new k.RefreshAccessTokenFailedError("No refresh token available");try{let e=await (0,b.refreshTokenRequest)({refresh_token:t.refreshToken}),[r,n]=await (0,b.processTokenResponse)(e);if(r||!n)throw(0,y.writeAuthConfig)({}),new k.RefreshAccessTokenFailedError(r);let i={token:n.access_token,expiresAt:Math.floor(Date.now()/1e3)+n.expires_in};return n.refresh_token&&(i.refreshToken=n.refresh_token),(0,y.writeAuthConfig)(i),i.token}catch(e){if((0,y.writeAuthConfig)({}),e instanceof k.AccessTokenMissingError||e instanceof k.RefreshAccessTokenFailedError)throw e;throw new k.RefreshAccessTokenFailedError(e)}}async function j(e,t,r){let n=`https://api.vercel.com/v1/projects/${t}/token?source=vercel-oidc-refresh${r?`&teamId=${r}`:""}`,i=await fetch(n,{method:"POST",headers:{Authorization:`Bearer ${e}`}});if(!i.ok)throw new w.VercelOidcTokenError(`Failed to refresh OIDC token: ${i.statusText}`);let a=await i.json();return S(a),a}function S(e){if(!e||"object"!=typeof e)throw TypeError("Vercel OIDC token is malformed. Expected an object. Please run `vc env pull` and try again");if(!("token"in e)||"string"!=typeof e.token)throw TypeError("Vercel OIDC token is malformed. Expected a string-valued token property. Please run `vc env pull` and try again")}function T(){let e=(0,g.findRootDir)();if(!e)throw new w.VercelOidcTokenError("Unable to find project root directory. Have you linked your project with `vc link?`");let t=m.join(e,".vercel","project.json");if(!h.existsSync(t))throw new w.VercelOidcTokenError("project.json not found, have you linked your project with `vc link?`");let r=JSON.parse(h.readFileSync(t,"utf8"));if("string"!=typeof r.projectId&&"string"!=typeof r.orgId)throw TypeError("Expected a string-valued projectId property. Try running `vc link` to re-link your project.");return{projectId:r.projectId,teamId:r.orgId}}function _(e,t){let r=(0,g.getUserDataDir)();if(!r)throw new w.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");let n=m.join(r,"com.vercel.token",`${t}.json`),i=JSON.stringify(e);h.mkdirSync(m.dirname(n),{mode:504,recursive:!0}),h.writeFileSync(n,i),h.chmodSync(n,432)}function I(e){let t=(0,g.getUserDataDir)();if(!t)throw new w.VercelOidcTokenError("Unable to find user data directory. Please reach out to Vercel support.");let r=m.join(t,"com.vercel.token",`${e}.json`);if(!h.existsSync(r))return null;let n=JSON.parse(h.readFileSync(r,"utf8"));return S(n),n}function A(e){let t=e.split(".");if(3!==t.length)throw new w.VercelOidcTokenError("Invalid token. Please run `vc env pull` and try again");let r=t[1].replace(/-/g,"+").replace(/_/g,"/"),n=r.padEnd(r.length+(4-r.length%4)%4,"=");return JSON.parse(Buffer.from(n,"base64").toString("utf8"))}function E(e,t=0){return 1e3*e.exp<Date.now()+t}},867849,e=>{"use strict";var t=e.i(975647),r=e.i(749906);e.s(["bigint",0,function(e){return t._coercedBigint(r.ZodBigInt,e)},"boolean",0,function(e){return t._coercedBoolean(r.ZodBoolean,e)},"date",0,function(e){return t._coercedDate(r.ZodDate,e)},"number",0,function(e){return t._coercedNumber(r.ZodNumber,e)},"string",0,function(e){return t._coercedString(r.ZodString,e)}])}];
4
+
5
+ //# sourceMappingURL=_0supk_r._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[469315,e=>e.a(async(t,a)=>{try{var r=e.i(687388),i=e.i(378884),l=e.i(91264),o=t([i]);[i]=o.then?(await o)():o;let n=(0,l.serverRoute)(e=>{let t=new URL(e.url).searchParams,a=t.get("id");if(a)return(0,i.findThreadView)(a);if(!t.get("history"))return(0,i.listInboxThreads)();let l=t.get("before"),o=l?new Date(l):null;return(0,i.listThreadHistory)({before:o&&!Number.isNaN(o.getTime())?o:null,limit:r.PAGE_SIZE,search:t.get("q")?.slice(0,200)})});e.s(["GET",0,n]),a()}catch(e){a(e)}},!1),178614,e=>{"use strict";var t=e.i(747909),a=e.i(174017),r=e.i(996250),i=e.i(759756),l=e.i(561916),o=e.i(174677),n=e.i(869741),s=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),m=e.i(626937),b=e.i(10372),f=e.i(193695);e.i(52474);var v=e.i(600220);let y=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/bot/thread/route",pathname:"/api/bot/thread",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/bot/thread/route.ts",nextConfigOutput:"standalone",userland:()=>e.r(469315),...{}}),{workAsyncStorage:g,workUnitAsyncStorage:R,serverHooks:E}=y;async function w(e,t,r){r.requestMeta&&(0,i.setRequestMeta)(e,r.requestMeta),y.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/bot/thread/route";g=g.replace(/\/index$/,"")||"/";let R=await y.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:E,deploymentId:w,params:C,nextConfig:A,parsedUrl:S,isDraftMode:k,prerenderManifest:T,routerServerContext:x,isOnDemandRevalidate:q,revalidateOnlyGenerated:N,resolvedPathname:P,clientReferenceManifest:_,serverActionsManifest:I}=R,M=(0,n.normalizeAppPath)(g),F=!!(T.dynamicRoutes[M]||T.routes[P]),O=async()=>((null==x?void 0:x.render404)?await x.render404(e,t,S,!1):t.end("This page could not be found"),null);if(F&&!k){let e=!!T.routes[P],t=T.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(A.adapterPath)return await O();throw new f.NoFallbackError}}let H=null;!F||y.isDev||k||(H="/index"===(H=P)?"/":H);let B=!0===y.isDev||!F,D=F&&!B;I&&_&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:_,serverActionsManifest:I});let U=e.method||"GET",K=(0,l.getTracer)(),$=K.getActiveScopeSpan(),j=!!(null==x?void 0:x.isWrappedByNextServer),L=!!(0,i.getRequestMeta)(e,"minimalMode"),V=(0,i.getRequestMeta)(e,"incrementalCache")||await y.getIncrementalCache(e,A,T,L);null==V||V.resetRequestCache(),globalThis.__incrementalCache=V;let G={params:C,previewProps:T.preview,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts,useCacheTimeout:A.experimental.useCacheTimeout},cacheComponents:!!A.cacheComponents,validationLevel:A.experimental.instantInsights.validationLevel,supportsDynamicResponse:B,incrementalCache:V,hmrRefreshHash:(0,i.getRequestMeta)(e,"hmrRefreshHash"),cacheLifeProfiles:A.cacheLife,staticPageGenerationTimeout:A.staticPageGenerationTimeout,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,i)=>y.onRequestError(e,t,r,i,x)},sharedContext:{buildId:E,deploymentId:w}},Z=new s.NodeNextRequest(e),X=new s.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest(Z,(0,u.signalFromNodeResponse)(t)),Y=async({previousCacheEntry:a})=>{try{if(!L&&q&&N&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await y.handle(W,G);e.fetchMetrics=G.renderOpts.fetchMetrics;let l=G.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let o=G.renderOpts.collectedTags;if(!F)return await (0,p.sendResponse)(Z,X,i,l),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);o&&(t[b.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=b.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,r=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=b.INFINITE_CACHE?!1!==a&&a>0?A.expireTime:void 0:G.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await y.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:q})},!1,x),t}},z=async(i,o)=>{try{var n,s;let i=await y.handleResponse({req:e,nextConfig:A,cacheKey:H,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:N,responseGenerator:Y,waitUntil:r.waitUntil,isMinimalMode:L});if(!F)return;if((null==i||null==(n=i.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==i||null==(s=i.value)?void 0:s.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",q?"REVALIDATED":i.isMiss?"MISS":i.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let l=(0,h.fromNodeOutgoingHttpHeaders)(i.value.headers);L&&F||l.delete(b.NEXT_CACHE_TAGS_HEADER),!i.cacheControl||t.getHeader("Cache-Control")||l.get("Cache-Control")||l.set("Cache-Control",(0,m.getCacheControlHeader)(i.cacheControl)),await (0,p.sendResponse)(Z,X,new Response(i.value.body,{headers:l,status:i.value.status||200}));return}catch(t){if(t instanceof f.NoFallbackError||await y.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:q})},!1,x),F)throw t;await (0,p.sendResponse)(Z,X,new Response(null,{status:500}));return}finally{(()=>{if(!i)return;let e=t.statusCode;i.setAttributes({"http.status_code":e,"next.rsc":!1}),e&&e>=500&&(i.setStatus({code:l.SpanStatusCode.ERROR}),i.setAttribute("error.type",e.toString()));let a=K.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==d.BaseServerSpan.handleRequest)return console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route")||M,n=`${U} ${r}`;i.setAttributes({"next.route":r,"http.route":r,"next.span_name":n}),i.updateName(n),o&&o!==i&&(o.setAttribute("http.route",r),o.updateName(n))})()}};if(j&&$)await z($,void 0);else{let t=K.getActiveScopeSpan();await K.withPropagatedContext(e.headers,()=>K.trace(d.BaseServerSpan.handleRequest,{spanName:`${U} ${g}`,kind:l.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},e=>z(e,t)),void 0,!j)}}e.s(["handler",0,w,"patchFetch",0,function(){return(0,r.patchFetch)({workAsyncStorage:g,workUnitAsyncStorage:R})},"routeModule",0,y,"serverHooks",0,E,"workAsyncStorage",0,g,"workUnitAsyncStorage",0,R])},175936,e=>{"use strict";let t=e=>e.split("/").map(encodeURIComponent).join("/");e.s(["decodePath",0,e=>e.join("/"),"queryKey",0,{memory:"/api/memory",memoryPage:e=>({url:"/api/memory",query:{offset:e||null}}),mcp:"/api/mcp",mcpServer:e=>({url:"/api/mcp",pathVariable:[e]}),mcpTools:"/api/mcp/tools",skills:"/api/skills",skillNode:(e,t,a)=>({url:"/api/skills",pathVariable:[e,t],query:{path:a}}),bot:"/api/bot",botMemory:"/api/bot/memory",botMemoryFiles:e=>({url:"/api/bot/memory/files",query:{bot:e}}),routines:"/api/routine",threads:"/api/bot/thread",threadHistory:(e,t)=>({url:"/api/bot/thread",query:{history:1,before:e,q:t||void 0}}),thread:e=>({url:"/api/bot/thread",query:{id:e}}),lessons:e=>({url:"/api/bot/thread/lessons",query:e}),fileNotes:"/api/bot/thread/file",fileNote:(e,t)=>({url:"/api/bot/thread/file",query:{path:e,from:t}}),toolResult:(e,t)=>({url:"/api/bot/tool-result",pathVariable:[e],query:{call:t}}),workspace:"/api/workspace",workspaceFolder:(e,t)=>({url:"/api/workspace",query:{path:e||null,rows:t}}),workspaceFiles:e=>({url:"/api/workspace/files",query:{paths:JSON.stringify(e)}}),artifacts:"/api/artifact",artifactShelf:e=>({url:"/api/artifact",query:{rows:e}}),artifactSet:(e,t)=>({url:"/api/artifact",query:{set:e,rows:t}}),file:e=>`/api/file/${t(e)}`,fileFace:e=>`/api/file/${t(e)}?face`,favicon:e=>`/api/favicon/${encodeURIComponent(e)}`,fileView:e=>`/artifact/${t(e)}`,events:"/api/events",config:"/api/config",callHistory:e=>({url:"/api/thursday/call",query:{before:e}}),thursdaySettings:"/api/thursday/settings",toolCall:"/api/thursday/tool-call",callEnd:"/api/thursday/call/end",signIns:"/api/signins",reach:"/api/reach",textCall:"/api/thursday/text",memoryEdit:"/api/memory/edit",llmModel:"/api/llm-model",automaticModel:"/api/llm-model/automatic",modelCatalog:e=>`/api/llm-model/catalog/${e}`,keyCredits:e=>`/api/llm-model/credits/${e}`,subscriptionUsage:"/api/llm-model/subscription",running:"/api/running",update:"/api/update"}])},554199,e=>{"use strict";let t="currentColor",a=[{id:"system",label:"System",value:t},{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"}],r=Object.fromEntries(a.map(e=>[e.id,e.value])),i=a.filter(e=>e.value!==t).map(e=>e.value),l=[r.amber,r.red],o={[r.cyan]:"#009dbb",[r.teal]:"#00a190",[r.green]:"#00a640",[r.lime]:"#5ca100",[r.amber]:"#d07b00",[r.orange]:"#ec6700",[r.sky]:"#0098dc",[r.emerald]:"#00a46d",[r.yellow]:"#bb8600"},n={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"]}},s=Object.keys(n);e.s(["MARK_INK",0,r,"MARK_PAINTS",0,n,"MARK_PAINT_IDS",0,s,"MARK_SHAPES",0,["blob","poly","squircle","heart"],"MARK_SYSTEM",0,t,"markInk",0,(e,t)=>t?e:o[e]??e,"randomMarkFill",0,function(){let e=[...i.filter(e=>!l.includes(e)).map(e=>({color:e})),...s.map(e=>({paint:e}))];return e[Math.floor(Math.random()*e.length)]}])},334512,e=>{"use strict";var t=e.i(862061),a=e.i(907855);e.s(["bigint",0,function(e){return t._coercedBigint(a.ZodBigInt,e)},"boolean",0,function(e){return t._coercedBoolean(a.ZodBoolean,e)},"date",0,function(e){return t._coercedDate(a.ZodDate,e)},"number",0,function(e){return t._coercedNumber(a.ZodNumber,e)},"string",0,function(e){return t._coercedString(a.ZodString,e)}])}];
2
+
3
+ //# sourceMappingURL=_0sxwm3y._.js.map
@@ -1,5 +1,5 @@
1
1
  module.exports=[539470,e=>e.a(async(t,r)=>{try{var n=e.i(588762),a=e.i(333925),o=e.i(5509),i=e.i(900533),s=e.i(64774),u=t([o]);async function c(){let e=await (0,o.listThreadOverview)();if(!e.length)return null;let t=e.map(e=>{let t=(0,n.formatDistanceToNowStrict)((0,i.toDate)(e.updatedAt),{addSuffix:!0}),r=e.room.questions[0],o="waiting"===e.status&&r?`waiting on the user since ${t} — ${r.bot} asked: ${(0,s.clip)(r.text,a.PROMPT_LINE.jobOutcome)}`:"waiting"===e.status?`stopped ${t}, not finished`:"running"===e.status?`running, last moved ${t}`:`${e.status} ${t}`;return`- "${e.label}" (${e.id}) — ${e.bot} — ${o}`});return`[The threads as this call opened, open work first. They move while you talk.]
2
- ${t.join("\n")}`}[o]=u.then?(await u)():u,e.s(["loadCallStanding",0,c]),r()}catch(e){r(e)}},!1),79290,e=>e.a(async(t,r)=>{try{var n=e.i(333925),a=e.i(973589),o=e.i(51083),i=e.i(799791),s=e.i(951056),u=e.i(5509),c=e.i(1363),l=e.i(232549),d=e.i(343229),f=e.i(520401),h=e.i(871096),p=e.i(340697),m=e.i(497287),g=e.i(636608),y=t([i,u,c,d,f,p]);async function b(e){var t,r,y,b,_,R,v,O;let k,{backendPrompt:S,written:P=!1,phone:T=!1,readSkills:j}=e,D=await (0,h.openWorkspace)(),[A,x,N,M,C,$,I]=await Promise.all([(0,d.loadSkills)(D),(0,c.listNoteIndex)(),(0,c.readNotes)(l.MEMORY_ALWAYS_LISTED,{touch:!1}),(0,p.listConnectedToolNames)(),(0,i.listJobBots)(),(0,f.listRecentTurns)(n.RECENT_CALL.rows,e.callId),(0,i.readBotMemoryOn)()]),L=await (0,u.listCallJobs)($.map(e=>e.callId)),U=[(0,g.thursdayIdentity)(new Date,e.where),P?(0,m.personaLines)(e.persona):"",P?(0,g.styleLines)(e.stylePrompt):"",E(x,N.notes),(t=C,r=(0,g.reachNames)(j?[]:A,M),y=I,b=T,0===t.length?"":`## Background work
2
+ ${t.join("\n")}`}[o]=u.then?(await u)():u,e.s(["loadCallStanding",0,c]),r()}catch(e){r(e)}},!1),79290,e=>e.a(async(t,r)=>{try{var n=e.i(333925),a=e.i(973589),o=e.i(51083),i=e.i(799791),s=e.i(951056),u=e.i(5509),c=e.i(1363),l=e.i(232549),d=e.i(343229),f=e.i(520401),h=e.i(871096),p=e.i(340697),m=e.i(497287),g=e.i(636608),y=t([i,u,c,d,f,h,p]);async function b(e){var t,r,y,b,_,R,v,O;let k,{backendPrompt:S,written:P=!1,phone:T=!1,readSkills:j}=e,D=await (0,h.openWorkspace)(),[A,x,N,M,C,$,I]=await Promise.all([(0,d.loadSkills)(D),(0,c.listNoteIndex)(),(0,c.readNotes)(l.MEMORY_ALWAYS_LISTED,{touch:!1}),(0,p.listConnectedToolNames)(),(0,i.listJobBots)(),(0,f.listRecentTurns)(n.RECENT_CALL.rows,e.callId),(0,i.readBotMemoryOn)()]),L=await (0,u.listCallJobs)($.map(e=>e.callId)),U=[(0,g.thursdayIdentity)(new Date,e.where),P?(0,m.personaLines)(e.persona):"",P?(0,g.styleLines)(e.stylePrompt):"",E(x,N.notes),(t=C,r=(0,g.reachNames)(j?[]:A,M),y=I,b=T,0===t.length?"":`## Background work
3
3
 
4
4
  Who you hand work to — the names \`${o.TOOL_NAMES.thread_start}\` takes.
5
5
 
@@ -36,7 +36,7 @@ What was said on the last calls, verbatim, newest last. It is the past: pick it
36
36
 
37
37
  A \`${o.TOOL_NAMES.thread_start}\` line carries the thread's handle and how it ended; the handle is for the thread tools, never said aloud. What they ask for now is often one of these carried further.
38
38
 
39
- ${(0,g.recentCallLines)(v.map(e=>({...e,jobs:O.filter(t=>t.callId===e.callId)})),n.RECENT_CALL.tokens)}`:""),w(S)].filter(Boolean).join("\n\n");return(0,g.logPromptSize)("thursday",U),U}[i,u,c,d,f,p]=y.then?(await y)():y;let w=e=>e?.trim()?`## Additional instructions
39
+ ${(0,g.recentCallLines)(v.map(e=>({...e,jobs:O.filter(t=>t.callId===e.callId)})),n.RECENT_CALL.tokens)}`:""),w(S)].filter(Boolean).join("\n\n");return(0,g.logPromptSize)("thursday",U),U}[i,u,c,d,f,h,p]=y.then?(await y)():y;let w=e=>e?.trim()?`## Additional instructions
40
40
 
41
41
  Written by the user. Follow them together with everything above.
42
42
 
@@ -57,7 +57,7 @@ ${f}What tells you most about them comes first: what they loved or could not sta
57
57
  **Keep memory clean as you write.** A fact that repeats, narrows or changes one already in the note replaces it, merged into one line, rather than sitting beside it. A later call finds a note only by its path and its line: give something new its own path below, and when a line no longer says what its note is about, \`${o.TOOL_NAMES.memory_describe}\` puts it right.
58
58
 
59
59
  ${l.MEMORY_PATHS.map(e=>`- ${e.path} — ${e.of}`).join("\n")}`;return[c,d,h].join("\n\n")}function _(e){let t=e.facts.map(e=>`- ${e.text} #${e.id}`);return`${e.path} — ${e.description}
60
- ${t.length?t.join("\n"):"- (nothing yet)"}`}e.s(["loadThursdayPrompt",0,b,"memoryChapter",0,E]),r()}catch(e){r(e)}},!1),181300,e=>e.a(async(t,r)=>{try{var n=e.i(912714),a=e.i(734732),o=e.i(749906),i=e.i(139886),s=e.i(333925),u=e.i(247839),c=e.i(113022),l=e.i(986507),d=e.i(864328),f=e.i(539470),h=e.i(79290),p=e.i(690285),m=e.i(51083),g=e.i(656719),y=e.i(724185),b=e.i(375814),E=e.i(426455),_=e.i(938281);e.i(825184);var w=e.i(212389),R=e.i(64774),v=e.i(520401),O=e.i(933395),k=e.i(293822),S=t([c,l,f,h,y,v]);async function P(){let e=await Promise.all(O.TEXT_CALL_PROVIDERS.map(async e=>await (0,y.readConfig)(e.apiKeyName)?e.apiKeyName:null));return(0,O.textCallRunsOn)(t=>e.includes(t))}async function T(e,t){if(t)return t;let r=await P();return r||(0,w.publicError)(V),{provider:r,model:e.backendModel}}async function j(e,t){if("chatgpt"!==e.provider||!(0,l.isPlanSpent)(t)||!await (0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName))return null;let r=(await (0,v.readLiveSettings)()).backendModel,n=d.TEXT_MODEL_PROVIDERS.openai.suggestModels.find(e=>e.id===r)?.label??r,a=t instanceof Error?t.message:String(t);return{ref:{provider:"openai",model:r},why:a,line:`${a} Answering on your OpenAI key (${n}) until it resets.`}}async function D(e){if(!(0,l.isPlanSpent)(e))return e;let t=e instanceof Error?e.message:String(e);return new w.PublicError(await (0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName)?`${t} Write again and she answers on your OpenAI key.`:`${t} With an OpenAI key in Settings › API keys, she answers on it until then.`)}async function A(e){let t=await T(await (0,v.readLiveSettings)(),e),[r,n]=await Promise.all([(0,v.insertCall)({provider:t.provider,model:s.TEXT_CALL.model,backendModel:t.model}),(0,f.loadCallStanding)()]);return{callId:r,standing:n}}[c,l,f,h,y,v]=S.then?(await S)():S,o.object({callId:o.string().min(1),standing:o.string().nullish(),runsOn:d.textModelRefSchema.nullish(),turn:o.string().min(1),messages:o.array(o.unknown()).min(1),where:o.unknown().optional()}),globalThis.__textCallTurns??=new Map;let $="workspace:",I=e=>({type:"file",mediaType:(0,b.mimeOf)(e),filename:e,data:{type:"url",url:new URL(`${$}${encodeURIComponent(e)}`)}}),L=e=>{let t=e.data,r=t instanceof URL?t:t?.type==="url"?t.url:null;return r instanceof URL&&r.protocol===$?decodeURIComponent(r.pathname):null},U=(e,t)=>t?.length?[{type:"text",text:e},...t.map(I)]:e;i.queryKey.file("");let B=new WeakMap,W=e=>e.map(e=>B.get(e)??e);async function x(e,t,r){if(t)return{missed:`${e} is a picture, and ${t} cannot see pictures, so it was not sent to you.`};let a=await (0,p.checkPicture)(e);if("missing"in a)return{missed:`There is no file at ${e} in the workspace, so no picture was sent to you.`};if("notPicture"in a)return{missed:`${e} is not a png, jpg, webp or gif, so it was not sent to you as a picture.`};if("tooBig"in a)return{missed:`${(0,p.tooBigToSee)(e,a.tooBig)} It was not sent to you.`};if(a.bytes>r)return{missed:`${e} is a picture not sent with this message: the pictures after it fill the ${(0,R.formatBytes)(s.LOOK.perRequest)} one message to you carries. Look at it with look_at to see it.`};let o=await (0,n.readFile)(a.full).catch(()=>null);return o?{data:o.toString("base64"),mediaType:a.mediaType,bytes:o.length}:{missed:`${e} could not be read, so no picture was sent to you.`}}async function N(e,t){let r=(0,l.seesToolImages)(t)?null:t.model,n=s.LOOK.perRequest-e.reduce((e,t)=>e+function(e){if("user"!==e.role||"string"==typeof e.content)return 0;let t=0;for(let r of e.content){if("file"!==r.type)continue;let e=r.data,n=e?.type==="data"?e.data:e;"string"==typeof n?t+=Math.floor(3*n.length/4):(n instanceof Uint8Array||n instanceof ArrayBuffer)&&(t+=n.byteLength)}return t}(t),0),a=[...e];for(let e=a.length-1;e>=0;e-=1){let t=a[e];if("user"!==t.role||"string"==typeof t.content||!t.content.some(e=>"file"===e.type&&null!==L(e)))continue;let o=[];for(let e of[...t.content].reverse()){let t="file"===e.type?L(e):null;if(!t){o.unshift(e);continue}let a=await x(t,r,n);if("missed"in a){o.unshift({type:"text",text:a.missed});continue}n-=a.bytes,o.unshift({type:"text",text:`${t}, as an image:`},{type:"file",mediaType:a.mediaType,data:{type:"data",data:a.data}})}let i={role:"user",content:o};B.set(i,t),a[e]=i}return a}async function M(e){var t;let r,n,{callId:o,standing:i,messages:u,said:c,signal:l}=e,[d,f]=await Promise.all([C(o,null,!0),(0,v.nextTurnSeq)(o)]);null!==c&&await (0,v.saveTurns)(o,[{id:crypto.randomUUID(),role:"user",text:c,seq:f}]);let h=(t=o,r=null===c?f:f+1,{step:async e=>{for(let n of e.content)if("tool-call"===n.type){let a=e.content.find(e=>"tool-result"===e.type&&e.toolCallId===n.toolCallId);await (0,v.saveTurns)(t,[{id:n.toolCallId,role:"tool",tool:n.toolName,text:n.toolName===m.TOOL_NAMES.web_search?function(e,t){let r=t??{},n=[(e??{}).query,r.action?.query].find(e=>"string"==typeof e&&!!e.trim()),a=Array.isArray(r.sources)?r.sources.flatMap(e=>e&&"object"==typeof e&&"url"in e&&"string"==typeof e.url?[{url:e.url,..."title"in e&&"string"==typeof e.title?{title:e.title}:{}}]:[]):[];return JSON.stringify({query:n??null,sources:a})}(n.input,a?.type==="tool-result"?a.output:null):JSON.stringify(n.input??{}),seq:r++}])}else"text"===n.type&&n.text.trim()?await (0,v.saveTurns)(t,[{id:crypto.randomUUID(),role:"assistant",text:n.text.trim(),seq:r++}]):"reasoning"===n.type&&n.text.trim()&&await (0,v.saveThought)(t,{id:crypto.randomUUID(),text:n.text.trim(),seq:r})},said:(e,n=crypto.randomUUID())=>(0,v.saveTurns)(t,[{id:n,role:"user",text:e,seq:r++}])}),p=X(i),g=u.at(-1),y=e.pictures?.length&&g?.role==="user"&&"string"==typeof g.content?[...u.slice(0,-1),{role:"user",content:U(g.content,e.pictures)}]:u,b=[...p,...y],E=0,w=async t=>(0,a.generateText)({model:t.model,instructions:t.system,messages:await N(W(b),t.ref),allowSystemInMessages:!0,tools:t.tools,providerOptions:t.providerOptions,stopWhen:(0,a.stepCountIs)(s.TEXT_CALL.maxSteps),abortSignal:l,prepareStep:async({stepNumber:r,messages:n})=>{let a=r>0?e.notes?.()??[]:[];for(let e of(b=[...n,...a.map(e=>({role:"user",content:U(e.text,e.pictures)}))],a))e.said&&await h.said(e.text);return a.length?{messages:await N(b,t.ref)}:void 0},onStepEnd:async e=>{E+=1,await h.step(e)}}),R=null;try{n=await w(d)}catch(t){let e=E?null:await j(d.ref,t);if(!e)throw await D(t);_.logger.info(`text call ${o}: ${e.line}`),R=e.line;try{n=await w(await C(o,e.ref,!0))}catch(e){throw await D(e)}}return{text:n.text.trim(),did:n.steps.flatMap(e=>e.toolCalls.map(e=>(0,k.toolLine)(e.toolName,JSON.stringify(e.input??{}))??e.toolName)),messages:W([...b.slice(p.length),...n.steps.at(-1)?.response.messages??[]]),moved:R}}let X=e=>e?[{role:"system",content:e}]:[];async function C(e,t,r=!1,n){let a=await (0,v.readLiveSettings)(),o=await T(a,t),i="openai"===o.provider||"chatgpt"===o.provider,[s,d,f,p,b]=await Promise.all([(0,l.getTextModel)(o),(0,h.loadThursdayPrompt)({backendPrompt:a.backendPrompt,written:!0,callId:e,phone:r,persona:a.persona,stylePrompt:a.stylePrompt,readSkills:a.readSkills,where:n}),(0,c.loadTools)({target:"thursday",callId:e,webSearch:a.webSearch,readSkills:a.readSkills,written:!0,model:o,phone:r}),(0,y.readConfig)(g.EXA_API_KEY),(0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName)]),_=s.searchTools&&Object.values(s.searchTools)[0],w={...f,...a.webSearch&&!p&&_?{[m.TOOL_NAMES.web_search]:_}:{}},R=i?b?await (0,E.acceptedReasoning)({apiKey:b,model:o.model,effort:a.reasoningEffort}):(0,E.wantedReasoning)(a.reasoningEffort):null;return{ref:o,model:s.model,system:d,tools:w,providerOptions:{openai:{...R?.effort?{reasoningEffort:R.effort}:{},...R&&"summary"in R&&R.summary?{reasoningSummary:R.summary}:{}}}}}let V="Writing to Thursday needs a GPT subscription sign-in or an OpenAI key — Settings › API keys.";e.s(["answerInWriting",0,M,"openTextCall",0,A,"readTextCallProvider",0,P]),r()}catch(e){r(e)}},!1),426455,e=>{"use strict";var t=e.i(749906),r=e.i(333925),n=e.i(938281);e.i(556325),t.object({session:t.object({id:t.string().min(1)}),transport:t.object({type:t.literal("webrtc"),sdp:t.string().min(1)})});let a=new Map;function o(e){return"none"===e?{effort:e}:{...e?{effort:e}:{},summary:"auto"}}async function i(e){let{apiKey:t,model:i,effort:s}=e,u=`${i} ${s??"auto"}`,c=a.get(u);if(void 0!==c)return c;let l=o(s);for(;;){let e=await fetch("https://api.openai.com/v1/responses/input_tokens",{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(r.LIVE_CALL.reasoningCheckMs),body:JSON.stringify({model:i,input:".",reasoning:l})}).catch(()=>null);if(!e)return l;let o=Object.keys(l).length?l:null;if(e.ok)return a.set(u,o),o;let s=await e.json().catch(()=>null),c=s?.error?.param?.replace(/^reasoning\./,"");if("effort"!==c&&"summary"!==c||!(c in l))return l;if(n.logger.warn(`${i} takes no reasoning ${c}; calls omit it`),delete l[c],!Object.keys(l).length)return a.set(u,null),null}}e.s(["acceptedReasoning",0,i,"wantedReasoning",0,o])},461067,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return a}});class n extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams"),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1174",enumerable:!1,configurable:!0})}}class a extends URLSearchParams{append(){throw new n}delete(){throw new n}set(){throw new n}sort(){throw new n}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},574542,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RedirectStatusCode",{enumerable:!0,get:function(){return a}});var n,a=((n={})[n.SeeOther=303]="SeeOther",n[n.TemporaryRedirect=307]="TemporaryRedirect",n[n.PermanentRedirect=308]="PermanentRedirect",n);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},4166,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={REDIRECT_ERROR_CODE:function(){return i},isRedirectError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(574542),i="NEXT_REDIRECT";function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let t=e.digest.split(";"),[r,n]=t,a=t.slice(2,-2).join(";"),s=Number(t.at(-2));return r===i&&("replace"===n||"push"===n)&&"string"==typeof a&&!isNaN(s)&&s in o.RedirectStatusCode}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},845135,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={actionAsyncStorage:function(){return o.actionAsyncStorage},workAsyncStorage:function(){return i.workAsyncStorage},workUnitAsyncStorage:function(){return s.workUnitAsyncStorage}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(120635),i=e.r(556704),s=e.r(832319);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},543212,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getRedirectError:function(){return u},getRedirectStatusCodeFromError:function(){return h},getRedirectTypeFromError:function(){return f},getURLFromRedirectError:function(){return d},permanentRedirect:function(){return l},redirect:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(574542),i=e.r(4166),s=e.r(845135);function u(e,t,r=o.RedirectStatusCode.TemporaryRedirect){let n=Object.defineProperty(Error(i.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n.digest=`${i.REDIRECT_ERROR_CODE};${t};${e};${r};`,n}function c(e,t){throw u(e,t??=s.actionAsyncStorage?.getStore()?.isAction?"push":"replace",o.RedirectStatusCode.TemporaryRedirect)}function l(e,t="replace"){throw u(e,t,o.RedirectStatusCode.PermanentRedirect)}function d(e){return(0,i.isRedirectError)(e)?e.digest.split(";").slice(2,-2).join(";"):null}function f(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return e.digest.split(";",2)[1]}function h(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(e.digest.split(";").at(-2))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},33394,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTTPAccessErrorStatus:function(){return o},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return s},getAccessFallbackErrorTypeByStatus:function(){return l},getAccessFallbackHTTPStatus:function(){return c},isHTTPAccessFallbackError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},i=new Set(Object.values(o)),s="NEXT_HTTP_ERROR_FALLBACK";function u(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,r]=e.digest.split(";");return t===s&&i.has(Number(r))}function c(e){return Number(e.digest.split(";")[1])}function l(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},944760,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"notFound",{enumerable:!0,get:function(){return o}});let n=e.r(33394),a=`${n.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function o(){let e=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E1041",enumerable:!1,configurable:!0});throw e.digest=a,e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},825345,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"forbidden",{enumerable:!0,get:function(){return n}}),e.r(33394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},452616,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unauthorized",{enumerable:!0,get:function(){return n}}),e.r(33394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},585346,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"InvariantError",{enumerable:!0,get:function(){return n}});class n extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1179",enumerable:!1,configurable:!0}),this.name="InvariantError"}}},900338,(e,t,r)=>{"use strict";function n(){let e,t,r=new Promise((r,n)=>{e=r,t=n});return{resolve:e,reject:t,promise:r}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createPromiseWithResolvers",{enumerable:!0,get:function(){return n}})},865832,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,o={RENDER_STAGE_ADVANCE_ORDER:function(){return l},RenderStage:function(){return c},StagedRenderingController:function(){return p},SyncIOMode:function(){return h},getNextStage:function(){return d},isAdvanceableRenderStage:function(){return f}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});let s=e.r(585346),u=e.r(900338);var c=((n={})[n.Before=1]="Before",n[n.ShellStatic=11]="ShellStatic",n[n.Static=13]="Static",n[n.ShellRuntime=21]="ShellRuntime",n[n.Runtime=23]="Runtime",n[n.Dynamic=30]="Dynamic",n[n.Abandoned=40]="Abandoned",n);let l=[11,13,21,23,30];function d(e){return l[l.indexOf(e)+1]}function f(e){return 1<e&&e<=30}var h=((a={})[a.Untracked=1]="Untracked",a[a.AllowedInRuntimeOrDynamic=2]="AllowedInRuntimeOrDynamic",a[a.AllowedInDynamic=3]="AllowedInDynamic",a);class p{constructor({abortSignal:e,abandonController:t,syncIO:r,finalStage:n}){this.currentStage=1,this.syncInterruptReason=null,this.triggers={11:g(),13:g(),21:g(),23:g(),30:g()},this.abortSignal=e,this.abandonController=t,this.syncIOMode=r,this.finalStage=n,e&&e.addEventListener("abort",()=>{let{reason:t}=e;for(let e of Object.values(this.triggers)){var r,n;r=e,n=t,"pending"===r.state&&(r.state="cancelled",r._listeners.length=0,r.promise.catch(m),r._rejectPromise(n))}},{once:!0}),t&&t.signal.addEventListener("abort",()=>{this.abandonRender()},{once:!0})}onStage(e,t){var r,n;r=this.triggers[e],n=t,"pending"===r.state?r._listeners.push(n):n()}shouldTrackSyncInterrupt(){if(1===this.syncIOMode)return!1;switch(this.currentStage){case 1:return!1;case 11:case 13:return!0;case 21:case 23:switch(this.syncIOMode){case 2:return!1;case 3:return!0}case 30:case 40:return!1;default:return this.currentStage,!1}}syncInterruptCurrentStageWithReason(e){let{currentStage:t}=this;if(1!==t&&30!==t&&40!==t){if(this.abandonController)return void this.abandonController.abort();if(this.abortSignal){this.syncInterruptReason=e,this.currentStage=40;return}this.syncInterruptReason=e,this.advanceStage(30)}}getSyncInterruptReason(){return this.syncInterruptReason}getStageEndTime(e){return this.triggers[d(e)].triggeredAt??1/0}abandonRender(){let{currentStage:e}=this;if(1===e)throw Object.defineProperty(new s.InvariantError("A render that hasn't started yet cannot be abandoned"),"__NEXT_ERROR_CODE",{value:"E1300",enumerable:!1,configurable:!0});if(30===e||40===e)return;let t=l.indexOf(e)+1,r=l.indexOf(30);for(let e=t;e<r;e++)this.resolveStage(l[e]);this.currentStage=40}advanceStage(e){if(null!==this.finalStage&&e>this.finalStage)throw Object.defineProperty(new s.InvariantError(`Attempted to advance to stage ${c[e]} but the render is limited to ${c[this.finalStage]}`),"__NEXT_ERROR_CODE",{value:"E1302",enumerable:!1,configurable:!0});let{currentStage:t}=this;if(30===t||40===t||e<=t)return;this.currentStage=e;let r=1===t?0:l.indexOf(t)+1,n=l.indexOf(e);for(let e=r;e<=n;e++)this.resolveStage(l[e])}resolveStage(e){var t=this.triggers[e];if("pending"===t.state){t.state="triggered",t.triggeredAt=performance.now()+performance.timeOrigin;try{let{_listeners:e}=t;for(let t=0;t<e.length;t++)e[t]();e.length=0}finally{t._resolvePromise()}}}getStagePromise(e){return this.triggers[e].promise}waitForStage(e){return this.getStagePromise(e)}delayUntilStage(e,t,r){let n=this.getStagePromise(e).then(()=>r);return this.abortSignal&&n.catch(m),n}}function m(){}function g(){let{promise:e,resolve:t,reject:r}=(0,u.createPromiseWithResolvers)();return{state:"pending",triggeredAt:null,promise:e,_listeners:[],_resolvePromise:t,_rejectPromise:r}}},756725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ClientHookDynamicError:function(){return l},RENDER_STAGES_BY_DATA_KIND:function(){return S},applyOwnerStack:function(){return P},isClientHookDynamicError:function(){return d},isHangingPromiseRejectionError:function(){return i},makeClientHookHangingPromise:function(){return w},makeDevtoolsIOAwarePromise:function(){return k},makeDynamicHangingPromise:function(){return h},makeFallbackParamsHangingPromise:function(){return g},makePromiseFromTrigger:function(){return O},makeRuntimeHangingPromise:function(){return m},makeStageHangingPromise:function(){return y},makeUntrackedHangingPromise:function(){return p},trackFallbackParamsAccessed:function(){return E},trackRuntimeDataAccessed:function(){return b}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(865832);function i(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===s}e.r(832319),e.r(559043);let s="HANGING_PROMISE_REJECTION";class u extends Error{constructor(e,t){super(`During prerendering, ${t} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${t} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${e}".`),this.route=e,this.expression=t,this.digest=s}}let c="CLIENT_HOOK_DYNAMIC";class l extends Error{constructor(e,t){super(`Route "${e}": Next.js encountered URL data \`${t}\` in a Client Component outside of \`<Suspense>\`.
60
+ ${t.length?t.join("\n"):"- (nothing yet)"}`}e.s(["loadThursdayPrompt",0,b,"memoryChapter",0,E]),r()}catch(e){r(e)}},!1),181300,e=>e.a(async(t,r)=>{try{var n=e.i(912714),a=e.i(734732),o=e.i(749906),i=e.i(139886),s=e.i(333925),u=e.i(247839),c=e.i(113022),l=e.i(986507),d=e.i(864328),f=e.i(539470),h=e.i(79290),p=e.i(690285),m=e.i(51083),g=e.i(656719),y=e.i(724185),b=e.i(375814),E=e.i(426455),_=e.i(938281);e.i(825184);var w=e.i(212389),R=e.i(64774),v=e.i(520401),O=e.i(933395),k=e.i(293822),S=t([c,l,f,h,p,y,v]);async function P(){let e=await Promise.all(O.TEXT_CALL_PROVIDERS.map(async e=>await (0,y.readConfig)(e.apiKeyName)?e.apiKeyName:null));return(0,O.textCallRunsOn)(t=>e.includes(t))}async function T(e,t){if(t)return t;let r=await P();return r||(0,w.publicError)(V),{provider:r,model:e.backendModel}}async function j(e,t){if("chatgpt"!==e.provider||!(0,l.isPlanSpent)(t)||!await (0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName))return null;let r=(await (0,v.readLiveSettings)()).backendModel,n=d.TEXT_MODEL_PROVIDERS.openai.suggestModels.find(e=>e.id===r)?.label??r,a=t instanceof Error?t.message:String(t);return{ref:{provider:"openai",model:r},why:a,line:`${a} Answering on your OpenAI key (${n}) until it resets.`}}async function D(e){if(!(0,l.isPlanSpent)(e))return e;let t=e instanceof Error?e.message:String(e);return new w.PublicError(await (0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName)?`${t} Write again and she answers on your OpenAI key.`:`${t} With an OpenAI key in Settings › API keys, she answers on it until then.`)}async function A(e){let t=await T(await (0,v.readLiveSettings)(),e),[r,n]=await Promise.all([(0,v.insertCall)({provider:t.provider,model:s.TEXT_CALL.model,backendModel:t.model}),(0,f.loadCallStanding)()]);return{callId:r,standing:n}}[c,l,f,h,p,y,v]=S.then?(await S)():S,o.object({callId:o.string().min(1),standing:o.string().nullish(),runsOn:d.textModelRefSchema.nullish(),turn:o.string().min(1),messages:o.array(o.unknown()).min(1),where:o.unknown().optional()}),globalThis.__textCallTurns??=new Map;let $="workspace:",I=e=>({type:"file",mediaType:(0,b.mimeOf)(e),filename:e,data:{type:"url",url:new URL(`${$}${encodeURIComponent(e)}`)}}),L=e=>{let t=e.data,r=t instanceof URL?t:t?.type==="url"?t.url:null;return r instanceof URL&&r.protocol===$?decodeURIComponent(r.pathname):null},U=(e,t)=>t?.length?[{type:"text",text:e},...t.map(I)]:e;i.queryKey.file("");let B=new WeakMap,W=e=>e.map(e=>B.get(e)??e);async function x(e,t,r){if(t)return{missed:`${e} is a picture, and ${t} cannot see pictures, so it was not sent to you.`};let a=await (0,p.checkPicture)(e);if("missing"in a)return{missed:`There is no file at ${e} in the workspace, so no picture was sent to you.`};if("notPicture"in a)return{missed:`${e} is not a png, jpg, webp or gif, so it was not sent to you as a picture.`};if("tooBig"in a)return{missed:`${(0,p.tooBigToSee)(e,a.tooBig)} It was not sent to you.`};if(a.bytes>r)return{missed:`${e} is a picture not sent with this message: the pictures after it fill the ${(0,R.formatBytes)(s.LOOK.perRequest)} one message to you carries. Look at it with look_at to see it.`};let o=await (0,n.readFile)(a.full).catch(()=>null);return o?{data:o.toString("base64"),mediaType:a.mediaType,bytes:o.length}:{missed:`${e} could not be read, so no picture was sent to you.`}}async function N(e,t){let r=(0,l.seesToolImages)(t)?null:t.model,n=s.LOOK.perRequest-e.reduce((e,t)=>e+function(e){if("user"!==e.role||"string"==typeof e.content)return 0;let t=0;for(let r of e.content){if("file"!==r.type)continue;let e=r.data,n=e?.type==="data"?e.data:e;"string"==typeof n?t+=Math.floor(3*n.length/4):(n instanceof Uint8Array||n instanceof ArrayBuffer)&&(t+=n.byteLength)}return t}(t),0),a=[...e];for(let e=a.length-1;e>=0;e-=1){let t=a[e];if("user"!==t.role||"string"==typeof t.content||!t.content.some(e=>"file"===e.type&&null!==L(e)))continue;let o=[];for(let e of[...t.content].reverse()){let t="file"===e.type?L(e):null;if(!t){o.unshift(e);continue}let a=await x(t,r,n);if("missed"in a){o.unshift({type:"text",text:a.missed});continue}n-=a.bytes,o.unshift({type:"text",text:`${t}, as an image:`},{type:"file",mediaType:a.mediaType,data:{type:"data",data:a.data}})}let i={role:"user",content:o};B.set(i,t),a[e]=i}return a}async function M(e){var t;let r,n,{callId:o,standing:i,messages:u,said:c,signal:l}=e,[d,f]=await Promise.all([C(o,null,!0),(0,v.nextTurnSeq)(o)]);null!==c&&await (0,v.saveTurns)(o,[{id:crypto.randomUUID(),role:"user",text:c,seq:f}]);let h=(t=o,r=null===c?f:f+1,{step:async e=>{for(let n of e.content)if("tool-call"===n.type){let a=e.content.find(e=>"tool-result"===e.type&&e.toolCallId===n.toolCallId);await (0,v.saveTurns)(t,[{id:n.toolCallId,role:"tool",tool:n.toolName,text:n.toolName===m.TOOL_NAMES.web_search?function(e,t){let r=t??{},n=[(e??{}).query,r.action?.query].find(e=>"string"==typeof e&&!!e.trim()),a=Array.isArray(r.sources)?r.sources.flatMap(e=>e&&"object"==typeof e&&"url"in e&&"string"==typeof e.url?[{url:e.url,..."title"in e&&"string"==typeof e.title?{title:e.title}:{}}]:[]):[];return JSON.stringify({query:n??null,sources:a})}(n.input,a?.type==="tool-result"?a.output:null):JSON.stringify(n.input??{}),seq:r++}])}else"text"===n.type&&n.text.trim()?await (0,v.saveTurns)(t,[{id:crypto.randomUUID(),role:"assistant",text:n.text.trim(),seq:r++}]):"reasoning"===n.type&&n.text.trim()&&await (0,v.saveThought)(t,{id:crypto.randomUUID(),text:n.text.trim(),seq:r})},said:(e,n=crypto.randomUUID())=>(0,v.saveTurns)(t,[{id:n,role:"user",text:e,seq:r++}])}),p=X(i),g=u.at(-1),y=e.pictures?.length&&g?.role==="user"&&"string"==typeof g.content?[...u.slice(0,-1),{role:"user",content:U(g.content,e.pictures)}]:u,b=[...p,...y],E=0,w=async t=>(0,a.generateText)({model:t.model,instructions:t.system,messages:await N(W(b),t.ref),allowSystemInMessages:!0,tools:t.tools,providerOptions:t.providerOptions,stopWhen:(0,a.stepCountIs)(s.TEXT_CALL.maxSteps),abortSignal:l,prepareStep:async({stepNumber:r,messages:n})=>{let a=r>0?e.notes?.()??[]:[];for(let e of(b=[...n,...a.map(e=>({role:"user",content:U(e.text,e.pictures)}))],a))e.said&&await h.said(e.text);return a.length?{messages:await N(b,t.ref)}:void 0},onStepEnd:async e=>{E+=1,await h.step(e)}}),R=null;try{n=await w(d)}catch(t){let e=E?null:await j(d.ref,t);if(!e)throw await D(t);_.logger.info(`text call ${o}: ${e.line}`),R=e.line;try{n=await w(await C(o,e.ref,!0))}catch(e){throw await D(e)}}return{text:n.text.trim(),did:n.steps.flatMap(e=>e.toolCalls.map(e=>(0,k.toolLine)(e.toolName,JSON.stringify(e.input??{}))??e.toolName)),messages:W([...b.slice(p.length),...n.steps.at(-1)?.response.messages??[]]),moved:R}}let X=e=>e?[{role:"system",content:e}]:[];async function C(e,t,r=!1,n){let a=await (0,v.readLiveSettings)(),o=await T(a,t),i="openai"===o.provider||"chatgpt"===o.provider,[s,d,f,p,b]=await Promise.all([(0,l.getTextModel)(o),(0,h.loadThursdayPrompt)({backendPrompt:a.backendPrompt,written:!0,callId:e,phone:r,persona:a.persona,stylePrompt:a.stylePrompt,readSkills:a.readSkills,where:n}),(0,c.loadTools)({target:"thursday",callId:e,webSearch:a.webSearch,readSkills:a.readSkills,written:!0,model:o,phone:r}),(0,y.readConfig)(g.EXA_API_KEY),(0,y.readConfig)(u.LIVE_PROVIDER.apiKeyName)]),_=s.searchTools&&Object.values(s.searchTools)[0],w={...f,...a.webSearch&&!p&&_?{[m.TOOL_NAMES.web_search]:_}:{}},R=i?b?await (0,E.acceptedReasoning)({apiKey:b,model:o.model,effort:a.reasoningEffort}):(0,E.wantedReasoning)(a.reasoningEffort):null;return{ref:o,model:s.model,system:d,tools:w,providerOptions:{openai:{...R?.effort?{reasoningEffort:R.effort}:{},...R&&"summary"in R&&R.summary?{reasoningSummary:R.summary}:{}}}}}let V="Writing to Thursday needs a GPT subscription sign-in or an OpenAI key — Settings › API keys.";e.s(["answerInWriting",0,M,"openTextCall",0,A,"readTextCallProvider",0,P]),r()}catch(e){r(e)}},!1),426455,e=>{"use strict";var t=e.i(749906),r=e.i(333925),n=e.i(938281);e.i(556325),t.object({session:t.object({id:t.string().min(1)}),transport:t.object({type:t.literal("webrtc"),sdp:t.string().min(1)})});let a=new Map;function o(e){return"none"===e?{effort:e}:{...e?{effort:e}:{},summary:"auto"}}async function i(e){let{apiKey:t,model:i,effort:s}=e,u=`${i} ${s??"auto"}`,c=a.get(u);if(void 0!==c)return c;let l=o(s);for(;;){let e=await fetch("https://api.openai.com/v1/responses/input_tokens",{method:"POST",headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(r.LIVE_CALL.reasoningCheckMs),body:JSON.stringify({model:i,input:".",reasoning:l})}).catch(()=>null);if(!e)return l;let o=Object.keys(l).length?l:null;if(e.ok)return a.set(u,o),o;let s=await e.json().catch(()=>null),c=s?.error?.param?.replace(/^reasoning\./,"");if("effort"!==c&&"summary"!==c||!(c in l))return l;if(n.logger.warn(`${i} takes no reasoning ${c}; calls omit it`),delete l[c],!Object.keys(l).length)return a.set(u,null),null}}e.s(["acceptedReasoning",0,i,"wantedReasoning",0,o])},461067,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"ReadonlyURLSearchParams",{enumerable:!0,get:function(){return a}});class n extends Error{constructor(){super("Method unavailable on `ReadonlyURLSearchParams`. Read more: https://nextjs.org/docs/app/api-reference/functions/use-search-params#updating-searchparams"),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1174",enumerable:!1,configurable:!0})}}class a extends URLSearchParams{append(){throw new n}delete(){throw new n}set(){throw new n}sort(){throw new n}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},574542,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"RedirectStatusCode",{enumerable:!0,get:function(){return a}});var n,a=((n={})[n.SeeOther=303]="SeeOther",n[n.TemporaryRedirect=307]="TemporaryRedirect",n[n.PermanentRedirect=308]="PermanentRedirect",n);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},4166,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={REDIRECT_ERROR_CODE:function(){return i},isRedirectError:function(){return s}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(574542),i="NEXT_REDIRECT";function s(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let t=e.digest.split(";"),[r,n]=t,a=t.slice(2,-2).join(";"),s=Number(t.at(-2));return r===i&&("replace"===n||"push"===n)&&"string"==typeof a&&!isNaN(s)&&s in o.RedirectStatusCode}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},845135,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={actionAsyncStorage:function(){return o.actionAsyncStorage},workAsyncStorage:function(){return i.workAsyncStorage},workUnitAsyncStorage:function(){return s.workUnitAsyncStorage}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(120635),i=e.r(556704),s=e.r(832319);("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},543212,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={getRedirectError:function(){return u},getRedirectStatusCodeFromError:function(){return h},getRedirectTypeFromError:function(){return f},getURLFromRedirectError:function(){return d},permanentRedirect:function(){return l},redirect:function(){return c}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(574542),i=e.r(4166),s=e.r(845135);function u(e,t,r=o.RedirectStatusCode.TemporaryRedirect){let n=Object.defineProperty(Error(i.REDIRECT_ERROR_CODE),"__NEXT_ERROR_CODE",{value:"E394",enumerable:!1,configurable:!0});return n.digest=`${i.REDIRECT_ERROR_CODE};${t};${e};${r};`,n}function c(e,t){throw u(e,t??=s.actionAsyncStorage?.getStore()?.isAction?"push":"replace",o.RedirectStatusCode.TemporaryRedirect)}function l(e,t="replace"){throw u(e,t,o.RedirectStatusCode.PermanentRedirect)}function d(e){return(0,i.isRedirectError)(e)?e.digest.split(";").slice(2,-2).join(";"):null}function f(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return e.digest.split(";",2)[1]}function h(e){if(!(0,i.isRedirectError)(e))throw Object.defineProperty(Error("Not a redirect error"),"__NEXT_ERROR_CODE",{value:"E260",enumerable:!1,configurable:!0});return Number(e.digest.split(";").at(-2))}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},33394,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={HTTPAccessErrorStatus:function(){return o},HTTP_ERROR_FALLBACK_ERROR_CODE:function(){return s},getAccessFallbackErrorTypeByStatus:function(){return l},getAccessFallbackHTTPStatus:function(){return c},isHTTPAccessFallbackError:function(){return u}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o={NOT_FOUND:404,FORBIDDEN:403,UNAUTHORIZED:401},i=new Set(Object.values(o)),s="NEXT_HTTP_ERROR_FALLBACK";function u(e){if("object"!=typeof e||null===e||!("digest"in e)||"string"!=typeof e.digest)return!1;let[t,r]=e.digest.split(";");return t===s&&i.has(Number(r))}function c(e){return Number(e.digest.split(";")[1])}function l(e){switch(e){case 401:return"unauthorized";case 403:return"forbidden";case 404:return"not-found";default:return}}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},944760,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"notFound",{enumerable:!0,get:function(){return o}});let n=e.r(33394),a=`${n.HTTP_ERROR_FALLBACK_ERROR_CODE};404`;function o(){let e=Object.defineProperty(Error(a),"__NEXT_ERROR_CODE",{value:"E1041",enumerable:!1,configurable:!0});throw e.digest=a,e}("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},825345,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`forbidden()` is experimental and only allowed to be enabled when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E488",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"forbidden",{enumerable:!0,get:function(){return n}}),e.r(33394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},452616,(e,t,r)=>{"use strict";function n(){throw Object.defineProperty(Error("`unauthorized()` is experimental and only allowed to be used when `experimental.authInterrupts` is enabled."),"__NEXT_ERROR_CODE",{value:"E411",enumerable:!1,configurable:!0})}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"unauthorized",{enumerable:!0,get:function(){return n}}),e.r(33394).HTTP_ERROR_FALLBACK_ERROR_CODE,("function"==typeof r.default||"object"==typeof r.default&&null!==r.default)&&void 0===r.default.__esModule&&(Object.defineProperty(r.default,"__esModule",{value:!0}),Object.assign(r.default,r),t.exports=r.default)},585346,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"InvariantError",{enumerable:!0,get:function(){return n}});class n extends Error{constructor(e,t){super(`Invariant: ${e.endsWith(".")?e:e+"."} This is a bug in Next.js.`,t),Object.defineProperty(this,"__NEXT_ERROR_CODE",{value:"E1179",enumerable:!1,configurable:!0}),this.name="InvariantError"}}},900338,(e,t,r)=>{"use strict";function n(){let e,t,r=new Promise((r,n)=>{e=r,t=n});return{resolve:e,reject:t,promise:r}}Object.defineProperty(r,"__esModule",{value:!0}),Object.defineProperty(r,"createPromiseWithResolvers",{enumerable:!0,get:function(){return n}})},865832,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n,a,o={RENDER_STAGE_ADVANCE_ORDER:function(){return l},RenderStage:function(){return c},StagedRenderingController:function(){return p},SyncIOMode:function(){return h},getNextStage:function(){return d},isAdvanceableRenderStage:function(){return f}};for(var i in o)Object.defineProperty(r,i,{enumerable:!0,get:o[i]});let s=e.r(585346),u=e.r(900338);var c=((n={})[n.Before=1]="Before",n[n.ShellStatic=11]="ShellStatic",n[n.Static=13]="Static",n[n.ShellRuntime=21]="ShellRuntime",n[n.Runtime=23]="Runtime",n[n.Dynamic=30]="Dynamic",n[n.Abandoned=40]="Abandoned",n);let l=[11,13,21,23,30];function d(e){return l[l.indexOf(e)+1]}function f(e){return 1<e&&e<=30}var h=((a={})[a.Untracked=1]="Untracked",a[a.AllowedInRuntimeOrDynamic=2]="AllowedInRuntimeOrDynamic",a[a.AllowedInDynamic=3]="AllowedInDynamic",a);class p{constructor({abortSignal:e,abandonController:t,syncIO:r,finalStage:n}){this.currentStage=1,this.syncInterruptReason=null,this.triggers={11:g(),13:g(),21:g(),23:g(),30:g()},this.abortSignal=e,this.abandonController=t,this.syncIOMode=r,this.finalStage=n,e&&e.addEventListener("abort",()=>{let{reason:t}=e;for(let e of Object.values(this.triggers)){var r,n;r=e,n=t,"pending"===r.state&&(r.state="cancelled",r._listeners.length=0,r.promise.catch(m),r._rejectPromise(n))}},{once:!0}),t&&t.signal.addEventListener("abort",()=>{this.abandonRender()},{once:!0})}onStage(e,t){var r,n;r=this.triggers[e],n=t,"pending"===r.state?r._listeners.push(n):n()}shouldTrackSyncInterrupt(){if(1===this.syncIOMode)return!1;switch(this.currentStage){case 1:return!1;case 11:case 13:return!0;case 21:case 23:switch(this.syncIOMode){case 2:return!1;case 3:return!0}case 30:case 40:return!1;default:return this.currentStage,!1}}syncInterruptCurrentStageWithReason(e){let{currentStage:t}=this;if(1!==t&&30!==t&&40!==t){if(this.abandonController)return void this.abandonController.abort();if(this.abortSignal){this.syncInterruptReason=e,this.currentStage=40;return}this.syncInterruptReason=e,this.advanceStage(30)}}getSyncInterruptReason(){return this.syncInterruptReason}getStageEndTime(e){return this.triggers[d(e)].triggeredAt??1/0}abandonRender(){let{currentStage:e}=this;if(1===e)throw Object.defineProperty(new s.InvariantError("A render that hasn't started yet cannot be abandoned"),"__NEXT_ERROR_CODE",{value:"E1300",enumerable:!1,configurable:!0});if(30===e||40===e)return;let t=l.indexOf(e)+1,r=l.indexOf(30);for(let e=t;e<r;e++)this.resolveStage(l[e]);this.currentStage=40}advanceStage(e){if(null!==this.finalStage&&e>this.finalStage)throw Object.defineProperty(new s.InvariantError(`Attempted to advance to stage ${c[e]} but the render is limited to ${c[this.finalStage]}`),"__NEXT_ERROR_CODE",{value:"E1302",enumerable:!1,configurable:!0});let{currentStage:t}=this;if(30===t||40===t||e<=t)return;this.currentStage=e;let r=1===t?0:l.indexOf(t)+1,n=l.indexOf(e);for(let e=r;e<=n;e++)this.resolveStage(l[e])}resolveStage(e){var t=this.triggers[e];if("pending"===t.state){t.state="triggered",t.triggeredAt=performance.now()+performance.timeOrigin;try{let{_listeners:e}=t;for(let t=0;t<e.length;t++)e[t]();e.length=0}finally{t._resolvePromise()}}}getStagePromise(e){return this.triggers[e].promise}waitForStage(e){return this.getStagePromise(e)}delayUntilStage(e,t,r){let n=this.getStagePromise(e).then(()=>r);return this.abortSignal&&n.catch(m),n}}function m(){}function g(){let{promise:e,resolve:t,reject:r}=(0,u.createPromiseWithResolvers)();return{state:"pending",triggeredAt:null,promise:e,_listeners:[],_resolvePromise:t,_rejectPromise:r}}},756725,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});var n={ClientHookDynamicError:function(){return l},RENDER_STAGES_BY_DATA_KIND:function(){return S},applyOwnerStack:function(){return P},isClientHookDynamicError:function(){return d},isHangingPromiseRejectionError:function(){return i},makeClientHookHangingPromise:function(){return w},makeDevtoolsIOAwarePromise:function(){return k},makeDynamicHangingPromise:function(){return h},makeFallbackParamsHangingPromise:function(){return g},makePromiseFromTrigger:function(){return O},makeRuntimeHangingPromise:function(){return m},makeStageHangingPromise:function(){return y},makeUntrackedHangingPromise:function(){return p},trackFallbackParamsAccessed:function(){return E},trackRuntimeDataAccessed:function(){return b}};for(var a in n)Object.defineProperty(r,a,{enumerable:!0,get:n[a]});let o=e.r(865832);function i(e){return"object"==typeof e&&null!==e&&"digest"in e&&e.digest===s}e.r(832319),e.r(559043);let s="HANGING_PROMISE_REJECTION";class u extends Error{constructor(e,t){super(`During prerendering, ${t} rejects when the prerender is complete. Typically these errors are handled by React but if you move ${t} to a different context by using \`setTimeout\`, \`after\`, or similar functions you may observe this error and you should handle it in that context. This occurred at route "${e}".`),this.route=e,this.expression=t,this.digest=s}}let c="CLIENT_HOOK_DYNAMIC";class l extends Error{constructor(e,t){super(`Route "${e}": Next.js encountered URL data \`${t}\` in a Client Component outside of \`<Suspense>\`.
61
61
 
62
62
  This blocks prerendering because the value is only available at runtime.
63
63
 
@@ -1,3 +1,3 @@
1
- module.exports=[720275,e=>{e.v(s=>Promise.all(["server/chunks/[root-of-the-server]__1rjj4i4._.js","server/chunks/_1hw1ujv._.js","server/chunks/node_modules_1yxqtu5._.js"].map(s=>e.l(s))).then(()=>s(656446)))},329280,e=>{e.v(s=>Promise.all(["server/chunks/[externals]_node_readline_1u65a-m._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_02axwqv._.js"].map(s=>e.l(s))).then(()=>s(781937)))}];
1
+ module.exports=[720275,e=>{e.v(s=>Promise.all(["server/chunks/[root-of-the-server]__0kj7-jk._.js","server/chunks/_1hw1ujv._.js","server/chunks/node_modules_1yxqtu5._.js"].map(s=>e.l(s))).then(()=>s(656446)))},329280,e=>{e.v(s=>Promise.all(["server/chunks/[externals]_node_readline_1u65a-m._.js","server/chunks/node_modules_consola_dist_chunks_prompt_mjs_02axwqv._.js"].map(s=>e.l(s))).then(()=>s(781937)))}];
2
2
 
3
- //# sourceMappingURL=_02o3ay7._.js.map
3
+ //# sourceMappingURL=_0tzxrjg._.js.map