@geminilight/mindos 0.6.58 → 0.6.60
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.
- package/_standalone/.mindos-build-version +1 -1
- package/_standalone/.next/BUILD_ID +1 -1
- package/_standalone/.next/app-path-routes-manifest.json +23 -22
- package/_standalone/.next/build-manifest.json +3 -3
- package/_standalone/.next/cache/.previewinfo +1 -1
- package/_standalone/.next/cache/.rscinfo +1 -1
- package/_standalone/.next/cache/config.json +3 -3
- package/_standalone/.next/prerender-manifest.json +3 -3
- package/_standalone/.next/react-loadable-manifest.json +1 -1
- package/_standalone/.next/routes-manifest.json +6 -0
- package/_standalone/.next/server/app/.well-known/agent-card.json/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/_global-error.html +2 -2
- package/_standalone/.next/server/app/_global-error.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/_standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/_standalone/.next/server/app/_not-found/page.js +1 -1
- package/_standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page.js +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/agents/[agentKey]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/agents/page.js +2 -2
- package/_standalone/.next/server/app/agents/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/agents/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/delegations/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/discover/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/a2a/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/config/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/detect/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/install/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/registry/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/acp/session/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/agent-activity/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/agents/copy-skill/route.js +1 -0
- package/_standalone/.next/server/app/api/agents/copy-skill/route.js.nft.json +1 -0
- package/_standalone/.next/server/app/api/agents/copy-skill/route_client-reference-manifest.js +1 -0
- package/_standalone/.next/server/app/api/agents/custom/detect/route.js +1 -1
- package/_standalone/.next/server/app/api/agents/custom/detect/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/agents/custom/route.js +1 -1
- package/_standalone/.next/server/app/api/agents/custom/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/ask/route.js +18 -7
- package/_standalone/.next/server/app/api/ask/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/ask-sessions/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/auth/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/backlinks/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/bootstrap/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/changes/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/export/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/extract-pdf/route.js +2 -2
- package/_standalone/.next/server/app/api/extract-pdf/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/file/import/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/file/raw/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/file/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/graph/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/agents/route.js +1 -1
- package/_standalone/.next/server/app/api/mcp/agents/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/install/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/install-skill/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/restart/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/status/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/mcp/uninstall/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/monitoring/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/recent-files/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/list-models/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/reset-token/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/settings/test-key/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/check-path/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/check-port/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/generate-token/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/ls/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/setup/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/tree-version/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/uninstall/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update-check/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/update-status/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/changes/page.js +2 -2
- package/_standalone/.next/server/app/changes/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/changes/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/echo/[segment]/page.js +3 -3
- package/_standalone/.next/server/app/echo/[segment]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/echo/[segment]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/echo/page.js +1 -1
- package/_standalone/.next/server/app/echo/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/echo/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/explore/page.js +2 -2
- package/_standalone/.next/server/app/explore/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/explore/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/help/page.js +2 -2
- package/_standalone/.next/server/app/help/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/inbox/history/page.js +1 -1
- package/_standalone/.next/server/app/inbox/history/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/inbox/history/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/login/page.js +2 -2
- package/_standalone/.next/server/app/login/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/page.js +2 -8
- package/_standalone/.next/server/app/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/setup/page.js +2 -2
- package/_standalone/.next/server/app/setup/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/trash/page.js +3 -3
- package/_standalone/.next/server/app/trash/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/trash/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/view/[...path]/page.js +3 -3
- package/_standalone/.next/server/app/view/[...path]/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/view/[...path]/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app/wiki/page.js +2 -2
- package/_standalone/.next/server/app/wiki/page.js.nft.json +1 -1
- package/_standalone/.next/server/app/wiki/page_client-reference-manifest.js +1 -1
- package/_standalone/.next/server/app-paths-manifest.json +23 -22
- package/_standalone/.next/server/chunks/1550.js +1 -1
- package/_standalone/.next/server/chunks/3484.js +1 -1
- package/_standalone/.next/server/chunks/530.js +70 -71
- package/_standalone/.next/server/chunks/{6793.js → 9753.js} +2 -2
- package/_standalone/.next/server/chunks/9787.js +2 -0
- package/_standalone/.next/server/middleware-build-manifest.js +1 -1
- package/_standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/_standalone/.next/server/pages/500.html +2 -2
- package/_standalone/.next/server/server-reference-manifest.js +1 -1
- package/_standalone/.next/server/server-reference-manifest.json +1 -1
- package/_standalone/.next/static/K3wZNf5bj_AFYwtqcRXIf/_buildManifest.js +1 -0
- package/_standalone/.next/static/chunks/1369-7d0ac5d1564eed1e.js +1 -0
- package/_standalone/.next/static/chunks/{1814.a7c127b2c73d1f70.js → 1814.a79b84d37df75c43.js} +1 -1
- package/_standalone/.next/static/chunks/3427-2e61a5df1f5e55fb.js +1 -0
- package/_standalone/.next/static/chunks/{1053-fe009233cff06e72.js → 5581-974dfb26d1d1b38f.js} +3 -3
- package/_standalone/.next/static/chunks/6297-085daa21037d5f81.js +1 -0
- package/_standalone/.next/static/chunks/7249-b0a9c77b9a84b11c.js +11 -0
- package/_standalone/.next/static/chunks/7637-904b0a381dc3ec02.js +1 -0
- package/_standalone/.next/static/chunks/8520-76d1b05072178b43.js +22 -0
- package/_standalone/.next/static/chunks/9186-ead47513192f658b.js +1 -0
- package/_standalone/.next/static/chunks/9905-a19d379cb225246e.js +1 -0
- package/_standalone/.next/static/chunks/app/.well-known/agent-card.json/{route-2f4705aa66819b86.js → route-2ceea6eabf25b1f2.js} +1 -1
- package/_standalone/.next/static/chunks/app/_global-error/{page-2f4705aa66819b86.js → page-2ceea6eabf25b1f2.js} +1 -1
- package/_standalone/.next/static/chunks/app/agents/[agentKey]/page-0ea3571c8fbae823.js +1 -0
- package/_standalone/.next/static/chunks/app/agents/page-66858acbcd1d4bf8.js +1 -0
- package/_standalone/.next/static/chunks/app/api/a2a/agents/{route-2f4705aa66819b86.js → route-2ceea6eabf25b1f2.js} +1 -1
- package/_standalone/.next/static/chunks/app/api/a2a/delegations/{route-2f4705aa66819b86.js → route-2ceea6eabf25b1f2.js} +1 -1
- package/_standalone/.next/static/chunks/app/api/a2a/discover/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/a2a/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/acp/config/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/acp/detect/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/acp/install/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/acp/registry/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/acp/session/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/agent-activity/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/agents/copy-skill/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/agents/custom/detect/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/agents/custom/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/ask/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/ask-sessions/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/auth/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/backlinks/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/bootstrap/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/changes/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/export/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/extract-pdf/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/file/import/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/file/raw/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/file/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/files/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/git/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/graph/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/health/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/inbox/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/init/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/agents/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/install/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/install-skill/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/restart/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/status/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/mcp/uninstall/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/monitoring/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/recent-files/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/restart/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/search/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/settings/list-models/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/settings/reset-token/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/settings/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/settings/test-key/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/setup/check-path/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/setup/check-port/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/setup/generate-token/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/setup/ls/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/setup/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/skills/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/sync/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/tree-version/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/uninstall/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/update/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/update-check/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/update-status/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/api/workflows/route-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/changes/page-dd0b00a7b81f74e2.js +1 -0
- package/_standalone/.next/static/chunks/app/echo/[segment]/page-bf5c290fa3ccff09.js +11 -0
- package/_standalone/.next/static/chunks/app/echo/page-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/explore/{page-d3d99308146c2240.js → page-d9f58000bc445360.js} +2 -2
- package/_standalone/.next/static/chunks/app/help/{page-222df603080b5fab.js → page-f8cb806371b3175f.js} +1 -1
- package/_standalone/.next/static/chunks/app/inbox/history/{page-07819cf95cb0805f.js → page-3279585360df132c.js} +1 -1
- package/_standalone/.next/static/chunks/app/layout-6a0169582db11a08.js +164 -0
- package/_standalone/.next/static/chunks/app/loading-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/login/{page-0eeef685052869a6.js → page-18fb00d568cd1f0e.js} +1 -1
- package/_standalone/.next/static/chunks/app/page-6a1f8d21c12b829e.js +1 -0
- package/_standalone/.next/static/chunks/app/setup/{page-99fcfc460fa29733.js → page-821714e7477be46c.js} +1 -1
- package/_standalone/.next/static/chunks/app/trash/page-ed7ba3b0b50223a6.js +1 -0
- package/_standalone/.next/static/chunks/app/view/[...path]/loading-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/app/view/[...path]/{not-found-fc04c2bd4f35bc6f.js → not-found-6e0c75ad26ce8572.js} +1 -1
- package/_standalone/.next/static/chunks/app/view/[...path]/page-678139779971cfcb.js +12 -0
- package/_standalone/.next/static/chunks/app/wiki/page-194ae9af2d461481.js +1 -0
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2ceea6eabf25b1f2.js +1 -0
- package/_standalone/.next/static/chunks/{webpack-2c19436659aa657b.js → webpack-72e8d9e9073fd1f9.js} +1 -1
- package/_standalone/.next/static/css/9c558c42831fae58.css +1 -0
- package/_standalone/.next/trace +65 -64
- package/_standalone/.next/types/routes.d.ts +2 -1
- package/_standalone/.next/types/validator.ts +9 -0
- package/_standalone/__tests__/api/mcp-install.test.ts +4 -2
- package/_standalone/app/globals.css +2 -1
- package/_standalone/components/AskFab.tsx +11 -5
- package/_standalone/components/AskModal.tsx +1 -1
- package/_standalone/components/FileTree.tsx +83 -1
- package/_standalone/components/GuideCard.tsx +101 -152
- package/_standalone/components/Panel.tsx +6 -1
- package/_standalone/components/RightAskPanel.tsx +2 -2
- package/_standalone/components/agents/AgentsOverviewSection.tsx +13 -11
- package/_standalone/components/agents/CustomAgentModal.tsx +72 -18
- package/_standalone/components/ask/AskContent.tsx +109 -54
- package/_standalone/components/ask/AskHeader.tsx +218 -18
- package/_standalone/components/ask/FileChip.tsx +93 -12
- package/_standalone/components/ask/MessageList.tsx +66 -47
- package/_standalone/components/ask/SessionHistory.tsx +86 -60
- package/_standalone/components/ask/SessionTabBar.tsx +29 -21
- package/_standalone/components/ask/ThinkingBlock.tsx +6 -5
- package/_standalone/components/ask/ToolCallBlock.tsx +10 -9
- package/_standalone/components/changes/ChangesBanner.tsx +1 -1
- package/_standalone/components/settings/SettingsContent.tsx +1 -1
- package/_standalone/components/walkthrough/WalkthroughTooltip.tsx +3 -1
- package/_standalone/components/walkthrough/steps.ts +1 -1
- package/_standalone/data/skills/mindos/SKILL.md +67 -15
- package/_standalone/data/skills/mindos-zh/SKILL.md +67 -11
- package/_standalone/hooks/useAskChat.ts +10 -8
- package/_standalone/hooks/useAskSession.ts +23 -1
- package/_standalone/hooks/useFileUpload.ts +97 -43
- package/_standalone/hooks/useImageUpload.ts +1 -1
- package/_standalone/lib/inbox-upload.ts +86 -0
- package/_standalone/lib/stores/locale-store.ts +20 -6
- package/_standalone/package-lock.json +2 -2
- package/_standalone/package.json +1 -1
- package/_standalone/scripts/extract-pdf.cjs +110 -3
- package/_standalone/tsconfig.tsbuildinfo +1 -1
- package/app/app/api/agents/copy-skill/route.ts +110 -0
- package/app/app/api/agents/custom/detect/route.ts +16 -1
- package/app/app/api/ask/route.ts +7 -1
- package/app/app/api/extract-pdf/route.ts +12 -5
- package/app/app/api/mcp/agents/route.ts +64 -2
- package/app/app/globals.css +2 -1
- package/app/app/layout.tsx +16 -4
- package/app/components/AskFab.tsx +11 -5
- package/app/components/AskModal.tsx +1 -1
- package/app/components/FileTree.tsx +83 -1
- package/app/components/GuideCard.tsx +101 -152
- package/app/components/HomeContent.tsx +123 -574
- package/app/components/Panel.tsx +6 -1
- package/app/components/RightAskPanel.tsx +2 -2
- package/app/components/WikiHomeContent.tsx +151 -3
- package/app/components/agents/AgentDetailContent.tsx +58 -1
- package/app/components/agents/AgentsOverviewSection.tsx +13 -11
- package/app/components/agents/CustomAgentModal.tsx +72 -18
- package/app/components/ask/AskContent.tsx +109 -54
- package/app/components/ask/AskHeader.tsx +218 -18
- package/app/components/ask/FileChip.tsx +93 -12
- package/app/components/ask/MessageList.tsx +66 -47
- package/app/components/ask/SessionHistory.tsx +86 -60
- package/app/components/ask/SessionTabBar.tsx +29 -21
- package/app/components/ask/ThinkingBlock.tsx +6 -5
- package/app/components/ask/ToolCallBlock.tsx +10 -9
- package/app/components/changes/ChangesBanner.tsx +1 -1
- package/app/components/changes/ChangesContentPage.tsx +368 -168
- package/app/components/settings/SettingsContent.tsx +1 -1
- package/app/components/walkthrough/WalkthroughTooltip.tsx +3 -1
- package/app/components/walkthrough/steps.ts +1 -1
- package/app/data/skills/mindos/SKILL.md +67 -15
- package/app/data/skills/mindos-zh/SKILL.md +67 -11
- package/app/hooks/useAskChat.ts +10 -8
- package/app/hooks/useAskSession.ts +23 -1
- package/app/hooks/useFileUpload.ts +97 -43
- package/app/hooks/useImageUpload.ts +1 -1
- package/app/lib/agent/prompt.ts +15 -4
- package/app/lib/custom-agents.ts +109 -1
- package/app/lib/file-ops.ts +58 -0
- package/app/lib/i18n/modules/ai-chat.ts +134 -10
- package/app/lib/i18n/modules/knowledge.ts +2 -0
- package/app/lib/i18n/modules/onboarding.ts +12 -12
- package/app/lib/inbox-upload.ts +86 -0
- package/app/lib/mcp-agents.ts +21 -1
- package/app/lib/stores/LocaleStoreInit.tsx +24 -1
- package/app/lib/stores/locale-store.ts +20 -6
- package/app/lib/types.ts +13 -0
- package/app/package.json +1 -1
- package/app/scripts/extract-pdf.cjs +110 -3
- package/package.json +1 -1
- package/skills/mindos/SKILL.md +67 -15
- package/skills/mindos/references/knowledge-health.md +120 -0
- package/skills/mindos-max/SKILL.md +52 -5
- package/skills/mindos-max-zh/SKILL.md +55 -6
- package/skills/mindos-zh/SKILL.md +67 -11
- package/_standalone/.next/server/chunks/2364.js +0 -2
- package/_standalone/.next/server/chunks/357.js +0 -1
- package/_standalone/.next/static/2ksXveDzEcnCMRIElDkLq/_buildManifest.js +0 -1
- package/_standalone/.next/static/chunks/178-105779afb62d36d9.js +0 -1
- package/_standalone/.next/static/chunks/2218-d54538000574ffef.js +0 -1
- package/_standalone/.next/static/chunks/2549-e63cf57fa927a41d.js +0 -1
- package/_standalone/.next/static/chunks/4237-ffc6e7c15d4007b6.js +0 -1
- package/_standalone/.next/static/chunks/6878-e2c5459e1c608f89.js +0 -1
- package/_standalone/.next/static/chunks/7249-fa98ca10e9a10f39.js +0 -11
- package/_standalone/.next/static/chunks/9274-296ab35f9f09e42e.js +0 -1
- package/_standalone/.next/static/chunks/9286-5b09baa5200318c2.js +0 -1
- package/_standalone/.next/static/chunks/app/agents/[agentKey]/page-7bdeab5af8e4f5f2.js +0 -1
- package/_standalone/.next/static/chunks/app/agents/page-5d1446665ddb3801.js +0 -1
- package/_standalone/.next/static/chunks/app/api/a2a/discover/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/a2a/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/acp/config/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/acp/detect/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/acp/install/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/acp/registry/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/acp/session/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/agent-activity/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/agents/custom/detect/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/agents/custom/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/ask/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/ask-sessions/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/auth/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/backlinks/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/bootstrap/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/changes/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/export/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/extract-pdf/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/file/import/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/file/raw/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/file/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/files/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/git/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/graph/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/health/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/inbox/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/init/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/agents/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/install/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/install-skill/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/restart/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/status/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/mcp/uninstall/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/monitoring/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/recent-files/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/restart/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/search/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/settings/list-models/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/settings/reset-token/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/settings/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/settings/test-key/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/setup/check-path/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/setup/check-port/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/setup/generate-token/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/setup/ls/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/setup/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/skills/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/sync/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/tree-version/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/uninstall/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/update/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/update-check/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/update-status/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/api/workflows/route-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/changes/page-5a72144d1080a699.js +0 -1
- package/_standalone/.next/static/chunks/app/echo/[segment]/page-b0103509ce34444b.js +0 -11
- package/_standalone/.next/static/chunks/app/echo/page-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/layout-7e02ddf4144b01f1.js +0 -186
- package/_standalone/.next/static/chunks/app/loading-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/page-6a6a12bd6d6812d0.js +0 -7
- package/_standalone/.next/static/chunks/app/trash/page-54cbd5c98d9de69b.js +0 -1
- package/_standalone/.next/static/chunks/app/view/[...path]/loading-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/app/view/[...path]/page-ca7bdcbf27f88a46.js +0 -12
- package/_standalone/.next/static/chunks/app/wiki/page-d492256a93f0b8bc.js +0 -1
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/app-error-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/forbidden-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/not-found-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/chunks/next/dist/client/components/builtin/unauthorized-2f4705aa66819b86.js +0 -1
- package/_standalone/.next/static/css/fd84c8316ead16eb.css +0 -1
- /package/_standalone/.next/static/{2ksXveDzEcnCMRIElDkLq → K3wZNf5bj_AFYwtqcRXIf}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=
|
|
1
|
+
"use strict";exports.id=9753,exports.ids=[9753],exports.modules={1160:(a,b,c)=>{c.d(b,{GL:()=>d,_l:()=>e,e1:()=>f}),c(29021),c(33873);let d=a=>`# ${a} Instruction Set
|
|
2
2
|
|
|
3
3
|
## Goal
|
|
4
4
|
|
|
@@ -49,4 +49,4 @@ ${a}/
|
|
|
49
49
|
## 💡 Usage
|
|
50
50
|
|
|
51
51
|
(Add usage guidelines for this space.)
|
|
52
|
-
`}function l(a,b,c,d=""){let f=b.trim();if(!f)throw new h.Vt(h.tG.INVALID_REQUEST,"Space name is required",{name:b});if(f.includes("/")||f.includes("\\"))throw new h.Vt(h.tG.INVALID_PATH,"Space name must not contain path separators",{name:f});let m=d.replace(/\/+$/,"").trim();if(m.includes("..")||m.startsWith("/")||m.includes("\\"))throw new h.Vt(h.tG.INVALID_PATH,"Invalid parent path",{parentPath:d});let n=m?`${m}/`:"",o=`${n}${f}`,p=k(o,f,c);(0,i.x3)(a,`${o}/README.md`,p);let q=g().resolve(a,o),r=g().join(q,"INSTRUCTION.md");return e().existsSync(r)||e().writeFileSync(r,(0,j.GL)((0,j.e1)(f)),"utf-8"),{path:o}}},16081:(a,b,c)=>{c.d(b,{F0:()=>o,JI:()=>u,Lr:()=>p,YN:()=>t,hQ:()=>s,kz:()=>q,vn:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f);function h(a,b){return g().join(g().dirname(a),b)}function i(a){return h(a,".trash")}function j(a){return h(a,".trash-meta")}function k(a){e().mkdirSync(i(a),{recursive:!0}),e().mkdirSync(j(a),{recursive:!0})}function l(a,b){let c=g().join(j(a),`${b}.json`);if(!e().existsSync(c))return null;try{return JSON.parse(e().readFileSync(c,"utf-8"))}catch{return null}}function m(a,b){let c=g().join(j(a),`${b}.json`);try{e().unlinkSync(c)}catch{}}function n(a,b,c){if(c)e().cpSync(a,b,{recursive:!0}),e().rmSync(a,{recursive:!0,force:!0});else try{e().renameSync(a,b)}catch(c){if("EXDEV"===c.code)e().copyFileSync(a,b),e().unlinkSync(a);else throw c}}function o(a,b){let c,d;k(a);let f=g().join(a,b);if(!e().existsSync(f))throw Error(`File not found: ${b}`);let h=e().statSync(f).isDirectory(),l=g().basename(b),m=(c=l.replace(/[^a-zA-Z0-9._\-\u4e00-\u9fff]/g,"_"),`${Date.now()}_${c}`),o=g().join(i(a),m);e().mkdirSync(g().dirname(o),{recursive:!0}),n(f,o,h);let p=new Date,q={id:m,originalPath:b,deletedAt:p.toISOString(),expiresAt:new Date(p.getTime()+2592e6).toISOString(),fileName:l,isDirectory:h};return d=g().join(j(a),`${q.id}.json`),e().writeFileSync(d,JSON.stringify(q,null,2),"utf-8"),q}function p(a,b,c=!1){let d=l(a,b);if(!d)throw Error("Item not found in trash");let f=g().join(i(a),b);if(!e().existsSync(f))throw Error("Trash file missing from disk");let h=g().join(a,d.originalPath);if(e().existsSync(h)&&!c)throw Object.assign(Error("Restore conflict: file exists at original location"),{code:"RESTORE_CONFLICT"});return e().mkdirSync(g().dirname(h),{recursive:!0}),d.isDirectory?c&&e().existsSync(h)&&e().rmSync(h,{recursive:!0,force:!0}):c&&e().existsSync(h)&&e().unlinkSync(h),n(f,h,d.isDirectory),m(a,b),{restoredPath:d.originalPath}}function q(a,b){let c=l(a,b);if(!c)throw Error("Item not found in trash");let d=g().join(i(a),b);if(!e().existsSync(d))throw Error("Trash file missing from disk");let f=g().dirname(c.originalPath),h=g().extname(c.fileName),j=g().basename(c.fileName,h),k=g().join(f,`${j} (copy)${h}`),o=2;for(;e().existsSync(g().join(a,k));)k=g().join(f,`${j} (copy ${o})${h}`),o++;let p=g().join(a,k);return e().mkdirSync(g().dirname(p),{recursive:!0}),n(d,p,c.isDirectory),m(a,b),{restoredPath:k}}function r(a,b){let c=g().join(i(a),b);try{e().existsSync(c)&&(e().statSync(c).isDirectory()?e().rmSync(c,{recursive:!0,force:!0}):e().unlinkSync(c))}catch{}m(a,b)}function s(a){let b;k(a);let c=j(a);try{b=e().readdirSync(c).filter(a=>a.endsWith(".json"))}catch{return[]}let d=[];for(let f of b)try{let b=JSON.parse(e().readFileSync(g().join(c,f),"utf-8")),h=g().join(i(a),b.id);if(e().existsSync(h))d.push(b);else try{e().unlinkSync(g().join(c,f))}catch{}}catch{}return d.sort((a,b)=>new Date(b.deletedAt).getTime()-new Date(a.deletedAt).getTime()),d}function t(a){let b=s(a);for(let c of b)r(a,c.id);return b.length}function u(a){let b=s(a),c=Date.now(),d=0;for(let e of b)new Date(e.expiresAt).getTime()<=c&&(r(a,e.id),d++);return d}},18451:(a,b,c)=>{c.d(b,{H5:()=>n,OV:()=>o,TA:()=>k,rt:()=>m,x3:()=>l});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(99863),i=c(20018),j=c(1160);function k(a,b){let c=(0,h.eX)(a,b);return e().readFileSync(c,"utf-8")}function l(a,b,c=""){let d=(0,h.eX)(a,b);e().mkdirSync(g().dirname(d),{recursive:!0});try{e().writeFileSync(d,c,{encoding:"utf-8",flag:"wx"})}catch(a){if(a instanceof Error&&"code"in a&&"EEXIST"===a.code)throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,`File already exists: ${b}`,{filePath:b});throw a}}function m(a,b){let c=(0,h.eX)(a,b);if(!e().existsSync(c))throw new i.Vt(i.tG.FILE_NOT_FOUND,`Directory not found: ${b}`,{dirPath:b});if(!e().statSync(c).isDirectory())throw new i.Vt(i.tG.INVALID_PATH,`Not a directory: ${b}`,{dirPath:b});let d=g().basename(c),f=(0,j.e1)(d),k=g().join(c,"INSTRUCTION.md");e().existsSync(k)||e().writeFileSync(k,(0,j.GL)(f),"utf-8");let l=g().join(c,"README.md");e().existsSync(l)||e().writeFileSync(l,(0,j._l)(f),"utf-8")}function n(a,b,c){if(c.includes("/")||c.includes("\\"))throw new i.Vt(i.tG.INVALID_PATH,"Invalid filename: must not contain path separators",{newName:c});let d=g().resolve(a),f=g().resolve(g().join(d,b));(0,h.cP)(f,d);let j=g().dirname(f),k=g().join(j,c);if((0,h.cP)(k,d),e().existsSync(k))throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,"A file with that name already exists",{newName:c});return e().renameSync(f,k),g().relative(d,k)}function o(a,b,c){let d=c.trim();if(!d||d.includes("/")||d.includes("\\"))throw new i.Vt(i.tG.INVALID_PATH,"Invalid space name: must not contain path separators",{newName:c});let f=b.replace(/\/+$/g,"").trim();if(!f)throw new i.Vt(i.tG.INVALID_PATH,"Space path is required",{spacePath:b});let j=g().resolve(a),k=(0,h.eX)(a,f);if(!e().existsSync(k))throw new i.Vt(i.tG.FILE_NOT_FOUND,`Space not found: ${f}`,{spacePath:f});if(!e().statSync(k).isDirectory())throw new i.Vt(i.tG.INVALID_PATH,`Not a directory: ${f}`,{spacePath:f});let l=g().dirname(k),m=g().join(l,d);if((0,h.cP)(m,j),e().existsSync(m))throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,"A space with that name already exists",{newName:d});return e().renameSync(k,m),g().relative(j,m)}},20018:(a,b,c)=>{c.d(b,{Vt:()=>d,tG:()=>e}),c(20457);class d extends Error{constructor(a,b,c,d){super(b),this.code=a,this.context=c,this.userMessage=d,this.name="MindOSError"}}let e={FILE_NOT_FOUND:"FILE_NOT_FOUND",FILE_ALREADY_EXISTS:"FILE_ALREADY_EXISTS",PATH_OUTSIDE_ROOT:"PATH_OUTSIDE_ROOT",PROTECTED_FILE:"PROTECTED_FILE",INVALID_PATH:"INVALID_PATH",INVALID_RANGE:"INVALID_RANGE",HEADING_NOT_FOUND:"HEADING_NOT_FOUND",INVALID_FILE_TYPE:"INVALID_FILE_TYPE",INVALID_REQUEST:"INVALID_REQUEST",MODEL_INIT_FAILED:"MODEL_INIT_FAILED",INTERNAL_ERROR:"INTERNAL_ERROR",PERMISSION_DENIED:"PERMISSION_DENIED"}},27114:(a,b,c)=>{c.d(b,{A:()=>d});let d=new Set(["TODO.md"])},27313:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{T_:()=>h,rl:()=>g});var e=c(14270),f=a([e]);e=(f.then?(await f)():f)[0];let h={anthropic:{id:"anthropic",name:"Anthropic",nameZh:"Anthropic",defaultModel:"claude-sonnet-4-6",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://console.anthropic.com/settings/keys",category:"primary"},openai:{id:"openai",name:"OpenAI",nameZh:"OpenAI",defaultModel:"gpt-5.4",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://platform.openai.com/api-keys",category:"primary"},google:{id:"google",name:"Google Gemini",nameZh:"Google Gemini",defaultModel:"gemini-2.5-flash",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,signupUrl:"https://aistudio.google.com/apikey",category:"primary"},groq:{id:"groq",name:"Groq",nameZh:"Groq",defaultModel:"llama-3.3-70b-versatile",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,signupUrl:"https://console.groq.com/keys",category:"more"},xai:{id:"xai",name:"xAI (Grok)",nameZh:"xAI (Grok)",defaultModel:"grok-3",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},openrouter:{id:"openrouter",name:"OpenRouter",nameZh:"OpenRouter",defaultModel:"anthropic/claude-sonnet-4",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},mistral:{id:"mistral",name:"Mistral",nameZh:"Mistral",defaultModel:"mistral-large-latest",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},deepseek:{id:"deepseek",name:"DeepSeek",nameZh:"DeepSeek",defaultModel:"deepseek-chat",piProviderOverride:"openai",fixedBaseUrl:"https://api.deepseek.com/v1",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://platform.deepseek.com/api_keys",category:"more"},zai:{id:"zai",name:"ZhipuAI (GLM)",nameZh:"智谱 AI (GLM 国际版)",defaultModel:"glm-4-plus",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},"zai-cn":{id:"zai-cn",name:"ZhipuAI (GLM China)",nameZh:"智谱 AI (GLM 国内版)",defaultModel:"glm-4-plus",piProviderOverride:"zai",fixedBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,signupUrl:"https://open.bigmodel.cn/",category:"more"},"kimi-coding":{id:"kimi-coding",name:"Kimi Coding",nameZh:"Kimi Coding (月之暗面)",defaultModel:"kimi-k2-thinking",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},cerebras:{id:"cerebras",name:"Cerebras",nameZh:"Cerebras",defaultModel:"llama-4-scout-17b-16e",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},minimax:{id:"minimax",name:"MiniMax",nameZh:"MiniMax (国际版)",defaultModel:"MiniMax-M2.5",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},"minimax-cn":{id:"minimax-cn",name:"MiniMax (China)",nameZh:"MiniMax (国内版)",defaultModel:"MiniMax-M2.5",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},huggingface:{id:"huggingface",name:"Hugging Face",nameZh:"Hugging Face",defaultModel:"Qwen/Qwen3-235B-A22B-Thinking-2507",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},ollama:{id:"ollama",name:"Ollama",nameZh:"Ollama (本地)",defaultModel:"llama3.2",piProviderOverride:"openai",fixedBaseUrl:"http://localhost:11434/v1",apiKeyFallback:"ollama",supportsBaseUrl:!0,supportsThinking:!1,supportsListModels:!0,signupUrl:"https://ollama.com/download",category:"more"}};function g(a){return a in h}Object.keys(h),d()}catch(a){d(a)}})},53134:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{H5:()=>r,JX:()=>l,Jh:()=>s,f:()=>p,gm:()=>m,rt:()=>t,x3:()=>q});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g);c(20018);var i=c(14432),j=c(4120);c(89531),c(16081);var k=a([j]);function l(){return(0,j.kh)()}j=(k.then?(await k)():k)[0];let u=new Set([".git","node_modules","app",".next",".DS_Store",".media","mcp"]),v=new Set([".md",".csv",".json",".pdf",".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".mp3",".wav",".m4a",".ogg",".flac",".aac",".mp4",".webm",".mov",".mkv"]),w=null,x=0,y=new i.Xs;function m(){w=null,x++,(0,i._E)(),y.invalidate()}let z=null,A=null;function n(a,b){try{let c=f().readFileSync(a,"utf-8"),d=[];for(let a of c.split("\n")){let c=a.trim();if(!(!c||c.startsWith("#"))&&(d.push(c),d.length>=b))break}return d}catch{return[]}}let B=["Define local execution rules for this directory.","(your files here)","(Describe the purpose and usage of this space.)","(Add usage guidelines for this space.)"];function o(a){try{let b=f().readFileSync(a,"utf-8");return B.some(a=>b.includes(a))}catch{return!1}}function p(){var a;let b,c;return(null!==w&&Date.now()-w.timestamp<3e4?w:(a=l(),b=function a(b,c){let d,e=c??l();try{d=f().readdirSync(b,{withFileTypes:!0})}catch{return[]}let g=[];for(let c of d){let d=h().join(b,c.name),f=h().relative(e,d);if(c.isDirectory()){if(u.has(c.name))continue;let b=a(d,e);if(b.length>0){let a=b.some(a=>"file"===a.type&&"INSTRUCTION.md"===a.name),e={name:c.name,path:f,type:"directory",children:b};a&&(e.isSpace=!0,e.spacePreview=function(a){let b=h().join(a,"INSTRUCTION.md"),c=h().join(a,"README.md");return{instructionLines:n(b,3),readmeLines:n(c,3),isTemplate:o(b)&&o(c)}}(d)),g.push(e)}}else if(c.isFile()){let a=h().extname(c.name).toLowerCase();v.has(a)&&g.push({name:c.name,path:f,type:"file",extension:a})}}return g.sort((a,b)=>a.type!==b.type?"directory"===a.type?-1:1:a.name.localeCompare(b.name)),g}(a),c=[],function a(b){for(let d of b)"file"===d.type?c.push(d.path):d.children&&a(d.children)}(b),w={tree:b,allFiles:c,timestamp:Date.now()},z||function(){let a;if(!z){try{a=l()}catch{return}try{(z=f().watch(a,{recursive:!0},(a,b)=>{!b||b.startsWith(".git")||b.includes("node_modules")||b.includes(".next")||(A&&clearTimeout(A),A=setTimeout(()=>{w=null,A=null},500))})).on("error",()=>{A&&(clearTimeout(A),A=null),z&&(z.close(),z=null)})}catch{z=null}}}(),w)).allFiles}function q(a,b=""){(0,i.x3)(l(),a,b),w=null,x++,(0,i.As)(l(),a),y.isBuilt()&&y.updateFile(l(),a)}function r(a,b){let c=(0,i.H5)(l(),a,b);return m(),c}function s(a,b){let c=(0,i.OV)(l(),a,b);return m(),c}function t(a){(0,i.rt)(l(),a),m()}d()}catch(a){d(a)}})},61374:(a,b,c)=>{c.d(b,{gG:()=>d});function d(a){if(!a||"object"!=typeof a||Array.isArray(a))return;let b={},c=!1;for(let[d,e]of Object.entries(a)){if(!e||"object"!=typeof e||Array.isArray(e))continue;let a={};if("string"==typeof e.command&&e.command.trim()&&(a.command=e.command.trim()),Array.isArray(e.args)&&(a.args=e.args.filter(a=>"string"==typeof a)),e.env&&"object"==typeof e.env&&!Array.isArray(e.env)){let b={};for(let[a,c]of Object.entries(e.env))"string"==typeof c&&(b[a]=c);Object.keys(b).length>0&&(a.env=b)}"boolean"==typeof e.enabled&&(a.enabled=e.enabled),Object.keys(a).length>0&&(b[d]=a,c=!0)}return c?b:void 0}},85224:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ar:()=>v,Bn:()=>E,Dg:()=>B,EG:()=>C,FZ:()=>A,GB:()=>H,NN:()=>F,VO:()=>D,X3:()=>r,Ye:()=>y,bC:()=>G,f:()=>t,iJ:()=>s,jW:()=>u,ku:()=>x,pG:()=>w,pX:()=>z});var e=c(95349),f=c(29021),g=c.n(f),h=c(33873),i=c.n(h),j=c(53134),k=c(16081),l=c(15872),m=c(1160),n=c(42650),o=c(27114),p=c(89337),q=a([j]);async function r(a,b){try{let c=b.trim();if(!c)return{success:!1,error:"File name is required"};let d=c.endsWith(".md")||c.endsWith(".csv")?c:`${c}.md`,e=a?`${a}/${d}`:d;return(0,j.x3)(e),(0,n.revalidatePath)("/","layout"),{success:!0,filePath:e}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to create file"}}}async function s(a){try{let b=i().posix.basename(a);if(!a.includes("/")&&o.A.has(b))return{success:!1,error:`"${b}" is protected and cannot be deleted`};let c=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:c.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete file"}}}async function t(a,b){try{let c=(0,j.H5)(a,b);return(0,n.revalidatePath)("/","layout"),{success:!0,newPath:c}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to rename file"}}}async function u(a){try{return(0,j.rt)(a),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to convert to space"}}}async function v(a){try{let b=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:b.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete folder"}}}async function w(a,b){try{let c=(0,j.Jh)(a,b);return(0,n.revalidatePath)("/","layout"),{success:!0,newPath:c}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to rename space"}}}async function x(a){try{let b=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:b.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete space"}}}async function y(a){try{return(0,k.Lr)((0,j.JX)(),a,!1),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Undo failed"}}}async function z(a,b,c=""){try{let{path:d}=(0,l._)((0,j.JX)(),a,b,c);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,path:d}}catch(b){let a=b instanceof Error?b.message:"Failed to create space";if(a.includes("already exists"))return{success:!1,error:"A space with this name already exists"};return{success:!1,error:a}}}async function A(a,b,c){try{let d=(0,j.JX)(),e=i().resolve(d,a);if(!e.startsWith(d))return{success:!1,error:"Invalid path"};let f=i().join(e,"README.md"),h=i().join(e,"INSTRUCTION.md"),k=(0,l.c)(a,b,c);g().writeFileSync(f,k,"utf-8");let o=(0,m.e1)(b);return g().writeFileSync(h,(0,m.GL)(o),"utf-8"),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to revert"}}}async function B(){return{files:(0,j.f)().filter(a=>i().basename(a).startsWith("\uD83E\uDDEA_example_"))}}async function C(){try{let{files:a}=await B();if(0===a.length)return{success:!0,deleted:0};let b=(0,j.JX)();for(let c of a){let a=i().resolve(b,c);a.startsWith(b)&&g().existsSync(a)&&g().unlinkSync(a)}for(let c of[...new Set(a.map(a=>i().dirname(i().resolve(b,a))))].sort((a,b)=>b.length-a.length))try{if(c.startsWith(b)&&c!==b){let a=g().readdirSync(c);0===a.length&&g().rmdirSync(c)}}catch{}return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,deleted:a.length}}catch(a){return{success:!1,deleted:0,error:a instanceof Error?a.message:"Failed to cleanup"}}}async function D(a){let b=(0,j.f)(),c=a.endsWith("/")?a:a+"/";return b.filter(a=>a.startsWith(c))}async function E(){return(0,k.JI)((0,j.JX)()),(0,k.hQ)((0,j.JX)())}async function F(a,b="restore"){try{let c,d=(0,j.JX)();return c="copy"===b?(0,k.kz)(d,a):(0,k.Lr)(d,a,"overwrite"===b),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,restoredPath:c.restoredPath}}catch(a){if("RESTORE_CONFLICT"===a.code)return{success:!1,error:a.message,conflict:!0};return{success:!1,error:a.message??"Failed to restore"}}}async function G(a){try{return(0,k.vn)((0,j.JX)(),a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete"}}}async function H(){try{let a=(0,k.YN)((0,j.JX)());return{success:!0,count:a}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to empty trash"}}}j=(q.then?(await q)():q)[0],(0,p.D)([r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H]),(0,e.A)(r,"60f29abf6d4cc6f20a617986b6c16c018eaa8f06b1",null),(0,e.A)(s,"40bf5b9708b2392789ab4a52d289618fa86c7ae763",null),(0,e.A)(t,"60d09de4b0dbd6c28d853100924e4b354001093bef",null),(0,e.A)(u,"40289b249d6dfc8a4575aac816866972665d90d1b0",null),(0,e.A)(v,"40e5c58505c56cc2e8e4d0b07c324638b3b03c0155",null),(0,e.A)(w,"609fe9b0b2c7d399738a663492c86f249f7cdaa100",null),(0,e.A)(x,"406d5e07dd1f760d65eca07925dee0612da18b4283",null),(0,e.A)(y,"40e908ae647e6fd15c1942e762e035026ad89704dd",null),(0,e.A)(z,"70cf5e0fa72b001245332ed28b4e48a98d03cd4580",null),(0,e.A)(A,"70d3fff92e9e59ba3e4cb777730dd47ad8bdb82650",null),(0,e.A)(B,"0008d30589fef4c58d54df4e165c7f5efdfe7ead5d",null),(0,e.A)(C,"00809d79730b2c8db2301565845c7cca4060acf801",null),(0,e.A)(D,"4000e752d8c9d9102fa24a3a071e16d5c99d6c04ac",null),(0,e.A)(E,"009286475afd7d7b14e85ea1aab03ef850c1ec5ca2",null),(0,e.A)(F,"601cc4671daf4b806917bbeddb6a125fe2251948de",null),(0,e.A)(G,"402cebba5f4d2e71f1263b5c1e103fbecc18346e6b",null),(0,e.A)(H,"0041b91f1cdfb890c35ccbfe742b196188317b5d48",null),d()}catch(a){d(a)}})},86793:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"0008d30589fef4c58d54df4e165c7f5efdfe7ead5d":()=>e.Dg,"0041b91f1cdfb890c35ccbfe742b196188317b5d48":()=>e.GB,"00809d79730b2c8db2301565845c7cca4060acf801":()=>e.EG,"009286475afd7d7b14e85ea1aab03ef850c1ec5ca2":()=>e.Bn,"4000e752d8c9d9102fa24a3a071e16d5c99d6c04ac":()=>e.VO,"40289b249d6dfc8a4575aac816866972665d90d1b0":()=>e.jW,"402cebba5f4d2e71f1263b5c1e103fbecc18346e6b":()=>e.bC,"406d5e07dd1f760d65eca07925dee0612da18b4283":()=>e.ku,"40bf5b9708b2392789ab4a52d289618fa86c7ae763":()=>e.iJ,"40e5c58505c56cc2e8e4d0b07c324638b3b03c0155":()=>e.Ar,"40e908ae647e6fd15c1942e762e035026ad89704dd":()=>e.Ye,"601cc4671daf4b806917bbeddb6a125fe2251948de":()=>e.NN,"609fe9b0b2c7d399738a663492c86f249f7cdaa100":()=>e.pG,"60d09de4b0dbd6c28d853100924e4b354001093bef":()=>e.f,"60f29abf6d4cc6f20a617986b6c16c018eaa8f06b1":()=>e.X3,"70cf5e0fa72b001245332ed28b4e48a98d03cd4580":()=>e.pX,"70d3fff92e9e59ba3e4cb777730dd47ad8bdb82650":()=>e.FZ});var e=c(85224),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},89531:(a,b,c)=>{c.d(b,{b:()=>i});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(79646);function i(a){try{let b=process.env.MINDOS_PROJECT_ROOT?g().join(process.env.MINDOS_PROJECT_ROOT,"app"):g().resolve(process.cwd()),c=g().join(b,"scripts","extract-pdf.cjs");if(!e().existsSync(c))return"";let d=(0,h.execFileSync)("node",[c,a],{encoding:"utf-8",timeout:15e3,maxBuffer:5242880});return JSON.parse(d).text||""}catch{return""}}},99863:(a,b,c)=>{c.d(b,{cP:()=>g,eX:()=>h});var d=c(33873),e=c.n(d),f=c(20018);function g(a,b){if(!a.startsWith(b+e().sep)&&a!==b)throw new f.Vt(f.tG.PATH_OUTSIDE_ROOT,"Access denied: path outside MIND_ROOT",{resolved:a,root:b})}function h(a,b){let c=e().resolve(a),d=e().resolve(e().join(c,b));return g(d,c),d}}};
|
|
52
|
+
`}function l(a,b,c,d=""){let f=b.trim();if(!f)throw new h.Vt(h.tG.INVALID_REQUEST,"Space name is required",{name:b});if(f.includes("/")||f.includes("\\"))throw new h.Vt(h.tG.INVALID_PATH,"Space name must not contain path separators",{name:f});let m=d.replace(/\/+$/,"").trim();if(m.includes("..")||m.startsWith("/")||m.includes("\\"))throw new h.Vt(h.tG.INVALID_PATH,"Invalid parent path",{parentPath:d});let n=m?`${m}/`:"",o=`${n}${f}`,p=k(o,f,c);(0,i.x3)(a,`${o}/README.md`,p);let q=g().resolve(a,o),r=g().join(q,"INSTRUCTION.md");return e().existsSync(r)||e().writeFileSync(r,(0,j.GL)((0,j.e1)(f)),"utf-8"),{path:o}}},16081:(a,b,c)=>{c.d(b,{F0:()=>o,JI:()=>u,Lr:()=>p,YN:()=>t,hQ:()=>s,kz:()=>q,vn:()=>r});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f);function h(a,b){return g().join(g().dirname(a),b)}function i(a){return h(a,".trash")}function j(a){return h(a,".trash-meta")}function k(a){e().mkdirSync(i(a),{recursive:!0}),e().mkdirSync(j(a),{recursive:!0})}function l(a,b){let c=g().join(j(a),`${b}.json`);if(!e().existsSync(c))return null;try{return JSON.parse(e().readFileSync(c,"utf-8"))}catch{return null}}function m(a,b){let c=g().join(j(a),`${b}.json`);try{e().unlinkSync(c)}catch{}}function n(a,b,c){if(c)e().cpSync(a,b,{recursive:!0}),e().rmSync(a,{recursive:!0,force:!0});else try{e().renameSync(a,b)}catch(c){if("EXDEV"===c.code)e().copyFileSync(a,b),e().unlinkSync(a);else throw c}}function o(a,b){let c,d;k(a);let f=g().join(a,b);if(!e().existsSync(f))throw Error(`File not found: ${b}`);let h=e().statSync(f).isDirectory(),l=g().basename(b),m=(c=l.replace(/[^a-zA-Z0-9._\-\u4e00-\u9fff]/g,"_"),`${Date.now()}_${c}`),o=g().join(i(a),m);e().mkdirSync(g().dirname(o),{recursive:!0}),n(f,o,h);let p=new Date,q={id:m,originalPath:b,deletedAt:p.toISOString(),expiresAt:new Date(p.getTime()+2592e6).toISOString(),fileName:l,isDirectory:h};return d=g().join(j(a),`${q.id}.json`),e().writeFileSync(d,JSON.stringify(q,null,2),"utf-8"),q}function p(a,b,c=!1){let d=l(a,b);if(!d)throw Error("Item not found in trash");let f=g().join(i(a),b);if(!e().existsSync(f))throw Error("Trash file missing from disk");let h=g().join(a,d.originalPath);if(e().existsSync(h)&&!c)throw Object.assign(Error("Restore conflict: file exists at original location"),{code:"RESTORE_CONFLICT"});return e().mkdirSync(g().dirname(h),{recursive:!0}),d.isDirectory?c&&e().existsSync(h)&&e().rmSync(h,{recursive:!0,force:!0}):c&&e().existsSync(h)&&e().unlinkSync(h),n(f,h,d.isDirectory),m(a,b),{restoredPath:d.originalPath}}function q(a,b){let c=l(a,b);if(!c)throw Error("Item not found in trash");let d=g().join(i(a),b);if(!e().existsSync(d))throw Error("Trash file missing from disk");let f=g().dirname(c.originalPath),h=g().extname(c.fileName),j=g().basename(c.fileName,h),k=g().join(f,`${j} (copy)${h}`),o=2;for(;e().existsSync(g().join(a,k));)k=g().join(f,`${j} (copy ${o})${h}`),o++;let p=g().join(a,k);return e().mkdirSync(g().dirname(p),{recursive:!0}),n(d,p,c.isDirectory),m(a,b),{restoredPath:k}}function r(a,b){let c=g().join(i(a),b);try{e().existsSync(c)&&(e().statSync(c).isDirectory()?e().rmSync(c,{recursive:!0,force:!0}):e().unlinkSync(c))}catch{}m(a,b)}function s(a){let b;k(a);let c=j(a);try{b=e().readdirSync(c).filter(a=>a.endsWith(".json"))}catch{return[]}let d=[];for(let f of b)try{let b=JSON.parse(e().readFileSync(g().join(c,f),"utf-8")),h=g().join(i(a),b.id);if(e().existsSync(h))d.push(b);else try{e().unlinkSync(g().join(c,f))}catch{}}catch{}return d.sort((a,b)=>new Date(b.deletedAt).getTime()-new Date(a.deletedAt).getTime()),d}function t(a){let b=s(a);for(let c of b)r(a,c.id);return b.length}function u(a){let b=s(a),c=Date.now(),d=0;for(let e of b)new Date(e.expiresAt).getTime()<=c&&(r(a,e.id),d++);return d}},18451:(a,b,c)=>{c.d(b,{H5:()=>n,OV:()=>o,TA:()=>k,rt:()=>m,x3:()=>l});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(99863),i=c(20018),j=c(1160);function k(a,b){let c=(0,h.eX)(a,b);return e().readFileSync(c,"utf-8")}function l(a,b,c=""){let d=(0,h.eX)(a,b);e().mkdirSync(g().dirname(d),{recursive:!0});try{e().writeFileSync(d,c,{encoding:"utf-8",flag:"wx"})}catch(a){if(a instanceof Error&&"code"in a&&"EEXIST"===a.code)throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,`File already exists: ${b}`,{filePath:b});throw a}}function m(a,b){let c=(0,h.eX)(a,b);if(!e().existsSync(c))throw new i.Vt(i.tG.FILE_NOT_FOUND,`Directory not found: ${b}`,{dirPath:b});if(!e().statSync(c).isDirectory())throw new i.Vt(i.tG.INVALID_PATH,`Not a directory: ${b}`,{dirPath:b});let d=g().basename(c),f=(0,j.e1)(d),k=g().join(c,"INSTRUCTION.md");e().existsSync(k)||e().writeFileSync(k,(0,j.GL)(f),"utf-8");let l=g().join(c,"README.md");e().existsSync(l)||e().writeFileSync(l,(0,j._l)(f),"utf-8")}function n(a,b,c){if(c.includes("/")||c.includes("\\"))throw new i.Vt(i.tG.INVALID_PATH,"Invalid filename: must not contain path separators",{newName:c});let d=g().resolve(a),f=g().resolve(g().join(d,b));(0,h.cP)(f,d);let j=g().dirname(f),k=g().join(j,c);if((0,h.cP)(k,d),e().existsSync(k))throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,"A file with that name already exists",{newName:c});return e().renameSync(f,k),g().relative(d,k)}function o(a,b,c){let d=c.trim();if(!d||d.includes("/")||d.includes("\\"))throw new i.Vt(i.tG.INVALID_PATH,"Invalid space name: must not contain path separators",{newName:c});let f=b.replace(/\/+$/g,"").trim();if(!f)throw new i.Vt(i.tG.INVALID_PATH,"Space path is required",{spacePath:b});let j=g().resolve(a),k=(0,h.eX)(a,f);if(!e().existsSync(k))throw new i.Vt(i.tG.FILE_NOT_FOUND,`Space not found: ${f}`,{spacePath:f});if(!e().statSync(k).isDirectory())throw new i.Vt(i.tG.INVALID_PATH,`Not a directory: ${f}`,{spacePath:f});let l=g().dirname(k),m=g().join(l,d);if((0,h.cP)(m,j),e().existsSync(m))throw new i.Vt(i.tG.FILE_ALREADY_EXISTS,"A space with that name already exists",{newName:d});return e().renameSync(k,m),g().relative(j,m)}},20018:(a,b,c)=>{c.d(b,{Vt:()=>d,tG:()=>e}),c(20457);class d extends Error{constructor(a,b,c,d){super(b),this.code=a,this.context=c,this.userMessage=d,this.name="MindOSError"}}let e={FILE_NOT_FOUND:"FILE_NOT_FOUND",FILE_ALREADY_EXISTS:"FILE_ALREADY_EXISTS",PATH_OUTSIDE_ROOT:"PATH_OUTSIDE_ROOT",PROTECTED_FILE:"PROTECTED_FILE",INVALID_PATH:"INVALID_PATH",INVALID_RANGE:"INVALID_RANGE",HEADING_NOT_FOUND:"HEADING_NOT_FOUND",INVALID_FILE_TYPE:"INVALID_FILE_TYPE",INVALID_REQUEST:"INVALID_REQUEST",MODEL_INIT_FAILED:"MODEL_INIT_FAILED",INTERNAL_ERROR:"INTERNAL_ERROR",PERMISSION_DENIED:"PERMISSION_DENIED"}},27114:(a,b,c)=>{c.d(b,{A:()=>d});let d=new Set(["TODO.md"])},27313:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{T_:()=>h,rl:()=>g});var e=c(14270),f=a([e]);e=(f.then?(await f)():f)[0];let h={anthropic:{id:"anthropic",name:"Anthropic",nameZh:"Anthropic",defaultModel:"claude-sonnet-4-6",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://console.anthropic.com/settings/keys",category:"primary"},openai:{id:"openai",name:"OpenAI",nameZh:"OpenAI",defaultModel:"gpt-5.4",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://platform.openai.com/api-keys",category:"primary"},google:{id:"google",name:"Google Gemini",nameZh:"Google Gemini",defaultModel:"gemini-2.5-flash",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,signupUrl:"https://aistudio.google.com/apikey",category:"primary"},groq:{id:"groq",name:"Groq",nameZh:"Groq",defaultModel:"llama-3.3-70b-versatile",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,signupUrl:"https://console.groq.com/keys",category:"more"},xai:{id:"xai",name:"xAI (Grok)",nameZh:"xAI (Grok)",defaultModel:"grok-3",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},openrouter:{id:"openrouter",name:"OpenRouter",nameZh:"OpenRouter",defaultModel:"anthropic/claude-sonnet-4",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},mistral:{id:"mistral",name:"Mistral",nameZh:"Mistral",defaultModel:"mistral-large-latest",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},deepseek:{id:"deepseek",name:"DeepSeek",nameZh:"DeepSeek",defaultModel:"deepseek-chat",piProviderOverride:"openai",fixedBaseUrl:"https://api.deepseek.com/v1",supportsBaseUrl:!0,supportsThinking:!0,supportsListModels:!0,signupUrl:"https://platform.deepseek.com/api_keys",category:"more"},zai:{id:"zai",name:"ZhipuAI (GLM)",nameZh:"智谱 AI (GLM 国际版)",defaultModel:"glm-4-plus",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},"zai-cn":{id:"zai-cn",name:"ZhipuAI (GLM China)",nameZh:"智谱 AI (GLM 国内版)",defaultModel:"glm-4-plus",piProviderOverride:"zai",fixedBaseUrl:"https://open.bigmodel.cn/api/coding/paas/v4",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,signupUrl:"https://open.bigmodel.cn/",category:"more"},"kimi-coding":{id:"kimi-coding",name:"Kimi Coding",nameZh:"Kimi Coding (月之暗面)",defaultModel:"kimi-k2-thinking",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},cerebras:{id:"cerebras",name:"Cerebras",nameZh:"Cerebras",defaultModel:"llama-4-scout-17b-16e",supportsBaseUrl:!1,supportsThinking:!1,supportsListModels:!0,category:"more"},minimax:{id:"minimax",name:"MiniMax",nameZh:"MiniMax (国际版)",defaultModel:"MiniMax-M2.5",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},"minimax-cn":{id:"minimax-cn",name:"MiniMax (China)",nameZh:"MiniMax (国内版)",defaultModel:"MiniMax-M2.5",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},huggingface:{id:"huggingface",name:"Hugging Face",nameZh:"Hugging Face",defaultModel:"Qwen/Qwen3-235B-A22B-Thinking-2507",supportsBaseUrl:!1,supportsThinking:!0,supportsListModels:!1,category:"more"},ollama:{id:"ollama",name:"Ollama",nameZh:"Ollama (本地)",defaultModel:"llama3.2",piProviderOverride:"openai",fixedBaseUrl:"http://localhost:11434/v1",apiKeyFallback:"ollama",supportsBaseUrl:!0,supportsThinking:!1,supportsListModels:!0,signupUrl:"https://ollama.com/download",category:"more"}};function g(a){return a in h}Object.keys(h),d()}catch(a){d(a)}})},53134:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{H5:()=>r,JX:()=>l,Jh:()=>s,f:()=>p,gm:()=>m,rt:()=>t,x3:()=>q});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g);c(20018);var i=c(14432),j=c(4120);c(89531),c(16081);var k=a([j]);function l(){return(0,j.kh)()}j=(k.then?(await k)():k)[0];let u=new Set([".git","node_modules","app",".next",".DS_Store",".media","mcp"]),v=new Set([".md",".csv",".json",".pdf",".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".mp3",".wav",".m4a",".ogg",".flac",".aac",".mp4",".webm",".mov",".mkv"]),w=null,x=0,y=new i.Xs;function m(){w=null,x++,(0,i._E)(),y.invalidate()}let z=null,A=null;function n(a,b){try{let c=f().readFileSync(a,"utf-8"),d=[];for(let a of c.split("\n")){let c=a.trim();if(!(!c||c.startsWith("#"))&&(d.push(c),d.length>=b))break}return d}catch{return[]}}let B=["Define local execution rules for this directory.","(your files here)","(Describe the purpose and usage of this space.)","(Add usage guidelines for this space.)"];function o(a){try{let b=f().readFileSync(a,"utf-8");return B.some(a=>b.includes(a))}catch{return!1}}function p(){var a;let b,c;return(null!==w&&Date.now()-w.timestamp<3e4?w:(a=l(),b=function a(b,c){let d,e=c??l();try{d=f().readdirSync(b,{withFileTypes:!0})}catch{return[]}let g=[];for(let c of d){let d=h().join(b,c.name),f=h().relative(e,d);if(c.isDirectory()){if(u.has(c.name))continue;let b=a(d,e);if(b.length>0){let a=b.some(a=>"file"===a.type&&"INSTRUCTION.md"===a.name),e={name:c.name,path:f,type:"directory",children:b};a&&(e.isSpace=!0,e.spacePreview=function(a){let b=h().join(a,"INSTRUCTION.md"),c=h().join(a,"README.md");return{instructionLines:n(b,3),readmeLines:n(c,3),isTemplate:o(b)&&o(c)}}(d)),g.push(e)}}else if(c.isFile()){let a=h().extname(c.name).toLowerCase();v.has(a)&&g.push({name:c.name,path:f,type:"file",extension:a})}}return g.sort((a,b)=>a.type!==b.type?"directory"===a.type?-1:1:a.name.localeCompare(b.name)),g}(a),c=[],function a(b){for(let d of b)"file"===d.type?c.push(d.path):d.children&&a(d.children)}(b),w={tree:b,allFiles:c,timestamp:Date.now()},z||function(){let a;if(!z){try{a=l()}catch{return}try{(z=f().watch(a,{recursive:!0},(a,b)=>{!b||b.startsWith(".git")||b.includes("node_modules")||b.includes(".next")||(A&&clearTimeout(A),A=setTimeout(()=>{w=null,A=null},500))})).on("error",()=>{A&&(clearTimeout(A),A=null),z&&(z.close(),z=null)})}catch{z=null}}}(),w)).allFiles}function q(a,b=""){(0,i.x3)(l(),a,b),w=null,x++,(0,i.As)(l(),a),y.isBuilt()&&y.updateFile(l(),a)}function r(a,b){let c=(0,i.H5)(l(),a,b);return m(),c}function s(a,b){let c=(0,i.OV)(l(),a,b);return m(),c}function t(a){(0,i.rt)(l(),a),m()}d()}catch(a){d(a)}})},61374:(a,b,c)=>{c.d(b,{gG:()=>d});function d(a){if(!a||"object"!=typeof a||Array.isArray(a))return;let b={},c=!1;for(let[d,e]of Object.entries(a)){if(!e||"object"!=typeof e||Array.isArray(e))continue;let a={};if("string"==typeof e.command&&e.command.trim()&&(a.command=e.command.trim()),Array.isArray(e.args)&&(a.args=e.args.filter(a=>"string"==typeof a)),e.env&&"object"==typeof e.env&&!Array.isArray(e.env)){let b={};for(let[a,c]of Object.entries(e.env))"string"==typeof c&&(b[a]=c);Object.keys(b).length>0&&(a.env=b)}"boolean"==typeof e.enabled&&(a.enabled=e.enabled),Object.keys(a).length>0&&(b[d]=a,c=!0)}return c?b:void 0}},79753:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"0054d7060d18bb31cbabd2e3e9a1b613123a0388ef":()=>e.Bn,"00ddfe6b34f91d2aa2d3f0fc3affd5de1d34ac3d7e":()=>e.EG,"00e2857747674134ea2ee0f6c78adf0a709880f4ed":()=>e.Dg,"00e3c2c4efdb2f850a90840f757e1acbe605fbb1ea":()=>e.GB,"40316cb614d1652774e515bcf93d3168788220fc74":()=>e.iJ,"40bdd1713ba7b5e80d92ecd434503454c69aa33850":()=>e.Ar,"40cac423a88894afcf7d858480cb807c38066e5762":()=>e.VO,"40cdccca5d3f9faeb6a487ee41647b8f27cad5f9b5":()=>e.ku,"40ea7d7916fb58141f5baed1395be3b596be607bbe":()=>e.Ye,"40efb8fa2d4a8cfc688023028f4fb043fd9ad17cb3":()=>e.jW,"40fe2606d752619ae516baffa8e39e5ae35491c7da":()=>e.bC,"608ce8aa21982d346d2def2e9b69fe761ca30fc57c":()=>e.f,"60a187fa62d68436b64adc1f77c055e6114a7bb21c":()=>e.X3,"60ac12aab1e0908f297e5df932bd49c3da92b9316a":()=>e.pG,"60d512e2cf9b26bc0d3616fbc5c85e1b6dadbe2e9d":()=>e.NN,"706bb00ccbd741ba08f26e33570b5dacc9ed6b183c":()=>e.FZ,"7087263c30b8e4be1c607434888a06ad0c63d410f8":()=>e.pX});var e=c(85224),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},85224:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Ar:()=>v,Bn:()=>E,Dg:()=>B,EG:()=>C,FZ:()=>A,GB:()=>H,NN:()=>F,VO:()=>D,X3:()=>r,Ye:()=>y,bC:()=>G,f:()=>t,iJ:()=>s,jW:()=>u,ku:()=>x,pG:()=>w,pX:()=>z});var e=c(95349),f=c(29021),g=c.n(f),h=c(33873),i=c.n(h),j=c(53134),k=c(16081),l=c(15872),m=c(1160),n=c(42650),o=c(27114),p=c(89337),q=a([j]);async function r(a,b){try{let c=b.trim();if(!c)return{success:!1,error:"File name is required"};let d=c.endsWith(".md")||c.endsWith(".csv")?c:`${c}.md`,e=a?`${a}/${d}`:d;return(0,j.x3)(e),(0,n.revalidatePath)("/","layout"),{success:!0,filePath:e}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to create file"}}}async function s(a){try{let b=i().posix.basename(a);if(!a.includes("/")&&o.A.has(b))return{success:!1,error:`"${b}" is protected and cannot be deleted`};let c=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:c.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete file"}}}async function t(a,b){try{let c=(0,j.H5)(a,b);return(0,n.revalidatePath)("/","layout"),{success:!0,newPath:c}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to rename file"}}}async function u(a){try{return(0,j.rt)(a),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to convert to space"}}}async function v(a){try{let b=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:b.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete folder"}}}async function w(a,b){try{let c=(0,j.Jh)(a,b);return(0,n.revalidatePath)("/","layout"),{success:!0,newPath:c}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to rename space"}}}async function x(a){try{let b=(0,k.F0)((0,j.JX)(),a);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,trashId:b.id}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete space"}}}async function y(a){try{return(0,k.Lr)((0,j.JX)(),a,!1),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Undo failed"}}}async function z(a,b,c=""){try{let{path:d}=(0,l._)((0,j.JX)(),a,b,c);return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,path:d}}catch(b){let a=b instanceof Error?b.message:"Failed to create space";if(a.includes("already exists"))return{success:!1,error:"A space with this name already exists"};return{success:!1,error:a}}}async function A(a,b,c){try{let d=(0,j.JX)(),e=i().resolve(d,a);if(!e.startsWith(d))return{success:!1,error:"Invalid path"};let f=i().join(e,"README.md"),h=i().join(e,"INSTRUCTION.md"),k=(0,l.c)(a,b,c);g().writeFileSync(f,k,"utf-8");let o=(0,m.e1)(b);return g().writeFileSync(h,(0,m.GL)(o),"utf-8"),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to revert"}}}async function B(){return{files:(0,j.f)().filter(a=>i().basename(a).startsWith("\uD83E\uDDEA_example_"))}}async function C(){try{let{files:a}=await B();if(0===a.length)return{success:!0,deleted:0};let b=(0,j.JX)();for(let c of a){let a=i().resolve(b,c);a.startsWith(b)&&g().existsSync(a)&&g().unlinkSync(a)}for(let c of[...new Set(a.map(a=>i().dirname(i().resolve(b,a))))].sort((a,b)=>b.length-a.length))try{if(c.startsWith(b)&&c!==b){let a=g().readdirSync(c);0===a.length&&g().rmdirSync(c)}}catch{}return(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,deleted:a.length}}catch(a){return{success:!1,deleted:0,error:a instanceof Error?a.message:"Failed to cleanup"}}}async function D(a){let b=(0,j.f)(),c=a.endsWith("/")?a:a+"/";return b.filter(a=>a.startsWith(c))}async function E(){return(0,k.JI)((0,j.JX)()),(0,k.hQ)((0,j.JX)())}async function F(a,b="restore"){try{let c,d=(0,j.JX)();return c="copy"===b?(0,k.kz)(d,a):(0,k.Lr)(d,a,"overwrite"===b),(0,j.gm)(),(0,n.revalidatePath)("/","layout"),{success:!0,restoredPath:c.restoredPath}}catch(a){if("RESTORE_CONFLICT"===a.code)return{success:!1,error:a.message,conflict:!0};return{success:!1,error:a.message??"Failed to restore"}}}async function G(a){try{return(0,k.vn)((0,j.JX)(),a),{success:!0}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to delete"}}}async function H(){try{let a=(0,k.YN)((0,j.JX)());return{success:!0,count:a}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to empty trash"}}}j=(q.then?(await q)():q)[0],(0,p.D)([r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H]),(0,e.A)(r,"60a187fa62d68436b64adc1f77c055e6114a7bb21c",null),(0,e.A)(s,"40316cb614d1652774e515bcf93d3168788220fc74",null),(0,e.A)(t,"608ce8aa21982d346d2def2e9b69fe761ca30fc57c",null),(0,e.A)(u,"40efb8fa2d4a8cfc688023028f4fb043fd9ad17cb3",null),(0,e.A)(v,"40bdd1713ba7b5e80d92ecd434503454c69aa33850",null),(0,e.A)(w,"60ac12aab1e0908f297e5df932bd49c3da92b9316a",null),(0,e.A)(x,"40cdccca5d3f9faeb6a487ee41647b8f27cad5f9b5",null),(0,e.A)(y,"40ea7d7916fb58141f5baed1395be3b596be607bbe",null),(0,e.A)(z,"7087263c30b8e4be1c607434888a06ad0c63d410f8",null),(0,e.A)(A,"706bb00ccbd741ba08f26e33570b5dacc9ed6b183c",null),(0,e.A)(B,"00e2857747674134ea2ee0f6c78adf0a709880f4ed",null),(0,e.A)(C,"00ddfe6b34f91d2aa2d3f0fc3affd5de1d34ac3d7e",null),(0,e.A)(D,"40cac423a88894afcf7d858480cb807c38066e5762",null),(0,e.A)(E,"0054d7060d18bb31cbabd2e3e9a1b613123a0388ef",null),(0,e.A)(F,"60d512e2cf9b26bc0d3616fbc5c85e1b6dadbe2e9d",null),(0,e.A)(G,"40fe2606d752619ae516baffa8e39e5ae35491c7da",null),(0,e.A)(H,"00e3c2c4efdb2f850a90840f757e1acbe605fbb1ea",null),d()}catch(a){d(a)}})},89531:(a,b,c)=>{c.d(b,{b:()=>i});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(79646);function i(a){try{let b=process.env.MINDOS_PROJECT_ROOT?g().join(process.env.MINDOS_PROJECT_ROOT,"app"):g().resolve(process.cwd()),c=g().join(b,"scripts","extract-pdf.cjs");if(!e().existsSync(c))return"";let d=(0,h.execFileSync)("node",[c,a],{encoding:"utf-8",timeout:15e3,maxBuffer:5242880});return JSON.parse(d).text||""}catch{return""}}},99863:(a,b,c)=>{c.d(b,{cP:()=>g,eX:()=>h});var d=c(33873),e=c.n(d),f=c(20018);function g(a,b){if(!a.startsWith(b+e().sep)&&a!==b)throw new f.Vt(f.tG.PATH_OUTSIDE_ROOT,"Access denied: path outside MIND_ROOT",{resolved:a,root:b})}function h(a,b){let c=e().resolve(a),d=e().resolve(e().join(c,b));return g(d,c),d}}};
|