@lobehub/chat 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1981) hide show
  1. package/.bunfig.toml +3 -0
  2. package/.dockerignore +11 -0
  3. package/.env.example +183 -0
  4. package/.eslintignore +1 -2
  5. package/.eslintrc.js +32 -1
  6. package/.github/FUNDING.yml +13 -0
  7. package/.github/ISSUE_TEMPLATE/1_bug_report.yml +46 -22
  8. package/.github/ISSUE_TEMPLATE/1_bug_report_cn.yml +69 -0
  9. package/.github/ISSUE_TEMPLATE/2_feature_request.yml +6 -6
  10. package/.github/ISSUE_TEMPLATE/2_feature_request_cn.yml +21 -0
  11. package/.github/ISSUE_TEMPLATE/config.yml +4 -0
  12. package/.github/PULL_REQUEST_TEMPLATE.md +2 -0
  13. package/.github/workflows/docker.yml +45 -0
  14. package/.github/workflows/issue-auto-comments.yml +73 -0
  15. package/.github/workflows/issue-close-require.yml +26 -6
  16. package/.github/workflows/issues-translate.yml +14 -0
  17. package/.github/workflows/lighthouse.yml +72 -0
  18. package/.github/workflows/release.yml +46 -15
  19. package/.github/workflows/sync.yml +54 -0
  20. package/.github/workflows/test.yml +44 -16
  21. package/.github/workflows/wiki-sync.yml +19 -0
  22. package/.husky/pre-commit +0 -3
  23. package/.i18nrc.js +41 -7
  24. package/.nvmrc +1 -0
  25. package/.seorc.cjs +9 -0
  26. package/CHANGELOG.md +17495 -56
  27. package/CODE_OF_CONDUCT.md +128 -0
  28. package/CONTRIBUTING.md +88 -0
  29. package/Dockerfile +138 -0
  30. package/LICENSE +38 -0
  31. package/README.md +739 -80
  32. package/README.zh-CN.md +828 -0
  33. package/__mocks__/zustand/traditional.ts +25 -0
  34. package/codecov.yml +11 -0
  35. package/contributing/Basic/Add-New-Authentication-Providers.md +193 -0
  36. package/contributing/Basic/Add-New-Authentication-Providers.zh-CN.md +192 -0
  37. package/contributing/Basic/Architecture.md +47 -0
  38. package/contributing/Basic/Architecture.zh-CN.md +47 -0
  39. package/contributing/Basic/Chat-API.md +136 -0
  40. package/contributing/Basic/Chat-API.zh-CN.md +174 -0
  41. package/contributing/Basic/Contributing-Guidelines.md +83 -0
  42. package/contributing/Basic/Contributing-Guidelines.zh-CN.md +85 -0
  43. package/contributing/Basic/Feature-Development-Frontend.md +126 -0
  44. package/contributing/Basic/Feature-Development-Frontend.zh-CN.md +126 -0
  45. package/contributing/Basic/Feature-Development.md +713 -0
  46. package/contributing/Basic/Feature-Development.zh-CN.md +707 -0
  47. package/contributing/Basic/Folder-Structure.md +40 -0
  48. package/contributing/Basic/Folder-Structure.zh-CN.md +40 -0
  49. package/contributing/Basic/Intro.md +111 -0
  50. package/contributing/Basic/Intro.zh-CN.md +111 -0
  51. package/contributing/Basic/Resources.md +19 -0
  52. package/contributing/Basic/Resources.zh-CN.md +19 -0
  53. package/contributing/Basic/Setup-Development.md +69 -0
  54. package/contributing/Basic/Setup-Development.zh-CN.md +69 -0
  55. package/contributing/Basic/Test.md +87 -0
  56. package/contributing/Basic/Test.zh-CN.md +87 -0
  57. package/contributing/Home.md +87 -0
  58. package/contributing/Internationalization/Add-New-Locale.md +62 -0
  59. package/contributing/Internationalization/Add-New-Locale.zh-CN.md +62 -0
  60. package/contributing/Internationalization/Internationalization-Implementation.md +125 -0
  61. package/contributing/Internationalization/Internationalization-Implementation.zh-CN.md +125 -0
  62. package/contributing/Others/Lighthouse.md +65 -0
  63. package/contributing/Others/Lighthouse.zh-CN.md +65 -0
  64. package/contributing/State-Management/State-Management-Intro.md +224 -0
  65. package/contributing/State-Management/State-Management-Intro.zh-CN.md +216 -0
  66. package/contributing/State-Management/State-Management-Selectors.md +68 -0
  67. package/contributing/State-Management/State-Management-Selectors.zh-CN.md +49 -0
  68. package/contributing/Upstream-Sync.md +58 -0
  69. package/contributing/Upstream-Sync.zh-CN.md +58 -0
  70. package/contributing/_Footer.md +1 -0
  71. package/contributing/_Sidebar.md +48 -0
  72. package/docs/self-hosting/advanced/analytics.mdx +31 -0
  73. package/docs/self-hosting/advanced/analytics.zh-CN.mdx +28 -0
  74. package/docs/self-hosting/advanced/authentication.mdx +67 -0
  75. package/docs/self-hosting/advanced/authentication.zh-CN.mdx +65 -0
  76. package/docs/self-hosting/advanced/feature-flags.mdx +47 -0
  77. package/docs/self-hosting/advanced/feature-flags.zh-CN.mdx +43 -0
  78. package/docs/self-hosting/advanced/model-list.mdx +48 -0
  79. package/docs/self-hosting/advanced/model-list.zh-CN.mdx +47 -0
  80. package/docs/self-hosting/advanced/server-database.mdx +425 -0
  81. package/docs/self-hosting/advanced/server-database.zh-CN.mdx +413 -0
  82. package/docs/self-hosting/advanced/settings-url-share.mdx +147 -0
  83. package/docs/self-hosting/advanced/settings-url-share.zh-CN.mdx +145 -0
  84. package/docs/self-hosting/advanced/sso-providers/auth0.mdx +133 -0
  85. package/docs/self-hosting/advanced/sso-providers/auth0.zh-CN.mdx +125 -0
  86. package/docs/self-hosting/advanced/sso-providers/authentik.mdx +74 -0
  87. package/docs/self-hosting/advanced/sso-providers/authentik.zh-CN.mdx +68 -0
  88. package/docs/self-hosting/advanced/sso-providers/github.mdx +102 -0
  89. package/docs/self-hosting/advanced/sso-providers/github.zh-CN.mdx +94 -0
  90. package/docs/self-hosting/advanced/sso-providers/microsoft-entra-id.mdx +105 -0
  91. package/docs/self-hosting/advanced/sso-providers/microsoft-entra-id.zh-CN.mdx +99 -0
  92. package/docs/self-hosting/advanced/sso-providers/zitadel.mdx +119 -0
  93. package/docs/self-hosting/advanced/sso-providers/zitadel.zh-CN.mdx +112 -0
  94. package/docs/self-hosting/advanced/upstream-sync.mdx +161 -0
  95. package/docs/self-hosting/advanced/upstream-sync.zh-CN.mdx +153 -0
  96. package/docs/self-hosting/environment-variables/analytics.mdx +84 -0
  97. package/docs/self-hosting/environment-variables/analytics.zh-CN.mdx +82 -0
  98. package/docs/self-hosting/environment-variables/auth.mdx +171 -0
  99. package/docs/self-hosting/environment-variables/auth.zh-CN.mdx +168 -0
  100. package/docs/self-hosting/environment-variables/basic.mdx +118 -0
  101. package/docs/self-hosting/environment-variables/basic.zh-CN.mdx +114 -0
  102. package/docs/self-hosting/environment-variables/model-provider.mdx +299 -0
  103. package/docs/self-hosting/environment-variables/model-provider.zh-CN.mdx +297 -0
  104. package/docs/self-hosting/environment-variables.mdx +22 -0
  105. package/docs/self-hosting/environment-variables.zh-CN.mdx +20 -0
  106. package/docs/self-hosting/examples/azure-openai.mdx +46 -0
  107. package/docs/self-hosting/examples/azure-openai.zh-CN.mdx +48 -0
  108. package/docs/self-hosting/examples/ollama.mdx +104 -0
  109. package/docs/self-hosting/examples/ollama.zh-CN.mdx +102 -0
  110. package/docs/self-hosting/faq/no-v1-suffix.mdx +30 -0
  111. package/docs/self-hosting/faq/no-v1-suffix.zh-CN.mdx +27 -0
  112. package/docs/self-hosting/faq/proxy-with-unable-to-verify-leaf-signature.mdx +84 -0
  113. package/docs/self-hosting/faq/proxy-with-unable-to-verify-leaf-signature.zh-CN.mdx +81 -0
  114. package/docs/self-hosting/platform/docker-compose.mdx +143 -0
  115. package/docs/self-hosting/platform/docker-compose.zh-CN.mdx +133 -0
  116. package/docs/self-hosting/platform/docker.mdx +169 -0
  117. package/docs/self-hosting/platform/docker.zh-CN.mdx +167 -0
  118. package/docs/self-hosting/platform/netlify.mdx +154 -0
  119. package/docs/self-hosting/platform/netlify.zh-CN.mdx +148 -0
  120. package/docs/self-hosting/platform/railway.mdx +35 -0
  121. package/docs/self-hosting/platform/railway.zh-CN.mdx +34 -0
  122. package/docs/self-hosting/platform/repocloud.mdx +38 -0
  123. package/docs/self-hosting/platform/repocloud.zh-CN.mdx +36 -0
  124. package/docs/self-hosting/platform/sealos.mdx +37 -0
  125. package/docs/self-hosting/platform/sealos.zh-CN.mdx +36 -0
  126. package/docs/self-hosting/platform/vercel.mdx +46 -0
  127. package/docs/self-hosting/platform/vercel.zh-CN.mdx +48 -0
  128. package/docs/self-hosting/platform/zeabur.mdx +84 -0
  129. package/docs/self-hosting/platform/zeabur.zh-CN.mdx +83 -0
  130. package/docs/self-hosting/start.mdx +31 -0
  131. package/docs/self-hosting/start.zh-CN.mdx +32 -0
  132. package/docs/usage/agents/concepts.mdx +41 -0
  133. package/docs/usage/agents/concepts.zh-CN.mdx +38 -0
  134. package/docs/usage/agents/custom-agent.mdx +58 -0
  135. package/docs/usage/agents/custom-agent.zh-CN.mdx +53 -0
  136. package/docs/usage/agents/model.mdx +80 -0
  137. package/docs/usage/agents/model.zh-CN.mdx +75 -0
  138. package/docs/usage/agents/prompt.mdx +110 -0
  139. package/docs/usage/agents/prompt.zh-CN.mdx +106 -0
  140. package/docs/usage/agents/topics.mdx +27 -0
  141. package/docs/usage/agents/topics.zh-CN.mdx +25 -0
  142. package/docs/usage/features/agent-market.mdx +40 -0
  143. package/docs/usage/features/agent-market.zh-CN.mdx +36 -0
  144. package/docs/usage/features/auth.mdx +65 -0
  145. package/docs/usage/features/auth.zh-CN.mdx +60 -0
  146. package/docs/usage/features/database.mdx +60 -0
  147. package/docs/usage/features/database.zh-CN.mdx +54 -0
  148. package/docs/usage/features/local-llm.mdx +56 -0
  149. package/docs/usage/features/local-llm.zh-CN.mdx +48 -0
  150. package/docs/usage/features/mobile.mdx +24 -0
  151. package/docs/usage/features/mobile.zh-CN.mdx +23 -0
  152. package/docs/usage/features/more.mdx +33 -0
  153. package/docs/usage/features/more.zh-CN.mdx +28 -0
  154. package/docs/usage/features/multi-ai-providers.mdx +66 -0
  155. package/docs/usage/features/multi-ai-providers.zh-CN.mdx +66 -0
  156. package/docs/usage/features/plugin-system.mdx +89 -0
  157. package/docs/usage/features/plugin-system.zh-CN.mdx +78 -0
  158. package/docs/usage/features/pwa.mdx +74 -0
  159. package/docs/usage/features/pwa.zh-CN.mdx +74 -0
  160. package/docs/usage/features/text-to-image.mdx +26 -0
  161. package/docs/usage/features/text-to-image.zh-CN.mdx +26 -0
  162. package/docs/usage/features/theme.mdx +34 -0
  163. package/docs/usage/features/theme.zh-CN.mdx +30 -0
  164. package/docs/usage/features/tts.mdx +52 -0
  165. package/docs/usage/features/tts.zh-CN.mdx +46 -0
  166. package/docs/usage/features/vision.mdx +28 -0
  167. package/docs/usage/features/vision.zh-CN.mdx +25 -0
  168. package/docs/usage/plugins/basic-usage.mdx +69 -0
  169. package/docs/usage/plugins/basic-usage.zh-CN.mdx +67 -0
  170. package/docs/usage/plugins/custom-plugin.mdx +37 -0
  171. package/docs/usage/plugins/custom-plugin.zh-CN.mdx +35 -0
  172. package/docs/usage/plugins/development.mdx +329 -0
  173. package/docs/usage/plugins/development.zh-CN.mdx +323 -0
  174. package/docs/usage/plugins/store.mdx +30 -0
  175. package/docs/usage/plugins/store.zh-CN.mdx +27 -0
  176. package/docs/usage/providers/01ai.mdx +85 -0
  177. package/docs/usage/providers/01ai.zh-CN.mdx +85 -0
  178. package/docs/usage/providers/anthropic.mdx +78 -0
  179. package/docs/usage/providers/anthropic.zh-CN.mdx +75 -0
  180. package/docs/usage/providers/azure.mdx +88 -0
  181. package/docs/usage/providers/azure.zh-CN.mdx +79 -0
  182. package/docs/usage/providers/bedrock.mdx +139 -0
  183. package/docs/usage/providers/bedrock.zh-CN.mdx +134 -0
  184. package/docs/usage/providers/deepseek.mdx +90 -0
  185. package/docs/usage/providers/deepseek.zh-CN.mdx +85 -0
  186. package/docs/usage/providers/gemini.mdx +82 -0
  187. package/docs/usage/providers/gemini.zh-CN.mdx +78 -0
  188. package/docs/usage/providers/groq.mdx +72 -0
  189. package/docs/usage/providers/groq.zh-CN.mdx +67 -0
  190. package/docs/usage/providers/minimax.mdx +87 -0
  191. package/docs/usage/providers/minimax.zh-CN.mdx +84 -0
  192. package/docs/usage/providers/mistral.mdx +69 -0
  193. package/docs/usage/providers/mistral.zh-CN.mdx +64 -0
  194. package/docs/usage/providers/moonshot.mdx +68 -0
  195. package/docs/usage/providers/moonshot.zh-CN.mdx +63 -0
  196. package/docs/usage/providers/ollama/gemma.mdx +68 -0
  197. package/docs/usage/providers/ollama/gemma.zh-CN.mdx +67 -0
  198. package/docs/usage/providers/ollama/qwen.mdx +69 -0
  199. package/docs/usage/providers/ollama/qwen.zh-CN.mdx +66 -0
  200. package/docs/usage/providers/ollama.mdx +205 -0
  201. package/docs/usage/providers/ollama.zh-CN.mdx +203 -0
  202. package/docs/usage/providers/openai.mdx +94 -0
  203. package/docs/usage/providers/openai.zh-CN.mdx +87 -0
  204. package/docs/usage/providers/openrouter.mdx +110 -0
  205. package/docs/usage/providers/openrouter.zh-CN.mdx +104 -0
  206. package/docs/usage/providers/perplexity.mdx +62 -0
  207. package/docs/usage/providers/perplexity.zh-CN.mdx +59 -0
  208. package/docs/usage/providers/qwen.mdx +92 -0
  209. package/docs/usage/providers/qwen.zh-CN.mdx +87 -0
  210. package/docs/usage/providers/stepfun.mdx +66 -0
  211. package/docs/usage/providers/stepfun.zh-CN.mdx +62 -0
  212. package/docs/usage/providers/togetherai.mdx +72 -0
  213. package/docs/usage/providers/togetherai.zh-CN.mdx +70 -0
  214. package/docs/usage/providers/zhipu.mdx +67 -0
  215. package/docs/usage/providers/zhipu.zh-CN.mdx +61 -0
  216. package/docs/usage/providers.mdx +36 -0
  217. package/docs/usage/providers.zh-CN.mdx +34 -0
  218. package/docs/usage/start.mdx +48 -0
  219. package/docs/usage/start.zh-CN.mdx +40 -0
  220. package/docs/usage/tools-calling/anthropic.mdx +1 -0
  221. package/docs/usage/tools-calling/anthropic.zh-CN.mdx +956 -0
  222. package/docs/usage/tools-calling/google.mdx +1 -0
  223. package/docs/usage/tools-calling/google.zh-CN.mdx +13 -0
  224. package/docs/usage/tools-calling/groq.mdx +1 -0
  225. package/docs/usage/tools-calling/groq.zh-CN.mdx +15 -0
  226. package/docs/usage/tools-calling/openai.mdx +1 -0
  227. package/docs/usage/tools-calling/openai.zh-CN.mdx +833 -0
  228. package/docs/usage/tools-calling.mdx +3 -0
  229. package/docs/usage/tools-calling.zh-CN.mdx +255 -0
  230. package/drizzle.config.ts +29 -0
  231. package/locales/ar/auth.json +8 -0
  232. package/locales/ar/chat.json +137 -0
  233. package/locales/ar/clerk.json +769 -0
  234. package/locales/ar/common.json +224 -0
  235. package/locales/ar/components.json +16 -0
  236. package/locales/ar/error.json +117 -0
  237. package/locales/ar/market.json +32 -0
  238. package/locales/ar/metadata.json +18 -0
  239. package/locales/ar/migration.json +45 -0
  240. package/locales/ar/modelProvider.json +108 -0
  241. package/locales/ar/plugin.json +166 -0
  242. package/locales/ar/portal.json +4 -0
  243. package/locales/ar/setting.json +411 -0
  244. package/locales/ar/tool.json +10 -0
  245. package/locales/ar/welcome.json +49 -0
  246. package/locales/bg-BG/auth.json +8 -0
  247. package/locales/bg-BG/chat.json +137 -0
  248. package/locales/bg-BG/clerk.json +769 -0
  249. package/locales/bg-BG/common.json +224 -0
  250. package/locales/bg-BG/components.json +16 -0
  251. package/locales/bg-BG/error.json +117 -0
  252. package/locales/bg-BG/market.json +32 -0
  253. package/locales/bg-BG/metadata.json +18 -0
  254. package/locales/bg-BG/migration.json +45 -0
  255. package/locales/bg-BG/modelProvider.json +108 -0
  256. package/locales/bg-BG/plugin.json +166 -0
  257. package/locales/bg-BG/portal.json +4 -0
  258. package/locales/bg-BG/setting.json +411 -0
  259. package/locales/bg-BG/tool.json +10 -0
  260. package/locales/bg-BG/welcome.json +49 -0
  261. package/locales/de-DE/auth.json +8 -0
  262. package/locales/de-DE/chat.json +137 -0
  263. package/locales/de-DE/clerk.json +769 -0
  264. package/locales/de-DE/common.json +224 -0
  265. package/locales/de-DE/components.json +16 -0
  266. package/locales/de-DE/error.json +117 -0
  267. package/locales/de-DE/market.json +32 -0
  268. package/locales/de-DE/metadata.json +18 -0
  269. package/locales/de-DE/migration.json +45 -0
  270. package/locales/de-DE/modelProvider.json +108 -0
  271. package/locales/de-DE/plugin.json +166 -0
  272. package/locales/de-DE/portal.json +4 -0
  273. package/locales/de-DE/setting.json +411 -0
  274. package/locales/de-DE/tool.json +10 -0
  275. package/locales/de-DE/welcome.json +49 -0
  276. package/locales/en-US/auth.json +8 -0
  277. package/locales/en-US/chat.json +137 -0
  278. package/locales/en-US/clerk.json +769 -0
  279. package/locales/en-US/common.json +224 -0
  280. package/locales/en-US/components.json +16 -0
  281. package/locales/en-US/error.json +117 -0
  282. package/locales/en-US/market.json +32 -0
  283. package/locales/en-US/metadata.json +18 -0
  284. package/locales/en-US/migration.json +45 -0
  285. package/locales/en-US/modelProvider.json +108 -0
  286. package/locales/en-US/plugin.json +166 -0
  287. package/locales/en-US/portal.json +4 -0
  288. package/locales/en-US/setting.json +411 -0
  289. package/locales/en-US/tool.json +10 -0
  290. package/locales/en-US/welcome.json +49 -0
  291. package/locales/es-ES/auth.json +8 -0
  292. package/locales/es-ES/chat.json +137 -0
  293. package/locales/es-ES/clerk.json +769 -0
  294. package/locales/es-ES/common.json +224 -0
  295. package/locales/es-ES/components.json +16 -0
  296. package/locales/es-ES/error.json +117 -0
  297. package/locales/es-ES/market.json +32 -0
  298. package/locales/es-ES/metadata.json +18 -0
  299. package/locales/es-ES/migration.json +45 -0
  300. package/locales/es-ES/modelProvider.json +108 -0
  301. package/locales/es-ES/plugin.json +166 -0
  302. package/locales/es-ES/portal.json +4 -0
  303. package/locales/es-ES/setting.json +411 -0
  304. package/locales/es-ES/tool.json +10 -0
  305. package/locales/es-ES/welcome.json +49 -0
  306. package/locales/fr-FR/auth.json +8 -0
  307. package/locales/fr-FR/chat.json +137 -0
  308. package/locales/fr-FR/clerk.json +769 -0
  309. package/locales/fr-FR/common.json +224 -0
  310. package/locales/fr-FR/components.json +16 -0
  311. package/locales/fr-FR/error.json +117 -0
  312. package/locales/fr-FR/market.json +32 -0
  313. package/locales/fr-FR/metadata.json +18 -0
  314. package/locales/fr-FR/migration.json +45 -0
  315. package/locales/fr-FR/modelProvider.json +108 -0
  316. package/locales/fr-FR/plugin.json +166 -0
  317. package/locales/fr-FR/portal.json +4 -0
  318. package/locales/fr-FR/setting.json +411 -0
  319. package/locales/fr-FR/tool.json +10 -0
  320. package/locales/fr-FR/welcome.json +49 -0
  321. package/locales/it-IT/auth.json +8 -0
  322. package/locales/it-IT/chat.json +137 -0
  323. package/locales/it-IT/clerk.json +769 -0
  324. package/locales/it-IT/common.json +224 -0
  325. package/locales/it-IT/components.json +16 -0
  326. package/locales/it-IT/error.json +117 -0
  327. package/locales/it-IT/market.json +32 -0
  328. package/locales/it-IT/metadata.json +18 -0
  329. package/locales/it-IT/migration.json +45 -0
  330. package/locales/it-IT/modelProvider.json +108 -0
  331. package/locales/it-IT/plugin.json +166 -0
  332. package/locales/it-IT/portal.json +4 -0
  333. package/locales/it-IT/setting.json +411 -0
  334. package/locales/it-IT/tool.json +10 -0
  335. package/locales/it-IT/welcome.json +49 -0
  336. package/locales/ja-JP/auth.json +8 -0
  337. package/locales/ja-JP/chat.json +137 -0
  338. package/locales/ja-JP/clerk.json +769 -0
  339. package/locales/ja-JP/common.json +224 -0
  340. package/locales/ja-JP/components.json +16 -0
  341. package/locales/ja-JP/error.json +117 -0
  342. package/locales/ja-JP/market.json +32 -0
  343. package/locales/ja-JP/metadata.json +18 -0
  344. package/locales/ja-JP/migration.json +45 -0
  345. package/locales/ja-JP/modelProvider.json +108 -0
  346. package/locales/ja-JP/plugin.json +166 -0
  347. package/locales/ja-JP/portal.json +4 -0
  348. package/locales/ja-JP/setting.json +411 -0
  349. package/locales/ja-JP/tool.json +10 -0
  350. package/locales/ja-JP/welcome.json +49 -0
  351. package/locales/ko-KR/auth.json +8 -0
  352. package/locales/ko-KR/chat.json +137 -0
  353. package/locales/ko-KR/clerk.json +769 -0
  354. package/locales/ko-KR/common.json +224 -0
  355. package/locales/ko-KR/components.json +16 -0
  356. package/locales/ko-KR/error.json +117 -0
  357. package/locales/ko-KR/market.json +32 -0
  358. package/locales/ko-KR/metadata.json +18 -0
  359. package/locales/ko-KR/migration.json +45 -0
  360. package/locales/ko-KR/modelProvider.json +108 -0
  361. package/locales/ko-KR/plugin.json +166 -0
  362. package/locales/ko-KR/portal.json +4 -0
  363. package/locales/ko-KR/setting.json +411 -0
  364. package/locales/ko-KR/tool.json +10 -0
  365. package/locales/ko-KR/welcome.json +49 -0
  366. package/locales/nl-NL/auth.json +8 -0
  367. package/locales/nl-NL/chat.json +137 -0
  368. package/locales/nl-NL/clerk.json +769 -0
  369. package/locales/nl-NL/common.json +224 -0
  370. package/locales/nl-NL/components.json +16 -0
  371. package/locales/nl-NL/error.json +117 -0
  372. package/locales/nl-NL/market.json +32 -0
  373. package/locales/nl-NL/metadata.json +18 -0
  374. package/locales/nl-NL/migration.json +45 -0
  375. package/locales/nl-NL/modelProvider.json +108 -0
  376. package/locales/nl-NL/plugin.json +166 -0
  377. package/locales/nl-NL/portal.json +4 -0
  378. package/locales/nl-NL/setting.json +411 -0
  379. package/locales/nl-NL/tool.json +10 -0
  380. package/locales/nl-NL/welcome.json +49 -0
  381. package/locales/pl-PL/auth.json +8 -0
  382. package/locales/pl-PL/chat.json +137 -0
  383. package/locales/pl-PL/clerk.json +769 -0
  384. package/locales/pl-PL/common.json +224 -0
  385. package/locales/pl-PL/components.json +16 -0
  386. package/locales/pl-PL/error.json +117 -0
  387. package/locales/pl-PL/market.json +32 -0
  388. package/locales/pl-PL/metadata.json +18 -0
  389. package/locales/pl-PL/migration.json +45 -0
  390. package/locales/pl-PL/modelProvider.json +108 -0
  391. package/locales/pl-PL/plugin.json +166 -0
  392. package/locales/pl-PL/portal.json +4 -0
  393. package/locales/pl-PL/setting.json +411 -0
  394. package/locales/pl-PL/tool.json +10 -0
  395. package/locales/pl-PL/welcome.json +49 -0
  396. package/locales/pt-BR/auth.json +8 -0
  397. package/locales/pt-BR/chat.json +137 -0
  398. package/locales/pt-BR/clerk.json +769 -0
  399. package/locales/pt-BR/common.json +224 -0
  400. package/locales/pt-BR/components.json +16 -0
  401. package/locales/pt-BR/error.json +117 -0
  402. package/locales/pt-BR/market.json +32 -0
  403. package/locales/pt-BR/metadata.json +18 -0
  404. package/locales/pt-BR/migration.json +45 -0
  405. package/locales/pt-BR/modelProvider.json +108 -0
  406. package/locales/pt-BR/plugin.json +166 -0
  407. package/locales/pt-BR/portal.json +4 -0
  408. package/locales/pt-BR/setting.json +411 -0
  409. package/locales/pt-BR/tool.json +10 -0
  410. package/locales/pt-BR/welcome.json +49 -0
  411. package/locales/ru-RU/auth.json +8 -0
  412. package/locales/ru-RU/chat.json +137 -0
  413. package/locales/ru-RU/clerk.json +769 -0
  414. package/locales/ru-RU/common.json +224 -0
  415. package/locales/ru-RU/components.json +16 -0
  416. package/locales/ru-RU/error.json +117 -0
  417. package/locales/ru-RU/market.json +32 -0
  418. package/locales/ru-RU/metadata.json +18 -0
  419. package/locales/ru-RU/migration.json +45 -0
  420. package/locales/ru-RU/modelProvider.json +108 -0
  421. package/locales/ru-RU/plugin.json +166 -0
  422. package/locales/ru-RU/portal.json +4 -0
  423. package/locales/ru-RU/setting.json +411 -0
  424. package/locales/ru-RU/tool.json +10 -0
  425. package/locales/ru-RU/welcome.json +49 -0
  426. package/locales/tr-TR/auth.json +8 -0
  427. package/locales/tr-TR/chat.json +137 -0
  428. package/locales/tr-TR/clerk.json +769 -0
  429. package/locales/tr-TR/common.json +224 -0
  430. package/locales/tr-TR/components.json +16 -0
  431. package/locales/tr-TR/error.json +117 -0
  432. package/locales/tr-TR/market.json +32 -0
  433. package/locales/tr-TR/metadata.json +18 -0
  434. package/locales/tr-TR/migration.json +45 -0
  435. package/locales/tr-TR/modelProvider.json +108 -0
  436. package/locales/tr-TR/plugin.json +166 -0
  437. package/locales/tr-TR/portal.json +4 -0
  438. package/locales/tr-TR/setting.json +411 -0
  439. package/locales/tr-TR/tool.json +10 -0
  440. package/locales/tr-TR/welcome.json +49 -0
  441. package/locales/vi-VN/auth.json +8 -0
  442. package/locales/vi-VN/chat.json +137 -0
  443. package/locales/vi-VN/clerk.json +769 -0
  444. package/locales/vi-VN/common.json +224 -0
  445. package/locales/vi-VN/components.json +16 -0
  446. package/locales/vi-VN/error.json +117 -0
  447. package/locales/vi-VN/market.json +32 -0
  448. package/locales/vi-VN/metadata.json +18 -0
  449. package/locales/vi-VN/migration.json +45 -0
  450. package/locales/vi-VN/modelProvider.json +108 -0
  451. package/locales/vi-VN/plugin.json +166 -0
  452. package/locales/vi-VN/portal.json +4 -0
  453. package/locales/vi-VN/setting.json +411 -0
  454. package/locales/vi-VN/tool.json +10 -0
  455. package/locales/vi-VN/welcome.json +49 -0
  456. package/locales/zh-CN/auth.json +8 -0
  457. package/locales/zh-CN/chat.json +137 -0
  458. package/locales/zh-CN/clerk.json +769 -0
  459. package/locales/zh-CN/common.json +224 -0
  460. package/locales/zh-CN/components.json +16 -0
  461. package/locales/zh-CN/error.json +117 -0
  462. package/locales/zh-CN/market.json +32 -0
  463. package/locales/zh-CN/metadata.json +18 -0
  464. package/locales/zh-CN/migration.json +45 -0
  465. package/locales/zh-CN/modelProvider.json +108 -0
  466. package/locales/zh-CN/plugin.json +166 -0
  467. package/locales/zh-CN/portal.json +4 -0
  468. package/locales/zh-CN/setting.json +411 -0
  469. package/locales/zh-CN/tool.json +10 -0
  470. package/locales/zh-CN/welcome.json +49 -0
  471. package/locales/zh-TW/auth.json +8 -0
  472. package/locales/zh-TW/chat.json +137 -0
  473. package/locales/zh-TW/clerk.json +769 -0
  474. package/locales/zh-TW/common.json +224 -0
  475. package/locales/zh-TW/components.json +16 -0
  476. package/locales/zh-TW/error.json +117 -0
  477. package/locales/zh-TW/market.json +32 -0
  478. package/locales/zh-TW/metadata.json +18 -0
  479. package/locales/zh-TW/migration.json +45 -0
  480. package/locales/zh-TW/modelProvider.json +108 -0
  481. package/locales/zh-TW/plugin.json +166 -0
  482. package/locales/zh-TW/portal.json +4 -0
  483. package/locales/zh-TW/setting.json +411 -0
  484. package/locales/zh-TW/tool.json +10 -0
  485. package/locales/zh-TW/welcome.json +49 -0
  486. package/netlify.toml +10 -0
  487. package/next-sitemap.config.mjs +53 -0
  488. package/next.config.mjs +183 -9
  489. package/package.json +215 -85
  490. package/public/apple-touch-icon.png +0 -0
  491. package/public/favicon-32x32.ico +0 -0
  492. package/public/favicon.ico +0 -0
  493. package/public/icons/icon-192x192.maskable.png +0 -0
  494. package/public/icons/icon-192x192.png +0 -0
  495. package/public/icons/icon-512x512.maskable.png +0 -0
  496. package/public/icons/icon-512x512.png +0 -0
  497. package/public/images/banner_market_modal.webp +0 -0
  498. package/public/images/chatmode_chat_dark.webp +0 -0
  499. package/public/images/chatmode_chat_light.webp +0 -0
  500. package/public/images/chatmode_docs_dark.webp +0 -0
  501. package/public/images/chatmode_docs_light.webp +0 -0
  502. package/public/images/empty_topic_dark.webp +0 -0
  503. package/public/images/empty_topic_light.webp +0 -0
  504. package/public/images/logo.png +0 -0
  505. package/public/images/screenshot_background.webp +0 -0
  506. package/public/images/theme_auto.webp +0 -0
  507. package/public/images/theme_dark.webp +0 -0
  508. package/public/images/theme_light.webp +0 -0
  509. package/public/manifest.json +166 -0
  510. package/public/og/cover.png +0 -0
  511. package/public/screenshots/shot-1.desktop.png +0 -0
  512. package/public/screenshots/shot-1.mobile.png +0 -0
  513. package/public/screenshots/shot-2.desktop.png +0 -0
  514. package/public/screenshots/shot-2.mobile.png +0 -0
  515. package/public/screenshots/shot-3.desktop.png +0 -0
  516. package/public/screenshots/shot-3.mobile.png +0 -0
  517. package/public/screenshots/shot-4.desktop.png +0 -0
  518. package/public/screenshots/shot-4.mobile.png +0 -0
  519. package/public/screenshots/shot-5.desktop.png +0 -0
  520. package/public/screenshots/shot-5.mobile.png +0 -0
  521. package/public/videos/feedback.mp4 +0 -0
  522. package/public/videos/star.mp4 +0 -0
  523. package/renovate.json +13 -0
  524. package/scripts/docsWorkflow/const.ts +14 -0
  525. package/scripts/docsWorkflow/index.ts +82 -0
  526. package/scripts/docsWorkflow/toc.ts +60 -0
  527. package/scripts/docsWorkflow/utils.ts +38 -0
  528. package/scripts/i18nWorkflow/const.ts +18 -0
  529. package/scripts/i18nWorkflow/genDefaultLocale.ts +19 -0
  530. package/scripts/i18nWorkflow/genDiff.ts +50 -0
  531. package/scripts/i18nWorkflow/index.ts +11 -0
  532. package/scripts/i18nWorkflow/utils.ts +54 -0
  533. package/scripts/mdxWorkflow/index.ts +48 -0
  534. package/scripts/migrateServerDB/index.ts +32 -0
  535. package/scripts/readmeWorkflow/const.ts +19 -0
  536. package/scripts/readmeWorkflow/index.ts +12 -0
  537. package/scripts/readmeWorkflow/syncAgentIndex.ts +47 -0
  538. package/scripts/readmeWorkflow/syncPluginIndex.ts +42 -0
  539. package/scripts/readmeWorkflow/utlis.ts +52 -0
  540. package/sentry.client.config.ts +30 -0
  541. package/sentry.edge.config.ts +17 -0
  542. package/sentry.server.config.ts +19 -0
  543. package/src/app/(auth)/layout.tsx +19 -0
  544. package/src/app/(auth)/login/[[...login]]/page.tsx +21 -0
  545. package/src/app/(auth)/signup/[[...signup]]/page.tsx +21 -0
  546. package/src/app/(loading)/Client.tsx +13 -0
  547. package/src/app/(loading)/Redirect.tsx +51 -0
  548. package/src/app/(main)/(mobile)/me/(home)/__tests__/UserBanner.test.tsx +80 -0
  549. package/src/app/(main)/(mobile)/me/(home)/__tests__/useCategory.test.tsx +116 -0
  550. package/src/app/(main)/(mobile)/me/(home)/features/Category.tsx +15 -0
  551. package/src/app/(main)/(mobile)/me/(home)/features/Header.tsx +30 -0
  552. package/src/app/(main)/(mobile)/me/(home)/features/UserBanner.tsx +37 -0
  553. package/src/app/(main)/(mobile)/me/(home)/features/useCategory.tsx +118 -0
  554. package/src/app/(main)/(mobile)/me/(home)/layout.tsx +17 -0
  555. package/src/app/(main)/(mobile)/me/(home)/loading.tsx +38 -0
  556. package/src/app/(main)/(mobile)/me/(home)/page.tsx +38 -0
  557. package/src/app/(main)/(mobile)/me/data/features/Category.tsx +48 -0
  558. package/src/app/(main)/(mobile)/me/data/features/Header.tsx +33 -0
  559. package/src/app/(main)/(mobile)/me/data/layout.tsx +13 -0
  560. package/src/app/(main)/(mobile)/me/data/loading.tsx +5 -0
  561. package/src/app/(main)/(mobile)/me/data/page.tsx +27 -0
  562. package/src/app/(main)/(mobile)/me/profile/features/Category.tsx +45 -0
  563. package/src/app/(main)/(mobile)/me/profile/features/Header.tsx +33 -0
  564. package/src/app/(main)/(mobile)/me/profile/layout.tsx +16 -0
  565. package/src/app/(main)/(mobile)/me/profile/loading.tsx +5 -0
  566. package/src/app/(main)/(mobile)/me/profile/page.tsx +28 -0
  567. package/src/app/(main)/(mobile)/me/settings/features/Category.tsx +15 -0
  568. package/src/app/(main)/(mobile)/me/settings/features/Header.tsx +33 -0
  569. package/src/app/(main)/(mobile)/me/settings/features/useCategory.tsx +62 -0
  570. package/src/app/(main)/(mobile)/me/settings/layout.tsx +13 -0
  571. package/src/app/(main)/(mobile)/me/settings/loading.tsx +5 -0
  572. package/src/app/(main)/(mobile)/me/settings/page.tsx +28 -0
  573. package/src/app/(main)/@nav/_layout/Desktop/Avatar.test.tsx +55 -0
  574. package/src/app/(main)/@nav/_layout/Desktop/Avatar.tsx +53 -0
  575. package/src/app/(main)/@nav/_layout/Desktop/BottomActions.tsx +24 -0
  576. package/src/app/(main)/@nav/_layout/Desktop/TopActions.tsx +50 -0
  577. package/src/app/(main)/@nav/_layout/Desktop/index.tsx +26 -0
  578. package/src/app/(main)/@nav/_layout/Mobile.tsx +71 -0
  579. package/src/app/(main)/@nav/default.tsx +10 -0
  580. package/src/app/(main)/_layout/Desktop.tsx +33 -0
  581. package/src/app/(main)/_layout/Mobile.tsx +29 -0
  582. package/src/app/(main)/_layout/type.ts +6 -0
  583. package/src/app/(main)/chat/(workspace)/@conversation/default.tsx +23 -0
  584. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatHydration/index.tsx +33 -0
  585. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/Footer/DragUpload.tsx +245 -0
  586. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/Footer/LocalFiles.tsx +10 -0
  587. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/Footer/SendMore.tsx +120 -0
  588. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/Footer/index.tsx +182 -0
  589. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/Header/index.tsx +25 -0
  590. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/TextArea.test.tsx +316 -0
  591. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/TextArea.tsx +129 -0
  592. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/__tests__/useAutoFocus.test.ts +45 -0
  593. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/index.tsx +60 -0
  594. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Desktop/useAutoFocus.ts +13 -0
  595. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Mobile/Files.tsx +19 -0
  596. package/src/app/(main)/chat/(workspace)/@conversation/features/ChatInput/Mobile/index.tsx +52 -0
  597. package/src/app/(main)/chat/(workspace)/@portal/_layout/Desktop.tsx +17 -0
  598. package/src/app/(main)/chat/(workspace)/@portal/_layout/Mobile.tsx +18 -0
  599. package/src/app/(main)/chat/(workspace)/@portal/default.tsx +27 -0
  600. package/src/app/(main)/chat/(workspace)/@portal/features/Header.tsx +52 -0
  601. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolList/Item/index.tsx +74 -0
  602. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolList/Item/style.ts +46 -0
  603. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolList/index.tsx +39 -0
  604. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolUI/Footer.tsx +33 -0
  605. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolUI/ToolRender.tsx +50 -0
  606. package/src/app/(main)/chat/(workspace)/@portal/features/Tools/ToolUI/index.tsx +37 -0
  607. package/src/app/(main)/chat/(workspace)/@portal/index.tsx +18 -0
  608. package/src/app/(main)/chat/(workspace)/@topic/_layout/Desktop.tsx +17 -0
  609. package/src/app/(main)/chat/(workspace)/@topic/_layout/Mobile.tsx +21 -0
  610. package/src/app/(main)/chat/(workspace)/@topic/default.tsx +32 -0
  611. package/src/app/(main)/chat/(workspace)/@topic/features/Header.tsx +88 -0
  612. package/src/app/(main)/chat/(workspace)/@topic/features/SkeletonList.tsx +57 -0
  613. package/src/app/(main)/chat/(workspace)/@topic/features/SystemRole/SystemRoleContent.tsx +128 -0
  614. package/src/app/(main)/chat/(workspace)/@topic/features/SystemRole/index.tsx +18 -0
  615. package/src/app/(main)/chat/(workspace)/@topic/features/SystemRole/style.ts +32 -0
  616. package/src/app/(main)/chat/(workspace)/@topic/features/TopicListContent/DefaultContent.tsx +29 -0
  617. package/src/app/(main)/chat/(workspace)/@topic/features/TopicListContent/TopicContent.tsx +211 -0
  618. package/src/app/(main)/chat/(workspace)/@topic/features/TopicListContent/TopicItem.tsx +81 -0
  619. package/src/app/(main)/chat/(workspace)/@topic/features/TopicListContent/index.tsx +107 -0
  620. package/src/app/(main)/chat/(workspace)/@topic/features/TopicSearchBar/index.tsx +42 -0
  621. package/src/app/(main)/chat/(workspace)/_layout/Desktop/ChatHeader/HeaderAction.tsx +40 -0
  622. package/src/app/(main)/chat/(workspace)/_layout/Desktop/ChatHeader/Main.tsx +91 -0
  623. package/src/app/(main)/chat/(workspace)/_layout/Desktop/ChatHeader/Tags.tsx +31 -0
  624. package/src/app/(main)/chat/(workspace)/_layout/Desktop/ChatHeader/index.tsx +8 -0
  625. package/src/app/(main)/chat/(workspace)/_layout/Desktop/HotKeys.tsx +49 -0
  626. package/src/app/(main)/chat/(workspace)/_layout/Desktop/Portal.tsx +79 -0
  627. package/src/app/(main)/chat/(workspace)/_layout/Desktop/TopicPanel.tsx +82 -0
  628. package/src/app/(main)/chat/(workspace)/_layout/Desktop/index.tsx +37 -0
  629. package/src/app/(main)/chat/(workspace)/_layout/Mobile/ChatHeader/ChatHeaderTitle.tsx +55 -0
  630. package/src/app/(main)/chat/(workspace)/_layout/Mobile/ChatHeader/index.tsx +37 -0
  631. package/src/app/(main)/chat/(workspace)/_layout/Mobile/TopicModal.tsx +35 -0
  632. package/src/app/(main)/chat/(workspace)/_layout/Mobile/index.tsx +21 -0
  633. package/src/app/(main)/chat/(workspace)/_layout/type.ts +8 -0
  634. package/src/app/(main)/chat/(workspace)/_layout/useInitAgentConfig.ts +10 -0
  635. package/src/app/(main)/chat/(workspace)/features/PluginTag/PluginStatus.tsx +108 -0
  636. package/src/app/(main)/chat/(workspace)/features/PluginTag/index.tsx +60 -0
  637. package/src/app/(main)/chat/(workspace)/features/SettingButton.tsx +25 -0
  638. package/src/app/(main)/chat/(workspace)/features/ShareButton/Preview.tsx +79 -0
  639. package/src/app/(main)/chat/(workspace)/features/ShareButton/ShareModal.tsx +164 -0
  640. package/src/app/(main)/chat/(workspace)/features/ShareButton/index.tsx +40 -0
  641. package/src/app/(main)/chat/(workspace)/features/ShareButton/style.ts +71 -0
  642. package/src/app/(main)/chat/(workspace)/features/ShareButton/type.ts +14 -0
  643. package/src/app/(main)/chat/(workspace)/features/ShareButton/useScreenshot.ts +60 -0
  644. package/src/app/(main)/chat/(workspace)/features/TelemetryNotification.tsx +93 -0
  645. package/src/app/(main)/chat/(workspace)/features/useWorkspaceModal.tsx +27 -0
  646. package/src/app/(main)/chat/(workspace)/layout.ts +11 -0
  647. package/src/app/(main)/chat/(workspace)/page.tsx +39 -0
  648. package/src/app/(main)/chat/@session/_layout/Desktop/PanelBody.tsx +22 -0
  649. package/src/app/(main)/chat/@session/_layout/Desktop/SessionHeader.tsx +60 -0
  650. package/src/app/(main)/chat/@session/_layout/Desktop/index.tsx +18 -0
  651. package/src/app/(main)/chat/@session/_layout/Mobile/SessionHeader.tsx +45 -0
  652. package/src/app/(main)/chat/@session/_layout/Mobile/index.tsx +22 -0
  653. package/src/app/(main)/chat/@session/default.tsx +29 -0
  654. package/src/app/(main)/chat/@session/features/SessionHydration.tsx +45 -0
  655. package/src/app/(main)/chat/@session/features/SessionListContent/CollapseGroup/Actions.tsx +141 -0
  656. package/src/app/(main)/chat/@session/features/SessionListContent/CollapseGroup/index.tsx +63 -0
  657. package/src/app/(main)/chat/@session/features/SessionListContent/DefaultMode.tsx +106 -0
  658. package/src/app/(main)/chat/@session/features/SessionListContent/Inbox/index.tsx +38 -0
  659. package/src/app/(main)/chat/@session/features/SessionListContent/List/AddButton.tsx +28 -0
  660. package/src/app/(main)/chat/@session/features/SessionListContent/List/Item/Actions.tsx +196 -0
  661. package/src/app/(main)/chat/@session/features/SessionListContent/List/Item/index.tsx +95 -0
  662. package/src/app/(main)/chat/@session/features/SessionListContent/List/index.tsx +67 -0
  663. package/src/app/(main)/chat/@session/features/SessionListContent/ListItem/index.tsx +67 -0
  664. package/src/app/(main)/chat/@session/features/SessionListContent/Modals/ConfigGroupModal/GroupItem.tsx +89 -0
  665. package/src/app/(main)/chat/@session/features/SessionListContent/Modals/ConfigGroupModal/index.tsx +85 -0
  666. package/src/app/(main)/chat/@session/features/SessionListContent/Modals/CreateGroupModal.tsx +70 -0
  667. package/src/app/(main)/chat/@session/features/SessionListContent/Modals/RenameGroupModal.tsx +59 -0
  668. package/src/app/(main)/chat/@session/features/SessionListContent/SearchMode.tsx +21 -0
  669. package/src/app/(main)/chat/@session/features/SessionListContent/index.tsx +18 -0
  670. package/src/app/(main)/chat/@session/features/SessionListContent/useSwitchSession.ts +26 -0
  671. package/src/app/(main)/chat/@session/features/SessionSearchBar.tsx +37 -0
  672. package/src/app/(main)/chat/@session/features/SkeletonList.tsx +51 -0
  673. package/src/app/(main)/chat/_layout/Desktop/SessionPanel.tsx +75 -0
  674. package/src/app/(main)/chat/_layout/Desktop/index.tsx +31 -0
  675. package/src/app/(main)/chat/_layout/Mobile.tsx +49 -0
  676. package/src/app/(main)/chat/_layout/type.ts +6 -0
  677. package/src/app/(main)/chat/error.tsx +5 -0
  678. package/src/app/(main)/chat/features/Migration/ExportConfigButton.tsx +33 -0
  679. package/src/app/(main)/chat/features/Migration/Failed.tsx +118 -0
  680. package/src/app/(main)/chat/features/Migration/Modal.tsx +80 -0
  681. package/src/app/(main)/chat/features/Migration/Start.tsx +106 -0
  682. package/src/app/(main)/chat/features/Migration/UpgradeButton.tsx +74 -0
  683. package/src/app/(main)/chat/features/Migration/const.ts +15 -0
  684. package/src/app/(main)/chat/features/Migration/index.tsx +39 -0
  685. package/src/app/(main)/chat/features/PageTitle/index.tsx +17 -0
  686. package/src/app/(main)/chat/layout.ts +11 -0
  687. package/src/app/(main)/chat/loading.tsx +3 -0
  688. package/src/app/(main)/chat/not-found.tsx +3 -0
  689. package/src/app/(main)/chat/settings/_layout/Desktop/Header.tsx +26 -0
  690. package/src/app/(main)/chat/settings/_layout/Desktop/index.tsx +21 -0
  691. package/src/app/(main)/chat/settings/_layout/Mobile/Header.tsx +27 -0
  692. package/src/app/(main)/chat/settings/_layout/Mobile/index.tsx +19 -0
  693. package/src/app/(main)/chat/settings/error.tsx +5 -0
  694. package/src/app/(main)/chat/settings/features/EditPage.tsx +40 -0
  695. package/src/app/(main)/chat/settings/features/HeaderContent.tsx +70 -0
  696. package/src/app/(main)/chat/settings/features/SubmitAgentButton/SubmitAgentModal.tsx +98 -0
  697. package/src/app/(main)/chat/settings/features/SubmitAgentButton/index.tsx +36 -0
  698. package/src/app/(main)/chat/settings/features/SubmitAgentButton/style.ts +46 -0
  699. package/src/app/(main)/chat/settings/layout.tsx +21 -0
  700. package/src/app/(main)/chat/settings/loading.tsx +3 -0
  701. package/src/app/(main)/chat/settings/modal/page.tsx +23 -0
  702. package/src/app/(main)/chat/settings/not-found.tsx +3 -0
  703. package/src/app/(main)/chat/settings/page.tsx +7 -0
  704. package/src/app/(main)/error.tsx +5 -0
  705. package/src/app/(main)/layout.tsx +11 -0
  706. package/src/app/(main)/market/@detail/default.tsx +12 -0
  707. package/src/app/(main)/market/@detail/features/AgentDetailContent.tsx +73 -0
  708. package/src/app/(main)/market/@detail/features/Banner.tsx +46 -0
  709. package/src/app/(main)/market/@detail/features/Comment.tsx +16 -0
  710. package/src/app/(main)/market/@detail/features/Header.tsx +81 -0
  711. package/src/app/(main)/market/@detail/features/Loading.tsx +63 -0
  712. package/src/app/(main)/market/@detail/features/TokenTag.tsx +26 -0
  713. package/src/app/(main)/market/@detail/features/style.ts +31 -0
  714. package/src/app/(main)/market/_layout/Desktop/DetailSidebar.tsx +84 -0
  715. package/src/app/(main)/market/_layout/Desktop/Header.tsx +28 -0
  716. package/src/app/(main)/market/_layout/Desktop/Hero.tsx +39 -0
  717. package/src/app/(main)/market/_layout/Desktop/index.tsx +46 -0
  718. package/src/app/(main)/market/_layout/Mobile/DetailModal.tsx +32 -0
  719. package/src/app/(main)/market/_layout/Mobile/Header.tsx +20 -0
  720. package/src/app/(main)/market/_layout/Mobile/index.tsx +25 -0
  721. package/src/app/(main)/market/_layout/type.ts +6 -0
  722. package/src/app/(main)/market/features/AgentCard/AgentCardBanner.tsx +59 -0
  723. package/src/app/(main)/market/features/AgentCard/index.tsx +139 -0
  724. package/src/app/(main)/market/features/AgentList.tsx +103 -0
  725. package/src/app/(main)/market/features/AgentSearchBar.tsx +42 -0
  726. package/src/app/(main)/market/features/ShareAgentButton/Inner.tsx +54 -0
  727. package/src/app/(main)/market/features/ShareAgentButton/index.tsx +50 -0
  728. package/src/app/(main)/market/features/TagList.tsx +69 -0
  729. package/src/app/(main)/market/layout.tsx +11 -0
  730. package/src/app/(main)/market/loading.tsx +15 -0
  731. package/src/app/(main)/market/page.tsx +44 -0
  732. package/src/app/(main)/not-found.tsx +3 -0
  733. package/src/app/(main)/profile/[[...slugs]]/Client.tsx +74 -0
  734. package/src/app/(main)/profile/[[...slugs]]/page.tsx +21 -0
  735. package/src/app/(main)/profile/_layout/Mobile/Header.tsx +26 -0
  736. package/src/app/(main)/profile/_layout/Mobile/index.tsx +16 -0
  737. package/src/app/(main)/profile/layout.tsx +20 -0
  738. package/src/app/(main)/profile/loading.tsx +23 -0
  739. package/src/app/(main)/settings/@category/default.tsx +15 -0
  740. package/src/app/(main)/settings/@category/features/CategoryContent.tsx +37 -0
  741. package/src/app/(main)/settings/@category/features/UpgradeAlert.tsx +38 -0
  742. package/src/app/(main)/settings/_layout/Desktop/Header.tsx +85 -0
  743. package/src/app/(main)/settings/_layout/Desktop/SideBar.tsx +59 -0
  744. package/src/app/(main)/settings/_layout/Desktop/index.tsx +54 -0
  745. package/src/app/(main)/settings/_layout/Mobile/Header.tsx +43 -0
  746. package/src/app/(main)/settings/_layout/Mobile/index.tsx +18 -0
  747. package/src/app/(main)/settings/_layout/type.ts +6 -0
  748. package/src/app/(main)/settings/about/features/AboutList.tsx +27 -0
  749. package/src/app/(main)/settings/about/features/Analytics.tsx +42 -0
  750. package/src/app/(main)/settings/about/features/ItemCard.tsx +45 -0
  751. package/src/app/(main)/settings/about/features/ItemLink.tsx +32 -0
  752. package/src/app/(main)/settings/about/features/Version.tsx +79 -0
  753. package/src/app/(main)/settings/about/index.tsx +139 -0
  754. package/src/app/(main)/settings/about/page.tsx +20 -0
  755. package/src/app/(main)/settings/agent/index.tsx +33 -0
  756. package/src/app/(main)/settings/agent/page.tsx +12 -0
  757. package/src/app/(main)/settings/common/features/Common.tsx +171 -0
  758. package/src/app/(main)/settings/common/features/Theme/ThemeSwatches/ThemeSwatchesNeutral.tsx +33 -0
  759. package/src/app/(main)/settings/common/features/Theme/ThemeSwatches/ThemeSwatchesPrimary.tsx +33 -0
  760. package/src/app/(main)/settings/common/features/Theme/index.tsx +148 -0
  761. package/src/app/(main)/settings/common/index.tsx +15 -0
  762. package/src/app/(main)/settings/common/page.tsx +13 -0
  763. package/src/app/(main)/settings/error.tsx +5 -0
  764. package/src/app/(main)/settings/features/UpgradeAlert.tsx +42 -0
  765. package/src/app/(main)/settings/hooks/useCategory.tsx +94 -0
  766. package/src/app/(main)/settings/hooks/useSyncSettings.ts +23 -0
  767. package/src/app/(main)/settings/layout.ts +11 -0
  768. package/src/app/(main)/settings/llm/ProviderList/Azure/index.tsx +107 -0
  769. package/src/app/(main)/settings/llm/ProviderList/Bedrock/index.tsx +68 -0
  770. package/src/app/(main)/settings/llm/ProviderList/Ollama/Checker.tsx +73 -0
  771. package/src/app/(main)/settings/llm/ProviderList/Ollama/index.tsx +29 -0
  772. package/src/app/(main)/settings/llm/ProviderList/OpenAI/index.tsx +20 -0
  773. package/src/app/(main)/settings/llm/ProviderList/providers.tsx +183 -0
  774. package/src/app/(main)/settings/llm/components/Checker.tsx +113 -0
  775. package/src/app/(main)/settings/llm/components/ProviderConfig/index.tsx +295 -0
  776. package/src/app/(main)/settings/llm/components/ProviderModelList/CustomModelOption.tsx +93 -0
  777. package/src/app/(main)/settings/llm/components/ProviderModelList/ModelConfigModal/Form.tsx +98 -0
  778. package/src/app/(main)/settings/llm/components/ProviderModelList/ModelConfigModal/MaxTokenSlider.tsx +103 -0
  779. package/src/app/(main)/settings/llm/components/ProviderModelList/ModelConfigModal/index.tsx +78 -0
  780. package/src/app/(main)/settings/llm/components/ProviderModelList/ModelFetcher.tsx +86 -0
  781. package/src/app/(main)/settings/llm/components/ProviderModelList/Option.tsx +66 -0
  782. package/src/app/(main)/settings/llm/components/ProviderModelList/index.tsx +147 -0
  783. package/src/app/(main)/settings/llm/const.ts +20 -0
  784. package/src/app/(main)/settings/llm/features/Footer.tsx +35 -0
  785. package/src/app/(main)/settings/llm/index.tsx +24 -0
  786. package/src/app/(main)/settings/llm/page.tsx +23 -0
  787. package/src/app/(main)/settings/llm/type.ts +5 -0
  788. package/src/app/(main)/settings/loading.tsx +9 -0
  789. package/src/app/(main)/settings/modal/page.tsx +27 -0
  790. package/src/app/(main)/settings/not-found.tsx +3 -0
  791. package/src/app/(main)/settings/sync/features/Alert.tsx +39 -0
  792. package/src/app/(main)/settings/sync/features/DeviceInfo/Card.tsx +42 -0
  793. package/src/app/(main)/settings/sync/features/DeviceInfo/DeviceName.tsx +63 -0
  794. package/src/app/(main)/settings/sync/features/DeviceInfo/SystemIcon.tsx +29 -0
  795. package/src/app/(main)/settings/sync/features/DeviceInfo/index.tsx +103 -0
  796. package/src/app/(main)/settings/sync/features/WebRTC/ChannelNameInput.tsx +46 -0
  797. package/src/app/(main)/settings/sync/features/WebRTC/SyncSwitch/index.css +237 -0
  798. package/src/app/(main)/settings/sync/features/WebRTC/SyncSwitch/index.tsx +79 -0
  799. package/src/app/(main)/settings/sync/features/WebRTC/generateRandomRoomName.ts +4 -0
  800. package/src/app/(main)/settings/sync/features/WebRTC/index.tsx +98 -0
  801. package/src/app/(main)/settings/sync/index.tsx +17 -0
  802. package/src/app/(main)/settings/sync/page.tsx +26 -0
  803. package/src/app/(main)/settings/system-agent/features/createForm.tsx +59 -0
  804. package/src/app/(main)/settings/system-agent/features/useSync.ts +23 -0
  805. package/src/app/(main)/settings/system-agent/index.tsx +15 -0
  806. package/src/app/(main)/settings/system-agent/page.tsx +14 -0
  807. package/src/app/(main)/settings/tts/features/OpenAI.tsx +54 -0
  808. package/src/app/(main)/settings/tts/features/STT.tsx +58 -0
  809. package/src/app/(main)/settings/tts/features/const.ts +30 -0
  810. package/src/app/(main)/settings/tts/index.tsx +15 -0
  811. package/src/app/(main)/settings/tts/page.tsx +12 -0
  812. package/src/app/(main)/welcome/_layout/Desktop.tsx +41 -0
  813. package/src/app/(main)/welcome/_layout/Mobile.tsx +12 -0
  814. package/src/app/(main)/welcome/features/Actions.tsx +39 -0
  815. package/src/app/(main)/welcome/features/Hero.tsx +63 -0
  816. package/src/app/(main)/welcome/features/Logo.tsx +30 -0
  817. package/src/app/(main)/welcome/layout.tsx +10 -0
  818. package/src/app/(main)/welcome/page.tsx +41 -0
  819. package/src/app/@modal/(.)settings/modal/index.tsx +45 -0
  820. package/src/app/@modal/(.)settings/modal/layout.tsx +44 -0
  821. package/src/app/@modal/(.)settings/modal/loading.tsx +5 -0
  822. package/src/app/@modal/(.)settings/modal/page.tsx +19 -0
  823. package/src/app/@modal/_layout/SettingModalLayout.tsx +71 -0
  824. package/src/app/@modal/chat/(.)settings/modal/features/CategoryContent.tsx +37 -0
  825. package/src/app/@modal/chat/(.)settings/modal/features/useCategory.tsx +54 -0
  826. package/src/app/@modal/chat/(.)settings/modal/layout.tsx +58 -0
  827. package/src/app/@modal/chat/(.)settings/modal/loading.tsx +5 -0
  828. package/src/app/@modal/chat/(.)settings/modal/page.tsx +55 -0
  829. package/src/app/@modal/default.tsx +3 -0
  830. package/src/app/@modal/error.tsx +5 -0
  831. package/src/app/@modal/layout.tsx +34 -0
  832. package/src/app/@modal/loading.tsx +5 -0
  833. package/src/app/api/auth/[...nextauth]/route.ts +3 -0
  834. package/src/app/api/chat/[provider]/route.test.ts +222 -0
  835. package/src/app/api/chat/[provider]/route.ts +56 -0
  836. package/src/app/api/chat/agentRuntime.test.ts +350 -0
  837. package/src/app/api/chat/agentRuntime.ts +254 -0
  838. package/src/app/api/chat/anthropic/route.test.ts +28 -0
  839. package/src/app/api/chat/anthropic/route.ts +33 -0
  840. package/src/app/api/chat/apiKeyManager.test.ts +131 -0
  841. package/src/app/api/chat/apiKeyManager.ts +46 -0
  842. package/src/app/api/chat/google/route.test.ts +28 -0
  843. package/src/app/api/chat/google/route.ts +20 -0
  844. package/src/app/api/chat/minimax/route.test.ts +24 -0
  845. package/src/app/api/chat/minimax/route.ts +5 -0
  846. package/src/app/api/chat/models/[provider]/route.ts +45 -0
  847. package/src/app/api/config.test.ts +43 -0
  848. package/src/app/api/config.ts +14 -0
  849. package/src/app/api/errorResponse.test.ts +100 -0
  850. package/src/app/api/errorResponse.ts +54 -0
  851. package/src/app/api/market/AgentMarket.test.ts +55 -0
  852. package/src/app/api/market/AgentMarket.ts +25 -0
  853. package/src/app/api/market/[id]/route.ts +22 -0
  854. package/src/app/api/market/route.ts +23 -0
  855. package/src/app/api/middleware/auth/index.test.ts +77 -0
  856. package/src/app/api/middleware/auth/index.ts +62 -0
  857. package/src/app/api/middleware/auth/utils.test.ts +150 -0
  858. package/src/app/api/middleware/auth/utils.ts +83 -0
  859. package/src/app/api/openai/createBizOpenAI/auth.test.ts +53 -0
  860. package/src/app/api/openai/createBizOpenAI/auth.ts +31 -0
  861. package/src/app/api/openai/createBizOpenAI/createAzureOpenai.ts +33 -0
  862. package/src/app/api/openai/createBizOpenAI/createOpenai.ts +17 -0
  863. package/src/app/api/openai/createBizOpenAI/index.ts +37 -0
  864. package/src/app/api/openai/stt/route.ts +31 -0
  865. package/src/app/api/openai/tts/route.ts +19 -0
  866. package/src/app/api/plugin/gateway/route.ts +82 -0
  867. package/src/app/api/plugin/gateway/settings.test.ts +105 -0
  868. package/src/app/api/plugin/gateway/settings.ts +29 -0
  869. package/src/app/api/plugin/store/Store.test.ts +26 -0
  870. package/src/app/api/plugin/store/Store.ts +19 -0
  871. package/src/app/api/plugin/store/route.ts +23 -0
  872. package/src/app/api/proxy/route.ts +34 -0
  873. package/src/app/api/text-to-image/[provider]/route.ts +61 -0
  874. package/src/app/api/trace/route.ts +40 -0
  875. package/src/app/api/tts/edge-speech/route.ts +9 -0
  876. package/src/app/api/tts/microsoft-speech/route.ts +9 -0
  877. package/src/app/api/webhooks/clerk/__tests__/fixtures/createUser.json +73 -0
  878. package/src/app/api/webhooks/clerk/route.ts +79 -0
  879. package/src/app/api/webhooks/clerk/validateRequest.ts +22 -0
  880. package/src/app/error.tsx +5 -0
  881. package/src/app/global-error.tsx +20 -0
  882. package/src/app/layout.tsx +65 -0
  883. package/src/app/metadata.ts +59 -0
  884. package/src/app/not-found.tsx +3 -0
  885. package/src/app/page.tsx +23 -0
  886. package/src/app/trpc/edge/[trpc]/route.ts +28 -0
  887. package/src/app/trpc/lambda/[trpc]/route.ts +26 -0
  888. package/src/app/trpc/tools/[trpc]/route.ts +26 -0
  889. package/src/chains/__tests__/langDetect.test.ts +51 -0
  890. package/src/chains/__tests__/pickEmoji.test.ts +47 -0
  891. package/src/chains/__tests__/summaryAgentName.test.ts +57 -0
  892. package/src/chains/__tests__/summaryDescription.test.ts +83 -0
  893. package/src/chains/__tests__/summaryTags.test.ts +54 -0
  894. package/src/chains/__tests__/summaryTitle.test.ts +54 -0
  895. package/src/chains/__tests__/translate.test.ts +28 -0
  896. package/src/chains/langDetect.ts +31 -0
  897. package/src/chains/pickEmoji.ts +31 -0
  898. package/src/chains/summaryAgentName.ts +35 -0
  899. package/src/chains/summaryDescription.ts +49 -0
  900. package/src/chains/summaryTags.ts +28 -0
  901. package/src/chains/summaryTitle.ts +21 -0
  902. package/src/chains/translate.ts +17 -0
  903. package/src/components/404/index.tsx +43 -0
  904. package/src/components/Analytics/Clarity.tsx +28 -0
  905. package/src/components/Analytics/Google.tsx +7 -0
  906. package/src/components/Analytics/Plausible.tsx +16 -0
  907. package/src/components/Analytics/Posthog.tsx +22 -0
  908. package/src/components/Analytics/Umami.tsx +16 -0
  909. package/src/components/Analytics/Vercel.tsx +8 -0
  910. package/src/components/Analytics/index.tsx +44 -0
  911. package/src/components/AntdStaticMethods/index.test.tsx +43 -0
  912. package/src/components/AntdStaticMethods/index.tsx +20 -0
  913. package/src/components/BrandWatermark/index.tsx +39 -0
  914. package/src/components/BrowserIcon/components/Brave.tsx +56 -0
  915. package/src/components/BrowserIcon/components/Chrome.tsx +14 -0
  916. package/src/components/BrowserIcon/components/Chromium.tsx +14 -0
  917. package/src/components/BrowserIcon/components/Edge.tsx +36 -0
  918. package/src/components/BrowserIcon/components/Firefox.tsx +38 -0
  919. package/src/components/BrowserIcon/components/Opera.tsx +19 -0
  920. package/src/components/BrowserIcon/components/Safari.tsx +23 -0
  921. package/src/components/BrowserIcon/components/Samsung.tsx +21 -0
  922. package/src/components/BrowserIcon/index.tsx +50 -0
  923. package/src/components/BrowserIcon/types.ts +8 -0
  924. package/src/components/Cell/Divider.tsx +22 -0
  925. package/src/components/Cell/index.tsx +53 -0
  926. package/src/components/CircleLoading/index.tsx +21 -0
  927. package/src/components/DataStyleModal/index.tsx +64 -0
  928. package/src/components/Error/index.tsx +58 -0
  929. package/src/components/Error/sentryCaptureException.ts +9 -0
  930. package/src/components/FetchErrorNotification/Description.tsx +48 -0
  931. package/src/components/FetchErrorNotification/index.tsx +15 -0
  932. package/src/components/FileList/EditableFileList.tsx +47 -0
  933. package/src/components/FileList/FileListViewer.tsx +19 -0
  934. package/src/components/FileList/index.ts +2 -0
  935. package/src/components/FileList/type.tsx +7 -0
  936. package/src/components/FullscreenLoading/index.tsx +21 -0
  937. package/src/components/GalleyGrid/Grid.tsx +36 -0
  938. package/src/components/GalleyGrid/index.tsx +58 -0
  939. package/src/components/GalleyGrid/style.ts +24 -0
  940. package/src/components/GuideModal/index.tsx +77 -0
  941. package/src/components/GuideVideo/index.tsx +30 -0
  942. package/src/components/HotKeys/index.tsx +77 -0
  943. package/src/components/ImageItem/index.tsx +75 -0
  944. package/src/components/ImageItem/style.ts +1 -0
  945. package/src/components/ManifestPreviewer/index.tsx +30 -0
  946. package/src/components/Menu/index.tsx +97 -0
  947. package/src/components/ModelIcon/index.tsx +99 -0
  948. package/src/components/ModelProviderIcon/index.tsx +128 -0
  949. package/src/components/ModelSelect/index.tsx +163 -0
  950. package/src/components/ModelTag/ModelIcon.tsx +93 -0
  951. package/src/components/ModelTag/index.tsx +13 -0
  952. package/src/components/Notification/index.tsx +95 -0
  953. package/src/components/PageTitle/index.tsx +11 -0
  954. package/src/components/SafeSpacing/index.tsx +27 -0
  955. package/src/components/SidebarHeader/index.tsx +38 -0
  956. package/src/components/SkeletonLoading/index.tsx +21 -0
  957. package/src/components/StopLoading.tsx +38 -0
  958. package/src/components/StructuredData/index.tsx +12 -0
  959. package/src/components/client/ClientResponsiveContent/index.tsx +32 -0
  960. package/src/components/client/ClientResponsiveLayout.tsx +32 -0
  961. package/src/components/server/MobileNavLayout.tsx +62 -0
  962. package/src/components/server/ServerLayout.tsx +19 -0
  963. package/src/config/__tests__/analytics.test.ts +47 -0
  964. package/src/config/__tests__/app.test.ts +48 -0
  965. package/src/config/__tests__/client.test.ts +40 -0
  966. package/src/config/analytics.ts +62 -0
  967. package/src/config/app.ts +60 -0
  968. package/src/config/auth.ts +129 -0
  969. package/src/config/db.ts +28 -0
  970. package/src/config/debug.ts +22 -0
  971. package/src/config/featureFlags/index.ts +31 -0
  972. package/src/config/featureFlags/schema.test.ts +59 -0
  973. package/src/config/featureFlags/schema.ts +57 -0
  974. package/src/config/featureFlags/utils/parser.test.ts +88 -0
  975. package/src/config/featureFlags/utils/parser.ts +32 -0
  976. package/src/config/file.ts +34 -0
  977. package/src/config/langfuse.ts +23 -0
  978. package/src/config/llm.ts +168 -0
  979. package/src/config/modelProviders/anthropic.ts +80 -0
  980. package/src/config/modelProviders/azure.ts +45 -0
  981. package/src/config/modelProviders/baichuan.ts +55 -0
  982. package/src/config/modelProviders/bedrock.ts +105 -0
  983. package/src/config/modelProviders/deepseek.ts +26 -0
  984. package/src/config/modelProviders/google.ts +91 -0
  985. package/src/config/modelProviders/groq.ts +48 -0
  986. package/src/config/modelProviders/index.ts +88 -0
  987. package/src/config/modelProviders/minimax.ts +50 -0
  988. package/src/config/modelProviders/mistral.ts +49 -0
  989. package/src/config/modelProviders/moonshot.ts +33 -0
  990. package/src/config/modelProviders/ollama.ts +190 -0
  991. package/src/config/modelProviders/openai.ts +142 -0
  992. package/src/config/modelProviders/openrouter.ts +125 -0
  993. package/src/config/modelProviders/perplexity.ts +52 -0
  994. package/src/config/modelProviders/qwen.ts +58 -0
  995. package/src/config/modelProviders/stepfun.ts +41 -0
  996. package/src/config/modelProviders/togetherai.ts +79 -0
  997. package/src/config/modelProviders/zeroone.ts +74 -0
  998. package/src/config/modelProviders/zhipu.ts +64 -0
  999. package/src/const/auth.ts +45 -0
  1000. package/src/const/fetch.ts +27 -1
  1001. package/src/const/guide.ts +86 -0
  1002. package/src/const/hotkeys.ts +5 -0
  1003. package/src/const/layoutTokens.test.ts +11 -0
  1004. package/src/const/layoutTokens.ts +25 -0
  1005. package/src/const/locale.ts +12 -0
  1006. package/src/const/market.ts +15 -0
  1007. package/src/const/message.ts +1 -0
  1008. package/src/const/meta.ts +8 -0
  1009. package/src/const/plugin.ts +2 -0
  1010. package/src/const/session.ts +25 -0
  1011. package/src/const/settings/agent.ts +40 -0
  1012. package/src/const/settings/common.ts +7 -0
  1013. package/src/const/settings/index.ts +28 -0
  1014. package/src/const/settings/llm.ts +106 -0
  1015. package/src/const/settings/sync.ts +5 -0
  1016. package/src/const/settings/systemAgent.ts +14 -0
  1017. package/src/const/settings/tool.ts +5 -0
  1018. package/src/const/settings/tts.ts +10 -0
  1019. package/src/const/theme.ts +5 -0
  1020. package/src/const/trace.ts +60 -0
  1021. package/src/const/url.ts +63 -0
  1022. package/src/const/user.ts +10 -0
  1023. package/src/const/version.ts +6 -0
  1024. package/src/database/client/core/__tests__/db-upgrade.test.ts +42 -0
  1025. package/src/database/client/core/__tests__/db.test.ts +79 -0
  1026. package/src/database/client/core/__tests__/model.test.ts +55 -0
  1027. package/src/database/client/core/db.ts +246 -0
  1028. package/src/database/client/core/index.ts +3 -0
  1029. package/src/database/client/core/migrations/migrateSettingsToUser/fixtures/input.json +55 -0
  1030. package/src/database/client/core/migrations/migrateSettingsToUser/fixtures/output.json +60 -0
  1031. package/src/database/client/core/migrations/migrateSettingsToUser/index.test.ts +14 -0
  1032. package/src/database/client/core/migrations/migrateSettingsToUser/index.ts +22 -0
  1033. package/src/database/client/core/migrations/migrateSettingsToUser/type.ts +108 -0
  1034. package/src/database/client/core/model.ts +252 -0
  1035. package/src/database/client/core/schemas.ts +88 -0
  1036. package/src/database/client/core/sync.ts +328 -0
  1037. package/src/database/client/core/types/db.ts +15 -0
  1038. package/src/database/client/models/__DEBUG.ts +124 -0
  1039. package/src/database/client/models/__tests__/file.test.ts +83 -0
  1040. package/src/database/client/models/__tests__/message.test.ts +414 -0
  1041. package/src/database/client/models/__tests__/plugin.test.ts +81 -0
  1042. package/src/database/client/models/__tests__/session.test.ts +254 -0
  1043. package/src/database/client/models/__tests__/sessionGroup.test.ts +220 -0
  1044. package/src/database/client/models/__tests__/topic.test.ts +523 -0
  1045. package/src/database/client/models/__tests__/user.test.ts +82 -0
  1046. package/src/database/client/models/file.ts +31 -0
  1047. package/src/database/client/models/message.ts +268 -0
  1048. package/src/database/client/models/plugin.ts +62 -0
  1049. package/src/database/client/models/session.ts +271 -0
  1050. package/src/database/client/models/sessionGroup.ts +90 -0
  1051. package/src/database/client/models/topic.ts +244 -0
  1052. package/src/database/client/models/user.ts +69 -0
  1053. package/src/database/client/schemas/files.ts +39 -0
  1054. package/src/database/client/schemas/message.ts +50 -0
  1055. package/src/database/client/schemas/plugin.ts +12 -0
  1056. package/src/database/client/schemas/session.ts +51 -0
  1057. package/src/database/client/schemas/sessionGroup.ts +8 -0
  1058. package/src/database/client/schemas/topic.ts +12 -0
  1059. package/src/database/client/schemas/user.ts +40 -0
  1060. package/src/database/server/core/db.ts +44 -0
  1061. package/src/database/server/core/dbForTest.ts +45 -0
  1062. package/src/database/server/index.ts +1 -0
  1063. package/src/database/server/migrations/0000_init.sql +439 -0
  1064. package/src/database/server/migrations/0001_add_client_id.sql +9 -0
  1065. package/src/database/server/migrations/0002_amusing_puma.sql +9 -0
  1066. package/src/database/server/migrations/0003_naive_echo.sql +46 -0
  1067. package/src/database/server/migrations/meta/0000_snapshot.json +1583 -0
  1068. package/src/database/server/migrations/meta/0001_snapshot.json +1636 -0
  1069. package/src/database/server/migrations/meta/0002_snapshot.json +1630 -0
  1070. package/src/database/server/migrations/meta/0003_snapshot.json +1823 -0
  1071. package/src/database/server/migrations/meta/_journal.json +34 -0
  1072. package/src/database/server/models/__tests__/file.test.ts +140 -0
  1073. package/src/database/server/models/__tests__/message.test.ts +917 -0
  1074. package/src/database/server/models/__tests__/plugin.test.ts +172 -0
  1075. package/src/database/server/models/__tests__/session.test.ts +595 -0
  1076. package/src/database/server/models/__tests__/topic.test.ts +623 -0
  1077. package/src/database/server/models/__tests__/user.test.ts +173 -0
  1078. package/src/database/server/models/_template.ts +44 -0
  1079. package/src/database/server/models/file.ts +51 -0
  1080. package/src/database/server/models/message.ts +388 -0
  1081. package/src/database/server/models/plugin.ts +63 -0
  1082. package/src/database/server/models/session.ts +291 -0
  1083. package/src/database/server/models/sessionGroup.ts +69 -0
  1084. package/src/database/server/models/topic.ts +265 -0
  1085. package/src/database/server/models/user.ts +144 -0
  1086. package/src/database/server/schemas/_id.ts +15 -0
  1087. package/src/database/server/schemas/lobechat.ts +655 -0
  1088. package/src/database/server/utils/idGenerator.test.ts +39 -0
  1089. package/src/database/server/utils/idGenerator.ts +26 -0
  1090. package/src/features/AgentInfo/index.tsx +70 -0
  1091. package/src/features/AgentSetting/AgentChat/index.tsx +142 -0
  1092. package/src/features/AgentSetting/AgentMeta/AutoGenerateAvatar.tsx +59 -0
  1093. package/src/features/AgentSetting/AgentMeta/AutoGenerateInput.tsx +45 -0
  1094. package/src/features/AgentSetting/AgentMeta/AutoGenerateSelect.tsx +50 -0
  1095. package/src/features/AgentSetting/AgentMeta/BackgroundSwatches.tsx +27 -0
  1096. package/src/features/AgentSetting/AgentMeta/index.tsx +132 -0
  1097. package/src/features/AgentSetting/AgentModal/ModelSelect.tsx +20 -0
  1098. package/src/features/AgentSetting/AgentModal/index.tsx +95 -0
  1099. package/src/features/AgentSetting/AgentPlugin/AddPluginButton.tsx +49 -0
  1100. package/src/features/AgentSetting/AgentPlugin/LoadingList.tsx +48 -0
  1101. package/src/features/AgentSetting/AgentPlugin/LocalPluginItem.tsx +42 -0
  1102. package/src/features/AgentSetting/AgentPlugin/PluginAction/index.tsx +36 -0
  1103. package/src/features/AgentSetting/AgentPlugin/index.tsx +163 -0
  1104. package/src/features/AgentSetting/AgentPrompt/TokenTag.tsx +39 -0
  1105. package/src/features/AgentSetting/AgentPrompt/index.tsx +128 -0
  1106. package/src/features/AgentSetting/AgentSettings.tsx +24 -0
  1107. package/src/features/AgentSetting/AgentSettingsStore.tsx +14 -0
  1108. package/src/features/AgentSetting/AgentTTS/SelectWithTTSPreview.tsx +120 -0
  1109. package/src/features/AgentSetting/AgentTTS/index.tsx +122 -0
  1110. package/src/features/AgentSetting/AgentTTS/options.ts +16 -0
  1111. package/src/features/AgentSetting/StoreUpdater.tsx +32 -0
  1112. package/src/features/AgentSetting/hooks/useAgentSettings.ts +31 -0
  1113. package/src/features/AgentSetting/index.tsx +3 -0
  1114. package/src/features/AgentSetting/store/action.ts +305 -0
  1115. package/src/features/AgentSetting/store/index.ts +16 -0
  1116. package/src/features/AgentSetting/store/initialState.ts +28 -0
  1117. package/src/features/AgentSetting/store/reducers/config.ts +54 -0
  1118. package/src/features/AgentSetting/store/reducers/meta.ts +21 -0
  1119. package/src/features/AgentSetting/store/selectors.ts +11 -0
  1120. package/src/features/AgentSetting/useSyncAgemtSettings.ts +14 -0
  1121. package/src/features/AvatarWithUpload/index.tsx +30 -17
  1122. package/src/features/ChatInput/ActionBar/Clear.tsx +49 -0
  1123. package/src/features/ChatInput/ActionBar/FileUpload.tsx +69 -0
  1124. package/src/features/ChatInput/ActionBar/History.tsx +70 -0
  1125. package/src/features/ChatInput/ActionBar/ModelSwitch.tsx +20 -0
  1126. package/src/features/ChatInput/ActionBar/Temperature.tsx +49 -0
  1127. package/src/features/ChatInput/ActionBar/Token/TokenProgress.tsx +80 -0
  1128. package/src/features/ChatInput/ActionBar/Token/TokenTag.tsx +149 -0
  1129. package/src/features/ChatInput/ActionBar/Token/index.tsx +18 -0
  1130. package/src/features/ChatInput/ActionBar/Tools/Dropdown.tsx +145 -0
  1131. package/src/features/ChatInput/ActionBar/Tools/ToolItem.tsx +45 -0
  1132. package/src/features/ChatInput/ActionBar/Tools/index.tsx +33 -0
  1133. package/src/features/ChatInput/ActionBar/config.ts +33 -0
  1134. package/src/features/ChatInput/ActionBar/index.tsx +58 -0
  1135. package/src/features/ChatInput/STT/browser.tsx +118 -0
  1136. package/src/features/ChatInput/STT/common.tsx +120 -0
  1137. package/src/features/ChatInput/STT/index.tsx +20 -0
  1138. package/src/features/ChatInput/STT/openai.tsx +129 -0
  1139. package/src/features/ChatInput/Topic/index.tsx +41 -0
  1140. package/src/features/ChatInput/useChatInput.ts +45 -0
  1141. package/src/features/ChatInput/useSend.ts +44 -0
  1142. package/src/features/Conversation/Actions/Assistant.tsx +36 -0
  1143. package/src/features/Conversation/Actions/Error.tsx +11 -0
  1144. package/src/features/Conversation/Actions/Fallback.tsx +13 -0
  1145. package/src/features/Conversation/Actions/Tool.tsx +28 -0
  1146. package/src/features/Conversation/Actions/User.tsx +20 -0
  1147. package/src/features/Conversation/Actions/customAction.ts +37 -0
  1148. package/src/features/Conversation/Actions/index.ts +79 -0
  1149. package/src/features/Conversation/Error/APIKeyForm/Bedrock.tsx +80 -0
  1150. package/src/features/Conversation/Error/APIKeyForm/ProviderApiKeyForm.tsx +79 -0
  1151. package/src/features/Conversation/Error/APIKeyForm/ProviderAvatar.tsx +89 -0
  1152. package/src/features/Conversation/Error/APIKeyForm/index.tsx +96 -0
  1153. package/src/features/Conversation/Error/AccessCodeForm.tsx +63 -0
  1154. package/src/features/Conversation/Error/ClerkLogin/index.tsx +47 -0
  1155. package/src/features/Conversation/Error/ErrorJsonViewer.tsx +26 -0
  1156. package/src/features/Conversation/Error/InvalidAPIKey.tsx +16 -0
  1157. package/src/features/Conversation/Error/InvalidAccessCode.tsx +79 -0
  1158. package/src/features/Conversation/Error/OAuthForm.tsx +97 -0
  1159. package/src/features/Conversation/Error/OllamaBizError/InvalidOllamaModel/index.tsx +154 -0
  1160. package/src/features/Conversation/Error/OllamaBizError/InvalidOllamaModel/useDownloadMonitor.ts +29 -0
  1161. package/src/features/Conversation/Error/OllamaBizError/SetupGuide.tsx +221 -0
  1162. package/src/features/Conversation/Error/OllamaBizError/index.tsx +47 -0
  1163. package/src/features/Conversation/Error/OpenAiBizError.tsx +29 -0
  1164. package/src/features/Conversation/Error/PluginSettings.tsx +66 -0
  1165. package/src/features/Conversation/Error/index.tsx +117 -0
  1166. package/src/features/Conversation/Error/style.tsx +76 -0
  1167. package/src/features/Conversation/Extras/Assistant.test.tsx +86 -0
  1168. package/src/features/Conversation/Extras/Assistant.tsx +51 -0
  1169. package/src/features/Conversation/Extras/ExtraContainer.tsx +13 -0
  1170. package/src/features/Conversation/Extras/TTS/FilePlayer.tsx +25 -0
  1171. package/src/features/Conversation/Extras/TTS/InitPlayer.tsx +93 -0
  1172. package/src/features/Conversation/Extras/TTS/Player.tsx +61 -0
  1173. package/src/features/Conversation/Extras/TTS/index.tsx +32 -0
  1174. package/src/features/Conversation/Extras/Translate.tsx +72 -0
  1175. package/src/features/Conversation/Extras/User.tsx +36 -0
  1176. package/src/features/Conversation/Extras/index.ts +8 -0
  1177. package/src/features/Conversation/Extras/type.ts +5 -0
  1178. package/src/features/Conversation/Messages/Assistant/ToolCalls/index.tsx +60 -0
  1179. package/src/features/Conversation/Messages/Assistant/ToolCalls/style.ts +25 -0
  1180. package/src/features/Conversation/Messages/Assistant/index.tsx +51 -0
  1181. package/src/features/Conversation/Messages/Default.tsx +19 -0
  1182. package/src/features/Conversation/Messages/Tool/Inspector/PluginResultJSON.tsx +24 -0
  1183. package/src/features/Conversation/Messages/Tool/Inspector/Settings.tsx +39 -0
  1184. package/src/features/Conversation/Messages/Tool/Inspector/index.tsx +158 -0
  1185. package/src/features/Conversation/Messages/Tool/Inspector/style.ts +26 -0
  1186. package/src/features/Conversation/Messages/Tool/index.tsx +70 -0
  1187. package/src/features/Conversation/Messages/User.tsx +23 -0
  1188. package/src/features/Conversation/Messages/components/Arguments.tsx +22 -0
  1189. package/src/features/Conversation/Messages/index.ts +38 -0
  1190. package/src/features/Conversation/components/AutoScroll.tsx +26 -0
  1191. package/src/features/Conversation/components/BackBottom/index.tsx +31 -0
  1192. package/src/features/Conversation/components/BackBottom/style.ts +36 -0
  1193. package/src/features/Conversation/components/BubblesLoading.tsx +61 -0
  1194. package/src/features/Conversation/components/ChatItem/ActionsBar.tsx +58 -0
  1195. package/src/features/Conversation/components/ChatItem/HistoryDivider.tsx +26 -0
  1196. package/src/features/Conversation/components/ChatItem/index.tsx +156 -0
  1197. package/src/features/Conversation/components/ChatList/index.tsx +21 -0
  1198. package/src/features/Conversation/components/InboxWelcome/AgentsSuggest.tsx +113 -0
  1199. package/src/features/Conversation/components/InboxWelcome/QuestionSuggest.tsx +104 -0
  1200. package/src/features/Conversation/components/InboxWelcome/index.tsx +70 -0
  1201. package/src/features/Conversation/components/OTPInput.tsx +136 -0
  1202. package/src/features/Conversation/components/SkeletonList.tsx +51 -0
  1203. package/src/features/Conversation/components/VirtualizedList/index.tsx +138 -0
  1204. package/src/features/Conversation/hooks/useChatListActionsBar.tsx +55 -0
  1205. package/src/features/Conversation/index.tsx +30 -0
  1206. package/src/features/Conversation/types/index.tsx +32 -0
  1207. package/src/features/DataImporter/Error.tsx +65 -0
  1208. package/src/features/DataImporter/FileUploading.tsx +50 -0
  1209. package/src/features/DataImporter/Loading.tsx +125 -0
  1210. package/src/features/DataImporter/SuccessResult.tsx +61 -0
  1211. package/src/features/DataImporter/index.tsx +185 -0
  1212. package/src/features/DataImporter/style.ts +17 -0
  1213. package/src/features/DebugUI/index.tsx +36 -0
  1214. package/src/features/FileList/EditableFileList.tsx +31 -0
  1215. package/src/features/FileList/FileListPreviewer.tsx +17 -0
  1216. package/src/features/FileList/index.tsx +2 -0
  1217. package/src/features/Follow/index.tsx +64 -0
  1218. package/src/features/MobileSwitchLoading/index.tsx +13 -0
  1219. package/src/features/MobileTabBar/index.tsx +61 -0
  1220. package/src/features/ModelSelect/index.tsx +69 -0
  1221. package/src/features/ModelSwitchPanel/index.tsx +113 -0
  1222. package/src/features/PWAInstall/index.tsx +72 -0
  1223. package/src/features/PluginAvatar/index.tsx +28 -0
  1224. package/src/features/PluginDetailModal/APIs.tsx +43 -0
  1225. package/src/features/PluginDetailModal/Meta.tsx +57 -0
  1226. package/src/features/PluginDetailModal/index.tsx +75 -0
  1227. package/src/features/PluginDevModal/LocalForm.tsx +124 -0
  1228. package/src/features/PluginDevModal/PluginPreview.tsx +36 -0
  1229. package/src/features/PluginDevModal/UrlManifestForm.tsx +134 -0
  1230. package/src/features/PluginDevModal/index.tsx +172 -0
  1231. package/src/features/PluginSettings/PluginSettingRender.tsx +86 -0
  1232. package/src/features/PluginSettings/index.tsx +87 -0
  1233. package/src/features/PluginStore/AddPluginButton.tsx +47 -0
  1234. package/src/features/PluginStore/InstalledPluginList.tsx +61 -0
  1235. package/src/features/PluginStore/Loading.tsx +13 -0
  1236. package/src/features/PluginStore/OnlineList.tsx +89 -0
  1237. package/src/features/PluginStore/PluginItem/Action.tsx +116 -0
  1238. package/src/features/PluginStore/PluginItem/EditCustomPlugin.tsx +55 -0
  1239. package/src/features/PluginStore/PluginItem/PluginTag.tsx +58 -0
  1240. package/src/features/PluginStore/PluginItem/index.tsx +82 -0
  1241. package/src/features/PluginStore/index.tsx +57 -0
  1242. package/src/features/PluginsUI/Render/BuiltinType/index.test.tsx +53 -0
  1243. package/src/features/PluginsUI/Render/BuiltinType/index.tsx +44 -0
  1244. package/src/features/PluginsUI/Render/DefaultType/IFrameRender/index.tsx +61 -0
  1245. package/src/features/PluginsUI/Render/DefaultType/SystemJsRender/index.tsx +40 -0
  1246. package/src/features/PluginsUI/Render/DefaultType/SystemJsRender/utils.ts +26 -0
  1247. package/src/features/PluginsUI/Render/DefaultType/index.tsx +53 -0
  1248. package/src/features/PluginsUI/Render/Loading.tsx +60 -0
  1249. package/src/features/PluginsUI/Render/MarkdownType/index.tsx +25 -0
  1250. package/src/features/PluginsUI/Render/StandaloneType/Iframe.tsx +163 -0
  1251. package/src/features/PluginsUI/Render/StandaloneType/index.tsx +36 -0
  1252. package/src/features/PluginsUI/Render/index.tsx +71 -0
  1253. package/src/features/PluginsUI/Render/useParseContent.ts +15 -0
  1254. package/src/features/PluginsUI/Render/utils/iframeOnReady.test.ts +75 -0
  1255. package/src/features/PluginsUI/Render/utils/iframeOnReady.ts +25 -0
  1256. package/src/features/PluginsUI/Render/utils/listenToPlugin.test.ts +164 -0
  1257. package/src/features/PluginsUI/Render/utils/listenToPlugin.ts +98 -0
  1258. package/src/features/PluginsUI/Render/utils/pluginSettings.test.ts +53 -0
  1259. package/src/features/PluginsUI/Render/utils/pluginSettings.ts +17 -0
  1260. package/src/features/PluginsUI/Render/utils/pluginState.test.ts +43 -0
  1261. package/src/features/PluginsUI/Render/utils/pluginState.ts +20 -0
  1262. package/src/features/PluginsUI/Render/utils/postMessage.test.ts +64 -0
  1263. package/src/features/PluginsUI/Render/utils/postMessage.ts +28 -0
  1264. package/src/features/Setting/Footer.tsx +96 -0
  1265. package/src/features/Setting/SettingContainer.tsx +35 -0
  1266. package/src/features/SyncStatusInspector/DisableSync.tsx +79 -0
  1267. package/src/features/SyncStatusInspector/EnableSync.tsx +136 -0
  1268. package/src/features/SyncStatusInspector/EnableTag.tsx +66 -0
  1269. package/src/features/SyncStatusInspector/index.tsx +27 -0
  1270. package/src/features/User/DataStatistics.tsx +155 -0
  1271. package/src/features/User/PlanTag.tsx +45 -0
  1272. package/src/features/User/UserAvatar.tsx +75 -0
  1273. package/src/features/User/UserInfo.tsx +59 -0
  1274. package/src/features/User/UserLoginOrSignup/Community.tsx +23 -0
  1275. package/src/features/User/UserLoginOrSignup/index.tsx +1 -0
  1276. package/src/features/User/UserPanel/LangButton.tsx +57 -0
  1277. package/src/features/User/UserPanel/PanelContent.tsx +85 -0
  1278. package/src/features/User/UserPanel/ThemeButton.tsx +70 -0
  1279. package/src/features/User/UserPanel/UpgradeBadge.tsx +19 -0
  1280. package/src/features/User/UserPanel/index.tsx +43 -0
  1281. package/src/features/User/UserPanel/useMenu.tsx +239 -0
  1282. package/src/features/User/UserPanel/useNewVersion.tsx +14 -0
  1283. package/src/features/User/__tests__/PanelContent.test.tsx +155 -0
  1284. package/src/features/User/__tests__/UserAvatar.test.tsx +83 -0
  1285. package/src/features/User/__tests__/useMenu.test.tsx +146 -0
  1286. package/src/hooks/_header.ts +23 -0
  1287. package/src/hooks/useActiveSettingsKey.ts +20 -0
  1288. package/src/hooks/useActiveTabKey.ts +12 -0
  1289. package/src/hooks/useGreeting/greetingTime.ts +14 -0
  1290. package/src/hooks/useGreeting/index.ts +16 -0
  1291. package/src/hooks/useInterceptingRoutes.test.ts +70 -0
  1292. package/src/hooks/useInterceptingRoutes.ts +46 -0
  1293. package/src/hooks/useIsMobile.ts +8 -0
  1294. package/src/hooks/useIsSubSlug.ts +12 -0
  1295. package/src/hooks/usePWAInstall.test.ts +78 -0
  1296. package/src/hooks/usePWAInstall.ts +39 -0
  1297. package/src/hooks/usePlatform.test.ts +82 -0
  1298. package/src/hooks/usePlatform.ts +32 -0
  1299. package/src/hooks/useProviderName.ts +8 -0
  1300. package/src/hooks/useQuery.test.ts +19 -0
  1301. package/src/hooks/useQuery.ts +8 -0
  1302. package/src/hooks/useQueryRoute.test.ts +86 -0
  1303. package/src/hooks/useQueryRoute.ts +46 -0
  1304. package/src/hooks/useSyncData.ts +50 -0
  1305. package/src/hooks/useTTS.ts +84 -0
  1306. package/src/hooks/useTokenCount.test.ts +41 -0
  1307. package/src/hooks/useTokenCount.ts +20 -0
  1308. package/src/hooks/useYamlArguments.ts +16 -0
  1309. package/src/layout/AuthProvider/Clerk/UserUpdater.tsx +40 -0
  1310. package/src/layout/AuthProvider/Clerk/index.tsx +26 -0
  1311. package/src/layout/AuthProvider/Clerk/useAppearance.ts +123 -0
  1312. package/src/layout/AuthProvider/NextAuth/UserUpdater.tsx +35 -0
  1313. package/src/layout/AuthProvider/NextAuth/index.tsx +17 -0
  1314. package/src/layout/AuthProvider/NoAuth/index.tsx +16 -0
  1315. package/src/layout/AuthProvider/index.tsx +17 -0
  1316. package/src/layout/GlobalProvider/AppTheme.tsx +127 -0
  1317. package/src/layout/GlobalProvider/Locale.tsx +62 -0
  1318. package/src/layout/GlobalProvider/StoreInitialization.tsx +75 -0
  1319. package/src/layout/GlobalProvider/StyleRegistry.tsx +24 -0
  1320. package/src/layout/GlobalProvider/index.tsx +100 -0
  1321. package/src/libs/agent-runtime/AgentRuntime.test.ts +428 -0
  1322. package/src/libs/agent-runtime/AgentRuntime.ts +235 -0
  1323. package/src/libs/agent-runtime/BaseAI.ts +24 -0
  1324. package/src/libs/agent-runtime/anthropic/index.test.ts +477 -0
  1325. package/src/libs/agent-runtime/anthropic/index.ts +106 -0
  1326. package/src/libs/agent-runtime/azureOpenai/index.test.ts +356 -0
  1327. package/src/libs/agent-runtime/azureOpenai/index.ts +117 -0
  1328. package/src/libs/agent-runtime/baichuan/index.test.ts +255 -0
  1329. package/src/libs/agent-runtime/baichuan/index.ts +32 -0
  1330. package/src/libs/agent-runtime/bedrock/index.test.ts +394 -0
  1331. package/src/libs/agent-runtime/bedrock/index.ts +154 -0
  1332. package/src/libs/agent-runtime/deepseek/index.test.ts +255 -0
  1333. package/src/libs/agent-runtime/deepseek/index.ts +10 -0
  1334. package/src/libs/agent-runtime/error.ts +26 -0
  1335. package/src/libs/agent-runtime/google/index.test.ts +602 -0
  1336. package/src/libs/agent-runtime/google/index.ts +336 -0
  1337. package/src/libs/agent-runtime/groq/index.test.ts +320 -0
  1338. package/src/libs/agent-runtime/groq/index.ts +25 -0
  1339. package/src/libs/agent-runtime/index.ts +22 -0
  1340. package/src/libs/agent-runtime/minimax/index.test.ts +275 -0
  1341. package/src/libs/agent-runtime/minimax/index.ts +176 -0
  1342. package/src/libs/agent-runtime/mistral/index.test.ts +331 -0
  1343. package/src/libs/agent-runtime/mistral/index.ts +21 -0
  1344. package/src/libs/agent-runtime/moonshot/index.test.ts +251 -0
  1345. package/src/libs/agent-runtime/moonshot/index.ts +10 -0
  1346. package/src/libs/agent-runtime/ollama/index.test.ts +197 -0
  1347. package/src/libs/agent-runtime/ollama/index.ts +111 -0
  1348. package/src/libs/agent-runtime/ollama/type.ts +8 -0
  1349. package/src/libs/agent-runtime/openai/__snapshots__/index.test.ts.snap +101 -0
  1350. package/src/libs/agent-runtime/openai/fixtures/openai-models.json +170 -0
  1351. package/src/libs/agent-runtime/openai/index.test.ts +245 -0
  1352. package/src/libs/agent-runtime/openai/index.ts +10 -0
  1353. package/src/libs/agent-runtime/openrouter/__snapshots__/index.test.ts.snap +82 -0
  1354. package/src/libs/agent-runtime/openrouter/fixtures/models.json +62 -0
  1355. package/src/libs/agent-runtime/openrouter/index.test.ts +312 -0
  1356. package/src/libs/agent-runtime/openrouter/index.ts +41 -0
  1357. package/src/libs/agent-runtime/openrouter/type.ts +28 -0
  1358. package/src/libs/agent-runtime/perplexity/index.test.ts +249 -0
  1359. package/src/libs/agent-runtime/perplexity/index.ts +31 -0
  1360. package/src/libs/agent-runtime/qwen/index.test.ts +251 -0
  1361. package/src/libs/agent-runtime/qwen/index.ts +28 -0
  1362. package/src/libs/agent-runtime/stepfun/index.test.ts +251 -0
  1363. package/src/libs/agent-runtime/stepfun/index.ts +10 -0
  1364. package/src/libs/agent-runtime/togetherai/__snapshots__/index.test.ts.snap +886 -0
  1365. package/src/libs/agent-runtime/togetherai/fixtures/models.json +8111 -0
  1366. package/src/libs/agent-runtime/togetherai/index.test.ts +313 -0
  1367. package/src/libs/agent-runtime/togetherai/index.ts +47 -0
  1368. package/src/libs/agent-runtime/togetherai/type.ts +75 -0
  1369. package/src/libs/agent-runtime/types/chat.ts +150 -0
  1370. package/src/libs/agent-runtime/types/index.ts +3 -0
  1371. package/src/libs/agent-runtime/types/textToImage.ts +34 -0
  1372. package/src/libs/agent-runtime/types/type.ts +46 -0
  1373. package/src/libs/agent-runtime/utils/anthropicHelpers.test.ts +337 -0
  1374. package/src/libs/agent-runtime/utils/anthropicHelpers.ts +141 -0
  1375. package/src/libs/agent-runtime/utils/createError.ts +11 -0
  1376. package/src/libs/agent-runtime/utils/debugStream.test.ts +70 -0
  1377. package/src/libs/agent-runtime/utils/debugStream.ts +48 -0
  1378. package/src/libs/agent-runtime/utils/desensitizeUrl.test.ts +47 -0
  1379. package/src/libs/agent-runtime/utils/desensitizeUrl.ts +34 -0
  1380. package/src/libs/agent-runtime/utils/handleOpenAIError.ts +39 -0
  1381. package/src/libs/agent-runtime/utils/openaiCompatibleFactory/index.test.ts +717 -0
  1382. package/src/libs/agent-runtime/utils/openaiCompatibleFactory/index.ts +294 -0
  1383. package/src/libs/agent-runtime/utils/response.ts +12 -0
  1384. package/src/libs/agent-runtime/utils/streams/anthropic.test.ts +427 -0
  1385. package/src/libs/agent-runtime/utils/streams/anthropic.ts +117 -0
  1386. package/src/libs/agent-runtime/utils/streams/azureOpenai.test.ts +537 -0
  1387. package/src/libs/agent-runtime/utils/streams/azureOpenai.ts +89 -0
  1388. package/src/libs/agent-runtime/utils/streams/bedrock/claude.ts +21 -0
  1389. package/src/libs/agent-runtime/utils/streams/bedrock/common.ts +32 -0
  1390. package/src/libs/agent-runtime/utils/streams/bedrock/index.ts +3 -0
  1391. package/src/libs/agent-runtime/utils/streams/bedrock/llama.test.ts +196 -0
  1392. package/src/libs/agent-runtime/utils/streams/bedrock/llama.ts +51 -0
  1393. package/src/libs/agent-runtime/utils/streams/google-ai.test.ts +97 -0
  1394. package/src/libs/agent-runtime/utils/streams/google-ai.ts +68 -0
  1395. package/src/libs/agent-runtime/utils/streams/index.ts +8 -0
  1396. package/src/libs/agent-runtime/utils/streams/minimax.ts +39 -0
  1397. package/src/libs/agent-runtime/utils/streams/ollama.test.ts +77 -0
  1398. package/src/libs/agent-runtime/utils/streams/ollama.ts +38 -0
  1399. package/src/libs/agent-runtime/utils/streams/openai.test.ts +263 -0
  1400. package/src/libs/agent-runtime/utils/streams/openai.ts +83 -0
  1401. package/src/libs/agent-runtime/utils/streams/protocol.ts +106 -0
  1402. package/src/libs/agent-runtime/utils/uriParser.test.ts +29 -0
  1403. package/src/libs/agent-runtime/utils/uriParser.ts +24 -0
  1404. package/src/libs/agent-runtime/zeroone/index.test.ts +299 -0
  1405. package/src/libs/agent-runtime/zeroone/index.ts +11 -0
  1406. package/src/libs/agent-runtime/zhipu/authToken.test.ts +18 -0
  1407. package/src/libs/agent-runtime/zhipu/authToken.ts +22 -0
  1408. package/src/libs/agent-runtime/zhipu/index.test.ts +322 -0
  1409. package/src/libs/agent-runtime/zhipu/index.ts +130 -0
  1410. package/src/libs/logger/index.ts +5 -0
  1411. package/src/libs/next-auth/index.ts +46 -0
  1412. package/src/libs/next-auth/sso-providers/auth0.ts +17 -0
  1413. package/src/libs/next-auth/sso-providers/authentik.ts +17 -0
  1414. package/src/libs/next-auth/sso-providers/azure-ad.ts +17 -0
  1415. package/src/libs/next-auth/sso-providers/github.ts +15 -0
  1416. package/src/libs/next-auth/sso-providers/index.ts +7 -0
  1417. package/src/libs/next-auth/sso-providers/zitadel.ts +16 -0
  1418. package/src/libs/swr/index.ts +74 -0
  1419. package/src/libs/traces/event.test.ts +158 -0
  1420. package/src/libs/traces/event.ts +133 -0
  1421. package/src/libs/traces/index.test.ts +61 -0
  1422. package/src/libs/traces/index.ts +52 -0
  1423. package/src/libs/trpc/client.ts +65 -0
  1424. package/src/libs/trpc/index.ts +42 -0
  1425. package/src/libs/trpc/init.ts +26 -0
  1426. package/src/libs/trpc/middleware/password.test.ts +88 -0
  1427. package/src/libs/trpc/middleware/password.ts +26 -0
  1428. package/src/libs/trpc/middleware/userAuth.test.ts +44 -0
  1429. package/src/libs/trpc/middleware/userAuth.ts +18 -0
  1430. package/src/locales/create.ts +51 -39
  1431. package/src/locales/default/auth.ts +8 -0
  1432. package/src/locales/default/chat.ts +138 -0
  1433. package/src/locales/default/clerk.ts +782 -0
  1434. package/src/locales/default/common.ts +214 -39
  1435. package/src/locales/default/components.ts +16 -0
  1436. package/src/locales/default/error.ts +134 -0
  1437. package/src/locales/default/index.ts +35 -0
  1438. package/src/locales/default/market.ts +32 -0
  1439. package/src/locales/default/metadata.ts +20 -0
  1440. package/src/locales/default/migration.ts +47 -0
  1441. package/src/locales/default/modelProvider.ts +111 -0
  1442. package/src/locales/default/plugin.ts +167 -0
  1443. package/src/locales/default/portal.ts +4 -0
  1444. package/src/locales/default/setting.ts +336 -30
  1445. package/src/locales/default/tool.ts +10 -0
  1446. package/src/locales/default/welcome.ts +50 -0
  1447. package/src/locales/resources.test.ts +49 -0
  1448. package/src/locales/resources.ts +114 -0
  1449. package/src/middleware.ts +65 -0
  1450. package/src/migrations/FromV0ToV1.ts +2 -4
  1451. package/src/migrations/FromV1ToV2/fixtures/input-v1-session.json +191 -0
  1452. package/src/migrations/FromV1ToV2/fixtures/output-v2.json +202 -0
  1453. package/src/migrations/FromV1ToV2/index.ts +82 -0
  1454. package/src/migrations/FromV1ToV2/migrations.test.ts +224 -0
  1455. package/src/migrations/FromV1ToV2/types/v1.ts +78 -0
  1456. package/src/migrations/FromV1ToV2/types/v2.ts +52 -0
  1457. package/src/migrations/FromV2ToV3/fixtures/input-v2-session.json +72 -0
  1458. package/src/migrations/FromV2ToV3/fixtures/output-v3-from-v1.json +203 -0
  1459. package/src/migrations/FromV2ToV3/fixtures/output-v3.json +74 -0
  1460. package/src/migrations/FromV2ToV3/index.ts +30 -0
  1461. package/src/migrations/FromV2ToV3/migrations.test.ts +42 -0
  1462. package/src/migrations/FromV2ToV3/types/v3.ts +27 -0
  1463. package/src/migrations/FromV3ToV4/fixtures/azure-input-v3.json +79 -0
  1464. package/src/migrations/FromV3ToV4/fixtures/azure-output-v4.json +75 -0
  1465. package/src/migrations/FromV3ToV4/fixtures/ollama-input-v3.json +85 -0
  1466. package/src/migrations/FromV3ToV4/fixtures/ollama-output-v4.json +85 -0
  1467. package/src/migrations/FromV3ToV4/fixtures/openai-input-v3.json +77 -0
  1468. package/src/migrations/FromV3ToV4/fixtures/openai-output-v4.json +77 -0
  1469. package/src/migrations/FromV3ToV4/fixtures/openrouter-input-v3.json +82 -0
  1470. package/src/migrations/FromV3ToV4/fixtures/openrouter-output-v4.json +85 -0
  1471. package/src/migrations/FromV3ToV4/fixtures/output-v4-from-v1.json +203 -0
  1472. package/src/migrations/FromV3ToV4/index.ts +102 -0
  1473. package/src/migrations/FromV3ToV4/migrations.test.ts +195 -0
  1474. package/src/migrations/FromV3ToV4/types/v3.ts +52 -0
  1475. package/src/migrations/FromV3ToV4/types/v4.ts +37 -0
  1476. package/src/migrations/FromV4ToV5/fixtures/from-v1-to-v5-output.json +245 -0
  1477. package/src/migrations/FromV4ToV5/fixtures/function-input-v4.json +96 -0
  1478. package/src/migrations/FromV4ToV5/fixtures/function-output-v5.json +120 -0
  1479. package/src/migrations/FromV4ToV5/index.ts +58 -0
  1480. package/src/migrations/FromV4ToV5/migrations.test.ts +49 -0
  1481. package/src/migrations/FromV4ToV5/types/v4.ts +21 -0
  1482. package/src/migrations/FromV4ToV5/types/v5.ts +27 -0
  1483. package/src/migrations/FromV5ToV6/fixtures/from-v1-to-v6-output.json +247 -0
  1484. package/src/migrations/FromV5ToV6/fixtures/session-input-v5.json +81 -0
  1485. package/src/migrations/FromV5ToV6/fixtures/session-output-v6.json +85 -0
  1486. package/src/migrations/FromV5ToV6/index.ts +61 -0
  1487. package/src/migrations/FromV5ToV6/migrations.test.ts +50 -0
  1488. package/src/migrations/FromV5ToV6/types/v5.ts +48 -0
  1489. package/src/migrations/FromV5ToV6/types/v6.ts +60 -0
  1490. package/src/migrations/FromV6ToV7/fixtures/output-v7-from-v1.json +203 -0
  1491. package/src/migrations/FromV6ToV7/fixtures/provider-input-v6.json +103 -0
  1492. package/src/migrations/FromV6ToV7/fixtures/provider-output-v7.json +118 -0
  1493. package/src/migrations/FromV6ToV7/index.ts +101 -0
  1494. package/src/migrations/FromV6ToV7/migrations.test.ts +64 -0
  1495. package/src/migrations/FromV6ToV7/types/v6.ts +61 -0
  1496. package/src/migrations/FromV6ToV7/types/v7.ts +71 -0
  1497. package/src/migrations/VersionController.test.ts +88 -0
  1498. package/src/migrations/VersionController.ts +67 -0
  1499. package/src/migrations/index.ts +55 -7
  1500. package/src/server/context.ts +51 -0
  1501. package/src/server/files/s3.ts +78 -0
  1502. package/src/server/globalConfig/index.ts +136 -0
  1503. package/src/server/globalConfig/parseDefaultAgent.test.ts +195 -0
  1504. package/src/server/globalConfig/parseDefaultAgent.ts +47 -0
  1505. package/src/server/globalConfig/parseSystemAgent.test.ts +95 -0
  1506. package/src/server/globalConfig/parseSystemAgent.ts +39 -0
  1507. package/src/server/keyVaultsEncrypt/index.test.ts +62 -0
  1508. package/src/server/keyVaultsEncrypt/index.ts +93 -0
  1509. package/src/server/ld.ts +218 -0
  1510. package/src/server/metadata.ts +96 -0
  1511. package/src/server/mock.ts +8 -0
  1512. package/src/server/modules/DataImporter/__tests__/fixtures/messages.json +1101 -0
  1513. package/src/server/modules/DataImporter/__tests__/index.test.ts +954 -0
  1514. package/src/server/modules/DataImporter/index.ts +333 -0
  1515. package/src/server/routers/edge/config/__snapshots__/index.test.ts.snap +112 -0
  1516. package/src/server/routers/edge/config/index.test.ts +181 -0
  1517. package/src/server/routers/edge/config/index.ts +12 -0
  1518. package/src/server/routers/edge/index.ts +15 -0
  1519. package/src/server/routers/edge/upload.ts +16 -0
  1520. package/src/server/routers/lambda/file.ts +49 -0
  1521. package/src/server/routers/lambda/importer.ts +52 -0
  1522. package/src/server/routers/lambda/index.ts +28 -0
  1523. package/src/server/routers/lambda/message.ts +177 -0
  1524. package/src/server/routers/lambda/plugin.ts +100 -0
  1525. package/src/server/routers/lambda/session.ts +194 -0
  1526. package/src/server/routers/lambda/sessionGroup.ts +77 -0
  1527. package/src/server/routers/lambda/topic.ts +134 -0
  1528. package/src/server/routers/lambda/user.ts +98 -0
  1529. package/src/server/routers/tools/index.ts +7 -0
  1530. package/src/server/services/user/index.ts +96 -0
  1531. package/src/server/translation.ts +44 -0
  1532. package/src/services/__tests__/__snapshots__/chat.test.ts.snap +116 -0
  1533. package/src/services/__tests__/__snapshots__/tool.test.ts.snap +204 -0
  1534. package/src/services/__tests__/chat.test.ts +966 -0
  1535. package/src/services/__tests__/global.test.ts +100 -0
  1536. package/src/services/__tests__/ollama.test.ts +28 -0
  1537. package/src/services/__tests__/openai/OpenAPI_V3.json +245 -0
  1538. package/src/services/__tests__/openai/plugin.json +22 -0
  1539. package/src/services/__tests__/share.test.ts +131 -0
  1540. package/src/services/__tests__/sync.test.ts +56 -0
  1541. package/src/services/__tests__/tool.test.ts +268 -0
  1542. package/src/services/__tests__/upload.test.ts +72 -0
  1543. package/src/services/_auth.test.ts +192 -0
  1544. package/src/services/_auth.ts +75 -0
  1545. package/src/services/_header.ts +20 -0
  1546. package/src/services/_url.ts +46 -0
  1547. package/src/services/chat.ts +528 -0
  1548. package/src/services/config.ts +159 -0
  1549. package/src/services/debug.ts +40 -0
  1550. package/src/services/file/client.test.ts +160 -0
  1551. package/src/services/file/client.ts +65 -0
  1552. package/src/services/file/index.ts +6 -0
  1553. package/src/services/file/server.ts +45 -0
  1554. package/src/services/file/type.ts +9 -0
  1555. package/src/services/github.ts +42 -0
  1556. package/src/services/global.ts +29 -0
  1557. package/src/services/import/client.ts +74 -0
  1558. package/src/services/import/index.ts +6 -0
  1559. package/src/services/import/server.ts +115 -0
  1560. package/src/services/market.ts +22 -0
  1561. package/src/services/message/client.test.ts +384 -0
  1562. package/src/services/message/client.ts +89 -0
  1563. package/src/services/message/index.test.ts +48 -0
  1564. package/src/services/message/index.ts +8 -0
  1565. package/src/services/message/server.ts +106 -0
  1566. package/src/services/message/type.ts +46 -0
  1567. package/src/services/models.ts +37 -0
  1568. package/src/services/ollama.ts +83 -0
  1569. package/src/services/plugin/client.test.ts +162 -0
  1570. package/src/services/plugin/client.ts +42 -0
  1571. package/src/services/plugin/index.ts +6 -0
  1572. package/src/services/plugin/server.ts +46 -0
  1573. package/src/services/plugin/type.ts +21 -0
  1574. package/src/services/session/client.test.ts +439 -0
  1575. package/src/services/session/client.ts +180 -0
  1576. package/src/services/session/index.ts +6 -0
  1577. package/src/services/session/server.ts +148 -0
  1578. package/src/services/session/type.ts +65 -0
  1579. package/src/services/share.ts +61 -0
  1580. package/src/services/sync.ts +19 -0
  1581. package/src/services/textToImage.ts +36 -0
  1582. package/src/services/tool.ts +144 -0
  1583. package/src/services/topic/client.test.ts +245 -0
  1584. package/src/services/topic/client.ts +70 -0
  1585. package/src/services/topic/index.ts +6 -0
  1586. package/src/services/topic/server.ts +68 -0
  1587. package/src/services/topic/type.ts +34 -0
  1588. package/src/services/trace.ts +28 -0
  1589. package/src/services/upload.ts +99 -0
  1590. package/src/services/user/client.test.ts +102 -0
  1591. package/src/services/user/client.ts +52 -0
  1592. package/src/services/user/index.ts +6 -0
  1593. package/src/services/user/server.ts +28 -0
  1594. package/src/services/user/type.ts +11 -0
  1595. package/src/store/agent/index.ts +2 -0
  1596. package/src/store/agent/initialState.ts +7 -0
  1597. package/src/store/agent/selectors.ts +1 -0
  1598. package/src/store/agent/slices/chat/__snapshots__/selectors.test.ts.snap +30 -0
  1599. package/src/store/agent/slices/chat/action.test.ts +305 -0
  1600. package/src/store/agent/slices/chat/action.ts +176 -0
  1601. package/src/store/agent/slices/chat/index.ts +2 -0
  1602. package/src/store/agent/slices/chat/initialState.ts +22 -0
  1603. package/src/store/agent/slices/chat/selectors.test.ts +227 -0
  1604. package/src/store/agent/slices/chat/selectors.ts +98 -0
  1605. package/src/store/agent/store.ts +22 -0
  1606. package/src/store/chat/helpers.test.ts +109 -0
  1607. package/src/store/chat/helpers.ts +30 -0
  1608. package/src/store/chat/index.ts +3 -0
  1609. package/src/store/chat/initialState.ts +22 -0
  1610. package/src/store/chat/selectors.ts +4 -0
  1611. package/src/store/chat/slices/builtinTool/action.test.ts +104 -0
  1612. package/src/store/chat/slices/builtinTool/action.ts +101 -0
  1613. package/src/store/chat/slices/builtinTool/initialState.ts +7 -0
  1614. package/src/store/chat/slices/builtinTool/selectors.ts +11 -0
  1615. package/src/store/chat/slices/enchance/action.test.ts +126 -0
  1616. package/src/store/chat/slices/enchance/action.ts +124 -0
  1617. package/src/store/chat/slices/message/action.test.ts +1243 -0
  1618. package/src/store/chat/slices/message/action.ts +765 -0
  1619. package/src/store/chat/slices/message/initialState.ts +47 -0
  1620. package/src/store/chat/slices/message/reducer.test.ts +306 -0
  1621. package/src/store/chat/slices/message/reducer.ts +154 -0
  1622. package/src/store/chat/slices/message/selectors.test.ts +424 -0
  1623. package/src/store/chat/slices/message/selectors.ts +171 -0
  1624. package/src/store/chat/slices/message/utils.ts +7 -0
  1625. package/src/store/chat/slices/plugin/action.test.ts +967 -0
  1626. package/src/store/chat/slices/plugin/action.ts +371 -0
  1627. package/src/store/chat/slices/portal/action.test.ts +109 -0
  1628. package/src/store/chat/slices/portal/action.ts +31 -0
  1629. package/src/store/chat/slices/portal/initialState.ts +8 -0
  1630. package/src/store/chat/slices/portal/selectors.test.ts +73 -0
  1631. package/src/store/chat/slices/portal/selectors.ts +15 -0
  1632. package/src/store/chat/slices/share/action.test.ts +213 -0
  1633. package/src/store/chat/slices/share/action.ts +122 -0
  1634. package/src/store/chat/slices/share/initialState.ts +7 -0
  1635. package/src/store/chat/slices/topic/action.test.ts +540 -0
  1636. package/src/store/chat/slices/topic/action.ts +330 -0
  1637. package/src/store/chat/slices/topic/initialState.ts +28 -0
  1638. package/src/store/chat/slices/topic/reducer.test.ts +139 -0
  1639. package/src/store/chat/slices/topic/reducer.ts +67 -0
  1640. package/src/store/chat/slices/topic/selectors.test.ts +95 -0
  1641. package/src/store/chat/slices/topic/selectors.ts +35 -0
  1642. package/src/store/chat/store.ts +50 -0
  1643. package/src/store/chat/utils/index.ts +19 -0
  1644. package/src/store/file/index.ts +2 -0
  1645. package/src/store/file/initialState.ts +7 -0
  1646. package/src/store/file/selectors.ts +7 -0
  1647. package/src/store/file/slices/images/action.test.ts +184 -0
  1648. package/src/store/file/slices/images/action.ts +153 -0
  1649. package/src/store/file/slices/images/initialState.ts +13 -0
  1650. package/src/store/file/slices/images/selectors.test.ts +78 -0
  1651. package/src/store/file/slices/images/selectors.ts +40 -0
  1652. package/src/store/file/slices/tts/action.test.ts +141 -0
  1653. package/src/store/file/slices/tts/action.ts +63 -0
  1654. package/src/store/file/slices/tts/index.ts +2 -0
  1655. package/src/store/file/slices/tts/selectors.ts +3 -0
  1656. package/src/store/file/store.ts +23 -0
  1657. package/src/store/global/action.test.ts +183 -0
  1658. package/src/store/global/action.ts +107 -0
  1659. package/src/store/global/index.ts +1 -0
  1660. package/src/store/global/initialState.ts +72 -0
  1661. package/src/store/global/selectors.ts +26 -0
  1662. package/src/store/global/store.ts +26 -0
  1663. package/src/store/market/action.ts +82 -0
  1664. package/src/store/market/index.ts +3 -0
  1665. package/src/store/market/initialState.ts +19 -0
  1666. package/src/store/market/selectors.ts +38 -0
  1667. package/src/store/market/store.ts +48 -0
  1668. package/src/store/middleware/createDevtools.ts +23 -0
  1669. package/src/store/middleware/createHyperStorage/index.test.ts +341 -0
  1670. package/src/store/middleware/createHyperStorage/index.ts +126 -0
  1671. package/src/store/middleware/createHyperStorage/indexedDB.test.ts +64 -0
  1672. package/src/store/middleware/createHyperStorage/indexedDB.ts +26 -0
  1673. package/src/store/middleware/createHyperStorage/keyMapper.ts +57 -0
  1674. package/src/store/middleware/createHyperStorage/localStorage.ts +18 -0
  1675. package/src/store/middleware/createHyperStorage/type.ts +25 -0
  1676. package/src/store/middleware/createHyperStorage/urlStorage.test.ts +84 -0
  1677. package/src/store/middleware/createHyperStorage/urlStorage.ts +81 -0
  1678. package/src/store/serverConfig/Provider.tsx +23 -0
  1679. package/src/store/serverConfig/index.ts +3 -0
  1680. package/src/store/serverConfig/selectors.test.ts +74 -0
  1681. package/src/store/serverConfig/selectors.ts +14 -0
  1682. package/src/store/serverConfig/store.test.ts +53 -0
  1683. package/src/store/serverConfig/store.ts +66 -0
  1684. package/src/store/session/helpers.ts +1 -0
  1685. package/src/store/session/index.ts +1 -32
  1686. package/src/store/session/initialState.ts +4 -6
  1687. package/src/store/session/selectors.ts +2 -3
  1688. package/src/store/session/slices/session/action.test.ts +232 -0
  1689. package/src/store/session/slices/session/action.ts +226 -70
  1690. package/src/store/session/slices/session/helpers.ts +17 -0
  1691. package/src/store/session/slices/session/initialState.ts +18 -19
  1692. package/src/store/session/slices/session/reducers.test.ts +79 -0
  1693. package/src/store/session/slices/session/reducers.ts +61 -0
  1694. package/src/store/session/slices/session/selectors/index.ts +2 -20
  1695. package/src/store/session/slices/session/selectors/list.test.ts +126 -0
  1696. package/src/store/session/slices/session/selectors/list.ts +45 -51
  1697. package/src/store/session/slices/session/selectors/meta.test.ts +108 -0
  1698. package/src/store/session/slices/session/selectors/meta.ts +45 -0
  1699. package/src/store/session/slices/sessionGroup/action.test.ts +133 -0
  1700. package/src/store/session/slices/sessionGroup/action.ts +73 -0
  1701. package/src/store/session/slices/sessionGroup/initialState.ts +12 -0
  1702. package/src/store/session/slices/sessionGroup/reducer.test.ts +86 -0
  1703. package/src/store/session/slices/sessionGroup/reducer.ts +56 -0
  1704. package/src/store/session/slices/sessionGroup/selectors.ts +11 -0
  1705. package/src/store/session/store.ts +25 -9
  1706. package/src/store/tool/helpers.ts +28 -0
  1707. package/src/store/tool/index.ts +2 -0
  1708. package/src/store/tool/initialState.ts +13 -0
  1709. package/src/store/tool/selectors/index.ts +5 -0
  1710. package/src/store/tool/selectors/tool.test.ts +247 -0
  1711. package/src/store/tool/selectors/tool.ts +123 -0
  1712. package/src/store/tool/slices/builtin/action.test.ts +87 -0
  1713. package/src/store/tool/slices/builtin/action.ts +54 -0
  1714. package/src/store/tool/slices/builtin/index.ts +2 -0
  1715. package/src/store/tool/slices/builtin/initialState.ts +12 -0
  1716. package/src/store/tool/slices/builtin/selectors.test.ts +53 -0
  1717. package/src/store/tool/slices/builtin/selectors.ts +20 -0
  1718. package/src/store/tool/slices/customPlugin/action.test.ts +141 -0
  1719. package/src/store/tool/slices/customPlugin/action.ts +88 -0
  1720. package/src/store/tool/slices/customPlugin/index.ts +3 -0
  1721. package/src/store/tool/slices/customPlugin/initialState.ts +17 -0
  1722. package/src/store/tool/slices/customPlugin/reducers/customPluginList.ts +56 -0
  1723. package/src/store/tool/slices/customPlugin/selectors.test.ts +70 -0
  1724. package/src/store/tool/slices/customPlugin/selectors.ts +9 -0
  1725. package/src/store/tool/slices/plugin/__snapshots__/action.test.ts.snap +15 -0
  1726. package/src/store/tool/slices/plugin/action.test.ts +196 -0
  1727. package/src/store/tool/slices/plugin/action.ts +76 -0
  1728. package/src/store/tool/slices/plugin/index.ts +3 -0
  1729. package/src/store/tool/slices/plugin/initialState.ts +16 -0
  1730. package/src/store/tool/slices/plugin/reducers/manifest.ts +36 -0
  1731. package/src/store/tool/slices/plugin/selectors.test.ts +197 -0
  1732. package/src/store/tool/slices/plugin/selectors.ts +80 -0
  1733. package/src/store/tool/slices/store/action.test.ts +392 -0
  1734. package/src/store/tool/slices/store/action.ts +112 -0
  1735. package/src/store/tool/slices/store/index.ts +3 -0
  1736. package/src/store/tool/slices/store/initialState.ts +17 -0
  1737. package/src/store/tool/slices/store/selectors.test.ts +50 -0
  1738. package/src/store/tool/slices/store/selectors.ts +32 -0
  1739. package/src/store/tool/store.ts +32 -0
  1740. package/src/store/user/helpers.ts +9 -0
  1741. package/src/store/user/index.ts +1 -0
  1742. package/src/store/user/initialState.ts +22 -0
  1743. package/src/store/user/selectors.ts +13 -0
  1744. package/src/store/user/slices/auth/action.test.ts +202 -0
  1745. package/src/store/user/slices/auth/action.ts +63 -0
  1746. package/src/store/user/slices/auth/initialState.ts +28 -0
  1747. package/src/store/user/slices/auth/selectors.test.ts +143 -0
  1748. package/src/store/user/slices/auth/selectors.ts +48 -0
  1749. package/src/store/user/slices/common/action.test.ts +271 -0
  1750. package/src/store/user/slices/common/action.ts +129 -0
  1751. package/src/store/user/slices/common/initialState.ts +15 -0
  1752. package/src/store/user/slices/modelList/action.test.ts +363 -0
  1753. package/src/store/user/slices/modelList/action.ts +209 -0
  1754. package/src/store/user/slices/modelList/initialState.ts +15 -0
  1755. package/src/store/user/slices/modelList/reducers/customModelCard.test.ts +204 -0
  1756. package/src/store/user/slices/modelList/reducers/customModelCard.ts +64 -0
  1757. package/src/store/user/slices/modelList/selectors/index.ts +3 -0
  1758. package/src/store/user/slices/modelList/selectors/keyVaults.test.ts +201 -0
  1759. package/src/store/user/slices/modelList/selectors/keyVaults.ts +45 -0
  1760. package/src/store/user/slices/modelList/selectors/modelConfig.test.ts +200 -0
  1761. package/src/store/user/slices/modelList/selectors/modelConfig.ts +85 -0
  1762. package/src/store/user/slices/modelList/selectors/modelProvider.test.ts +145 -0
  1763. package/src/store/user/slices/modelList/selectors/modelProvider.ts +147 -0
  1764. package/src/store/user/slices/preference/action.test.ts +43 -0
  1765. package/src/store/user/slices/preference/action.ts +35 -0
  1766. package/src/store/user/slices/preference/initialState.ts +13 -0
  1767. package/src/store/user/slices/preference/selectors.test.ts +82 -0
  1768. package/src/store/user/slices/preference/selectors.ts +19 -0
  1769. package/src/store/user/slices/settings/action.test.ts +153 -0
  1770. package/src/store/user/slices/settings/action.ts +115 -0
  1771. package/src/store/user/slices/settings/initialState.ts +15 -0
  1772. package/src/store/user/slices/settings/selectors/__snapshots__/settings.test.ts.snap +109 -0
  1773. package/src/store/user/slices/settings/selectors/general.test.ts +45 -0
  1774. package/src/store/user/slices/settings/selectors/general.ts +40 -0
  1775. package/src/store/user/slices/settings/selectors/index.ts +3 -0
  1776. package/src/store/user/slices/settings/selectors/settings.test.ts +156 -0
  1777. package/src/store/user/slices/settings/selectors/settings.ts +52 -0
  1778. package/src/store/user/slices/settings/selectors/systemAgent.ts +18 -0
  1779. package/src/store/user/slices/sync/action.test.ts +164 -0
  1780. package/src/store/user/slices/sync/action.ts +97 -0
  1781. package/src/store/user/slices/sync/initialState.ts +13 -0
  1782. package/src/store/user/slices/sync/selectors.ts +20 -0
  1783. package/src/store/user/store.ts +42 -0
  1784. package/src/styles/antdOverride.ts +8 -23
  1785. package/src/styles/global.ts +39 -14
  1786. package/src/styles/index.ts +6 -1
  1787. package/src/styles/mobileHeader.ts +15 -0
  1788. package/src/tools/dalle/Render/Item/EditMode.tsx +66 -0
  1789. package/src/tools/dalle/Render/Item/Error.tsx +50 -0
  1790. package/src/tools/dalle/Render/Item/Image.tsx +44 -0
  1791. package/src/tools/dalle/Render/Item/ImageFileItem.tsx +77 -0
  1792. package/src/tools/dalle/Render/Item/index.tsx +88 -0
  1793. package/src/tools/dalle/Render/ToolBar.tsx +55 -0
  1794. package/src/tools/dalle/Render/index.tsx +51 -0
  1795. package/src/tools/dalle/index.ts +92 -0
  1796. package/src/tools/index.ts +11 -0
  1797. package/src/tools/portals.ts +3 -0
  1798. package/src/tools/renders.ts +14 -0
  1799. package/src/types/agent/index.ts +83 -0
  1800. package/src/types/exportConfig.ts +119 -19
  1801. package/src/types/fetch.ts +36 -0
  1802. package/src/types/files.ts +42 -0
  1803. package/src/types/i18next.d.ts +1 -1
  1804. package/src/types/importer.ts +128 -0
  1805. package/src/types/llm.ts +92 -12
  1806. package/src/types/locale.ts +4 -0
  1807. package/src/types/market.ts +20 -0
  1808. package/src/types/message/index.ts +82 -0
  1809. package/src/types/message/tools.ts +65 -0
  1810. package/src/types/message/translate.ts +4 -0
  1811. package/src/types/meta.ts +24 -12
  1812. package/src/types/next-auth.d.ts +23 -0
  1813. package/src/types/openai/chat.ts +128 -0
  1814. package/src/types/openai/functionCall.ts +10 -0
  1815. package/src/types/openai/image.ts +34 -0
  1816. package/src/types/openai/plugin.ts +57 -0
  1817. package/src/types/serverConfig.ts +32 -0
  1818. package/src/types/service.ts +7 -0
  1819. package/src/types/session/agentSession.ts +35 -0
  1820. package/src/types/session/index.ts +10 -0
  1821. package/src/types/session/sessionGroup.ts +24 -0
  1822. package/src/types/share.ts +7 -0
  1823. package/src/types/sync.ts +41 -0
  1824. package/src/types/tool/builtin.ts +47 -0
  1825. package/src/types/tool/dalle.ts +12 -0
  1826. package/src/types/tool/index.ts +16 -0
  1827. package/src/types/tool/plugin.ts +35 -0
  1828. package/src/types/tool/tool.ts +10 -0
  1829. package/src/types/topic.ts +9 -0
  1830. package/src/types/trace/action.ts +31 -0
  1831. package/src/types/trace/index.ts +1 -0
  1832. package/src/types/user/index.ts +44 -0
  1833. package/src/types/user/settings/general.ts +12 -0
  1834. package/src/types/user/settings/index.ts +32 -0
  1835. package/src/types/user/settings/keyVaults.ts +40 -0
  1836. package/src/types/user/settings/modelProvider.ts +34 -0
  1837. package/src/types/user/settings/sync.ts +10 -0
  1838. package/src/types/user/settings/systemAgent.ts +12 -0
  1839. package/src/types/user/settings/tool.ts +5 -0
  1840. package/src/types/user/settings/tts.ts +10 -0
  1841. package/src/utils/__snapshots__/parseModels.test.ts.snap +63 -0
  1842. package/src/utils/basePath.ts +3 -0
  1843. package/src/utils/client/switchLang.test.ts +34 -0
  1844. package/src/utils/client/switchLang.ts +10 -0
  1845. package/src/utils/compass.ts +1 -5
  1846. package/src/utils/compressImage.test.ts +59 -0
  1847. package/src/utils/compressImage.ts +29 -0
  1848. package/src/utils/config.ts +108 -0
  1849. package/src/utils/cookie.ts +10 -0
  1850. package/src/utils/difference.test.ts +46 -0
  1851. package/src/utils/difference.ts +26 -0
  1852. package/src/utils/env.ts +3 -0
  1853. package/src/utils/fetch.test.ts +534 -0
  1854. package/src/utils/fetch.ts +371 -105
  1855. package/src/utils/filter.ts +1 -1
  1856. package/src/utils/format.test.ts +75 -0
  1857. package/src/utils/format.ts +48 -0
  1858. package/src/utils/genOG.ts +20 -0
  1859. package/src/utils/imageToBase64.ts +37 -0
  1860. package/src/utils/jwt.test.ts +27 -0
  1861. package/src/utils/jwt.ts +37 -0
  1862. package/src/utils/keyboard.ts +13 -0
  1863. package/src/utils/localStorage.ts +38 -0
  1864. package/src/utils/locale.ts +16 -0
  1865. package/src/utils/merge.ts +11 -0
  1866. package/src/utils/parseMarkdown.ts +9 -0
  1867. package/src/utils/parseModels.test.ts +290 -0
  1868. package/src/utils/parseModels.ts +156 -0
  1869. package/src/utils/platform.test.ts +83 -0
  1870. package/src/utils/platform.ts +55 -0
  1871. package/src/utils/responsive.ts +40 -0
  1872. package/src/utils/safeParseJSON.test.ts +71 -0
  1873. package/src/utils/safeParseJSON.ts +12 -0
  1874. package/src/utils/storeDebug.ts +11 -0
  1875. package/src/utils/tokenizer.ts +5 -0
  1876. package/src/utils/toolCall.ts +21 -0
  1877. package/src/utils/trace.ts +21 -0
  1878. package/src/utils/url.test.ts +51 -0
  1879. package/src/utils/url.ts +23 -0
  1880. package/src/utils/uuid.ts +4 -4
  1881. package/src/utils/zustand.ts +8 -0
  1882. package/tests/setup-db.ts +7 -0
  1883. package/tests/setup.ts +35 -0
  1884. package/tests/utils.tsx +11 -0
  1885. package/tsconfig.json +19 -4
  1886. package/vercel.json +3 -0
  1887. package/vitest.config.ts +33 -3
  1888. package/vitest.server.config.ts +23 -0
  1889. package/.github/ISSUE_TEMPLATE/3_question.yml +0 -15
  1890. package/.github/ISSUE_TEMPLATE/4_other.md +0 -7
  1891. package/.github/dependabot.yml +0 -17
  1892. package/.github/workflows/auto-merge.yml +0 -32
  1893. package/.github/workflows/contributor-help.yml +0 -29
  1894. package/.github/workflows/issue-check-inactive.yml +0 -22
  1895. package/.github/workflows/issue-remove-inactive.yml +0 -25
  1896. package/.gitpod.yml +0 -3
  1897. package/.husky/commit-msg +0 -4
  1898. package/locales/en_US/common.json +0 -41
  1899. package/locales/en_US/setting.json +0 -109
  1900. package/locales/zh_CN/common.json +0 -41
  1901. package/locales/zh_CN/setting.json +0 -109
  1902. package/public/next.svg +0 -1
  1903. package/public/vercel.svg +0 -1
  1904. package/scripts/genDefaultLocale.ts +0 -18
  1905. package/scripts/genResources.ts +0 -51
  1906. package/scripts/toc.ts +0 -7
  1907. package/src/const/modelTokens.ts +0 -8
  1908. package/src/features/FolderPanel/index.tsx +0 -55
  1909. package/src/features/SideBar/index.tsx +0 -35
  1910. package/src/helpers/prompt.test.ts +0 -36
  1911. package/src/helpers/prompt.ts +0 -36
  1912. package/src/layout/index.tsx +0 -57
  1913. package/src/layout/style.ts +0 -18
  1914. package/src/locales/index.ts +0 -5
  1915. package/src/locales/options.ts +0 -19
  1916. package/src/locales/resources/en_US.ts +0 -7
  1917. package/src/locales/resources/index.ts +0 -13
  1918. package/src/locales/resources/zh_CN.ts +0 -9
  1919. package/src/pages/_app.page.tsx +0 -13
  1920. package/src/pages/_document.page.tsx +0 -70
  1921. package/src/pages/api/LangChainStream.ts +0 -95
  1922. package/src/pages/api/chain.api.ts +0 -17
  1923. package/src/pages/api/openai.api.ts +0 -31
  1924. package/src/pages/chat/SessionList/Header.tsx +0 -56
  1925. package/src/pages/chat/SessionList/List/SessionItem.tsx +0 -90
  1926. package/src/pages/chat/SessionList/List/index.tsx +0 -31
  1927. package/src/pages/chat/SessionList/List/style.ts +0 -77
  1928. package/src/pages/chat/SessionList/index.tsx +0 -18
  1929. package/src/pages/chat/[id]/Config/ConfigCell.tsx +0 -68
  1930. package/src/pages/chat/[id]/Config/ReadMode.tsx +0 -63
  1931. package/src/pages/chat/[id]/Config/index.tsx +0 -79
  1932. package/src/pages/chat/[id]/Conversation/ChatList.tsx +0 -36
  1933. package/src/pages/chat/[id]/Conversation/Input.tsx +0 -61
  1934. package/src/pages/chat/[id]/Conversation/index.tsx +0 -32
  1935. package/src/pages/chat/[id]/Header.tsx +0 -86
  1936. package/src/pages/chat/[id]/edit/AgentConfig.tsx +0 -95
  1937. package/src/pages/chat/[id]/edit/AgentMeta.tsx +0 -117
  1938. package/src/pages/chat/[id]/edit/FormItem.tsx +0 -26
  1939. package/src/pages/chat/[id]/edit/Prompt.tsx +0 -68
  1940. package/src/pages/chat/[id]/edit/index.page.tsx +0 -62
  1941. package/src/pages/chat/[id]/edit/style.ts +0 -42
  1942. package/src/pages/chat/[id]/index.page.tsx +0 -40
  1943. package/src/pages/chat/index.page.tsx +0 -1
  1944. package/src/pages/chat/layout.tsx +0 -51
  1945. package/src/pages/index.page.tsx +0 -1
  1946. package/src/pages/setting/Header.tsx +0 -27
  1947. package/src/pages/setting/SettingForm.tsx +0 -96
  1948. package/src/pages/setting/ThemeSwatches/ThemeSwatchesNeutral.tsx +0 -33
  1949. package/src/pages/setting/ThemeSwatches/ThemeSwatchesPrimary.tsx +0 -33
  1950. package/src/pages/setting/index.page.tsx +0 -41
  1951. package/src/prompts/agent.ts +0 -65
  1952. package/src/services/chatModel.ts +0 -34
  1953. package/src/services/langChain.ts +0 -18
  1954. package/src/services/url.ts +0 -8
  1955. package/src/store/middleware/createHashStorage.ts +0 -49
  1956. package/src/store/session/slices/agentConfig/action.ts +0 -226
  1957. package/src/store/session/slices/agentConfig/initialState.ts +0 -34
  1958. package/src/store/session/slices/agentConfig/selectors.ts +0 -54
  1959. package/src/store/session/slices/chat/action.ts +0 -210
  1960. package/src/store/session/slices/chat/index.ts +0 -3
  1961. package/src/store/session/slices/chat/initialState.ts +0 -12
  1962. package/src/store/session/slices/chat/messageReducer.test.ts +0 -70
  1963. package/src/store/session/slices/chat/messageReducer.ts +0 -84
  1964. package/src/store/session/slices/chat/selectors.ts +0 -83
  1965. package/src/store/session/slices/session/index.ts +0 -3
  1966. package/src/store/session/slices/session/reducers/session.test.ts +0 -456
  1967. package/src/store/session/slices/session/reducers/session.ts +0 -113
  1968. package/src/store/session/slices/session/selectors/chat.ts +0 -4
  1969. package/src/store/settings/action.ts +0 -36
  1970. package/src/store/settings/index.ts +0 -23
  1971. package/src/store/settings/initialState.ts +0 -27
  1972. package/src/store/settings/selectors.ts +0 -17
  1973. package/src/store/settings/store.ts +0 -13
  1974. package/src/types/chatMessage.ts +0 -46
  1975. package/src/types/langchain.ts +0 -34
  1976. package/src/types/openai.ts +0 -62
  1977. package/src/types/session.ts +0 -59
  1978. package/src/utils/VersionController.test.ts +0 -90
  1979. package/src/utils/VersionController.ts +0 -64
  1980. /package/src/{pages/setting → app/(main)/settings/common/features/Theme}/ThemeSwatches/index.ts +0 -0
  1981. /package/src/store/{session/slices/agentConfig → file/slices/images}/index.ts +0 -0
@@ -0,0 +1,54 @@
1
+ ---
2
+ title: LobeChat 支持本地 / 云端数据库存储
3
+ description: LobeChat 支持本地 / 云端数据存储,既能实现 Local First,同时支持数据云同步。
4
+ tags:
5
+ - LobeChat
6
+ - IndexedDB
7
+ - Postgres
8
+ - Local First
9
+ - 数据云同步
10
+ - 数据库
11
+ ---
12
+
13
+ # 本地 / 云端数据存储
14
+
15
+ <Image
16
+ alt={'本地 / 云端数据存储'}
17
+ cover
18
+ src={'https://github.com/lobehub/lobe-chat/assets/17870709/c27a0234-a4e9-40e5-8bcb-42d5ce7e40f9'}
19
+ />
20
+
21
+ 在现代应用开发中,数据存储方案的选择至关重要。为了满足不同用户的需求,LobeChat 提供了同时支持本地数据库和服务端数据库的灵活配置。无论您是注重数据隐私与掌控,还是追求便捷的使用体验,LobeChat 都能为您提供卓越的解决方案。
22
+
23
+ ## 本地数据库:数据掌控与隐私保护
24
+
25
+ 对于希望对数据有更多掌控感和隐私保护的用户,LobeChat 提供了本地数据库支持。采用 IndexedDB 作为存储解决方案,并结合 dexie 作为 ORM(对象关系映射),LobeChat 实现了高效的数据管理。
26
+
27
+ 同时,我们引入了 CRDT(Conflict-Free Replicated Data Type)技术,确保多端同步功能的无缝体验。这一实验性功能旨在为用户提供更高的自主性和数据安全性。
28
+
29
+ <Callout type={'info'}>LobeChat 默认采取本地数据库方案,以降低新用户的上手成本。</Callout>
30
+
31
+ 此外,我们尝试引入了 CRDT(Conflict-Free Replicated Data Type)技术,在本地数据库基础上实现了跨端同步。这一实验性功能旨在为用户提供更高的自主性和数据安全性。
32
+
33
+ ## 服务端数据库:便捷与高效的使用体验
34
+
35
+ 对于追求便捷使用体验的用户,LobeChat 支持 PostgreSQL 作为服务端数据库。通过 Dirzzle ORM 管理数据,结合 Clerk 进行身份验证,LobeChat 能够为用户提供高效、可靠的服务端数据管理方案。
36
+
37
+ ### 服务端数据库技术栈
38
+
39
+ - **DB**: PostgreSQL(默认使用 Neon)
40
+ - **ORM**: Dirzzle ORM
41
+ - **Auth**: Clerk
42
+ - **Server Router**: tRPC
43
+
44
+ ## 部署方案选择指南
45
+
46
+ ### 1. 本地数据库
47
+
48
+ 本地数据库方案适用于那些希望对数据进行严格控制的用户。通过 LobeChat 的本地数据库支持,您可以在不依赖外部服务器的情况下,安全地存储和管理数据。这一方案特别适合对数据隐私有高要求的用户。
49
+
50
+ ### 2. 服务端数据库
51
+
52
+ 服务端数据库方案则适合那些希望简化数据管理流程,享受便捷使用体验的用户。通过服务端数据库与用户身份验证,LobeChat 能够确保数据的安全性与高效性。如果您希望了解如何配置服务端数据库,请参考我们的[详细文档](/zh/docs/self-hosting/advanced/server-database)。
53
+
54
+ 无论选择本地数据库还是服务端数据库,LobeChat 都能为你提供卓越的用户体验。
@@ -0,0 +1,56 @@
1
+ ---
2
+ title: Using Local LLM in LobeChat
3
+ description: >-
4
+ Experience groundbreaking AI support with a local LLM in LobeChat powered by
5
+ Ollama AI. Start conversations effortlessly and enjoy unprecedented
6
+ interaction speed!
7
+ tags:
8
+ - Local Large Language Model
9
+ - Ollama AI
10
+ - LobeChat
11
+ - AI communication
12
+ - Natural Language Processing
13
+ - Docker deployment
14
+ ---
15
+
16
+ # Local Large Language Model (LLM) Support
17
+
18
+ <Image
19
+ alt={'Ollama Local Large Language Model (LLM) Support'}
20
+ borderless
21
+ cover
22
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/ca9a21bc-ea6c-4c90-bf4a-fa53b4fb2b5c'}
23
+ />
24
+
25
+ <Callout>Available in >=0.127.0, currently only supports Docker deployment</Callout>
26
+
27
+ With the release of LobeChat v0.127.0, we are excited to introduce a groundbreaking feature - Ollama AI support! 🤯 With the powerful infrastructure of [Ollama AI](https://ollama.ai/) and the [community's collaborative efforts](https://github.com/lobehub/lobe-chat/pull/1265), you can now engage in conversations with a local LLM (Large Language Model) in LobeChat! 🤩
28
+
29
+ We are thrilled to introduce this revolutionary feature to all LobeChat users at this special moment. The integration of Ollama AI not only signifies a significant technological leap for us but also reaffirms our commitment to continuously pursue more efficient and intelligent communication.
30
+
31
+ ### How to Start a Conversation with Local LLM?
32
+
33
+ The startup process is exceptionally simple! By running the following Docker command, you can experience conversations with a local LLM in LobeChat:
34
+
35
+ ```bash
36
+ docker run -d -p 3210:3210 -e OLLAMA_PROXY_URL=http://host.docker.internal:11434/v1 lobehub/lobe-chat
37
+ ```
38
+
39
+ Yes, it's that simple! 🤩 You don't need to go through complicated configurations or worry about a complex installation process. We have prepared everything for you. With just one command, you can engage in deep conversations with a local AI.
40
+
41
+ ### Experience Unprecedented Interaction Speed
42
+
43
+ With the powerful capabilities of Ollama AI, LobeChat has greatly improved its efficiency in natural language processing. Both processing speed and response time have reached new heights. This means that your conversational experience will be smoother, without any waiting, and with instant responses.
44
+
45
+ ### Why Choose a Local LLM?
46
+
47
+ Compared to cloud-based solutions, a local LLM provides higher privacy and security. All your conversations are processed locally, without passing through any external servers, ensuring the security of your data. Additionally, local processing can reduce network latency, providing you with a more immediate communication experience.
48
+
49
+ ### Embark on Your LobeChat & Ollama AI Journey
50
+
51
+ Now, let's embark on this exciting journey together! Through the collaboration of LobeChat and Ollama AI, explore the endless possibilities brought by AI. Whether you are a tech enthusiast or simply curious about AI communication, LobeChat will offer you an unprecedented experience.
52
+
53
+ <Cards>
54
+ <Card href={'/docs/usage/providers'} title={'Using Multiple Model Providers'} />
55
+ <Card href={'/docs/usage/providers/ollama'} title={'Using Ollama Local Model'} />
56
+ </Cards>
@@ -0,0 +1,48 @@
1
+ ---
2
+ title: 在 LobeChat 中使用本地大语言模型(LLM)
3
+ description: LobeChat 支持本地 LLM,使用 Ollama AI集成带来高效智能沟通。体验本地大语言模型的隐私性、安全性和即时交流
4
+ tags:
5
+ - '本地大语言模型,LLM,LobeChat v0.127.0,Ollama AI,Docker 部署'
6
+ ---
7
+
8
+ # 支持本地大语言模型(LLM)
9
+
10
+ <Image
11
+ alt={'Ollama 支持本地大语言模型'}
12
+ borderless
13
+ cover
14
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/ca9a21bc-ea6c-4c90-bf4a-fa53b4fb2b5c'}
15
+ />
16
+
17
+ <Callout>在 >=v0.127.0 版本中可用,目前仅支持 Docker 部署</Callout>
18
+
19
+ 随着 LobeChat v0.127.0 的发布,我们迎来了一个激动人心的特性 —— Ollama AI 支持!🤯 在 [Ollama AI](https://ollama.ai/) 强大的基础设施和 [社区的共同努力](https://github.com/lobehub/lobe-chat/pull/1265) 下,现在您可以在 LobeChat 中与本地 LLM (Large Language Model) 进行交流了!🤩
20
+
21
+ 我们非常高兴能在这个特别的时刻,向所有 LobeChat 用户介绍这项革命性的特性。Ollama AI 的集成不仅标志着我们技术上的一个巨大飞跃,更是向用户承诺,我们将不断追求更高效、更智能的沟通方式。
22
+
23
+ ### 如何启动与本地 LLM 的对话?
24
+
25
+ 启动过程异常简单!您只需运行以下 Docker 命令行,就可以在 LobeChat 中体验与本地 LLM 的对话了:
26
+
27
+ ```bash
28
+ docker run -d -p 3210:3210 -e OLLAMA_PROXY_URL=http://host.docker.internal:11434/v1 lobehub/lobe-chat
29
+ ```
30
+
31
+ 是的,就是这么简单!🤩 您不需要进行繁杂的配置,也不必担心复杂的安装过程。我们已经为您准备好了一切,只需一行命令,即可开启与本地 AI 的深度对话。
32
+
33
+ ### 体验前所未有的交互速度
34
+
35
+ 借助 Ollama AI 的强大能力,LobeChat 在进行自然语言处理方面的效率得到了极大的提升。无论是处理速度还是响应时间,都达到了新的高度。这意味着您的对话体验将更加流畅,无需等待,即时得到回应。
36
+
37
+ ### 为什么选择本地 LLM?
38
+
39
+ 与基于云的解决方案相比,本地 LLM 提供了更高的隐私性和安全性。您的所有对话都在本地处理,不经过任何外部服务器,确保了您的数据安全性。此外,本地处理还能减少网络延迟,为您带来更加即时的交流体验。
40
+
41
+ ### 开启您的 LobeChat & Ollama AI 之旅
42
+
43
+ 现在,就让我们一起开启这段激动人心的旅程吧!通过 LobeChat 与 Ollama AI 的协作,探索 AI 带来的无限可能。无论您是技术爱好者,还是对 AI 交流充满好奇,LobeChat 都将为您提供一场前所未有的体验。
44
+
45
+ <Cards>
46
+ <Card href={'/docs/usage/providers'} title={'使用多模型服务商'} />
47
+ <Card href={'/docs/usage/providers/ollama'} title={'使用 Ollama 本地模型'} />
48
+ </Cards>
@@ -0,0 +1,24 @@
1
+ ---
2
+ title: LobeChat with Mobile Device Adaptation
3
+ description: >-
4
+ Explore the enhanced mobile user experience at LobeChat with optimized designs
5
+ for smoother interactions. Share your feedback on GitHub!
6
+ tags:
7
+ - Mobile Device Adaptation
8
+ - User Experience
9
+ - Optimized Designs
10
+ - Feedback
11
+ - GitHub
12
+ ---
13
+
14
+ # Mobile Device Adaptation
15
+
16
+ <Image
17
+ alt={'Mobile Device Adaptation'}
18
+ cover
19
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/11110732-8d5a-4049-b556-c2561cb66182'}
20
+ />
21
+
22
+ LobeChat has undergone a series of optimized designs for mobile devices to enhance the user's mobile experience.
23
+
24
+ Currently, we are iterating on the user experience for mobile devices to achieve a smoother and more intuitive interaction. If you have any suggestions or ideas, we warmly welcome your feedback through GitHub Issues or Pull Requests.
@@ -0,0 +1,23 @@
1
+ ---
2
+ title: LobeChat 移动设备适配 - 提升用户移动体验
3
+ description: LobeChat针对移动设备进行优化设计,版本迭代以实现更流畅直观的交互。欢迎通过GitHub Issues或Pull Requests提供反馈。
4
+ tags:
5
+ - LobeChat
6
+ - 移动设备适配
7
+ - 用户体验
8
+ - 版本迭代
9
+ - GitHub
10
+ - 反馈
11
+ ---
12
+
13
+ # 移动设备适配
14
+
15
+ <Image
16
+ alt={'移动端设备适配'}
17
+ cover
18
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/11110732-8d5a-4049-b556-c2561cb66182'}
19
+ />
20
+
21
+ LobeChat 针对移动设备进行了一系列的优化设计,以提升用户的移动体验。
22
+
23
+ 目前,我们正在对移动端的用户体验进行版本迭代,以实现更加流畅和直观的交互。如果您有任何建议或想法,我们非常欢迎您通过 GitHub Issues 或者 Pull Requests 提供反馈。
@@ -0,0 +1,33 @@
1
+ ---
2
+ title: More Features in LobeChat - Enhancing Design and Technical Capabilities
3
+ description: >-
4
+ Explore the additional features offered, including exquisite UI design, smooth
5
+ conversation experience, fast deployment options, privacy and security
6
+ measures, and custom domain support.
7
+ tags:
8
+ - UI Design
9
+ - Conversation Experience
10
+ - Deployment
11
+ - Privacy
12
+ - Custom Domain
13
+ ---
14
+
15
+ # More Features
16
+
17
+ In addition to the above features, our design and technical capabilities will provide you with more assurance in usage:
18
+
19
+ - [x] 💎 **Exquisite UI Design**: Carefully designed interface with elegant appearance and smooth interaction effects, supporting light and dark themes, and adaptable to mobile devices. Supports PWA, providing an experience closer to native applications.
20
+ - [x] 🗣️ **Smooth Conversation Experience**: Responsive design brings a smooth conversation experience and supports full Markdown rendering, including code highlighting, LaTex formulas, Mermaid flowcharts, and more.
21
+ - [x] 💨 **Fast Deployment**: Use the Vercel platform or our Docker image, simply click the deploy button, and deployment can be completed within 1 minute without complex configuration processes.
22
+ - [x] 🔒 **Privacy and Security**: All data is stored locally in the user's browser, ensuring user privacy and security.
23
+ - [x] 🌐 **Custom Domain**: If users have their own domain, they can bind it to the platform for quick access to the chat assistant from anywhere.
24
+
25
+ > ✨ As the product continues to iterate, we will bring more exciting features!
26
+
27
+ ---
28
+
29
+ <Callout>
30
+ You can find our upcoming [Roadmap][github-project-link] plans in the Projects section.
31
+ </Callout>
32
+
33
+ [github-project-link]: https://github.com/lobehub/lobe-chat/projects
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: 更多 LobeChat 特性 - 提供精致 UI 设计和流畅的对话体验
3
+ description: 了解更多产品特性,包括精致 UI 设计、流畅的对话体验和快速部署功能,为用户带来更好的体验。
4
+ tags:
5
+ - 精致 UI 设计
6
+ - 流畅对话体验
7
+ - 快速部署
8
+ - 隐私安全
9
+ - 自定义域名
10
+ ---
11
+
12
+ # 更多特性
13
+
14
+ 除了上述功能特性以外,我们的所具有的设计和技术能力将为你带来了更多使用保障:
15
+
16
+ - [x] 💎 **精致 UI 设计**:经过精心设计的界面,具有优雅的外观和流畅的交互效果,支持亮暗色主题,适配移动端。支持 PWA,提供更加接近原生应用的体验。
17
+ - [x] 🗣️ **流畅的对话体验**:流式响应带来流畅的对话体验,并且支持完整的 Markdown 渲染,包括代码高亮、LaTex 公式、Mermaid 流程图等。
18
+ - [x] 💨 **快速部署**:使用 Vercel 平台或者我们的 Docker 镜像,只需点击一键部署按钮,即可在 1 分钟内完成部署,无需复杂的配置过程。
19
+ - [x] 🔒 **隐私安全**:所有数据保存在用户浏览器本地,保证用户的隐私安全。
20
+ - [x] 🌐 **自定义域名**:如果用户拥有自己的域名,可以将其绑定到平台上,方便在任何地方快速访问对话助手。
21
+
22
+ > ✨ 随着产品迭代持续更新,我们将会带来更多更多令人激动的功能!
23
+
24
+ ---
25
+
26
+ <Callout>你可以在 Projects 中找到我们后续的 [Roadmap][github-project-link] 计划</Callout>
27
+
28
+ [github-project-link]: https://github.com/lobehub/lobe-chat/projects
@@ -0,0 +1,66 @@
1
+ ---
2
+ title: LobeChat with Multi AI Providers
3
+ description: >-
4
+ Discover how LobeChat offers diverse model service provider support, including
5
+ AWS Bedrock, Google AI Gemini series, ChatGLM, and Moonshot AI, to cater to
6
+ various user needs. Explore local model support with Ollama integration.
7
+ tags:
8
+ - LobeChat
9
+ - model service providers
10
+ - AWS Bedrock
11
+ - Google AI Gemini
12
+ - ChatGLM
13
+ - Moonshot AI
14
+ - Together AI
15
+ - local model support
16
+ - Ollama
17
+ ---
18
+
19
+ # Multi-Model Service Provider Support
20
+
21
+ <Image
22
+ alt={'Multi-Model Service Provider Support'}
23
+ borderless
24
+ cover
25
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/b164bc54-8ba2-4c1e-b2f2-f4d7f7e7a551'}
26
+ />
27
+
28
+ <Callout>Available in version 0.123.0 and later</Callout>
29
+
30
+ In the continuous development of LobeChat, we deeply understand the importance of diversity in model service providers for meeting the needs of the community when providing AI conversation services. Therefore, we have expanded our support to multiple model service providers, rather than being limited to a single one, in order to offer users a more diverse and rich selection of conversations.
31
+
32
+ In this way, LobeChat can more flexibly adapt to the needs of different users, while also providing developers with a wider range of choices.
33
+
34
+ ## Supported Model Service Providers
35
+
36
+ We have implemented support for the following model service providers:
37
+
38
+ - **AWS Bedrock**: Integrated with AWS Bedrock service, supporting models such as **Claude / LLama2**, providing powerful natural language processing capabilities. [Learn more](https://aws.amazon.com/cn/bedrock)
39
+ - **Anthropic (Claude)**: Accessed Anthropic's **Claude** series models, including Claude 3 and Claude 2, with breakthroughs in multi-modal capabilities and extended context, setting a new industry benchmark. [Learn more](https://www.anthropic.com/claude)
40
+ - **Google AI (Gemini Pro, Gemini Vision)**: Access to Google's **Gemini** series models, including Gemini and Gemini Pro, to support advanced language understanding and generation. [Learn more](https://deepmind.google/technologies/gemini/)
41
+ - **ChatGLM**: Added the **ChatGLM** series models from Zhipuai (GLM-4/GLM-4-vision/GLM-3-turbo), providing users with another efficient conversation model choice. [Learn more](https://www.zhipuai.cn/)
42
+ - **Moonshot AI (Dark Side of the Moon)**: Integrated with the Moonshot series models, an innovative AI startup from China, aiming to provide deeper conversation understanding. [Learn more](https://www.moonshot.cn/)
43
+ - **Groq**: Accessed Groq's AI models, efficiently processing message sequences and generating responses, capable of multi-turn dialogues and single-interaction tasks. [Learn more](https://groq.com/)
44
+ - **OpenRouter**: Supports routing of models including **Claude 3**, **Gemma**, **Mistral**, **Llama2** and **Cohere**, with intelligent routing optimization to improve usage efficiency, open and flexible. [Learn more](https://openrouter.ai/)
45
+ - **01.AI (Yi Model)**: Integrated the 01.AI models, with series of APIs featuring fast inference speed, which not only shortened the processing time, but also maintained excellent model performance. [Learn more](https://01.ai/)
46
+ - **Together.ai**: Over 100 leading open-source Chat, Language, Image, Code, and Embedding models are available through the Together Inference API. For these models you pay just for what you use. [Learn more](https://www.together.ai/)
47
+ - **Minimax**: Integrated the Minimax models, including the MoE model **abab6**, offers a broader range of choices. [Learn more](https://www.minimaxi.com/)
48
+ - **DeepSeek**: Integrated with the DeepSeek series models, an innovative AI startup from China, The product has been designed to provide a model that balances performance with price. [Learn more](https://www.deepseek.com/)
49
+ - **Qwen**: Integrated with the Qwen series models, including the latest **qwen-turbo**, **qwen-plus** and **qwen-max**. [Learn more](https://help.aliyun.com/zh/dashscope/developer-reference/model-introduction)
50
+
51
+ At the same time, we are also planning to support more model service providers, such as Replicate and Perplexity, to further enrich our service provider library. If you would like LobeChat to support your favorite service provider, feel free to join our [community discussion](https://github.com/lobehub/lobe-chat/discussions/1284).
52
+
53
+ ## Local Model Support
54
+
55
+ <Image
56
+ alt={'Local Model Support'}
57
+ borderless
58
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/ca9a21bc-ea6c-4c90-bf4a-fa53b4fb2b5c'}
59
+ />
60
+
61
+ To meet the specific needs of users, LobeChat also supports the use of local models based on [Ollama](https://ollama.ai), allowing users to flexibly use their own or third-party models. For more details, see [Local Model Support](/docs/usage/features/local-llm).
62
+
63
+ <Cards>
64
+ <Card href={'/docs/usage/providers'} title={'Using Multiple Model Providers'} />
65
+ <Card href={'/docs/usage/providers/ollama'} title={'Using Ollama Local Model'} />
66
+ </Cards>
@@ -0,0 +1,66 @@
1
+ ---
2
+ title: LobeChat 支持多模型服务商
3
+ description: 了解 LobeChat 在多模型服务商支持方面的最新进展,包括已支持的模型服务商和计划中的扩展,以及本地模型支持的使用方式。
4
+ tags:
5
+ - LobeChat
6
+ - AI 会话服务
7
+ - 模型服务商
8
+ - 多模型支持
9
+ - 本地模型支持
10
+ - AWS Bedrock
11
+ - Google AI
12
+ - ChatGLM
13
+ - Moonshot AI
14
+ - 01 AI
15
+ - Together AI
16
+ - Ollama
17
+ ---
18
+
19
+ # 多模型服务商支持
20
+
21
+ <Image
22
+ alt={'多模型服务商支持'}
23
+ borderless
24
+ cover
25
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/b164bc54-8ba2-4c1e-b2f2-f4d7f7e7a551'}
26
+ />
27
+
28
+ <Callout>在 0.123.0 及以后版本中可用</Callout>
29
+
30
+ 在 LobeChat 的不断发展过程中,我们深刻理解到在提供 AI 会话服务时模型服务商的多样性对于满足社区需求的重要性。因此,我们不再局限于单一的模型服务商,而是拓展了对多种模型服务商的支持,以便为用户提供更为丰富和多样化的会话选择。
31
+
32
+ 通过这种方式,LobeChat 能够更灵活地适应不同用户的需求,同时也为开发者提供了更为广泛的选择空间。
33
+
34
+ ## 已支持的模型服务商
35
+
36
+ 我们已经实现了对以下模型服务商的支持:
37
+
38
+ - **AWS Bedrock**:集成了 AWS Bedrock 服务,支持了 **Claude / LLama2** 等模型,提供了强大的自然语言处理能力。[了解更多](https://aws.amazon.com/cn/bedrock)
39
+ - **Google AI (Gemini Pro、Gemini Vision)**:接入了 Google 的 **Gemini** 系列模型,包括 Gemini 和 Gemini Pro,以支持更高级的语言理解和生成。[了解更多](https://deepmind.google/technologies/gemini/)
40
+ - **Anthropic (Claude)**:接入了 Anthropic 的 **Claude** 系列模型,包括 Claude 3 和 Claude 2,多模态突破,超长上下文,树立行业新基准。[了解更多](https://www.anthropic.com/claude)
41
+ - **ChatGLM**:加入了智谱的 **ChatGLM** 系列模型(GLM-4/GLM-4-vision/GLM-3-turbo),为用户提供了另一种高效的会话模型选择。[了解更多](https://www.zhipuai.cn/)
42
+ - **Moonshot AI (月之暗面)**:集成了 Moonshot 系列模型,这是一家来自中国的创新性 AI 创业公司,旨在提供更深层次的会话理解。[了解更多](https://www.moonshot.cn/)
43
+ - **Together.ai**:集成部署了数百种开源模型和向量模型,无需本地部署即可随时访问这些模型。[了解更多](https://www.together.ai/)
44
+ - **01.AI (零一万物)**:集成了零一万物模型,系列 API 具备较快的推理速度,这不仅缩短了处理时间,同时也保持了出色的模型效果。[了解更多](https://www.lingyiwanwu.com/)
45
+ - **Groq**:接入了 Groq 的 AI 模型,高效处理消息序列,生成回应,胜任多轮对话及单次交互任务。[了解更多](https://groq.com/)
46
+ - **OpenRouter**:其支持包括 **Claude 3**,**Gemma**,**Mistral**,**Llama2**和**Cohere**等模型路由,支持智能路由优化,提升使用效率,开放且灵活。[了解更多](https://openrouter.ai/)
47
+ - **Minimax**: 接入了 Minimax 的 AI 模型,包括 MoE 模型 **abab6**,提供了更多的选择空间。[了解更多](https://www.minimaxi.com/)
48
+ - **DeepSeek**: 接入了 DeepSeek 的 AI 模型,包括最新的 **DeepSeek-V2**,提供兼顾性能与价格的模型。[了解更多](https://www.deepseek.com/)
49
+ - **Qwen (通义千问)**: 接入了 Qwen 的 AI 模型,包括最新的 **qwen-turbo**,**qwen-plus** 和 **qwen-max** 等模型。[了解更多](https://help.aliyun.com/zh/dashscope/developer-reference/model-introduction)
50
+
51
+ 同时,我们也在计划支持更多的模型服务商,如 Replicate 和 Perplexity 等,以进一步丰富我们的服务商库。如果你希望让 LobeChat 支持你喜爱的服务商,欢迎加入我们的[社区讨论](https://github.com/lobehub/lobe-chat/discussions/1284)。
52
+
53
+ ## 本地模型支持
54
+
55
+ <Image
56
+ alt={'本地模型支持'}
57
+ borderless
58
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/ca9a21bc-ea6c-4c90-bf4a-fa53b4fb2b5c'}
59
+ />
60
+
61
+ 为了满足特定用户的需求,LobeChat 还基于 [Ollama](https://ollama.ai) 支持了本地模型的使用,让用户能够更灵活地使用自己的或第三方的模型,详见 [本地模型支持](/docs/usage/features/local-llm)。
62
+
63
+ <Cards>
64
+ <Card href={'/docs/usage/providers'} title={'使用多模型服务商'} />
65
+ <Card href={'/docs/usage/providers/ollama'} title={'使用 Ollama 本地模型'} />
66
+ </Cards>
@@ -0,0 +1,89 @@
1
+ ---
2
+ title: Plugin System in LobeChat
3
+ description: >-
4
+ Explore the diverse plugin ecosystem of LobeChat, extending its capabilities
5
+ to provide real-time information, interact with various platforms, and
6
+ simplify user interactions.
7
+ tags:
8
+ - LobeChat
9
+ - Plugin Ecosystem
10
+ - Assistant Functionality
11
+ - Plugin Development
12
+ - SDK
13
+ - Chat Application
14
+ ---
15
+
16
+ # Plugin System
17
+
18
+ <Image
19
+ alt={'Plugin System'}
20
+ borderless
21
+ cover
22
+ src={
23
+ 'https://github-production-user-asset-6210df.s3.amazonaws.com/17870709/268670883-33c43a5c-a512-467e-855c-fa299548cce5.png'
24
+ }
25
+ />
26
+
27
+ The plugin ecosystem of LobeChat is an important extension of its core functionality, greatly enhancing the practicality and flexibility of the LobeChat assistant.
28
+
29
+ <Video src="https://github.com/lobehub/lobe-chat/assets/28616219/f29475a3-f346-4196-a435-41a6373ab9e2" />
30
+
31
+ By utilizing plugins, LobeChat assistants can obtain and process real-time information, such as searching for web information and providing users with instant and relevant news.
32
+
33
+ In addition, these plugins are not limited to news aggregation, but can also extend to other practical functions, such as quickly searching documents, generating images, obtaining data from various platforms like Bilibili, Steam, and interacting with various third-party services.
34
+
35
+ Learn more about [plugin usage](/en-US/usage/plugins/basic) by checking it out.
36
+
37
+ <Callout type={'tip'}>
38
+ To help developers better participate in this ecosystem, we provide comprehensive development
39
+ resources. This includes detailed component development documentation, a fully-featured software
40
+ development kit (SDK), and template examples, all aimed at simplifying the development process and
41
+ lowering the entry barrier for developers.
42
+ </Callout>
43
+
44
+ <Callout type={'important'}>
45
+ We welcome developers to utilize these resources, unleash their creativity, and write
46
+ feature-rich, user-friendly plugins. Through collective efforts, we can continuously expand the
47
+ functional boundaries of the chat application and explore a more intelligent and efficient
48
+ creativity platform.
49
+ </Callout>
50
+
51
+ ## Plugin Ecosystem
52
+
53
+ <Callout>
54
+ If you are interested in plugin development, please refer to our [📘 Plugin Development
55
+ Guide](/docs/usage/plugins/development) in the Wiki.
56
+ </Callout>
57
+
58
+ - [lobe-chat-plugins][lobe-chat-plugins]: This is the plugin index for LobeChat. It retrieves the list of plugins from the index.json of this repository and displays them to the users.
59
+ - [chat-plugin-template][chat-plugin-template]: Chat Plugin plugin development template, you can quickly create a new plugin project through the project template.
60
+ - [@lobehub/chat-plugin-sdk][chat-plugin-sdk]: The LobeChat plugin SDK can help you create excellent Lobe Chat plugins.
61
+ - [@lobehub/chat-plugins-gateway][chat-plugins-gateway]: The LobeChat plugin gateway is a backend service that serves as the gateway for LobeChat plugins. We deploy this service using Vercel.
62
+
63
+ ### Roadmap Progress
64
+
65
+ The plugin system of LobeChat has now entered a stable stage, and we have basically completed most of the functionality required by the plugin system. However, we are still planning and considering the new possibilities that plugins can bring to us. You can learn more in the following Issues:
66
+
67
+ <Steps>
68
+ ### ✅ Phase One of Plugins
69
+
70
+ Implementing the separation of plugins from the main body, splitting the plugins into independent repositories for maintenance, and implementing dynamic loading of plugins. [**#73**](https://github.com/lobehub/lobe-chat/issues/73)
71
+
72
+ ### ✅ Phase Two of Plugins
73
+
74
+ The security and stability of plugin usage, more accurate presentation of abnormal states, maintainability and developer-friendliness of the plugin architecture. [**#97**](https://github.com/lobehub/lobe-chat/issues/97)
75
+
76
+ ### ✅ Phase Three of Plugins
77
+
78
+ Higher-level and improved customization capabilities, support for OpenAPI schema invocation, compatibility with ChatGPT plugins, and the addition of Midjourney plugins. [**#411**](https://github.com/lobehub/lobe-chat/discussions/#411)
79
+
80
+ ### 💭 Phase Four of Plugins
81
+
82
+ Comprehensive authentication, visual configuration of plugin definitions, Plugin SDK CLI, Python language development template, any other ideas? Join the discussion: [**#1310**](https://github.com/lobehub/lobe-chat/discussions/#1310)
83
+
84
+ </Steps>
85
+
86
+ [chat-plugin-sdk]: https://github.com/lobehub/chat-plugin-sdk
87
+ [chat-plugin-template]: https://github.com/lobehub/chat-plugin-template
88
+ [chat-plugins-gateway]: https://github.com/lobehub/chat-plugins-gateway
89
+ [lobe-chat-plugins]: https://github.com/lobehub/lobe-chat-plugins
@@ -0,0 +1,78 @@
1
+ ---
2
+ title: LobeChat 插件生态系统 - 功能扩展与开发资源
3
+ description: 了解 LobeChat 插件生态系统如何增强 LobeChat 助手的实用性和灵活性,以及提供的开发资源和插件开发指南。
4
+ tags:
5
+ - LobeChat
6
+ - 插件生态系统
7
+ - 开发资源
8
+ - 插件开发指南
9
+ ---
10
+
11
+ # 插件系统
12
+
13
+ <Image
14
+ alt={'插件系统'}
15
+ borderless
16
+ cover
17
+ src={
18
+ 'https://github-production-user-asset-6210df.s3.amazonaws.com/17870709/268670883-33c43a5c-a512-467e-855c-fa299548cce5.png'
19
+ }
20
+ />
21
+
22
+ LobeChat 的插件生态系统是其核心功能的重要扩展,它极大地增强了 LobeChat 助手的实用性和灵活性。
23
+
24
+ <Video src="https://github.com/lobehub/lobe-chat/assets/28616219/f29475a3-f346-4196-a435-41a6373ab9e2" />
25
+
26
+ 通过利用插件,LobeChat 的助手们能够实现实时信息的获取和处理,例如搜索网络信息,为用户提供即时且相关的资讯。
27
+
28
+ 此外,这些插件不仅局限于新闻聚合,还可以扩展到其他实用的功能,如快速检索文档、生成图片、获取 Bilibili 、Steam 等各种平台数据,以及与其他各式各样的第三方服务交互。
29
+
30
+ 通过查看 [插件使用](/docs/usage/plugins/basic) 了解更多。
31
+
32
+ <Callout type={'tip'}>
33
+ 为了帮助开发者更好地参与到这个生态中来,我们在提供了全面的开发资源。这包括详尽的组件开发文档、功能齐全的软件开发工具包(SDK),以及样板示例,这些都是为了简化开发过程,降低开发者的入门门槛。
34
+ </Callout>
35
+
36
+ <Callout type={'important'}>
37
+ 我们欢迎开发者利用这些资源,发挥创造力,编写出功能丰富、用户友好的插件。通过共同的努力,我们可以不断扩展聊天应用的功能界限,探索一个更加智能、高效的创造力平台。
38
+ </Callout>
39
+
40
+ ## 插件生态体系
41
+
42
+ <Callout>
43
+ 如果你对插件开发感兴趣,请在 Wiki 中查阅我们的 [📘
44
+ 插件开发指南](/docs/usage/plugins/development)。
45
+ </Callout>
46
+
47
+ - [lobe-chat-plugins][lobe-chat-plugins]:这是 LobeChat 的插件索引。它从该仓库的 index.json 中获取插件列表并显示给用户。
48
+ - [chat-plugin-template][chat-plugin-template]: Chat Plugin 插件开发模版,你可以通过项目模版快速新建插件项目。
49
+ - [@lobehub/chat-plugin-sdk][chat-plugin-sdk]:LobeChat 插件 SDK 可帮助您创建出色的 Lobe Chat 插件。
50
+ - [@lobehub/chat-plugins-gateway][chat-plugins-gateway]:LobeChat 插件网关是一个后端服务,作为 LobeChat 插件的网关。我们使用 Vercel 部署此服务。
51
+
52
+ ### 路线进展
53
+
54
+ LobeChat 的插件系统目前已初步进入一个稳定阶段,我们已基本完成大部分插件系统所需的功能,但我们仍然在规划与思考插件能为我们带来的全新可能性。您可以在以下 Issues 中了解更多信息:
55
+
56
+ <Steps>
57
+ ### ✅ 插件一期
58
+
59
+ 实现插件与主体分离,将插件拆分为独立仓库维护,并实现插件的动态加载。 [**#73**](https://github.com/lobehub/lobe-chat/issues/73)
60
+
61
+ ### ✅ 插件二期
62
+
63
+ 插件的安全性与使用的稳定性,更加精准地呈现异常状态,插件架构的可维护性与开发者友好。[**#97**](https://github.com/lobehub/lobe-chat/issues/97)
64
+
65
+ ### ✅ 插件三期
66
+
67
+ 更高阶与完善的自定义能力,支持 OpenAPI schema 调用、兼容 ChatGPT 插件、新增 Midjourney 插件。 [**#411**](https://github.com/lobehub/lobe-chat/discussions/#411)
68
+
69
+ ### 💭 插件四期
70
+
71
+ 完善的鉴权、可视化配置插件定义、 Plugin SDK CLI 、 Python 语言研发模板、还有什么想法?欢迎参与讨论: [**#1310**](https://github.com/lobehub/lobe-chat/discussions/#1310)
72
+
73
+ </Steps>
74
+
75
+ [chat-plugin-sdk]: https://github.com/lobehub/chat-plugin-sdk
76
+ [chat-plugin-template]: https://github.com/lobehub/chat-plugin-template
77
+ [chat-plugins-gateway]: https://github.com/lobehub/chat-plugins-gateway
78
+ [lobe-chat-plugins]: https://github.com/lobehub/lobe-chat-plugins
@@ -0,0 +1,74 @@
1
+ ---
2
+ title: LobeChat support Progressive Web Apps (PWA)
3
+ description: >-
4
+ Discover how LobeChat utilizes Progressive Web App (PWA) technology to provide
5
+ a seamless and near-native app experience on both desktop and mobile devices.
6
+ Learn how to install LobeChat as a desktop app for enhanced convenience.
7
+ tags:
8
+ - Progressive Web App
9
+ - PWA
10
+ - LobeChat
11
+ - Web Applications
12
+ - User Experience
13
+ ---
14
+
15
+ # Progressive Web App (PWA)
16
+
17
+ <Image
18
+ alt={'Progressive Web App (PWA)'}
19
+ borderless
20
+ cover
21
+ src={'https://github.com/lobehub/lobe-chat/assets/28616219/ecc8364a-cfc4-4a3d-b6fd-68b2d9bc5f0d'}
22
+ />
23
+
24
+ We understand the importance of providing a seamless experience for users in today's multi-device environment. To achieve this, we have adopted Progressive Web App [PWA](https://support.google.com/chrome/answer/9658361) technology, which is a modern web technology that elevates web applications to a near-native app experience. Through PWA, LobeChat is able to provide a highly optimized user experience on both desktop and mobile devices, while maintaining lightweight and high performance characteristics. Visually and perceptually, we have also carefully designed it to ensure that its interface is indistinguishable from a native app, providing smooth animations, responsive layouts, and adaptation to different screen resolutions of various devices.
25
+
26
+ If you are unfamiliar with the installation process of PWA, you can follow the steps below to add LobeChat as a desktop app (also applicable to mobile devices):
27
+
28
+ ## Running on Chrome / Edge
29
+
30
+ <Callout type={'important'}>
31
+ On macOS, when using a Chrome-installed PWA, it is required that Chrome be open, otherwise Chrome
32
+ will automatically open and then launch the PWA app.
33
+ </Callout>
34
+
35
+ <Steps>
36
+
37
+ ### Run Chrome or Edge browser on your computer
38
+
39
+ ### Visit the LobeChat webpage
40
+
41
+ ### In the top right corner of the address bar, click the <kbd>Install</kbd> icon
42
+
43
+ ### Follow the on-screen instructions to complete the PWA installation
44
+
45
+ </Steps>
46
+
47
+ ## Running on Safari
48
+
49
+ Safari PWA requires macOS Ventura or later. The PWA installed by Safari does not require Safari to be open; you can directly open the PWA app.
50
+
51
+ <Steps>
52
+
53
+ ### Run Safari browser on your computer
54
+
55
+ ### Visit the LobeChat webpage
56
+
57
+ ### In the top right corner of the address bar, click the <kbd>Share</kbd> icon
58
+
59
+ ### Click <kbd>Add to Dock</kbd>
60
+
61
+ ### Follow the on-screen instructions to complete the PWA installation
62
+
63
+ </Steps>
64
+
65
+ <Callout type={'tip'}>
66
+ The default installed LobeChat PWA icon has a black background, you can use <kbd>cmd</kbd> + <kbd>i</kbd> to paste the following image to replace it with a white background.
67
+ </Callout>
68
+
69
+ <Image
70
+ alt={'PWA White Icon'}
71
+ borderless
72
+ cover
73
+ src={'https://github.com/lobehub/lobe-chat/assets/36695271/16ce82cb-49be-4d4d-ac86-4403a1536917'}
74
+ />