@geminilight/mindos 0.6.40 → 0.6.42

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 (422) hide show
  1. package/_standalone/.mindos-build-version +1 -1
  2. package/_standalone/.next/BUILD_ID +1 -1
  3. package/_standalone/.next/app-path-routes-manifest.json +17 -16
  4. package/_standalone/.next/build-manifest.json +3 -3
  5. package/_standalone/.next/cache/.previewinfo +1 -1
  6. package/_standalone/.next/cache/.rscinfo +1 -1
  7. package/_standalone/.next/cache/config.json +3 -3
  8. package/_standalone/.next/prerender-manifest.json +3 -3
  9. package/_standalone/.next/react-loadable-manifest.json +5 -1
  10. package/_standalone/.next/routes-manifest.json +6 -0
  11. package/_standalone/.next/server/app/.well-known/agent-card.json/route_client-reference-manifest.js +1 -1
  12. package/_standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  13. package/_standalone/.next/server/app/_global-error.html +2 -2
  14. package/_standalone/.next/server/app/_global-error.rsc +1 -1
  15. package/_standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  16. package/_standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  17. package/_standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  18. package/_standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  19. package/_standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  20. package/_standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  21. package/_standalone/.next/server/app/_not-found/page.js +1 -1
  22. package/_standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  23. package/_standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  24. package/_standalone/.next/server/app/agents/[agentKey]/page.js +1 -1
  25. package/_standalone/.next/server/app/agents/[agentKey]/page.js.nft.json +1 -1
  26. package/_standalone/.next/server/app/agents/[agentKey]/page_client-reference-manifest.js +1 -1
  27. package/_standalone/.next/server/app/agents/page.js +2 -2
  28. package/_standalone/.next/server/app/agents/page.js.nft.json +1 -1
  29. package/_standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  30. package/_standalone/.next/server/app/api/a2a/agents/route_client-reference-manifest.js +1 -1
  31. package/_standalone/.next/server/app/api/a2a/delegations/route_client-reference-manifest.js +1 -1
  32. package/_standalone/.next/server/app/api/a2a/discover/route_client-reference-manifest.js +1 -1
  33. package/_standalone/.next/server/app/api/a2a/route_client-reference-manifest.js +1 -1
  34. package/_standalone/.next/server/app/api/acp/config/route_client-reference-manifest.js +1 -1
  35. package/_standalone/.next/server/app/api/acp/detect/route_client-reference-manifest.js +1 -1
  36. package/_standalone/.next/server/app/api/acp/install/route_client-reference-manifest.js +1 -1
  37. package/_standalone/.next/server/app/api/acp/registry/route_client-reference-manifest.js +1 -1
  38. package/_standalone/.next/server/app/api/acp/session/route_client-reference-manifest.js +1 -1
  39. package/_standalone/.next/server/app/api/agent-activity/route_client-reference-manifest.js +1 -1
  40. package/_standalone/.next/server/app/api/ask/route.js +1 -1
  41. package/_standalone/.next/server/app/api/ask/route.js.nft.json +1 -1
  42. package/_standalone/.next/server/app/api/ask/route_client-reference-manifest.js +1 -1
  43. package/_standalone/.next/server/app/api/ask-sessions/route_client-reference-manifest.js +1 -1
  44. package/_standalone/.next/server/app/api/auth/route_client-reference-manifest.js +1 -1
  45. package/_standalone/.next/server/app/api/backlinks/route.js.nft.json +1 -1
  46. package/_standalone/.next/server/app/api/backlinks/route_client-reference-manifest.js +1 -1
  47. package/_standalone/.next/server/app/api/bootstrap/route.js.nft.json +1 -1
  48. package/_standalone/.next/server/app/api/bootstrap/route_client-reference-manifest.js +1 -1
  49. package/_standalone/.next/server/app/api/changes/route.js.nft.json +1 -1
  50. package/_standalone/.next/server/app/api/changes/route_client-reference-manifest.js +1 -1
  51. package/_standalone/.next/server/app/api/export/route.js.nft.json +1 -1
  52. package/_standalone/.next/server/app/api/export/route_client-reference-manifest.js +1 -1
  53. package/_standalone/.next/server/app/api/extract-pdf/route_client-reference-manifest.js +1 -1
  54. package/_standalone/.next/server/app/api/file/import/route.js.nft.json +1 -1
  55. package/_standalone/.next/server/app/api/file/import/route_client-reference-manifest.js +1 -1
  56. package/_standalone/.next/server/app/api/file/route.js.nft.json +1 -1
  57. package/_standalone/.next/server/app/api/file/route_client-reference-manifest.js +1 -1
  58. package/_standalone/.next/server/app/api/files/route.js.nft.json +1 -1
  59. package/_standalone/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
  60. package/_standalone/.next/server/app/api/git/route.js.nft.json +1 -1
  61. package/_standalone/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  62. package/_standalone/.next/server/app/api/graph/route.js.nft.json +1 -1
  63. package/_standalone/.next/server/app/api/graph/route_client-reference-manifest.js +1 -1
  64. package/_standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  65. package/_standalone/.next/server/app/api/inbox/route.js.nft.json +1 -1
  66. package/_standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
  67. package/_standalone/.next/server/app/api/init/route.js.nft.json +1 -1
  68. package/_standalone/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  69. package/_standalone/.next/server/app/api/mcp/agents/route.js.nft.json +1 -1
  70. package/_standalone/.next/server/app/api/mcp/agents/route_client-reference-manifest.js +1 -1
  71. package/_standalone/.next/server/app/api/mcp/install/route.js +1 -1
  72. package/_standalone/.next/server/app/api/mcp/install/route_client-reference-manifest.js +1 -1
  73. package/_standalone/.next/server/app/api/mcp/install-skill/route.js.nft.json +1 -1
  74. package/_standalone/.next/server/app/api/mcp/install-skill/route_client-reference-manifest.js +1 -1
  75. package/_standalone/.next/server/app/api/mcp/restart/route_client-reference-manifest.js +1 -1
  76. package/_standalone/.next/server/app/api/mcp/status/route.js +1 -1
  77. package/_standalone/.next/server/app/api/mcp/status/route_client-reference-manifest.js +1 -1
  78. package/_standalone/.next/server/app/api/mcp/uninstall/route.js +1 -0
  79. package/_standalone/.next/server/app/api/mcp/uninstall/route.js.nft.json +1 -0
  80. package/_standalone/.next/server/app/api/mcp/uninstall/route_client-reference-manifest.js +1 -0
  81. package/_standalone/.next/server/app/api/monitoring/route.js.nft.json +1 -1
  82. package/_standalone/.next/server/app/api/monitoring/route_client-reference-manifest.js +1 -1
  83. package/_standalone/.next/server/app/api/recent-files/route.js.nft.json +1 -1
  84. package/_standalone/.next/server/app/api/recent-files/route_client-reference-manifest.js +1 -1
  85. package/_standalone/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  86. package/_standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  87. package/_standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  88. package/_standalone/.next/server/app/api/settings/list-models/route_client-reference-manifest.js +1 -1
  89. package/_standalone/.next/server/app/api/settings/reset-token/route_client-reference-manifest.js +1 -1
  90. package/_standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
  91. package/_standalone/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  92. package/_standalone/.next/server/app/api/settings/test-key/route_client-reference-manifest.js +1 -1
  93. package/_standalone/.next/server/app/api/setup/check-path/route_client-reference-manifest.js +1 -1
  94. package/_standalone/.next/server/app/api/setup/check-port/route_client-reference-manifest.js +1 -1
  95. package/_standalone/.next/server/app/api/setup/generate-token/route_client-reference-manifest.js +1 -1
  96. package/_standalone/.next/server/app/api/setup/ls/route_client-reference-manifest.js +1 -1
  97. package/_standalone/.next/server/app/api/setup/route_client-reference-manifest.js +1 -1
  98. package/_standalone/.next/server/app/api/skills/route.js +4 -4
  99. package/_standalone/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  100. package/_standalone/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
  101. package/_standalone/.next/server/app/api/tree-version/route.js.nft.json +1 -1
  102. package/_standalone/.next/server/app/api/tree-version/route_client-reference-manifest.js +1 -1
  103. package/_standalone/.next/server/app/api/uninstall/route_client-reference-manifest.js +1 -1
  104. package/_standalone/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  105. package/_standalone/.next/server/app/api/update-check/route_client-reference-manifest.js +1 -1
  106. package/_standalone/.next/server/app/api/update-status/route_client-reference-manifest.js +1 -1
  107. package/_standalone/.next/server/app/api/workflows/route.js.nft.json +1 -1
  108. package/_standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  109. package/_standalone/.next/server/app/changes/page.js +1 -1
  110. package/_standalone/.next/server/app/changes/page.js.nft.json +1 -1
  111. package/_standalone/.next/server/app/changes/page_client-reference-manifest.js +1 -1
  112. package/_standalone/.next/server/app/echo/[segment]/page.js +1 -1
  113. package/_standalone/.next/server/app/echo/[segment]/page.js.nft.json +1 -1
  114. package/_standalone/.next/server/app/echo/[segment]/page_client-reference-manifest.js +1 -1
  115. package/_standalone/.next/server/app/echo/page.js +1 -1
  116. package/_standalone/.next/server/app/echo/page.js.nft.json +1 -1
  117. package/_standalone/.next/server/app/echo/page_client-reference-manifest.js +1 -1
  118. package/_standalone/.next/server/app/explore/page.js +1 -1
  119. package/_standalone/.next/server/app/explore/page.js.nft.json +1 -1
  120. package/_standalone/.next/server/app/explore/page_client-reference-manifest.js +1 -1
  121. package/_standalone/.next/server/app/help/page.js +2 -2
  122. package/_standalone/.next/server/app/help/page.js.nft.json +1 -1
  123. package/_standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
  124. package/_standalone/.next/server/app/login/page.js +1 -1
  125. package/_standalone/.next/server/app/login/page.js.nft.json +1 -1
  126. package/_standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  127. package/_standalone/.next/server/app/page.js +2 -2
  128. package/_standalone/.next/server/app/page.js.nft.json +1 -1
  129. package/_standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  130. package/_standalone/.next/server/app/setup/page.js +2 -2
  131. package/_standalone/.next/server/app/setup/page.js.nft.json +1 -1
  132. package/_standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  133. package/_standalone/.next/server/app/trash/page.js +3 -3
  134. package/_standalone/.next/server/app/trash/page.js.nft.json +1 -1
  135. package/_standalone/.next/server/app/trash/page_client-reference-manifest.js +1 -1
  136. package/_standalone/.next/server/app/view/[...path]/page.js +3 -3
  137. package/_standalone/.next/server/app/view/[...path]/page.js.nft.json +1 -1
  138. package/_standalone/.next/server/app/view/[...path]/page_client-reference-manifest.js +1 -1
  139. package/_standalone/.next/server/app-paths-manifest.json +17 -16
  140. package/_standalone/.next/server/chunks/1550.js +1 -1
  141. package/_standalone/.next/server/chunks/2190.js +11 -0
  142. package/_standalone/.next/server/chunks/{6365.js → 3262.js} +2 -2
  143. package/_standalone/.next/server/chunks/5648.js +2 -0
  144. package/_standalone/.next/server/chunks/6539.js +1 -1
  145. package/_standalone/.next/server/chunks/8388.js +1 -1
  146. package/_standalone/.next/server/chunks/953.js +1 -1
  147. package/_standalone/.next/server/chunks/9539.js +219 -0
  148. package/_standalone/.next/server/middleware-build-manifest.js +1 -1
  149. package/_standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
  150. package/_standalone/.next/server/next-font-manifest.js +1 -1
  151. package/_standalone/.next/server/next-font-manifest.json +1 -1
  152. package/_standalone/.next/server/pages/500.html +2 -2
  153. package/_standalone/.next/server/server-reference-manifest.js +1 -1
  154. package/_standalone/.next/server/server-reference-manifest.json +1 -1
  155. package/_standalone/.next/static/GB-YReQ58tsvCuwlzrkMZ/_buildManifest.js +1 -0
  156. package/_standalone/.next/static/chunks/1053-67f0ce444d1227e2.js +29 -0
  157. package/_standalone/.next/static/chunks/{8663-de911d2d395622be.js → 1880-c2a9e76201841c86.js} +1 -1
  158. package/_standalone/.next/static/chunks/3637.0541ac2d0ea7de1f.js +1 -0
  159. package/_standalone/.next/static/chunks/4563-b2a2ce80aff845af.js +6 -0
  160. package/_standalone/.next/static/chunks/6981-3d7dcac2d12a5670.js +1 -0
  161. package/_standalone/.next/static/chunks/7144-5febf62f1a79fe64.js +1 -0
  162. package/_standalone/.next/static/chunks/app/.well-known/agent-card.json/route-84943536516b00b2.js +1 -0
  163. package/_standalone/.next/static/chunks/app/_global-error/page-84943536516b00b2.js +1 -0
  164. package/_standalone/.next/static/chunks/app/agents/[agentKey]/page-773071a99c4daac2.js +1 -0
  165. package/_standalone/.next/static/chunks/app/agents/page-eac6c5f6650dbf62.js +5 -0
  166. package/_standalone/.next/static/chunks/app/api/a2a/agents/route-84943536516b00b2.js +1 -0
  167. package/_standalone/.next/static/chunks/app/api/a2a/delegations/route-84943536516b00b2.js +1 -0
  168. package/_standalone/.next/static/chunks/app/api/a2a/discover/route-84943536516b00b2.js +1 -0
  169. package/_standalone/.next/static/chunks/app/api/a2a/route-84943536516b00b2.js +1 -0
  170. package/_standalone/.next/static/chunks/app/api/acp/config/route-84943536516b00b2.js +1 -0
  171. package/_standalone/.next/static/chunks/app/api/acp/detect/route-84943536516b00b2.js +1 -0
  172. package/_standalone/.next/static/chunks/app/api/acp/install/route-84943536516b00b2.js +1 -0
  173. package/_standalone/.next/static/chunks/app/api/acp/registry/route-84943536516b00b2.js +1 -0
  174. package/_standalone/.next/static/chunks/app/api/acp/session/route-84943536516b00b2.js +1 -0
  175. package/_standalone/.next/static/chunks/app/api/agent-activity/route-84943536516b00b2.js +1 -0
  176. package/_standalone/.next/static/chunks/app/api/ask/route-84943536516b00b2.js +1 -0
  177. package/_standalone/.next/static/chunks/app/api/ask-sessions/route-84943536516b00b2.js +1 -0
  178. package/_standalone/.next/static/chunks/app/api/auth/route-84943536516b00b2.js +1 -0
  179. package/_standalone/.next/static/chunks/app/api/backlinks/route-84943536516b00b2.js +1 -0
  180. package/_standalone/.next/static/chunks/app/api/bootstrap/route-84943536516b00b2.js +1 -0
  181. package/_standalone/.next/static/chunks/app/api/changes/route-84943536516b00b2.js +1 -0
  182. package/_standalone/.next/static/chunks/app/api/export/route-84943536516b00b2.js +1 -0
  183. package/_standalone/.next/static/chunks/app/api/extract-pdf/route-84943536516b00b2.js +1 -0
  184. package/_standalone/.next/static/chunks/app/api/file/import/route-84943536516b00b2.js +1 -0
  185. package/_standalone/.next/static/chunks/app/api/file/route-84943536516b00b2.js +1 -0
  186. package/_standalone/.next/static/chunks/app/api/files/route-84943536516b00b2.js +1 -0
  187. package/_standalone/.next/static/chunks/app/api/git/route-84943536516b00b2.js +1 -0
  188. package/_standalone/.next/static/chunks/app/api/graph/route-84943536516b00b2.js +1 -0
  189. package/_standalone/.next/static/chunks/app/api/health/route-84943536516b00b2.js +1 -0
  190. package/_standalone/.next/static/chunks/app/api/inbox/route-84943536516b00b2.js +1 -0
  191. package/_standalone/.next/static/chunks/app/api/init/route-84943536516b00b2.js +1 -0
  192. package/_standalone/.next/static/chunks/app/api/mcp/agents/route-84943536516b00b2.js +1 -0
  193. package/_standalone/.next/static/chunks/app/api/mcp/install/route-84943536516b00b2.js +1 -0
  194. package/_standalone/.next/static/chunks/app/api/mcp/install-skill/route-84943536516b00b2.js +1 -0
  195. package/_standalone/.next/static/chunks/app/api/mcp/restart/route-84943536516b00b2.js +1 -0
  196. package/_standalone/.next/static/chunks/app/api/mcp/status/route-84943536516b00b2.js +1 -0
  197. package/_standalone/.next/static/chunks/app/api/mcp/uninstall/route-84943536516b00b2.js +1 -0
  198. package/_standalone/.next/static/chunks/app/api/monitoring/route-84943536516b00b2.js +1 -0
  199. package/_standalone/.next/static/chunks/app/api/recent-files/route-84943536516b00b2.js +1 -0
  200. package/_standalone/.next/static/chunks/app/api/restart/route-84943536516b00b2.js +1 -0
  201. package/_standalone/.next/static/chunks/app/api/search/route-84943536516b00b2.js +1 -0
  202. package/_standalone/.next/static/chunks/app/api/settings/list-models/route-84943536516b00b2.js +1 -0
  203. package/_standalone/.next/static/chunks/app/api/settings/reset-token/route-84943536516b00b2.js +1 -0
  204. package/_standalone/.next/static/chunks/app/api/settings/route-84943536516b00b2.js +1 -0
  205. package/_standalone/.next/static/chunks/app/api/settings/test-key/route-84943536516b00b2.js +1 -0
  206. package/_standalone/.next/static/chunks/app/api/setup/check-path/route-84943536516b00b2.js +1 -0
  207. package/_standalone/.next/static/chunks/app/api/setup/check-port/route-84943536516b00b2.js +1 -0
  208. package/_standalone/.next/static/chunks/app/api/setup/generate-token/route-84943536516b00b2.js +1 -0
  209. package/_standalone/.next/static/chunks/app/api/setup/ls/route-84943536516b00b2.js +1 -0
  210. package/_standalone/.next/static/chunks/app/api/setup/route-84943536516b00b2.js +1 -0
  211. package/_standalone/.next/static/chunks/app/api/skills/route-84943536516b00b2.js +1 -0
  212. package/_standalone/.next/static/chunks/app/api/sync/route-84943536516b00b2.js +1 -0
  213. package/_standalone/.next/static/chunks/app/api/tree-version/route-84943536516b00b2.js +1 -0
  214. package/_standalone/.next/static/chunks/app/api/uninstall/route-84943536516b00b2.js +1 -0
  215. package/_standalone/.next/static/chunks/app/api/update/route-84943536516b00b2.js +1 -0
  216. package/_standalone/.next/static/chunks/app/api/update-check/route-84943536516b00b2.js +1 -0
  217. package/_standalone/.next/static/chunks/app/api/update-status/route-84943536516b00b2.js +1 -0
  218. package/_standalone/.next/static/chunks/app/api/workflows/route-84943536516b00b2.js +1 -0
  219. package/_standalone/.next/static/chunks/app/echo/page-84943536516b00b2.js +1 -0
  220. package/_standalone/.next/static/chunks/app/help/page-2325d25b6846ca07.js +1 -0
  221. package/_standalone/.next/static/chunks/app/{layout-9378c1c8d3e5761b.js → layout-7cb442df92212140.js} +55 -55
  222. package/_standalone/.next/static/chunks/app/{page-9bae420fbbdc5fff.js → page-aaee2d9bd3d3eabb.js} +1 -1
  223. package/_standalone/.next/static/chunks/app/setup/page-6132ea7632e08a9b.js +1 -0
  224. package/_standalone/.next/static/chunks/app/trash/{page-b61ef2d5cd4f8d73.js → page-7b5cbf541c315db2.js} +1 -1
  225. package/_standalone/.next/static/chunks/app/view/[...path]/loading-84943536516b00b2.js +1 -0
  226. package/_standalone/.next/static/chunks/app/view/[...path]/page-b72e4f88c8c48181.js +12 -0
  227. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-84943536516b00b2.js +1 -0
  228. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-84943536516b00b2.js +1 -0
  229. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-84943536516b00b2.js +1 -0
  230. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-84943536516b00b2.js +1 -0
  231. package/_standalone/.next/static/chunks/{webpack-c28c55d0a6021a6b.js → webpack-7b276daaa930d480.js} +1 -1
  232. package/_standalone/.next/static/css/bc9179074eaf65ae.css +1 -0
  233. package/_standalone/.next/trace +63 -63
  234. package/_standalone/.next/types/routes.d.ts +2 -1
  235. package/_standalone/.next/types/validator.ts +9 -0
  236. package/_standalone/__tests__/api/mcp-install.test.ts +23 -0
  237. package/_standalone/__tests__/cli/agent-routing.test.ts +232 -0
  238. package/_standalone/__tests__/cli/file-subcommands.test.ts +379 -0
  239. package/_standalone/__tests__/core/tools.test.ts +3 -6
  240. package/_standalone/components/FileTree.tsx +3 -2
  241. package/_standalone/components/MarkdownView.tsx +30 -15
  242. package/_standalone/components/RightAskPanel.tsx +36 -6
  243. package/_standalone/components/Sidebar.tsx +3 -3
  244. package/_standalone/components/agents/AgentsMcpSection.tsx +27 -5
  245. package/_standalone/components/settings/McpAgentInstall.tsx +94 -27
  246. package/_standalone/components/settings/McpSkillsSection.tsx +1 -1
  247. package/_standalone/components/settings/McpTab.tsx +484 -340
  248. package/_standalone/components/settings/SettingsContent.tsx +12 -6
  249. package/_standalone/components/settings/types.ts +3 -0
  250. package/_standalone/components/setup/StepAgents.tsx +113 -47
  251. package/_standalone/components/setup/StepReview.tsx +14 -27
  252. package/_standalone/components/setup/types.ts +7 -0
  253. package/_standalone/data/skills/mindos/SKILL.md +92 -92
  254. package/_standalone/data/skills/mindos/references/write-supplement.md +119 -0
  255. package/_standalone/data/skills/mindos-zh/SKILL.md +100 -104
  256. package/_standalone/data/skills/mindos-zh/references/write-supplement.md +119 -0
  257. package/_standalone/lib/i18n/modules/features.ts +4 -4
  258. package/_standalone/lib/i18n/modules/knowledge.ts +4 -0
  259. package/_standalone/lib/i18n/modules/onboarding.ts +40 -30
  260. package/_standalone/lib/i18n/modules/panels.ts +6 -2
  261. package/_standalone/lib/i18n/modules/settings.ts +78 -6
  262. package/_standalone/lib/mcp-snippets.ts +5 -1
  263. package/_standalone/tsconfig.tsbuildinfo +1 -1
  264. package/app/app/api/ask/route.ts +3 -2
  265. package/app/app/api/mcp/install/route.ts +15 -3
  266. package/app/app/api/mcp/status/route.ts +14 -6
  267. package/app/app/api/mcp/uninstall/route.ts +130 -0
  268. package/app/app/api/skills/route.ts +14 -1
  269. package/app/app/view/[...path]/ViewPageClient.tsx +12 -27
  270. package/app/components/FileTree.tsx +3 -2
  271. package/app/components/MarkdownView.tsx +30 -15
  272. package/app/components/RightAskPanel.tsx +36 -6
  273. package/app/components/Sidebar.tsx +3 -3
  274. package/app/components/agents/AgentsMcpSection.tsx +27 -5
  275. package/app/components/help/HelpContent.tsx +1 -0
  276. package/app/components/settings/McpAgentInstall.tsx +94 -27
  277. package/app/components/settings/McpSkillsSection.tsx +1 -1
  278. package/app/components/settings/McpTab.tsx +484 -340
  279. package/app/components/settings/SettingsContent.tsx +12 -6
  280. package/app/components/settings/types.ts +3 -0
  281. package/app/components/setup/StepAgents.tsx +113 -47
  282. package/app/components/setup/StepReview.tsx +14 -27
  283. package/app/components/setup/index.tsx +16 -14
  284. package/app/components/setup/types.ts +7 -0
  285. package/app/data/skills/mindos/SKILL.md +92 -92
  286. package/app/data/skills/mindos/references/write-supplement.md +119 -0
  287. package/app/data/skills/mindos-zh/SKILL.md +100 -104
  288. package/app/data/skills/mindos-zh/references/write-supplement.md +119 -0
  289. package/app/lib/fs.ts +0 -6
  290. package/app/lib/i18n/modules/features.ts +4 -4
  291. package/app/lib/i18n/modules/knowledge.ts +4 -0
  292. package/app/lib/i18n/modules/onboarding.ts +40 -30
  293. package/app/lib/i18n/modules/panels.ts +6 -2
  294. package/app/lib/i18n/modules/settings.ts +78 -6
  295. package/app/lib/mcp-agents.ts +1 -2
  296. package/app/lib/mcp-snippets.ts +5 -1
  297. package/app/lib/renderers/index.ts +2 -1
  298. package/app/lib/settings.ts +32 -0
  299. package/bin/cli.js +168 -1404
  300. package/bin/commands/agent.js +156 -20
  301. package/bin/commands/api.js +14 -11
  302. package/bin/commands/ask.js +79 -68
  303. package/bin/commands/build.js +26 -0
  304. package/bin/commands/config.js +170 -0
  305. package/bin/commands/dev.js +58 -0
  306. package/bin/commands/doctor.js +205 -0
  307. package/bin/commands/file.js +551 -36
  308. package/bin/commands/gateway.js +42 -0
  309. package/bin/commands/init-skills.js +56 -0
  310. package/bin/commands/logs.js +32 -0
  311. package/bin/commands/mcp-cmd.js +57 -0
  312. package/bin/commands/onboard.js +25 -0
  313. package/bin/commands/open.js +41 -0
  314. package/bin/commands/restart.js +48 -0
  315. package/bin/commands/search.js +16 -14
  316. package/bin/commands/space.js +96 -25
  317. package/bin/commands/start.js +272 -0
  318. package/bin/commands/status.js +2 -2
  319. package/bin/commands/stop.js +14 -0
  320. package/bin/commands/sync-cmd.js +134 -0
  321. package/bin/commands/token.js +98 -0
  322. package/bin/commands/uninstall.js +154 -0
  323. package/bin/commands/update.js +286 -0
  324. package/bin/lib/build.js +1 -1
  325. package/bin/lib/colors.js +8 -7
  326. package/bin/lib/command.js +37 -96
  327. package/bin/lib/config.js +5 -0
  328. package/bin/lib/csv.js +19 -0
  329. package/bin/lib/jsonc.js +12 -0
  330. package/bin/lib/markdown.js +69 -0
  331. package/bin/lib/mcp-agents.js +1 -6
  332. package/bin/lib/mcp-build.js +1 -1
  333. package/bin/lib/mcp-install.js +2 -1
  334. package/bin/lib/one-shot.js +88 -0
  335. package/bin/lib/path-expand.js +9 -0
  336. package/bin/lib/remote.js +65 -0
  337. package/bin/lib/repl.js +167 -0
  338. package/bin/lib/{utils.js → shell.js} +10 -26
  339. package/bin/lib/skill-check.js +116 -21
  340. package/bin/lib/sse-stream.js +167 -0
  341. package/package.json +2 -2
  342. package/scripts/setup.js +210 -120
  343. package/skills/mindos/SKILL.md +94 -95
  344. package/skills/mindos-zh/SKILL.md +103 -106
  345. package/_standalone/.next/server/chunks/1955.js +0 -11
  346. package/_standalone/.next/server/chunks/3680.js +0 -1
  347. package/_standalone/.next/server/chunks/4497.js +0 -219
  348. package/_standalone/.next/server/chunks/5560.js +0 -2
  349. package/_standalone/.next/static/chunks/1053-0adaccc98a752a58.js +0 -29
  350. package/_standalone/.next/static/chunks/3637.f9a42cca59fd5bb5.js +0 -1
  351. package/_standalone/.next/static/chunks/4563-c2afaeacb241d1d0.js +0 -6
  352. package/_standalone/.next/static/chunks/6090-c98268ca726a68d3.js +0 -1
  353. package/_standalone/.next/static/chunks/9371-575600301da5d6bb.js +0 -1
  354. package/_standalone/.next/static/chunks/app/.well-known/agent-card.json/route-400c3c09b1540c14.js +0 -1
  355. package/_standalone/.next/static/chunks/app/_global-error/page-400c3c09b1540c14.js +0 -1
  356. package/_standalone/.next/static/chunks/app/agents/[agentKey]/page-3e08abb495ecd5fd.js +0 -1
  357. package/_standalone/.next/static/chunks/app/agents/page-e7e0f87ad3d765ac.js +0 -5
  358. package/_standalone/.next/static/chunks/app/api/a2a/agents/route-400c3c09b1540c14.js +0 -1
  359. package/_standalone/.next/static/chunks/app/api/a2a/delegations/route-400c3c09b1540c14.js +0 -1
  360. package/_standalone/.next/static/chunks/app/api/a2a/discover/route-400c3c09b1540c14.js +0 -1
  361. package/_standalone/.next/static/chunks/app/api/a2a/route-400c3c09b1540c14.js +0 -1
  362. package/_standalone/.next/static/chunks/app/api/acp/config/route-400c3c09b1540c14.js +0 -1
  363. package/_standalone/.next/static/chunks/app/api/acp/detect/route-400c3c09b1540c14.js +0 -1
  364. package/_standalone/.next/static/chunks/app/api/acp/install/route-400c3c09b1540c14.js +0 -1
  365. package/_standalone/.next/static/chunks/app/api/acp/registry/route-400c3c09b1540c14.js +0 -1
  366. package/_standalone/.next/static/chunks/app/api/acp/session/route-400c3c09b1540c14.js +0 -1
  367. package/_standalone/.next/static/chunks/app/api/agent-activity/route-400c3c09b1540c14.js +0 -1
  368. package/_standalone/.next/static/chunks/app/api/ask/route-400c3c09b1540c14.js +0 -1
  369. package/_standalone/.next/static/chunks/app/api/ask-sessions/route-400c3c09b1540c14.js +0 -1
  370. package/_standalone/.next/static/chunks/app/api/auth/route-400c3c09b1540c14.js +0 -1
  371. package/_standalone/.next/static/chunks/app/api/backlinks/route-400c3c09b1540c14.js +0 -1
  372. package/_standalone/.next/static/chunks/app/api/bootstrap/route-400c3c09b1540c14.js +0 -1
  373. package/_standalone/.next/static/chunks/app/api/changes/route-400c3c09b1540c14.js +0 -1
  374. package/_standalone/.next/static/chunks/app/api/export/route-400c3c09b1540c14.js +0 -1
  375. package/_standalone/.next/static/chunks/app/api/extract-pdf/route-400c3c09b1540c14.js +0 -1
  376. package/_standalone/.next/static/chunks/app/api/file/import/route-400c3c09b1540c14.js +0 -1
  377. package/_standalone/.next/static/chunks/app/api/file/route-400c3c09b1540c14.js +0 -1
  378. package/_standalone/.next/static/chunks/app/api/files/route-400c3c09b1540c14.js +0 -1
  379. package/_standalone/.next/static/chunks/app/api/git/route-400c3c09b1540c14.js +0 -1
  380. package/_standalone/.next/static/chunks/app/api/graph/route-400c3c09b1540c14.js +0 -1
  381. package/_standalone/.next/static/chunks/app/api/health/route-400c3c09b1540c14.js +0 -1
  382. package/_standalone/.next/static/chunks/app/api/inbox/route-400c3c09b1540c14.js +0 -1
  383. package/_standalone/.next/static/chunks/app/api/init/route-400c3c09b1540c14.js +0 -1
  384. package/_standalone/.next/static/chunks/app/api/mcp/agents/route-400c3c09b1540c14.js +0 -1
  385. package/_standalone/.next/static/chunks/app/api/mcp/install/route-400c3c09b1540c14.js +0 -1
  386. package/_standalone/.next/static/chunks/app/api/mcp/install-skill/route-400c3c09b1540c14.js +0 -1
  387. package/_standalone/.next/static/chunks/app/api/mcp/restart/route-400c3c09b1540c14.js +0 -1
  388. package/_standalone/.next/static/chunks/app/api/mcp/status/route-400c3c09b1540c14.js +0 -1
  389. package/_standalone/.next/static/chunks/app/api/monitoring/route-400c3c09b1540c14.js +0 -1
  390. package/_standalone/.next/static/chunks/app/api/recent-files/route-400c3c09b1540c14.js +0 -1
  391. package/_standalone/.next/static/chunks/app/api/restart/route-400c3c09b1540c14.js +0 -1
  392. package/_standalone/.next/static/chunks/app/api/search/route-400c3c09b1540c14.js +0 -1
  393. package/_standalone/.next/static/chunks/app/api/settings/list-models/route-400c3c09b1540c14.js +0 -1
  394. package/_standalone/.next/static/chunks/app/api/settings/reset-token/route-400c3c09b1540c14.js +0 -1
  395. package/_standalone/.next/static/chunks/app/api/settings/route-400c3c09b1540c14.js +0 -1
  396. package/_standalone/.next/static/chunks/app/api/settings/test-key/route-400c3c09b1540c14.js +0 -1
  397. package/_standalone/.next/static/chunks/app/api/setup/check-path/route-400c3c09b1540c14.js +0 -1
  398. package/_standalone/.next/static/chunks/app/api/setup/check-port/route-400c3c09b1540c14.js +0 -1
  399. package/_standalone/.next/static/chunks/app/api/setup/generate-token/route-400c3c09b1540c14.js +0 -1
  400. package/_standalone/.next/static/chunks/app/api/setup/ls/route-400c3c09b1540c14.js +0 -1
  401. package/_standalone/.next/static/chunks/app/api/setup/route-400c3c09b1540c14.js +0 -1
  402. package/_standalone/.next/static/chunks/app/api/skills/route-400c3c09b1540c14.js +0 -1
  403. package/_standalone/.next/static/chunks/app/api/sync/route-400c3c09b1540c14.js +0 -1
  404. package/_standalone/.next/static/chunks/app/api/tree-version/route-400c3c09b1540c14.js +0 -1
  405. package/_standalone/.next/static/chunks/app/api/uninstall/route-400c3c09b1540c14.js +0 -1
  406. package/_standalone/.next/static/chunks/app/api/update/route-400c3c09b1540c14.js +0 -1
  407. package/_standalone/.next/static/chunks/app/api/update-check/route-400c3c09b1540c14.js +0 -1
  408. package/_standalone/.next/static/chunks/app/api/update-status/route-400c3c09b1540c14.js +0 -1
  409. package/_standalone/.next/static/chunks/app/api/workflows/route-400c3c09b1540c14.js +0 -1
  410. package/_standalone/.next/static/chunks/app/echo/page-400c3c09b1540c14.js +0 -1
  411. package/_standalone/.next/static/chunks/app/help/page-3d0e1ceaa4abc243.js +0 -1
  412. package/_standalone/.next/static/chunks/app/setup/page-99ed3d1bb6b8f4ef.js +0 -1
  413. package/_standalone/.next/static/chunks/app/view/[...path]/loading-400c3c09b1540c14.js +0 -1
  414. package/_standalone/.next/static/chunks/app/view/[...path]/page-44fa78cbea613a78.js +0 -12
  415. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-400c3c09b1540c14.js +0 -1
  416. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-400c3c09b1540c14.js +0 -1
  417. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-400c3c09b1540c14.js +0 -1
  418. package/_standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-400c3c09b1540c14.js +0 -1
  419. package/_standalone/.next/static/css/d300701f384db50d.css +0 -1
  420. package/_standalone/.next/static/rZLs1krFuduixvcVNe6q3/_buildManifest.js +0 -1
  421. package/_standalone/components/renderers/agent-inspector/manifest.ts +0 -16
  422. /package/_standalone/.next/static/{rZLs1krFuduixvcVNe6q3 → GB-YReQ58tsvCuwlzrkMZ}/_ssgManifest.js +0 -0
@@ -1,14 +1,16 @@
1
1
  'use client';
2
2
 
3
3
  import { useState } from 'react';
4
- import { CheckCircle2, AlertCircle, Loader2 } from 'lucide-react';
4
+ import { CheckCircle2, AlertCircle, Loader2, Copy } from 'lucide-react';
5
5
  import CustomSelect from '@/components/CustomSelect';
6
6
  import { apiFetch } from '@/lib/api';
7
+ import { copyToClipboard } from '@/lib/clipboard';
8
+ import { toast } from '@/lib/toast';
7
9
  import type { AgentInfo, McpAgentInstallProps } from './types';
8
10
 
9
11
  /* ── Agent Install ─────────────────────────────────────────────── */
10
12
 
11
- export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallProps) {
13
+ export default function AgentInstall({ agents, t, onRefresh, mode = 'mcp', activeSkillName = 'mindos' }: McpAgentInstallProps) {
12
14
  const m = t.settings?.mcp;
13
15
  const [selected, setSelected] = useState<Set<string>>(new Set());
14
16
  const [transport, setTransport] = useState<'auto' | 'stdio' | 'http'>('auto');
@@ -31,7 +33,8 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
31
33
  });
32
34
  };
33
35
 
34
- const handleInstall = async () => {
36
+ /* ── MCP mode: install MCP config via API ── */
37
+ const handleMcpInstall = async () => {
35
38
  if (selected.size === 0) return;
36
39
  setInstalling(true);
37
40
  setMessage(null);
@@ -50,7 +53,6 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
50
53
  }),
51
54
  transport,
52
55
  ...(transport === 'http' ? { url: httpUrl, token: httpToken } : {}),
53
- // For auto mode, pass http settings for agents that need it
54
56
  ...(transport === 'auto' ? { url: httpUrl, token: httpToken } : {}),
55
57
  };
56
58
  const res = await apiFetch<{ results: Array<{ agent: string; status: string; message?: string }> }>('/api/mcp/install', {
@@ -81,8 +83,18 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
81
83
  return agent?.preferredTransport === 'http';
82
84
  }));
83
85
 
86
+ /* ═══ CLI mode: show skill install commands ═══ */
87
+ if (mode === 'cli') {
88
+ return <CliSkillInstall agents={agents} m={m} activeSkillName={activeSkillName} />;
89
+ }
90
+
91
+ /* ═══ MCP mode: full MCP config install ═══ */
84
92
  return (
85
93
  <div className="space-y-3 pt-2">
94
+ <p className="text-xs text-muted-foreground">
95
+ {m?.mcpInstallDesc ?? 'Install MCP config + Skill to detected agents on this machine.'}
96
+ </p>
97
+
86
98
  {/* Agent list */}
87
99
  <div className="space-y-1">
88
100
  {agents.map(agent => (
@@ -109,7 +121,6 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
109
121
  {agent.present ? (m?.detected ?? 'Detected') : (m?.notFound ?? 'Not found')}
110
122
  </span>
111
123
  )}
112
- {/* Scope selector */}
113
124
  {selected.has(agent.key) && agent.hasProjectScope && agent.hasGlobalScope && (
114
125
  <CustomSelect
115
126
  value={scopes[agent.key] || 'project'}
@@ -126,12 +137,10 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
126
137
  ))}
127
138
  </div>
128
139
 
129
- {/* Select detected / Clear buttons */}
140
+ {/* Quick select */}
130
141
  <div className="flex gap-2 text-xs pt-1">
131
142
  <button type="button"
132
- onClick={() => setSelected(new Set(
133
- agents.filter(a => !a.installed && a.present).map(a => a.key)
134
- ))}
143
+ onClick={() => setSelected(new Set(agents.filter(a => !a.installed && a.present).map(a => a.key)))}
135
144
  className="px-2.5 py-1 rounded-md border border-[var(--amber)] text-[var(--amber)] transition-colors hover:bg-muted/50">
136
145
  {m?.selectDetected ?? 'Select Detected'}
137
146
  </button>
@@ -163,32 +172,20 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
163
172
  <div className="space-y-2 pl-5 text-xs">
164
173
  <div className="space-y-1">
165
174
  <label className="text-muted-foreground">{m?.httpUrl ?? 'MCP URL'}</label>
166
- <input
167
- type="text"
168
- value={httpUrl}
169
- onChange={e => setHttpUrl(e.target.value)}
170
- className="w-full px-2.5 py-1.5 text-xs rounded-md border border-border bg-background font-mono text-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring"
171
- />
175
+ <input type="text" value={httpUrl} onChange={e => setHttpUrl(e.target.value)}
176
+ className="w-full px-2.5 py-1.5 text-xs rounded-md border border-border bg-background font-mono text-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring" />
172
177
  </div>
173
178
  <div className="space-y-1">
174
179
  <label className="text-muted-foreground">{m?.httpToken ?? 'Auth Token'}</label>
175
- <input
176
- type="password"
177
- value={httpToken}
178
- onChange={e => setHttpToken(e.target.value)}
179
- placeholder="Bearer token"
180
- className="w-full px-2.5 py-1.5 text-xs rounded-md border border-border bg-background font-mono text-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring"
181
- />
180
+ <input type="password" value={httpToken} onChange={e => setHttpToken(e.target.value)} placeholder="Bearer token"
181
+ className="w-full px-2.5 py-1.5 text-xs rounded-md border border-border bg-background font-mono text-foreground outline-none focus-visible:ring-1 focus-visible:ring-ring" />
182
182
  </div>
183
183
  </div>
184
184
  )}
185
185
 
186
186
  {/* Install button */}
187
- <button
188
- onClick={handleInstall}
189
- disabled={selected.size === 0 || installing}
190
- className="flex items-center gap-1.5 px-3 py-1.5 text-xs rounded-lg transition-colors disabled:opacity-40 disabled:cursor-not-allowed bg-[var(--amber)] text-[var(--amber-foreground)]"
191
- >
187
+ <button onClick={handleMcpInstall} disabled={selected.size === 0 || installing}
188
+ className="flex items-center gap-1.5 px-3 py-1.5 text-xs rounded-lg transition-colors disabled:opacity-40 disabled:cursor-not-allowed bg-[var(--amber)] text-[var(--amber-foreground)]">
192
189
  {installing && <Loader2 size={12} className="animate-spin" />}
193
190
  {installing ? (m?.installing ?? 'Installing...') : (m?.installSelected ?? 'Install Selected')}
194
191
  </button>
@@ -206,3 +203,73 @@ export default function AgentInstall({ agents, t, onRefresh }: McpAgentInstallPr
206
203
  </div>
207
204
  );
208
205
  }
206
+
207
+ /* ── CLI Skill Install — generates per-agent CLI commands ── */
208
+
209
+ function CliSkillInstall({ agents, m, activeSkillName }: {
210
+ agents: AgentInfo[];
211
+ m: Record<string, any> | undefined;
212
+ activeSkillName: string;
213
+ }) {
214
+ const [selectedAgent, setSelectedAgent] = useState(agents[0]?.key ?? 'claude-code');
215
+ const agent = agents.find(a => a.key === selectedAgent);
216
+ const cmd = `npx skills add GeminiLight/MindOS --skill ${activeSkillName} -a ${selectedAgent} -g -y`;
217
+
218
+ const handleCopy = async () => {
219
+ const ok = await copyToClipboard(cmd);
220
+ if (ok) toast.copy();
221
+ };
222
+
223
+ const connected = agents.filter(a => a.present && a.installed);
224
+ const detected = agents.filter(a => a.present && !a.installed);
225
+ const notFound = agents.filter(a => !a.present);
226
+
227
+ return (
228
+ <div className="space-y-3 pt-2">
229
+ <p className="text-xs text-muted-foreground">
230
+ {m?.cliInstallDesc ?? 'Install the MindOS Skill to your agent so it can operate your knowledge base.'}
231
+ </p>
232
+
233
+ {/* Agent selector */}
234
+ <CustomSelect
235
+ value={selectedAgent}
236
+ onChange={setSelectedAgent}
237
+ size="sm"
238
+ options={[
239
+ ...(connected.length > 0 ? [{ label: m?.connectedGroup ?? 'Connected', options: connected.map(a => ({ value: a.key, label: a.name })) }] : []),
240
+ ...(detected.length > 0 ? [{ label: m?.detectedGroup ?? 'Detected', options: detected.map(a => ({ value: a.key, label: a.name })) }] : []),
241
+ ...(notFound.length > 0 ? [{ label: m?.notFoundGroup ?? 'Not Installed', options: notFound.map(a => ({ value: a.key, label: a.name })) }] : []),
242
+ ]}
243
+ />
244
+
245
+ {/* Status */}
246
+ {agent && (
247
+ <div className="flex items-center gap-2 text-2xs">
248
+ {agent.present && agent.installed ? (
249
+ <span className="inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full font-medium bg-success/10 text-success">
250
+ <CheckCircle2 size={10} /> {m?.tagConnected ?? 'Connected'}
251
+ </span>
252
+ ) : agent.present ? (
253
+ <span className="text-muted-foreground">{m?.detected ?? 'Detected'}</span>
254
+ ) : (
255
+ <span className="text-muted-foreground">{m?.notFound ?? 'Not found'}</span>
256
+ )}
257
+ {agent.installedSkillCount != null && agent.installedSkillCount > 0 && (
258
+ <span className="text-muted-foreground">{agent.installedSkillCount} {m?.skillsInstalled ?? 'skills installed'}</span>
259
+ )}
260
+ </div>
261
+ )}
262
+
263
+ {/* Command */}
264
+ <div className="flex items-center gap-1.5">
265
+ <code className="flex-1 text-[10px] font-mono bg-muted/50 border border-border rounded-lg px-2.5 py-2 text-muted-foreground select-all overflow-x-auto whitespace-nowrap">
266
+ {cmd}
267
+ </code>
268
+ <button onClick={handleCopy}
269
+ className="p-1.5 rounded-md border border-border text-muted-foreground hover:text-foreground hover:bg-muted transition-colors shrink-0">
270
+ <Copy size={11} />
271
+ </button>
272
+ </div>
273
+ </div>
274
+ );
275
+ }
@@ -29,7 +29,7 @@ export default function SkillsSection({ t }: McpSkillsSectionProps) {
29
29
  const [createError, setCreateError] = useState('');
30
30
 
31
31
  const [search, setSearch] = useState('');
32
- const [builtinCollapsed, setBuiltinCollapsed] = useState(false);
32
+ const [builtinCollapsed, setBuiltinCollapsed] = useState(true);
33
33
  const [editing, setEditing] = useState<string | null>(null);
34
34
  const [editContent, setEditContent] = useState('');
35
35
  const [editError, setEditError] = useState('');