thursday-agent 0.8.0 → 0.10.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 (301) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  11. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/_not-found.html +1 -1
  13. package/.next/server/app/_not-found.rsc +2 -2
  14. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  15. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  16. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  17. package/.next/server/app/api/artifact/route.js.nft.json +1 -1
  18. package/.next/server/app/api/bot/keep-working/route.js.nft.json +1 -1
  19. package/.next/server/app/api/bot/memory/files/route.js.nft.json +1 -1
  20. package/.next/server/app/api/bot/memory/route.js.nft.json +1 -1
  21. package/.next/server/app/api/bot/route.js.nft.json +1 -1
  22. package/.next/server/app/api/bot/thread/[id]/route.js.nft.json +1 -1
  23. package/.next/server/app/api/bot/thread/route.js.nft.json +1 -1
  24. package/.next/server/app/api/config/route.js.nft.json +1 -1
  25. package/.next/server/app/api/events/route.js.nft.json +1 -1
  26. package/.next/server/app/api/favicon/[host]/route.js.nft.json +1 -1
  27. package/.next/server/app/api/file/[...path]/route.js.nft.json +1 -1
  28. package/.next/server/app/api/llm-model/catalog/route.js.nft.json +1 -1
  29. package/.next/server/app/api/llm-model/credits/route.js.nft.json +1 -1
  30. package/.next/server/app/api/llm-model/route.js.nft.json +1 -1
  31. package/.next/server/app/api/llm-model/subscription/route.js.nft.json +1 -1
  32. package/.next/server/app/api/mcp/[name]/route.js.nft.json +1 -1
  33. package/.next/server/app/api/mcp/oauth/callback/route.js.nft.json +1 -1
  34. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  35. package/.next/server/app/api/mcp/tools/route.js.nft.json +1 -1
  36. package/.next/server/app/api/memory/edit/route.js +1 -1
  37. package/.next/server/app/api/memory/edit/route.js.nft.json +1 -1
  38. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  39. package/.next/server/app/api/probe/route.js.nft.json +1 -1
  40. package/.next/server/app/api/reach/route.js +11 -11
  41. package/.next/server/app/api/reach/route.js.nft.json +1 -1
  42. package/.next/server/app/api/routine/route.js +6 -6
  43. package/.next/server/app/api/routine/route.js.nft.json +1 -1
  44. package/.next/server/app/api/signins/route.js.nft.json +1 -1
  45. package/.next/server/app/api/skills/[source]/[name]/route.js.nft.json +1 -1
  46. package/.next/server/app/api/skills/route.js.nft.json +1 -1
  47. package/.next/server/app/api/thursday/call/route.js.nft.json +1 -1
  48. package/.next/server/app/api/thursday/skills/route.js.nft.json +1 -1
  49. package/.next/server/app/api/thursday/text/route.js +11 -11
  50. package/.next/server/app/api/thursday/text/route.js.nft.json +1 -1
  51. package/.next/server/app/api/thursday/tool-call/route.js +6 -6
  52. package/.next/server/app/api/thursday/tool-call/route.js.nft.json +1 -1
  53. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  54. package/.next/server/app/api/workspace/route.js.nft.json +1 -1
  55. package/.next/server/app/artifact/[...path]/page/server-reference-manifest.json +1 -1
  56. package/.next/server/app/artifact/[...path]/page.js.nft.json +1 -1
  57. package/.next/server/app/artifact/[...path]/page_client-reference-manifest.js +1 -1
  58. package/.next/server/app/favicon.ico/route.js.nft.json +1 -1
  59. package/.next/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  60. package/.next/server/app/page/server-reference-manifest.json +56 -56
  61. package/.next/server/app/page.js +3 -3
  62. package/.next/server/app/page.js.nft.json +1 -1
  63. package/.next/server/app/page_client-reference-manifest.js +1 -1
  64. package/.next/server/chunks/[root-of-the-server]__012s2o8._.js +1 -1
  65. package/.next/server/chunks/[root-of-the-server]__04r4h-2._.js +1 -1
  66. package/.next/server/chunks/[root-of-the-server]__0mrk2it._.js +1 -1
  67. package/.next/server/chunks/[root-of-the-server]__0nmhgeo._.js +3 -0
  68. package/.next/server/chunks/[root-of-the-server]__1fy2g82._.js +3 -0
  69. package/.next/server/chunks/[root-of-the-server]__1ndi14y._.js +1 -1
  70. package/.next/server/chunks/[root-of-the-server]__1nmflqk._.js +3 -0
  71. package/.next/server/chunks/[root-of-the-server]__1v7-zke._.js +1 -1
  72. package/.next/server/chunks/[root-of-the-server]__1wnzmx9._.js +3 -0
  73. package/.next/server/chunks/[root-of-the-server]__1xv-5cq._.js +1 -1
  74. package/.next/server/chunks/[root-of-the-server]__1ygplx1._.js +1 -1
  75. package/.next/server/chunks/_05v8k21._.js +1 -1
  76. package/.next/server/chunks/_0awtznl._.js +4 -4
  77. package/.next/server/chunks/_0k6qjcf._.js +1 -1
  78. package/.next/server/chunks/_0na2fj1._.js +5 -5
  79. package/.next/server/chunks/_0x-ej3f._.js +21 -21
  80. package/.next/server/chunks/_1dc_d1q._.js +22 -20
  81. package/.next/server/chunks/_1jc5g4p._.js +2 -2
  82. package/.next/server/chunks/_1jn-aep._.js +50 -48
  83. package/.next/server/chunks/{_1u8ygbz._.js → _1m88lkh._.js} +7 -7
  84. package/.next/server/chunks/_1uuucy-._.js +4 -4
  85. package/.next/server/chunks/_1v9r2ke._.js +1 -1
  86. package/.next/server/chunks/ssr/{[root-of-the-server]__1h4bnrf._.js → [root-of-the-server]__0cxqzfc._.js} +2 -2
  87. package/.next/server/chunks/ssr/{[root-of-the-server]__1kyi568._.js → [root-of-the-server]__0tvavy9._.js} +1 -1
  88. package/.next/server/chunks/ssr/[root-of-the-server]__0tzekbl._.js +1 -1
  89. package/.next/server/chunks/ssr/[root-of-the-server]__1-d2tgh._.js +3 -0
  90. package/.next/server/chunks/ssr/[root-of-the-server]__1se25x0._.js +1 -1
  91. package/.next/server/chunks/ssr/{_1i3ddn7._.js → _05pl_u8._.js} +1 -1
  92. package/.next/server/chunks/ssr/_05rxyf9._.js +3 -0
  93. package/.next/server/chunks/ssr/_070nv1_._.js +3 -0
  94. package/.next/server/chunks/ssr/_097-ljd._.js +1 -1
  95. package/.next/server/chunks/ssr/{_10y6r1n._.js → _0bp-_fi._.js} +3 -3
  96. package/.next/server/chunks/ssr/_0fqhhwi._.js +1 -1
  97. package/.next/server/chunks/ssr/_0hlxij-._.js +3 -0
  98. package/.next/server/chunks/ssr/_0ld9_qq._.js +1 -1
  99. package/.next/server/chunks/ssr/{_0z8jpch._.js → _0p9pmxe._.js} +2 -2
  100. package/.next/server/chunks/ssr/{_1y-ea28._.js → _0s41irp._.js} +2 -2
  101. package/.next/server/chunks/ssr/_0tg0vf8._.js +164 -0
  102. package/.next/server/chunks/ssr/_0u5xv6g._.js +3 -0
  103. package/.next/server/chunks/ssr/{_1_rqu8x._.js → _12mijol._.js} +7 -7
  104. package/.next/server/chunks/ssr/_15zqt-t._.js +1 -1
  105. package/.next/server/chunks/ssr/{_1oijqjw._.js → _173siic._.js} +2 -2
  106. package/.next/server/chunks/ssr/_17v-33v._.js +20 -0
  107. package/.next/server/chunks/ssr/_184327j._.js +1 -1
  108. package/.next/server/chunks/ssr/{_1nod5hh._.js → _19n08g5._.js} +2 -2
  109. package/.next/server/chunks/ssr/_1alxym6._.js +3 -0
  110. package/.next/server/chunks/ssr/{_0hzz82u._.js → _1d423aj._.js} +25 -23
  111. package/.next/server/chunks/ssr/{_0ewory0._.js → _1doidrw._.js} +2 -2
  112. package/.next/server/chunks/ssr/{_0pm-2p-._.js → _1flsjeo._.js} +2 -2
  113. package/.next/server/chunks/ssr/_1mqn9mc._.js +1 -1
  114. package/.next/server/chunks/ssr/_1neoj22._.js +1 -1
  115. package/.next/server/chunks/ssr/_1ng831c._.js +3 -0
  116. package/.next/server/chunks/ssr/{_19g570d._.js → _1u2jw0i._.js} +3 -3
  117. package/.next/server/chunks/ssr/_1xoch6f._.js +1 -1
  118. package/.next/server/chunks/ssr/{_1u1mxu9._.js → _1yk6yak._.js} +2 -2
  119. package/.next/server/chunks/ssr/features_bot_1s_-2vj._.js +1 -1
  120. package/.next/server/chunks/ssr/features_bot_1yr-_pm._.js +3 -0
  121. package/.next/server/chunks/ssr/features_connectors_components_mcp-setting_tsx_0jmbgvp._.js +1 -1
  122. package/.next/server/chunks/ssr/features_memory_components_memory-setting_tsx_0oa43sw._.js +1 -1
  123. package/.next/server/chunks/ssr/features_routine_components_routine-setting_tsx_055fknz._.js +1 -1
  124. package/.next/server/chunks/ssr/{node_modules_1_8mv4v._.js → node_modules_048wmmj._.js} +1 -1
  125. package/.next/server/chunks/ssr/{node_modules_1p9rdsy._.js → node_modules_04t200t._.js} +1 -1
  126. package/.next/server/chunks/ssr/{node_modules_03ptrl9._.js → node_modules_0511ha-._.js} +1 -1
  127. package/.next/server/chunks/ssr/{node_modules_07ih6wb._.js → node_modules_08g12f-._.js} +1 -1
  128. package/.next/server/chunks/ssr/{node_modules_01f8_se._.js → node_modules_0cdu6jq._.js} +1 -1
  129. package/.next/server/chunks/ssr/{node_modules_111sh9o._.js → node_modules_0eb4rx7._.js} +1 -1
  130. package/.next/server/chunks/ssr/{node_modules_10gbm2y._.js → node_modules_0f2k5l0._.js} +1 -1
  131. package/.next/server/chunks/ssr/{node_modules_1ix-g49._.js → node_modules_0piws2a._.js} +1 -1
  132. package/.next/server/chunks/ssr/{node_modules_0t-44lj._.js → node_modules_0pk6i-e._.js} +1 -1
  133. package/.next/server/chunks/ssr/{node_modules_0lg75qx._.js → node_modules_0s1lwc9._.js} +1 -1
  134. package/.next/server/chunks/ssr/{node_modules_1v9tc1c._.js → node_modules_0wq4-ts._.js} +1 -1
  135. package/.next/server/chunks/ssr/{node_modules_1m3gb16._.js → node_modules_0zjqwz7._.js} +1 -1
  136. package/.next/server/chunks/ssr/{node_modules_0b8df3s._.js → node_modules_11hbkuj._.js} +1 -1
  137. package/.next/server/chunks/ssr/{node_modules_00jv9_3._.js → node_modules_18woe20._.js} +1 -1
  138. package/.next/server/chunks/ssr/{node_modules_1x825hz._.js → node_modules_1_afpz7._.js} +1 -1
  139. package/.next/server/chunks/ssr/{node_modules_0woscox._.js → node_modules_1_ban4u._.js} +1 -1
  140. package/.next/server/chunks/ssr/{node_modules_0gt-uw9._.js → node_modules_1cxc8kn._.js} +1 -1
  141. package/.next/server/chunks/ssr/{node_modules_059vtf2._.js → node_modules_1dcbvfw._.js} +1 -1
  142. package/.next/server/chunks/ssr/{node_modules_1lsyy7k._.js → node_modules_1expacw._.js} +1 -1
  143. package/.next/server/chunks/ssr/{node_modules_1-7qawg._.js → node_modules_1ksh9gy._.js} +1 -1
  144. package/.next/server/chunks/ssr/{node_modules_06w645b._.js → node_modules_1m2ho33._.js} +1 -1
  145. package/.next/server/chunks/ssr/{node_modules_0sz5yg1._.js → node_modules_1n0h9sf._.js} +1 -1
  146. package/.next/server/chunks/ssr/{node_modules_1teyzfa._.js → node_modules_1qehmwm._.js} +1 -1
  147. package/.next/server/chunks/ssr/{node_modules_0yv-re6._.js → node_modules_1xzo2wn._.js} +1 -1
  148. package/.next/server/chunks/ssr/{node_modules_20xmwtu._.js → node_modules_1zf46lp._.js} +1 -1
  149. package/.next/server/chunks/ssr/{node_modules_0ii1l89._.js → node_modules_1zkpek5._.js} +1 -1
  150. package/.next/server/chunks/ssr/{node_modules_@base-ui_react_0jne69c._.js → node_modules_@base-ui_react_0buz1-j._.js} +1 -1
  151. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_00q1oa3._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_0avl8-1._.js} +1 -1
  152. package/.next/server/chunks/ssr/{node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_1-2_5z7._.js → node_modules_@mermaid-js_parser_dist_chunks_mermaid-parser_core_14oslro._.js} +1 -1
  153. package/.next/server/middleware-build-manifest.js +3 -3
  154. package/.next/server/pages/404.html +1 -1
  155. package/.next/server/pages/500.html +1 -1
  156. package/.next/server/server-reference-manifest.js +1 -1
  157. package/.next/server/server-reference-manifest.json +57 -57
  158. package/.next/static/chunks/03kgfyrli_0gz.js +1 -0
  159. package/.next/static/chunks/{1e4yrzs5evq_r.js → 09120tms63y21.js} +1 -1
  160. package/.next/static/chunks/{2zhfdbq50ee5i.js → 0o980477kfqez.js} +1 -1
  161. package/.next/static/chunks/{1ocy4w0v20a3v.js → 0oz3rs47yy3p8.js} +2 -2
  162. package/.next/static/chunks/{2be08eqxsfc1y.js → 0w20wnnfrscq7.js} +1 -1
  163. package/.next/static/chunks/{09c13vnqy7al3.js → 19ojn4lomsk0r.js} +2 -2
  164. package/.next/static/chunks/{2om4lkg86feb4.js → 1mwee7xvitlp9.js} +1 -1
  165. package/.next/static/chunks/1p764d75_0lhv.js +18 -0
  166. package/.next/static/chunks/{0oz7a68qanm99.js → 1pjygp7hqib6j.js} +1 -1
  167. package/.next/static/chunks/22shnca_6zfzs.js +1 -0
  168. package/.next/static/chunks/{34s52v8f841zo.js → 24dst4mgurbsh.js} +1 -1
  169. package/.next/static/chunks/25zq8gzhbdsr7.js +1 -0
  170. package/.next/static/chunks/2d4z3er53ng8r.js +1 -0
  171. package/.next/static/chunks/{2d3yhjtafgmtw.js → 2ky81z-jgvasc.js} +1 -1
  172. package/.next/static/chunks/2m6jd3586ijb-.js +1 -0
  173. package/.next/static/chunks/{0k5tkt_qi52kb.js → 2ndw4w4u2x51r.js} +1 -1
  174. package/.next/static/chunks/2qod5tqlpz8b7.js +17 -0
  175. package/.next/static/chunks/{21gf2t_whhurc.js → 30skcjexa57zn.js} +2 -2
  176. package/.next/static/chunks/{2upc9mkcc3nlq.js → 35kwn237o4wdn.js} +1 -1
  177. package/.next/static/chunks/{2u9yjkpkoij75.js → 3exjsi8pfdvzj.js} +1 -1
  178. package/.next/static/chunks/3obf9n3cxj99k.js +1 -0
  179. package/.next/static/chunks/3qq4o8w2rv_e9.css +1 -0
  180. package/.next/static/chunks/{0g1p98s2pfx2w.js → 3vynnr71ghvom.js} +2 -2
  181. package/.next/static/chunks/{44kjmi5h_p8px.js → 42890jqk049q1.js} +1 -1
  182. package/README.md +35 -14
  183. package/bin/port.mjs +11 -7
  184. package/bin/thursday.mjs +1 -1
  185. package/components/ui/radio-group.tsx +1 -1
  186. package/components/ui/shiny-text.tsx +3 -22
  187. package/docs/how-it-works.md +11 -3
  188. package/docs/images/first-run.png +0 -0
  189. package/docs/images/keeps-going.png +0 -0
  190. package/docs/images/two-minds.png +0 -0
  191. package/features/ai/components/model-browser.tsx +1 -1
  192. package/features/ai/components/model-picker.tsx +1 -1
  193. package/features/ai/guide.ts +9 -4
  194. package/features/ai/prompts/bot.prompt.ts +4 -1
  195. package/features/ai/tools/routine.tool.ts +28 -16
  196. package/features/bot/bot.runner.ts +3 -1
  197. package/features/bot/components/bot-mark.tsx +6 -1
  198. package/features/bot/components/bot-setting.tsx +4 -6
  199. package/features/bot/components/bot-tool.tsx +2 -0
  200. package/features/bot/components/room-list.tsx +12 -3
  201. package/features/bot/components/room-pill.tsx +26 -19
  202. package/features/config/components/config-setting.tsx +17 -5
  203. package/features/config/components/voice-key.tsx +38 -18
  204. package/features/connectors/mcp.const.ts +90 -59
  205. package/features/intro/components/intro.tsx +50 -27
  206. package/features/routine/components/routine-mark.tsx +4 -6
  207. package/features/routine/components/routine-setting.tsx +332 -143
  208. package/features/routine/routine.query.ts +24 -3
  209. package/features/routine/routine.schema.ts +55 -4
  210. package/features/settings/components/install-app.tsx +1 -4
  211. package/features/settings/components/setting-ui.tsx +1 -1
  212. package/features/skills/skills.discover.ts +2 -1
  213. package/features/skills/skills.query.ts +5 -1
  214. package/features/skills/skills.schema.ts +2 -0
  215. package/features/thursday/components/ascii-orb.tsx +39 -10
  216. package/features/thursday/components/connect-wave.tsx +284 -0
  217. package/features/thursday/components/side-captions.tsx +29 -17
  218. package/features/thursday/components/thursday-setting.tsx +3 -3
  219. package/features/thursday/components/thursday.tsx +130 -58
  220. package/features/thursday/components/voice-picker.tsx +1 -1
  221. package/features/thursday/components/write-line.tsx +2 -2
  222. package/features/thursday/open-work.ts +11 -3
  223. package/features/thursday/tool-line.ts +94 -12
  224. package/features/thursday/use-text-call.ts +3 -2
  225. package/features/thursday/use-thursday.ts +5 -2
  226. package/features/workspace/components/artifact-view.tsx +129 -7
  227. package/guide/bots.md +17 -5
  228. package/guide/calls.md +15 -7
  229. package/guide/setup.md +10 -2
  230. package/knip.json +1 -0
  231. package/lib/desktop-notify.ts +3 -2
  232. package/package.json +1 -1
  233. package/scripts/bot-context.test.mts +1 -1
  234. package/seed-skills/analyst/README.md +19 -0
  235. package/seed-skills/analyst/data-report/SKILL.md +59 -0
  236. package/seed-skills/analyst/data-report/references/brief.md +31 -0
  237. package/seed-skills/analyst/data-report/references/company.md +41 -0
  238. package/seed-skills/analyst/data-report/references/comparison.md +42 -0
  239. package/seed-skills/analyst/data-report/references/decision.md +28 -0
  240. package/seed-skills/analyst/data-report/references/market-size.md +49 -0
  241. package/seed-skills/analyst/data-report/references/price-check.md +33 -0
  242. package/seed-skills/analyst/data-report/references/sources.md +51 -0
  243. package/seed-skills/analyst/data-report/references/trend.md +39 -0
  244. package/seed-skills/analyst/data-report/scripts/chart.mjs +679 -0
  245. package/seed-skills/analyst/data-report/scripts/fetch.mjs +521 -0
  246. package/seed-skills/insta/instagram/SKILL.md +33 -0
  247. package/seed-skills/insta/instagram/references/dm.md +49 -0
  248. package/seed-skills/insta/instagram/references/post.md +74 -0
  249. package/seed-skills/insta/instagram/scripts/compose.mjs +329 -0
  250. package/seed-skills/insta/instagram/scripts/image-size.mjs +30 -0
  251. package/seed-skills/insta/instagram/scripts/inbox.mjs +159 -0
  252. package/seed-skills/insta/instagram/scripts/lib.mjs +91 -0
  253. package/seed-skills/insta/instagram/scripts/media.mjs +104 -0
  254. package/seed-skills/insta/instagram/scripts/profile.mjs +139 -0
  255. package/seed-skills/insta/instagram/scripts/read.mjs +240 -0
  256. package/seed-skills/insta/instagram/scripts/render.mjs +126 -0
  257. package/seed-skills/insta/instagram/scripts/search.mjs +133 -0
  258. package/seed-skills/insta/instagram/scripts/selectors.mjs +56 -0
  259. package/seed-skills/insta/instagram/scripts/sheet.mjs +100 -0
  260. package/seed-skills/insta/instagram/scripts/webimage.mjs +105 -0
  261. package/seed-skills/insta/instagram/templates/carousel.html +62 -0
  262. package/seed-skills/mail/mail/SKILL.md +37 -0
  263. package/seed-skills/mail/mail/recipes/gmail.mjs +448 -0
  264. package/seed-skills/mail/mail/references/recipes.md +55 -0
  265. package/seed-skills/mail/mail/scripts/mail.mjs +202 -0
  266. package/seed-skills/marketer/README.md +6 -4
  267. package/seed-skills/marketer/copywriting/SKILL.md +1 -1
  268. package/seed-skills/marketer/emails/SKILL.md +1 -1
  269. package/seed-skills/marketer/launch/SKILL.md +1 -1
  270. package/seed-skills/marketer/product-marketing/SKILL.md +5 -5
  271. package/seed-skills/marketer/seo-audit/SKILL.md +1 -1
  272. package/seed-skills/marketer/social/SKILL.md +1 -1
  273. package/skills/computer/SKILL.md +1 -0
  274. package/skills/interactive-page/SKILL.md +4 -0
  275. package/.next/server/chunks/[root-of-the-server]__0n-l_n_._.js +0 -3
  276. package/.next/server/chunks/[root-of-the-server]__0wvo2of._.js +0 -3
  277. package/.next/server/chunks/[root-of-the-server]__1e6aut3._.js +0 -3
  278. package/.next/server/chunks/[root-of-the-server]__1ziojdq._.js +0 -3
  279. package/.next/server/chunks/ssr/[root-of-the-server]__1srp8l5._.js +0 -3
  280. package/.next/server/chunks/ssr/_0mes4s0._.js +0 -3
  281. package/.next/server/chunks/ssr/_0ya0cb0._.js +0 -3
  282. package/.next/server/chunks/ssr/_0yto5s7._.js +0 -20
  283. package/.next/server/chunks/ssr/_10dw2nv._.js +0 -3
  284. package/.next/server/chunks/ssr/_1p0gxeo._.js +0 -164
  285. package/.next/server/chunks/ssr/_1r41yvh._.js +0 -3
  286. package/.next/server/chunks/ssr/_1r79ksv._.js +0 -3
  287. package/.next/server/chunks/ssr/features_bot_1ogjt52._.js +0 -3
  288. package/.next/server/chunks/ssr/node_modules_@base-ui_react_0b3d4m9._.js +0 -3
  289. package/.next/static/chunks/03omwz_vi2ndg.js +0 -1
  290. package/.next/static/chunks/0_1bqgd6wt_og.js +0 -1
  291. package/.next/static/chunks/0abgkzikaznxc.js +0 -1
  292. package/.next/static/chunks/0bddkpash59-o.js +0 -17
  293. package/.next/static/chunks/0c2-bzhy3a0ib.js +0 -1
  294. package/.next/static/chunks/0iilfb1ocevnx.js +0 -1
  295. package/.next/static/chunks/0imbhx-j830a_.css +0 -1
  296. package/.next/static/chunks/24h1y9dhy3m_2.js +0 -1
  297. package/.next/static/chunks/2f_5saocsko_b.js +0 -1
  298. package/.next/static/chunks/2lwbr5vx0ixaj.js +0 -18
  299. /package/.next/static/{UiOMPYpQ4fqGyu5PzS-7j → Ar5V4kMdL4CE1trx8anrH}/_buildManifest.js +0 -0
  300. /package/.next/static/{UiOMPYpQ4fqGyu5PzS-7j → Ar5V4kMdL4CE1trx8anrH}/_clientMiddlewareManifest.js +0 -0
  301. /package/.next/static/{UiOMPYpQ4fqGyu5PzS-7j → Ar5V4kMdL4CE1trx8anrH}/_ssgManifest.js +0 -0
@@ -0,0 +1,51 @@
1
+ # Where the numbers are
2
+
3
+ Take a figure from whoever publishes it, not from an article quoting it. When two sources
4
+ disagree, the order of trust is: a filing or an official statistic; the company's own release or
5
+ call; an industry body's report; a research firm's estimate; news.
6
+
7
+ ## What `fetch.mjs` reaches (no key)
8
+
9
+ | Source | For | Command |
10
+ |---|---|---|
11
+ | FRED | US economy, rates, markets; many OECD and BIS series for other countries | `fred <ID,…>` |
12
+ | World Bank | Every country, yearly: GDP, population, inflation, trade | `worldbank <ISO2,…> <INDICATOR>` |
13
+ | Yahoo Finance | Stocks, ETFs, indices, crypto, futures; any exchange | `yahoo <TICKER,…> [--interval 1d\|1wk\|1mo]` |
14
+ | ECB reference rates | Exchange rates, about 30 currencies, since 1999 | `fx <BASE> <QUOTE,…>` |
15
+ | SEC XBRL | US-listed companies' reported figures, yearly or quarterly | `sec <TICKER> --find <word>`, then `sec <TICKER> <CONCEPT,…>` |
16
+ | Wikipedia pageviews | Public interest in a topic, monthly (a stand-in for search trends) | `pageviews <ARTICLE,…> [--wiki ko]` |
17
+
18
+ Ids worth knowing, all checked to be current:
19
+
20
+ - FRED, US: `CPIAUCSL` consumer prices, `UNRATE` unemployment, `FEDFUNDS` policy rate, `DGS10`
21
+ 10-year Treasury, `MORTGAGE30US` 30-year mortgage, `SP500`, `NASDAQCOM`, `DCOILWTICO` oil.
22
+ - FRED, Korea: `IRSTCI01KRM156N` overnight rate, `IRLTLT01KRM156N` 10-year bond,
23
+ `LRHUTTTTKRM156S` unemployment, `DEXKOUS` won per dollar (daily), `QSKR628BIS` house prices.
24
+ Korea's monthly consumer prices are no longer on FRED; the yearly rate is World Bank
25
+ `FP.CPI.TOTL.ZG`, the monthly index is on the Bank of Korea and KOSIS sites.
26
+ - World Bank: `NY.GDP.MKTP.CD` GDP in dollars, `NY.GDP.MKTP.KD.ZG` real growth, `NY.GDP.PCAP.CD`
27
+ GDP per person, `SP.POP.TOTL` population, `FP.CPI.TOTL.ZG` inflation.
28
+ - Yahoo tickers: Korean listings end in `.KS` (KOSPI) or `.KQ` (KOSDAQ), Tokyo `.T`, Hong Kong
29
+ `.HK`; indices start with `^` (`^GSPC`, `^IXIC`, `^KS11`, `^N225`); `BTC-USD`; `KRW=X` is won per
30
+ dollar.
31
+ - SEC concepts: revenue is `Revenues` for some companies and
32
+ `RevenueFromContractWithCustomerExcludingAssessedTax` for others, and a company can switch —
33
+ `--find` shows which one it uses now. Others: `OperatingIncomeLoss`, `NetIncomeLoss`,
34
+ `EarningsPerShareDiluted`, `Assets`, `StockholdersEquity`. A fourth quarter is not filed on its
35
+ own; the script works it out as the year less three quarters and says so in the file.
36
+
37
+ ## What it does not reach
38
+
39
+ - **Korean official statistics** — the Bank of Korea (ECOS) and KOSIS APIs, and company filings
40
+ through OpenDART, need a free key the user signs up for. Without one, read the table on the
41
+ site (ecos.bok.or.kr, kosis.kr, dart.fss.or.kr) and write the rows into a CSV with a `# source:`
42
+ line.
43
+ - **Prices in shops, rents, listings** — pages, not APIs: open them in the browser, one listing at
44
+ a time, and record each with its link and the time you saw it.
45
+ - **Search trends** — Google Trends has no open API; Wikipedia pageviews or a site's own published
46
+ counts stand in, and say that they do.
47
+ - **Market-size totals** — research firms publish the headline figure in a press release and sell
48
+ the rest. Take the headline with its year and what it counts; never the paywalled detail
49
+ quoted secondhand.
50
+
51
+ A source that does not answer twice in a row is down, not empty: say so and use another.
@@ -0,0 +1,39 @@
1
+ # Trend
2
+
3
+ How something moved and what moved it: the series itself, from its source, with the events
4
+ that explain its turns marked on it.
5
+
6
+ ## Collect
7
+
8
+ - The series from the publisher (`fetch.mjs`, or a table on its site), over a window at least
9
+ three times as long as the period asked about, so "recently" can be seen against normal.
10
+ - A comparison series when it tells the story: the same measure elsewhere, the thing it is
11
+ usually compared with (rent against pay, a stock against its index). Different units:
12
+ `--index`.
13
+ - For each turn the text explains, a dated event from a source: a rate decision, a policy, a
14
+ launch, a shock. A turn with no sourced cause is said to be unexplained.
15
+
16
+ ## Final text
17
+
18
+ The level now and its date; the change over the period asked about, as a number and a percent;
19
+ the one or two things that moved it. Missing or revised points are said.
20
+
21
+ ## Page
22
+
23
+ 1. Title: the movement as a finding. Lede: level now, change, main cause.
24
+ 2. The line chart, with a `--mark` for each event the text names.
25
+ 3. A small table: now, one year ago, three or five years ago, the high and low with dates.
26
+ 4. What moved it, one short paragraph per mark, each with its source.
27
+ 5. What to watch: the next release date, and the level that would change the story.
28
+
29
+ ## Example (illustrative numbers)
30
+
31
+ > **Mortgage rates fell a full point in a year, following the 10-year bond**
32
+ >
33
+ > The 30-year rate is 6.1% (2026-09-17), down from 7.1% a year earlier; the 10-year Treasury
34
+ > fell from 4.6% to 3.9% over the same weeks.
35
+ >
36
+ > [chart: both lines since 2020, marks at the first rate cut and the jobs report that followed]
37
+ >
38
+ > Watch: the next inflation release on 10-14; a monthly core reading above 0.3% has pushed the
39
+ > 10-year up each time this year.