@geminilight/mindos 0.6.60 → 0.6.61

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 (161) 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 +22 -22
  4. package/_standalone/.next/build-manifest.json +2 -2
  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/server/app/.well-known/agent-card.json/route_client-reference-manifest.js +1 -1
  10. package/_standalone/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  11. package/_standalone/.next/server/app/_global-error.html +2 -2
  12. package/_standalone/.next/server/app/_global-error.rsc +1 -1
  13. package/_standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  14. package/_standalone/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  15. package/_standalone/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  16. package/_standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  17. package/_standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  18. package/_standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  19. package/_standalone/.next/server/app/_not-found/page.js +1 -1
  20. package/_standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  21. package/_standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  22. package/_standalone/.next/server/app/agents/[agentKey]/page.js +1 -1
  23. package/_standalone/.next/server/app/agents/[agentKey]/page.js.nft.json +1 -1
  24. package/_standalone/.next/server/app/agents/[agentKey]/page_client-reference-manifest.js +1 -1
  25. package/_standalone/.next/server/app/agents/page.js +1 -1
  26. package/_standalone/.next/server/app/agents/page.js.nft.json +1 -1
  27. package/_standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  28. package/_standalone/.next/server/app/api/a2a/agents/route_client-reference-manifest.js +1 -1
  29. package/_standalone/.next/server/app/api/a2a/delegations/route_client-reference-manifest.js +1 -1
  30. package/_standalone/.next/server/app/api/a2a/discover/route_client-reference-manifest.js +1 -1
  31. package/_standalone/.next/server/app/api/a2a/route_client-reference-manifest.js +1 -1
  32. package/_standalone/.next/server/app/api/acp/config/route_client-reference-manifest.js +1 -1
  33. package/_standalone/.next/server/app/api/acp/detect/route_client-reference-manifest.js +1 -1
  34. package/_standalone/.next/server/app/api/acp/install/route_client-reference-manifest.js +1 -1
  35. package/_standalone/.next/server/app/api/acp/registry/route.js +1 -1
  36. package/_standalone/.next/server/app/api/acp/registry/route_client-reference-manifest.js +1 -1
  37. package/_standalone/.next/server/app/api/acp/session/route_client-reference-manifest.js +1 -1
  38. package/_standalone/.next/server/app/api/agent-activity/route_client-reference-manifest.js +1 -1
  39. package/_standalone/.next/server/app/api/agents/copy-skill/route_client-reference-manifest.js +1 -1
  40. package/_standalone/.next/server/app/api/agents/custom/detect/route_client-reference-manifest.js +1 -1
  41. package/_standalone/.next/server/app/api/agents/custom/route_client-reference-manifest.js +1 -1
  42. package/_standalone/.next/server/app/api/ask/route.js +3 -3
  43. package/_standalone/.next/server/app/api/ask/route_client-reference-manifest.js +1 -1
  44. package/_standalone/.next/server/app/api/ask-sessions/route_client-reference-manifest.js +1 -1
  45. package/_standalone/.next/server/app/api/auth/route_client-reference-manifest.js +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_client-reference-manifest.js +1 -1
  48. package/_standalone/.next/server/app/api/changes/route_client-reference-manifest.js +1 -1
  49. package/_standalone/.next/server/app/api/export/route_client-reference-manifest.js +1 -1
  50. package/_standalone/.next/server/app/api/extract-pdf/route_client-reference-manifest.js +1 -1
  51. package/_standalone/.next/server/app/api/file/import/route_client-reference-manifest.js +1 -1
  52. package/_standalone/.next/server/app/api/file/raw/route_client-reference-manifest.js +1 -1
  53. package/_standalone/.next/server/app/api/file/route_client-reference-manifest.js +1 -1
  54. package/_standalone/.next/server/app/api/files/route_client-reference-manifest.js +1 -1
  55. package/_standalone/.next/server/app/api/git/route_client-reference-manifest.js +1 -1
  56. package/_standalone/.next/server/app/api/graph/route_client-reference-manifest.js +1 -1
  57. package/_standalone/.next/server/app/api/health/route_client-reference-manifest.js +1 -1
  58. package/_standalone/.next/server/app/api/inbox/route_client-reference-manifest.js +1 -1
  59. package/_standalone/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  60. package/_standalone/.next/server/app/api/mcp/agents/route_client-reference-manifest.js +1 -1
  61. package/_standalone/.next/server/app/api/mcp/install/route.js +1 -1
  62. package/_standalone/.next/server/app/api/mcp/install/route_client-reference-manifest.js +1 -1
  63. package/_standalone/.next/server/app/api/mcp/install-skill/route_client-reference-manifest.js +1 -1
  64. package/_standalone/.next/server/app/api/mcp/restart/route_client-reference-manifest.js +1 -1
  65. package/_standalone/.next/server/app/api/mcp/status/route_client-reference-manifest.js +1 -1
  66. package/_standalone/.next/server/app/api/mcp/uninstall/route_client-reference-manifest.js +1 -1
  67. package/_standalone/.next/server/app/api/monitoring/route_client-reference-manifest.js +1 -1
  68. package/_standalone/.next/server/app/api/recent-files/route_client-reference-manifest.js +1 -1
  69. package/_standalone/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  70. package/_standalone/.next/server/app/api/search/route_client-reference-manifest.js +1 -1
  71. package/_standalone/.next/server/app/api/settings/list-models/route_client-reference-manifest.js +1 -1
  72. package/_standalone/.next/server/app/api/settings/reset-token/route_client-reference-manifest.js +1 -1
  73. package/_standalone/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  74. package/_standalone/.next/server/app/api/settings/test-key/route_client-reference-manifest.js +1 -1
  75. package/_standalone/.next/server/app/api/setup/check-path/route_client-reference-manifest.js +1 -1
  76. package/_standalone/.next/server/app/api/setup/check-port/route_client-reference-manifest.js +1 -1
  77. package/_standalone/.next/server/app/api/setup/generate-token/route_client-reference-manifest.js +1 -1
  78. package/_standalone/.next/server/app/api/setup/ls/route_client-reference-manifest.js +1 -1
  79. package/_standalone/.next/server/app/api/setup/route_client-reference-manifest.js +1 -1
  80. package/_standalone/.next/server/app/api/skills/route_client-reference-manifest.js +1 -1
  81. package/_standalone/.next/server/app/api/sync/route_client-reference-manifest.js +1 -1
  82. package/_standalone/.next/server/app/api/tree-version/route_client-reference-manifest.js +1 -1
  83. package/_standalone/.next/server/app/api/uninstall/route_client-reference-manifest.js +1 -1
  84. package/_standalone/.next/server/app/api/update/route_client-reference-manifest.js +1 -1
  85. package/_standalone/.next/server/app/api/update-check/route_client-reference-manifest.js +1 -1
  86. package/_standalone/.next/server/app/api/update-status/route_client-reference-manifest.js +1 -1
  87. package/_standalone/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  88. package/_standalone/.next/server/app/changes/page.js +1 -1
  89. package/_standalone/.next/server/app/changes/page.js.nft.json +1 -1
  90. package/_standalone/.next/server/app/changes/page_client-reference-manifest.js +1 -1
  91. package/_standalone/.next/server/app/echo/[segment]/page.js +1 -1
  92. package/_standalone/.next/server/app/echo/[segment]/page.js.nft.json +1 -1
  93. package/_standalone/.next/server/app/echo/[segment]/page_client-reference-manifest.js +1 -1
  94. package/_standalone/.next/server/app/echo/page.js +1 -1
  95. package/_standalone/.next/server/app/echo/page.js.nft.json +1 -1
  96. package/_standalone/.next/server/app/echo/page_client-reference-manifest.js +1 -1
  97. package/_standalone/.next/server/app/explore/page.js +1 -1
  98. package/_standalone/.next/server/app/explore/page.js.nft.json +1 -1
  99. package/_standalone/.next/server/app/explore/page_client-reference-manifest.js +1 -1
  100. package/_standalone/.next/server/app/help/page.js +1 -1
  101. package/_standalone/.next/server/app/help/page.js.nft.json +1 -1
  102. package/_standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
  103. package/_standalone/.next/server/app/inbox/history/page.js +1 -1
  104. package/_standalone/.next/server/app/inbox/history/page.js.nft.json +1 -1
  105. package/_standalone/.next/server/app/inbox/history/page_client-reference-manifest.js +1 -1
  106. package/_standalone/.next/server/app/login/page.js +1 -1
  107. package/_standalone/.next/server/app/login/page.js.nft.json +1 -1
  108. package/_standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
  109. package/_standalone/.next/server/app/page.js +1 -1
  110. package/_standalone/.next/server/app/page.js.nft.json +1 -1
  111. package/_standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  112. package/_standalone/.next/server/app/setup/page.js +1 -1
  113. package/_standalone/.next/server/app/setup/page.js.nft.json +1 -1
  114. package/_standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  115. package/_standalone/.next/server/app/trash/page.js +3 -3
  116. package/_standalone/.next/server/app/trash/page_client-reference-manifest.js +1 -1
  117. package/_standalone/.next/server/app/view/[...path]/page.js +2 -2
  118. package/_standalone/.next/server/app/view/[...path]/page.js.nft.json +1 -1
  119. package/_standalone/.next/server/app/view/[...path]/page_client-reference-manifest.js +1 -1
  120. package/_standalone/.next/server/app/wiki/page.js +1 -1
  121. package/_standalone/.next/server/app/wiki/page.js.nft.json +1 -1
  122. package/_standalone/.next/server/app/wiki/page_client-reference-manifest.js +1 -1
  123. package/_standalone/.next/server/app-paths-manifest.json +22 -22
  124. package/_standalone/.next/server/chunks/1550.js +1 -1
  125. package/_standalone/.next/server/chunks/1750.js +1 -1
  126. package/_standalone/.next/server/chunks/530.js +31 -31
  127. package/_standalone/.next/server/chunks/6539.js +1 -1
  128. package/_standalone/.next/server/chunks/{9753.js → 8955.js} +3 -3
  129. package/_standalone/.next/server/pages/500.html +2 -2
  130. package/_standalone/.next/server/server-reference-manifest.js +1 -1
  131. package/_standalone/.next/server/server-reference-manifest.json +1 -1
  132. package/_standalone/.next/static/chunks/{5581-974dfb26d1d1b38f.js → 5581-0c700c20718bd916.js} +2 -2
  133. package/_standalone/.next/static/chunks/app/{layout-6a0169582db11a08.js → layout-a5d5925b47e87cc3.js} +10 -10
  134. package/_standalone/.next/static/chunks/app/trash/page-40bc7316806acd62.js +1 -0
  135. package/_standalone/.next/static/chunks/app/view/[...path]/page-6fbb14b8f322d0f0.js +12 -0
  136. package/_standalone/.next/static/chunks/app/wiki/page-ba36eccf4fe62cfe.js +1 -0
  137. package/_standalone/.next/static/css/{9c558c42831fae58.css → b57c4eb3cc88308b.css} +1 -1
  138. package/_standalone/.next/trace +65 -65
  139. package/_standalone/__tests__/api/mcp-install.test.ts +3 -2
  140. package/_standalone/components/Panel.tsx +14 -0
  141. package/_standalone/components/home/InboxSection.tsx +148 -32
  142. package/_standalone/tsconfig.tsbuildinfo +1 -1
  143. package/app/app/api/ask/route.ts +2 -2
  144. package/app/app/api/mcp/install/route.ts +17 -1
  145. package/app/components/Panel.tsx +14 -0
  146. package/app/components/home/InboxSection.tsx +148 -32
  147. package/app/lib/acp/agent-descriptors.ts +3 -0
  148. package/app/lib/acp/subprocess.ts +56 -8
  149. package/app/lib/i18n/modules/knowledge.ts +10 -0
  150. package/app/lib/mcp-agents.ts +9 -0
  151. package/bin/lib/mcp-agents.js +34 -1
  152. package/bin/lib/mcp-install.js +94 -20
  153. package/bin/lib/toml.js +125 -0
  154. package/package.json +1 -1
  155. package/scripts/build-runtime-archive.sh +5 -1
  156. package/scripts/setup.js +19 -0
  157. package/_standalone/.next/static/chunks/app/trash/page-ed7ba3b0b50223a6.js +0 -1
  158. package/_standalone/.next/static/chunks/app/view/[...path]/page-678139779971cfcb.js +0 -12
  159. package/_standalone/.next/static/chunks/app/wiki/page-194ae9af2d461481.js +0 -1
  160. /package/_standalone/.next/static/{K3wZNf5bj_AFYwtqcRXIf → 5GmVArEG8OX03azKICsGq}/_buildManifest.js +0 -0
  161. /package/_standalone/.next/static/{K3wZNf5bj_AFYwtqcRXIf → 5GmVArEG8OX03azKICsGq}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- exports.id=6539,exports.ids=[6539],exports.modules={39008:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{KP:()=>i,Ot:()=>l,T_:()=>n,Ux:()=>j,im:()=>h,jt:()=>o,lr:()=>k,rl:()=>g,us:()=>m});var e=c(14270),f=a([e]);e=(f.then?(await f)():f)[0];let n={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"}},o=Object.keys(n);function g(a){return a in n}function h(a){return n[a]??n.anthropic}function i(a){return n[a].piProviderOverride??a}let p={deepseek:"DEEPSEEK_API_KEY"};function j(a){return p[a]?p[a]:q[i(a)]}function k(a){return"deepseek"===a?process.env.DEEPSEEK_API_KEY:(0,e.getEnvApiKey)(i(a))}function l(a){let b=n[a];if(b.fixedBaseUrl)return b.fixedBaseUrl;try{let b=(0,e.getModels)(i(a));return b[0]?.baseUrl??""}catch{return""}}function m(a){try{let b=(0,e.getModels)(i(a));return b[0]?.api??"openai-completions"}catch{return"openai-completions"}}let q={anthropic:"ANTHROPIC_API_KEY",openai:"OPENAI_API_KEY","azure-openai-responses":"AZURE_OPENAI_API_KEY",google:"GEMINI_API_KEY",groq:"GROQ_API_KEY",cerebras:"CEREBRAS_API_KEY",xai:"XAI_API_KEY",openrouter:"OPENROUTER_API_KEY",zai:"ZAI_API_KEY","zai-cn":"ZAI_API_KEY",mistral:"MISTRAL_API_KEY",minimax:"MINIMAX_API_KEY","minimax-cn":"MINIMAX_API_KEY",huggingface:"HF_TOKEN","kimi-coding":"KIMI_API_KEY"};d()}catch(a){d(a)}})},61913:(a,b,c)=>{"use strict";c.d(b,{bp:()=>e,gG:()=>j,ug:()=>i,v_:()=>g,vm:()=>f,xX:()=>h});let d={gemini:{binary:"gemini",cmd:"gemini",args:["--experimental-acp"],installCmd:"npm install -g @google/gemini-cli",displayName:"Gemini CLI",description:"Google Gemini 驱动的编程智能体。支持多文件编辑、代码审查、调试和项目级重构,原生集成 Google 搜索实时查询技术文档。"},"gemini-cli":{binary:"gemini",cmd:"gemini",args:["--experimental-acp"],installCmd:"npm install -g @google/gemini-cli",displayName:"Gemini CLI",description:"Google Gemini 驱动的编程智能体。支持多文件编辑、代码审查、调试和项目级重构,原生集成 Google 搜索实时查询技术文档。"},claude:{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"claude-code":{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"claude-acp":{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"codebuddy-code":{binary:"codebuddy",cmd:"codebuddy",args:["--acp"],installCmd:"npm install -g @tencent-ai/codebuddy-code",displayName:"CodeBuddy Code",description:"腾讯云智能编程助手。基于混元大模型,支持代码补全、生成、审查和多文件重构,深度理解中文语境,适配国内开发生态。"},codebuddy:{binary:"codebuddy",cmd:"codebuddy",args:["--acp"],installCmd:"npm install -g @tencent-ai/codebuddy-code",displayName:"CodeBuddy Code",description:"腾讯云智能编程助手。基于混元大模型,支持代码补全、生成、审查和多文件重构,深度理解中文语境,适配国内开发生态。"},"codex-acp":{binary:"codex",cmd:"codex",args:[],installCmd:"npm install -g @openai/codex",displayName:"Codex",description:"OpenAI Codex 编程智能体。基于 GPT 系列模型,擅长代码生成、自动化任务和多语言编程支持。"},codex:{binary:"codex",cmd:"codex",args:[],installCmd:"npm install -g @openai/codex",displayName:"Codex",description:"OpenAI Codex 编程智能体。基于 GPT 系列模型,擅长代码生成、自动化任务和多语言编程支持。"},cursor:{binary:"cursor",cmd:"cursor",args:[],displayName:"Cursor",description:"Cursor AI 编程智能体。AI-first 代码编辑器的 CLI 模式,支持上下文感知的代码编辑、Tab 补全和多文件协同修改。"},cline:{binary:"cline",cmd:"cline",args:[],installCmd:"npm install -g cline",displayName:"Cline",description:"开源自主编程智能体。支持多模型后端,内置文件编辑、终端执行和浏览器自动化能力。"},"github-copilot-cli":{binary:"github-copilot",cmd:"github-copilot",args:[],installCmd:"npm install -g @github/copilot",displayName:"GitHub Copilot",description:"GitHub Copilot 编程智能体。基于海量开源代码训练,擅长代码补全、测试生成和跨语言编程支持。"},goose:{binary:"goose",cmd:"goose",args:[],installCmd:"pip install goose-ai",displayName:"Goose",description:"Block 开源自主编程智能体。支持多模型后端,可扩展插件架构,擅长复杂任务自动化。"},opencode:{binary:"opencode",cmd:"opencode",args:[],installCmd:"go install github.com/opencode-ai/opencode@latest",displayName:"OpenCode",description:"开源终端编程智能体。Go 实现,轻量快速,支持多模型后端和丰富的代码编辑工具。"},kilo:{binary:"kilo",cmd:"kilo",args:[],installCmd:"npm install -g @kilocode/cli",displayName:"Kilo Code",description:"Kilo Code 编程智能体。开源 VS Code 扩展的 CLI 模式,支持多模型、自动审批和代码差异预览。"},openclaw:{binary:"openclaw",cmd:"openclaw",args:[],displayName:"OpenClaw",description:"OpenClaw 编程智能体。开源 Claude Code 替代方案,支持多模型后端和完整的 agentic 工作流。"},pi:{binary:"pi",cmd:"pi",args:[],displayName:"Pi Agent",description:"Pi Agent 编程智能体。轻量级终端编程助手。"},"pi-acp":{binary:"pi",cmd:"pi",args:[],displayName:"Pi Agent",description:"Pi Agent 编程智能体。轻量级终端编程助手。"},auggie:{binary:"auggie",cmd:"auggie",args:[],displayName:"Auggie",description:"Augment Code 编程智能体。支持代码理解、生成和全仓库上下文感知。"},iflow:{binary:"iflow",cmd:"iflow",args:[],displayName:"iFlow",description:"iFlow 编程智能体。AI 驱动的工作流自动化工具。"},kimi:{binary:"kimi",cmd:"kimi",args:[],displayName:"Kimi",description:"Moonshot AI Kimi 编程智能体。擅长超长上下文理解,支持中文语境下的代码生成与分析。"},"qwen-code":{binary:"qwen-code",cmd:"qwen-code",args:[],installCmd:"npm install -g @qwen-code/qwen-code",displayName:"Qwen Code",description:"阿里通义千问 Qwen 编程智能体。基于 Qwen 大模型,支持代码生成、审查和多语言编程,深度适配中文开发场景。"}};function e(a,b,c){let e=d[a],f=c?.enabled!==!1;if(c&&(c.command||c.args))return{cmd:c.command??e?.cmd??b?.command??a,args:c.args??e?.args??[],env:c.env,source:"user-override",binary:e?.binary??a,installCmd:e?.installCmd,enabled:f};if(e)return{cmd:e.cmd,args:e.args,env:c?.env,source:"descriptor",binary:e.binary,installCmd:e.installCmd,enabled:f};if(b){let{cmd:d,args:e}=function(a){switch(a.transport){case"npx":return{cmd:"npx",args:["--yes",a.command,...a.args??[]]};case"uvx":return{cmd:"uvx",args:[a.command,...a.args??[]]};default:return{cmd:a.command,args:a.args??[]}}}(b);return{cmd:d,args:e,env:c?.env,source:"registry",binary:a,installCmd:b.packageName?`npm install -g ${b.packageName}`:void 0,enabled:f}}return{cmd:a,args:[],env:c?.env,source:"registry",binary:a,enabled:f}}function f(a){return d[a]?.binary}function g(a){return d[a]?.installCmd}function h(a){return d[a]?.displayName}function i(a){return d[a]?.description}function j(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}},76223:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Sf:()=>r,_S:()=>u,kh:()=>s,readSettings:()=>o,recordSkillInstall:()=>q,writeSettings:()=>p,xV:()=>t});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g),i=c(21820),j=c.n(i),k=c(61913),l=c(39008),m=a([l]);l=(m.then?(await m)():m)[0];let v=h().join(j().homedir(),".mindos","config.json"),w={ai:{provider:"anthropic",providers:{anthropic:{apiKey:"",model:"claude-sonnet-4-6"},openai:{apiKey:"",model:"gpt-5.4",baseUrl:""}}},mindRoot:""};function n(a,b,c){if(a&&"object"==typeof a){let c=a[b];if("string"==typeof c&&""!==c.trim())return c}return c}function o(){try{var a;let b=f().readFileSync(v,"utf-8"),c=JSON.parse(b);return{ai:function(a){let b=a.ai;if(!b)return{...w.ai};let c="string"==typeof b.provider?b.provider:"anthropic",d=(0,l.rl)(c)?c:"anthropic";if(b.providers&&"object"==typeof b.providers){let a=b.providers,c={};for(let b of Object.keys(a)){var e;if(!(0,l.rl)(b))continue;let d=l.T_[b],f=w.ai.providers[b]??{apiKey:"",model:d.defaultModel};c[b]=(e=a[b],{apiKey:n(e,"apiKey",f.apiKey),model:n(e,"model",f.model),...void 0!==f.baseUrl?{baseUrl:n(e,"baseUrl",f.baseUrl)}:{}})}return c.anthropic||(c.anthropic=w.ai.providers.anthropic),c.openai||(c.openai=w.ai.providers.openai),{provider:d,providers:c}}return{provider:d,providers:{anthropic:{apiKey:n(b,"anthropicApiKey",""),model:n(b,"anthropicModel","claude-sonnet-4-6")},openai:{apiKey:n(b,"openaiApiKey",""),model:n(b,"openaiModel","gpt-5.4"),baseUrl:n(b,"openaiBaseUrl","")}}}}(c),agent:function(a){if(!a||"object"!=typeof a)return;let b={};return"number"==typeof a.maxSteps&&(b.maxSteps=Math.min(30,Math.max(1,a.maxSteps))),"boolean"==typeof a.enableThinking&&(b.enableThinking=a.enableThinking),"number"==typeof a.thinkingBudget&&(b.thinkingBudget=Math.min(5e4,Math.max(1e3,a.thinkingBudget))),("auto"===a.contextStrategy||"off"===a.contextStrategy)&&(b.contextStrategy=a.contextStrategy),"number"==typeof a.reconnectRetries&&(b.reconnectRetries=Math.min(10,Math.max(0,a.reconnectRetries))),Object.keys(b).length>0?b:void 0}(c.agent),acpAgents:(a=c.acpAgents,(0,k.gG)(a)),mindRoot:c.mindRoot??w.mindRoot,webPassword:"string"==typeof c.webPassword?c.webPassword:void 0,authToken:"string"==typeof c.authToken?c.authToken:void 0,mcpPort:"number"==typeof c.mcpPort?c.mcpPort:void 0,port:"number"==typeof c.port?c.port:void 0,startMode:"string"==typeof c.startMode?c.startMode:void 0,setupPending:!0===c.setupPending||void 0,disabledSkills:Array.isArray(c.disabledSkills)?c.disabledSkills:void 0,guideState:function(a){if(!a||"object"!=typeof a||!0!==a.active)return;let b="en"===a.template||"zh"===a.template||"empty"===a.template?a.template:"en";return{active:!0,dismissed:!0===a.dismissed,template:b,step1Done:!0===a.step1Done,askedAI:!0===a.askedAI,nextStepIndex:"number"==typeof a.nextStepIndex?a.nextStepIndex:0,walkthroughStep:"number"==typeof a.walkthroughStep?a.walkthroughStep:void 0,walkthroughDismissed:"boolean"==typeof a.walkthroughDismissed?a.walkthroughDismissed:void 0}}(c.guideState),baseUrlCompat:(()=>{let a=c.baseUrlCompat;if(!a||"object"!=typeof a)return;let b={};for(let[c,d]of Object.entries(a))("streaming"===d||"non-streaming"===d)&&(b[c]=d);return Object.keys(b).length>0?b:void 0})(),connectionMode:function(a){if(a.connectionMode&&"object"==typeof a.connectionMode){let b=a.connectionMode;if("boolean"==typeof b.cli&&"boolean"==typeof b.mcp)return{cli:b.cli,mcp:b.mcp}}let b=!0===a.setupPending||!a.mindRoot;return{cli:!0,mcp:!b}}(c),customAgents:Array.isArray(c.customAgents)?c.customAgents:void 0}}catch{return{...w,ai:{...w.ai,providers:{...w.ai.providers}},setupPending:!0,connectionMode:{cli:!0,mcp:!1}}}}function p(a){let b=h().dirname(v);f().existsSync(b)||f().mkdirSync(b,{recursive:!0});let c={};try{c=JSON.parse(f().readFileSync(v,"utf-8"))}catch{}let d={...c,ai:a.ai,mindRoot:a.mindRoot};void 0!==a.agent&&(d.agent=a.agent),void 0!==a.webPassword&&(d.webPassword=a.webPassword),void 0!==a.authToken&&(d.authToken=a.authToken),void 0!==a.port&&(d.port=a.port),void 0!==a.mcpPort&&(d.mcpPort=a.mcpPort),void 0!==a.startMode&&(d.startMode=a.startMode),void 0!==a.disabledSkills&&(d.disabledSkills=a.disabledSkills),void 0!==a.guideState&&(d.guideState=a.guideState),void 0!==a.acpAgents&&(d.acpAgents=a.acpAgents),void 0!==a.baseUrlCompat&&(d.baseUrlCompat=a.baseUrlCompat),void 0!==a.connectionMode&&(d.connectionMode=a.connectionMode),void 0!==a.customAgents&&(d.customAgents=a.customAgents),"setupPending"in a&&(a.setupPending?d.setupPending=!0:delete d.setupPending),"setupPort"in a&&(a.setupPort?d.setupPort=a.setupPort:delete d.setupPort),f().writeFileSync(v,JSON.stringify(d,null,2)+"\n","utf-8")}function q(a,b,c){let d={};try{d=JSON.parse(f().readFileSync(v,"utf-8"))}catch{}let e=Array.isArray(d.installedSkillAgents)?d.installedSkillAgents:[],g={agent:a,skill:b,path:c},i=e.findIndex(c=>c.agent===a&&c.skill===b);i>=0?e[i]=g:e.push(g),d.installedSkillAgents=e;let j=h().dirname(v);f().existsSync(j)||f().mkdirSync(j,{recursive:!0}),f().writeFileSync(v,JSON.stringify(d,null,2)+"\n","utf-8")}function r(a){let b=o(),c=process.env.AI_PROVIDER,d=a??((0,l.rl)(b.ai.provider)?b.ai.provider:c&&(0,l.rl)(c)?c:"anthropic"),e=l.T_[d]??l.T_.anthropic,f=b.ai.providers[d]??{apiKey:"",model:""},g=f.apiKey||(0,l.lr)(d)||e.apiKeyFallback||"",h=f.model||e.defaultModel,i=f.baseUrl||e.fixedBaseUrl||"";return{provider:d,apiKey:g,model:h,baseUrl:i}}function s(){return o().mindRoot||process.env.MIND_ROOT||h().join(j().homedir(),"MindOS","mind")}function t(){try{return o().baseUrlCompat??{}}catch{return{}}}function u(a,b){let c=o(),d={...c.baseUrlCompat??{},[a]:b};p({...c,baseUrlCompat:d})}d()}catch(a){d(a)}})},78335:()=>{},96487:()=>{}};
1
+ exports.id=6539,exports.ids=[6539],exports.modules={39008:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{KP:()=>i,Ot:()=>l,T_:()=>n,Ux:()=>j,im:()=>h,jt:()=>o,lr:()=>k,rl:()=>g,us:()=>m});var e=c(14270),f=a([e]);e=(f.then?(await f)():f)[0];let n={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"}},o=Object.keys(n);function g(a){return a in n}function h(a){return n[a]??n.anthropic}function i(a){return n[a].piProviderOverride??a}let p={deepseek:"DEEPSEEK_API_KEY"};function j(a){return p[a]?p[a]:q[i(a)]}function k(a){return"deepseek"===a?process.env.DEEPSEEK_API_KEY:(0,e.getEnvApiKey)(i(a))}function l(a){let b=n[a];if(b.fixedBaseUrl)return b.fixedBaseUrl;try{let b=(0,e.getModels)(i(a));return b[0]?.baseUrl??""}catch{return""}}function m(a){try{let b=(0,e.getModels)(i(a));return b[0]?.api??"openai-completions"}catch{return"openai-completions"}}let q={anthropic:"ANTHROPIC_API_KEY",openai:"OPENAI_API_KEY","azure-openai-responses":"AZURE_OPENAI_API_KEY",google:"GEMINI_API_KEY",groq:"GROQ_API_KEY",cerebras:"CEREBRAS_API_KEY",xai:"XAI_API_KEY",openrouter:"OPENROUTER_API_KEY",zai:"ZAI_API_KEY","zai-cn":"ZAI_API_KEY",mistral:"MISTRAL_API_KEY",minimax:"MINIMAX_API_KEY","minimax-cn":"MINIMAX_API_KEY",huggingface:"HF_TOKEN","kimi-coding":"KIMI_API_KEY"};d()}catch(a){d(a)}})},61913:(a,b,c)=>{"use strict";c.d(b,{bp:()=>e,gG:()=>j,ug:()=>i,v_:()=>g,vm:()=>f,xX:()=>h});let d={gemini:{binary:"gemini",cmd:"gemini",args:["--experimental-acp"],installCmd:"npm install -g @google/gemini-cli",displayName:"Gemini CLI",description:"Google Gemini 驱动的编程智能体。支持多文件编辑、代码审查、调试和项目级重构,原生集成 Google 搜索实时查询技术文档。"},"gemini-cli":{binary:"gemini",cmd:"gemini",args:["--experimental-acp"],installCmd:"npm install -g @google/gemini-cli",displayName:"Gemini CLI",description:"Google Gemini 驱动的编程智能体。支持多文件编辑、代码审查、调试和项目级重构,原生集成 Google 搜索实时查询技术文档。"},claude:{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"claude-code":{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"claude-acp":{binary:"claude",cmd:"npx",args:["--yes","@agentclientprotocol/claude-agent-acp"],installCmd:"npm install -g @anthropic-ai/claude-code",displayName:"Claude Code",description:"Anthropic Claude 驱动的编程智能体。擅长复杂推理、长上下文理解和安全代码生成,支持多文件编辑与 agentic 工作流。"},"codebuddy-code":{binary:"codebuddy",cmd:"codebuddy",args:["--acp"],installCmd:"npm install -g @tencent-ai/codebuddy-code",displayName:"CodeBuddy Code",description:"腾讯云智能编程助手。基于混元大模型,支持代码补全、生成、审查和多文件重构,深度理解中文语境,适配国内开发生态。"},codebuddy:{binary:"codebuddy",cmd:"codebuddy",args:["--acp"],installCmd:"npm install -g @tencent-ai/codebuddy-code",displayName:"CodeBuddy Code",description:"腾讯云智能编程助手。基于混元大模型,支持代码补全、生成、审查和多文件重构,深度理解中文语境,适配国内开发生态。"},"codex-acp":{binary:"codex",cmd:"codex",args:[],installCmd:"npm install -g @openai/codex",displayName:"Codex",description:"OpenAI Codex 编程智能体。基于 GPT 系列模型,擅长代码生成、自动化任务和多语言编程支持。"},codex:{binary:"codex",cmd:"codex",args:[],installCmd:"npm install -g @openai/codex",displayName:"Codex",description:"OpenAI Codex 编程智能体。基于 GPT 系列模型,擅长代码生成、自动化任务和多语言编程支持。"},cursor:{binary:"cursor",cmd:"cursor",args:[],displayName:"Cursor",description:"Cursor AI 编程智能体。AI-first 代码编辑器的 CLI 模式,支持上下文感知的代码编辑、Tab 补全和多文件协同修改。"},cline:{binary:"cline",cmd:"cline",args:[],installCmd:"npm install -g cline",displayName:"Cline",description:"开源自主编程智能体。支持多模型后端,内置文件编辑、终端执行和浏览器自动化能力。"},"github-copilot-cli":{binary:"github-copilot",cmd:"github-copilot",args:[],installCmd:"npm install -g @github/copilot",displayName:"GitHub Copilot",description:"GitHub Copilot 编程智能体。基于海量开源代码训练,擅长代码补全、测试生成和跨语言编程支持。"},goose:{binary:"goose",cmd:"goose",args:[],installCmd:"pip install goose-ai",displayName:"Goose",description:"Block 开源自主编程智能体。支持多模型后端,可扩展插件架构,擅长复杂任务自动化。"},opencode:{binary:"opencode",cmd:"opencode",args:[],installCmd:"go install github.com/opencode-ai/opencode@latest",displayName:"OpenCode",description:"开源终端编程智能体。Go 实现,轻量快速,支持多模型后端和丰富的代码编辑工具。"},kilo:{binary:"kilo",cmd:"kilo",args:[],installCmd:"npm install -g @kilocode/cli",displayName:"Kilo Code",description:"Kilo Code 编程智能体。开源 VS Code 扩展的 CLI 模式,支持多模型、自动审批和代码差异预览。"},openclaw:{binary:"openclaw",cmd:"openclaw",args:[],displayName:"OpenClaw",description:"OpenClaw 编程智能体。开源 Claude Code 替代方案,支持多模型后端和完整的 agentic 工作流。"},pi:{binary:"pi",cmd:"pi",args:[],displayName:"Pi Agent",description:"Pi Agent 编程智能体。轻量级终端编程助手。"},"pi-acp":{binary:"pi",cmd:"pi",args:[],displayName:"Pi Agent",description:"Pi Agent 编程智能体。轻量级终端编程助手。"},auggie:{binary:"auggie",cmd:"auggie",args:[],displayName:"Auggie",description:"Augment Code 编程智能体。支持代码理解、生成和全仓库上下文感知。"},iflow:{binary:"iflow",cmd:"iflow",args:[],displayName:"iFlow",description:"iFlow 编程智能体。AI 驱动的工作流自动化工具。"},kimi:{binary:"kimi",cmd:"kimi",args:[],displayName:"Kimi",description:"Moonshot AI Kimi 编程智能体。擅长超长上下文理解,支持中文语境下的代码生成与分析。"},"qwen-code":{binary:"qwen-code",cmd:"qwen-code",args:[],installCmd:"npm install -g @qwen-code/qwen-code",displayName:"Qwen Code",description:"阿里通义千问 Qwen 编程智能体。基于 Qwen 大模型,支持代码生成、审查和多语言编程,深度适配中文开发场景。"},lingma:{binary:"lingma",cmd:"lingma",args:[],displayName:"Lingma",description:"阿里通义灵码智能编程助手。提供代码补全、智能问答、多文件修改和编程智能体能力,支持 MCP 工具扩展。"}};function e(a,b,c){let e=d[a],f=c?.enabled!==!1;if(c&&(c.command||c.args))return{cmd:c.command??e?.cmd??b?.command??a,args:c.args??e?.args??[],env:c.env,source:"user-override",binary:e?.binary??a,installCmd:e?.installCmd,enabled:f};if(e)return{cmd:e.cmd,args:e.args,env:c?.env,source:"descriptor",binary:e.binary,installCmd:e.installCmd,enabled:f};if(b){let{cmd:d,args:e}=function(a){switch(a.transport){case"npx":return{cmd:"npx",args:["--yes",a.command,...a.args??[]]};case"uvx":return{cmd:"uvx",args:[a.command,...a.args??[]]};default:return{cmd:a.command,args:a.args??[]}}}(b);return{cmd:d,args:e,env:c?.env,source:"registry",binary:a,installCmd:b.packageName?`npm install -g ${b.packageName}`:void 0,enabled:f}}return{cmd:a,args:[],env:c?.env,source:"registry",binary:a,enabled:f}}function f(a){return d[a]?.binary}function g(a){return d[a]?.installCmd}function h(a){return d[a]?.displayName}function i(a){return d[a]?.description}function j(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}},76223:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{Sf:()=>r,_S:()=>u,kh:()=>s,readSettings:()=>o,recordSkillInstall:()=>q,writeSettings:()=>p,xV:()=>t});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g),i=c(21820),j=c.n(i),k=c(61913),l=c(39008),m=a([l]);l=(m.then?(await m)():m)[0];let v=h().join(j().homedir(),".mindos","config.json"),w={ai:{provider:"anthropic",providers:{anthropic:{apiKey:"",model:"claude-sonnet-4-6"},openai:{apiKey:"",model:"gpt-5.4",baseUrl:""}}},mindRoot:""};function n(a,b,c){if(a&&"object"==typeof a){let c=a[b];if("string"==typeof c&&""!==c.trim())return c}return c}function o(){try{var a;let b=f().readFileSync(v,"utf-8"),c=JSON.parse(b);return{ai:function(a){let b=a.ai;if(!b)return{...w.ai};let c="string"==typeof b.provider?b.provider:"anthropic",d=(0,l.rl)(c)?c:"anthropic";if(b.providers&&"object"==typeof b.providers){let a=b.providers,c={};for(let b of Object.keys(a)){var e;if(!(0,l.rl)(b))continue;let d=l.T_[b],f=w.ai.providers[b]??{apiKey:"",model:d.defaultModel};c[b]=(e=a[b],{apiKey:n(e,"apiKey",f.apiKey),model:n(e,"model",f.model),...void 0!==f.baseUrl?{baseUrl:n(e,"baseUrl",f.baseUrl)}:{}})}return c.anthropic||(c.anthropic=w.ai.providers.anthropic),c.openai||(c.openai=w.ai.providers.openai),{provider:d,providers:c}}return{provider:d,providers:{anthropic:{apiKey:n(b,"anthropicApiKey",""),model:n(b,"anthropicModel","claude-sonnet-4-6")},openai:{apiKey:n(b,"openaiApiKey",""),model:n(b,"openaiModel","gpt-5.4"),baseUrl:n(b,"openaiBaseUrl","")}}}}(c),agent:function(a){if(!a||"object"!=typeof a)return;let b={};return"number"==typeof a.maxSteps&&(b.maxSteps=Math.min(30,Math.max(1,a.maxSteps))),"boolean"==typeof a.enableThinking&&(b.enableThinking=a.enableThinking),"number"==typeof a.thinkingBudget&&(b.thinkingBudget=Math.min(5e4,Math.max(1e3,a.thinkingBudget))),("auto"===a.contextStrategy||"off"===a.contextStrategy)&&(b.contextStrategy=a.contextStrategy),"number"==typeof a.reconnectRetries&&(b.reconnectRetries=Math.min(10,Math.max(0,a.reconnectRetries))),Object.keys(b).length>0?b:void 0}(c.agent),acpAgents:(a=c.acpAgents,(0,k.gG)(a)),mindRoot:c.mindRoot??w.mindRoot,webPassword:"string"==typeof c.webPassword?c.webPassword:void 0,authToken:"string"==typeof c.authToken?c.authToken:void 0,mcpPort:"number"==typeof c.mcpPort?c.mcpPort:void 0,port:"number"==typeof c.port?c.port:void 0,startMode:"string"==typeof c.startMode?c.startMode:void 0,setupPending:!0===c.setupPending||void 0,disabledSkills:Array.isArray(c.disabledSkills)?c.disabledSkills:void 0,guideState:function(a){if(!a||"object"!=typeof a||!0!==a.active)return;let b="en"===a.template||"zh"===a.template||"empty"===a.template?a.template:"en";return{active:!0,dismissed:!0===a.dismissed,template:b,step1Done:!0===a.step1Done,askedAI:!0===a.askedAI,nextStepIndex:"number"==typeof a.nextStepIndex?a.nextStepIndex:0,walkthroughStep:"number"==typeof a.walkthroughStep?a.walkthroughStep:void 0,walkthroughDismissed:"boolean"==typeof a.walkthroughDismissed?a.walkthroughDismissed:void 0}}(c.guideState),baseUrlCompat:(()=>{let a=c.baseUrlCompat;if(!a||"object"!=typeof a)return;let b={};for(let[c,d]of Object.entries(a))("streaming"===d||"non-streaming"===d)&&(b[c]=d);return Object.keys(b).length>0?b:void 0})(),connectionMode:function(a){if(a.connectionMode&&"object"==typeof a.connectionMode){let b=a.connectionMode;if("boolean"==typeof b.cli&&"boolean"==typeof b.mcp)return{cli:b.cli,mcp:b.mcp}}let b=!0===a.setupPending||!a.mindRoot;return{cli:!0,mcp:!b}}(c),customAgents:Array.isArray(c.customAgents)?c.customAgents:void 0}}catch{return{...w,ai:{...w.ai,providers:{...w.ai.providers}},setupPending:!0,connectionMode:{cli:!0,mcp:!1}}}}function p(a){let b=h().dirname(v);f().existsSync(b)||f().mkdirSync(b,{recursive:!0});let c={};try{c=JSON.parse(f().readFileSync(v,"utf-8"))}catch{}let d={...c,ai:a.ai,mindRoot:a.mindRoot};void 0!==a.agent&&(d.agent=a.agent),void 0!==a.webPassword&&(d.webPassword=a.webPassword),void 0!==a.authToken&&(d.authToken=a.authToken),void 0!==a.port&&(d.port=a.port),void 0!==a.mcpPort&&(d.mcpPort=a.mcpPort),void 0!==a.startMode&&(d.startMode=a.startMode),void 0!==a.disabledSkills&&(d.disabledSkills=a.disabledSkills),void 0!==a.guideState&&(d.guideState=a.guideState),void 0!==a.acpAgents&&(d.acpAgents=a.acpAgents),void 0!==a.baseUrlCompat&&(d.baseUrlCompat=a.baseUrlCompat),void 0!==a.connectionMode&&(d.connectionMode=a.connectionMode),void 0!==a.customAgents&&(d.customAgents=a.customAgents),"setupPending"in a&&(a.setupPending?d.setupPending=!0:delete d.setupPending),"setupPort"in a&&(a.setupPort?d.setupPort=a.setupPort:delete d.setupPort),f().writeFileSync(v,JSON.stringify(d,null,2)+"\n","utf-8")}function q(a,b,c){let d={};try{d=JSON.parse(f().readFileSync(v,"utf-8"))}catch{}let e=Array.isArray(d.installedSkillAgents)?d.installedSkillAgents:[],g={agent:a,skill:b,path:c},i=e.findIndex(c=>c.agent===a&&c.skill===b);i>=0?e[i]=g:e.push(g),d.installedSkillAgents=e;let j=h().dirname(v);f().existsSync(j)||f().mkdirSync(j,{recursive:!0}),f().writeFileSync(v,JSON.stringify(d,null,2)+"\n","utf-8")}function r(a){let b=o(),c=process.env.AI_PROVIDER,d=a??((0,l.rl)(b.ai.provider)?b.ai.provider:c&&(0,l.rl)(c)?c:"anthropic"),e=l.T_[d]??l.T_.anthropic,f=b.ai.providers[d]??{apiKey:"",model:""},g=f.apiKey||(0,l.lr)(d)||e.apiKeyFallback||"",h=f.model||e.defaultModel,i=f.baseUrl||e.fixedBaseUrl||"";return{provider:d,apiKey:g,model:h,baseUrl:i}}function s(){return o().mindRoot||process.env.MIND_ROOT||h().join(j().homedir(),"MindOS","mind")}function t(){try{return o().baseUrlCompat??{}}catch{return{}}}function u(a,b){let c=o(),d={...c.baseUrlCompat??{},[a]:b};p({...c,baseUrlCompat:d})}d()}catch(a){d(a)}})},78335:()=>{},96487:()=>{}};
@@ -1,4 +1,4 @@
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
1
+ "use strict";exports.id=8955,exports.ids=[8955],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
 
@@ -33,7 +33,7 @@ ${a}/
33
33
  ## 💡 Usage
34
34
 
35
35
  (Describe the purpose and usage of this space.)
36
- `;function f(a){return a.replace(/^[\p{Emoji_Presentation}\p{Extended_Pictographic}\s]+/u,"")||a}},4120:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{kh:()=>o});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g),i=c(21820),j=c.n(i),k=c(61374),l=c(27313),m=a([l]);l=(m.then?(await m)():m)[0];let p=h().join(j().homedir(),".mindos","config.json"),q={ai:{provider:"anthropic",providers:{anthropic:{apiKey:"",model:"claude-sonnet-4-6"},openai:{apiKey:"",model:"gpt-5.4",baseUrl:""}}},mindRoot:""};function n(a,b,c){if(a&&"object"==typeof a){let c=a[b];if("string"==typeof c&&""!==c.trim())return c}return c}function o(){return function(){try{var a;let b=f().readFileSync(p,"utf-8"),c=JSON.parse(b);return{ai:function(a){let b=a.ai;if(!b)return{...q.ai};let c="string"==typeof b.provider?b.provider:"anthropic",d=(0,l.rl)(c)?c:"anthropic";if(b.providers&&"object"==typeof b.providers){let a=b.providers,c={};for(let b of Object.keys(a)){var e;if(!(0,l.rl)(b))continue;let d=l.T_[b],f=q.ai.providers[b]??{apiKey:"",model:d.defaultModel};c[b]=(e=a[b],{apiKey:n(e,"apiKey",f.apiKey),model:n(e,"model",f.model),...void 0!==f.baseUrl?{baseUrl:n(e,"baseUrl",f.baseUrl)}:{}})}return c.anthropic||(c.anthropic=q.ai.providers.anthropic),c.openai||(c.openai=q.ai.providers.openai),{provider:d,providers:c}}return{provider:d,providers:{anthropic:{apiKey:n(b,"anthropicApiKey",""),model:n(b,"anthropicModel","claude-sonnet-4-6")},openai:{apiKey:n(b,"openaiApiKey",""),model:n(b,"openaiModel","gpt-5.4"),baseUrl:n(b,"openaiBaseUrl","")}}}}(c),agent:function(a){if(!a||"object"!=typeof a)return;let b={};return"number"==typeof a.maxSteps&&(b.maxSteps=Math.min(30,Math.max(1,a.maxSteps))),"boolean"==typeof a.enableThinking&&(b.enableThinking=a.enableThinking),"number"==typeof a.thinkingBudget&&(b.thinkingBudget=Math.min(5e4,Math.max(1e3,a.thinkingBudget))),("auto"===a.contextStrategy||"off"===a.contextStrategy)&&(b.contextStrategy=a.contextStrategy),"number"==typeof a.reconnectRetries&&(b.reconnectRetries=Math.min(10,Math.max(0,a.reconnectRetries))),Object.keys(b).length>0?b:void 0}(c.agent),acpAgents:(a=c.acpAgents,(0,k.gG)(a)),mindRoot:c.mindRoot??q.mindRoot,webPassword:"string"==typeof c.webPassword?c.webPassword:void 0,authToken:"string"==typeof c.authToken?c.authToken:void 0,mcpPort:"number"==typeof c.mcpPort?c.mcpPort:void 0,port:"number"==typeof c.port?c.port:void 0,startMode:"string"==typeof c.startMode?c.startMode:void 0,setupPending:!0===c.setupPending||void 0,disabledSkills:Array.isArray(c.disabledSkills)?c.disabledSkills:void 0,guideState:function(a){if(!a||"object"!=typeof a||!0!==a.active)return;let b="en"===a.template||"zh"===a.template||"empty"===a.template?a.template:"en";return{active:!0,dismissed:!0===a.dismissed,template:b,step1Done:!0===a.step1Done,askedAI:!0===a.askedAI,nextStepIndex:"number"==typeof a.nextStepIndex?a.nextStepIndex:0,walkthroughStep:"number"==typeof a.walkthroughStep?a.walkthroughStep:void 0,walkthroughDismissed:"boolean"==typeof a.walkthroughDismissed?a.walkthroughDismissed:void 0}}(c.guideState),baseUrlCompat:(()=>{let a=c.baseUrlCompat;if(!a||"object"!=typeof a)return;let b={};for(let[c,d]of Object.entries(a))("streaming"===d||"non-streaming"===d)&&(b[c]=d);return Object.keys(b).length>0?b:void 0})(),connectionMode:function(a){if(a.connectionMode&&"object"==typeof a.connectionMode){let b=a.connectionMode;if("boolean"==typeof b.cli&&"boolean"==typeof b.mcp)return{cli:b.cli,mcp:b.mcp}}let b=!0===a.setupPending||!a.mindRoot;return{cli:!0,mcp:!b}}(c),customAgents:Array.isArray(c.customAgents)?c.customAgents:void 0}}catch{return{...q,ai:{...q.ai,providers:{...q.ai.providers}},setupPending:!0,connectionMode:{cli:!0,mcp:!1}}}}().mindRoot||process.env.MIND_ROOT||h().join(j().homedir(),"MindOS","mind")}d()}catch(a){d(a)}})},14432:(a,b,c)=>{c.d(b,{Xs:()=>B,As:()=>x,rt:()=>e.rt,x3:()=>e.x3,_E:()=>w,H5:()=>e.H5,OV:()=>e.OV});var d=c(99863),e=c(18451),f=c(29021),g=c.n(f);c(79748);var h=c(33873),i=c.n(h);let j=new Set([".git","node_modules","app",".next",".DS_Store","mcp",".media"]),k=new Set([".md",".csv",".pdf",".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".mp3",".wav",".m4a",".ogg",".flac",".aac",".mp4",".webm",".mov",".mkv"]),l=new Set(["INSTRUCTION.md","README.md","CONFIG.json","CHANGELOG.md"]);function m(a,b,c={}){let d,e=i().resolve(a),f=b??e,h=c.ignoredDirs??j,n=c.allowedExtensions??k;try{d=g().readdirSync(f,{withFileTypes:!0})}catch{return[]}let o=[];for(let b of d){let d=i().join(f,b.name);if(b.isDirectory()){if(h.has(b.name))continue;o.push(...m(a,d,c))}else if(b.isFile()){if(f===e&&l.has(b.name))continue;let a=i().extname(b.name).toLowerCase();n.has(a)&&o.push(i().relative(e,d))}}return o}var n=c(21820),o=c.n(n),p=c(89531);let q=/[\u4e00-\u9fff\u3040-\u309f\u30a0-\u30ff\uac00-\ud7af]/,r="u">typeof Intl&&Intl.Segmenter?new Intl.Segmenter("zh",{granularity:"word"}):null;function s(a){let b=new Set,c=a.toLowerCase(),d=c.match(/[a-z0-9_$@#]+/g);if(d)for(let a of d)a.length>=2&&b.add(a);if(q.test(c))if(r)for(let{segment:a,isWordLike:d}of r.segment(c)){if(!d)continue;let c=a.trim();if(c)for(let a of(b.add(c),c))q.test(a)&&b.add(a)}else{let a=[];for(let d of c)q.test(d)?a.push(d):a.length>0&&(t(a,b),a.length=0);a.length>0&&t(a,b)}return b}function t(a,b){for(let c=0;c<a.length;c++)b.add(a[c]),c+1<a.length&&b.add(a[c]+a[c+1])}class u{rebuild(a){let b=m(a),c=new Map,f=new Map,g=new Map,h=0;for(let j of b){let b;if(".pdf"===i().extname(j).toLowerCase())try{let c=(0,d.eX)(a,j);if(!(b=(0,p.b)(c)))continue}catch{continue}else try{b=(0,e.TA)(a,j)}catch{continue}f.set(j,b.length),h+=b.length,b.length>5e4&&(b=b.slice(0,5e4));let k=s(j+"\n"+b);for(let a of(g.set(j,k),k)){let b=c.get(a);b||(b=new Set,c.set(a,b)),b.add(j)}}this.invertedIndex=c,this.builtForRoot=a,this.fileCount=b.length,this.docLengths=f,this.totalChars=h,this.fileTokens=g}invalidate(){this.invertedIndex=null,this.builtForRoot=null,this.fileCount=0,this.docLengths.clear(),this.totalChars=0,this.fileTokens.clear()}removeFile(a){if(!this.invertedIndex)return;let b=this.fileTokens.get(a);if(b){for(let c of b)this.invertedIndex.get(c)?.delete(a);this.fileTokens.delete(a)}let c=this.docLengths.get(a)??0;this.totalChars-=c,this.docLengths.delete(a),this.fileCount=Math.max(0,this.fileCount-1)}addFile(a,b){let c;if(!this.invertedIndex)return;if(".pdf"===i().extname(b).toLowerCase())try{let e=(0,d.eX)(a,b);if(!(c=(0,p.b)(e)))return}catch{return}else try{c=(0,e.TA)(a,b)}catch{return}this.docLengths.set(b,c.length),this.totalChars+=c.length,this.fileCount++,c.length>5e4&&(c=c.slice(0,5e4));let f=s(b+"\n"+c);for(let a of(this.fileTokens.set(b,f),f)){let c=this.invertedIndex.get(a);c||(c=new Set,this.invertedIndex.set(a,c)),c.add(b)}}updateFile(a,b){this.invertedIndex&&(this.removeFile(b),this.addFile(a,b))}isBuiltFor(a){return null!==this.invertedIndex&&this.builtForRoot===a}isBuilt(){return null!==this.invertedIndex}getFileCount(){return this.fileCount}getAvgDocLength(){return this.fileCount>0?this.totalChars/this.fileCount:0}getDocLength(a){return this.docLengths.get(a)??0}getDocFrequency(a){return this.invertedIndex?this.invertedIndex.get(a)?.size??0:0}getCandidatesUnion(a){if(!a.trim()||!this.invertedIndex)return null;let b=s(a.toLowerCase().trim());if(0===b.size)return null;let c=new Map;for(let a of b){let b=this.invertedIndex.get(a);if(b)for(let a of b)c.set(a,(c.get(a)??0)+1)}if(0===c.size)return[];let d=b.size;if(d>=3){let a=Math.max(1,Math.floor(d/2)),b=[...c.entries()].filter(([,b])=>b>=a).map(([a])=>a);if(b.length>0)return b}return[...c.keys()]}getCandidates(a){if(!a.trim()||!this.invertedIndex)return null;let b=s(a.toLowerCase().trim());if(0===b.size)return null;let c=null;for(let a of b){let b=this.invertedIndex.get(a);if(!b)return[];if(null===c)c=new Set(b);else{for(let a of c)b.has(a)||c.delete(a);if(0===c.size)return[]}}return c?Array.from(c):[]}persist(a){if(!this.invertedIndex)return;let b={version:1,builtForRoot:this.builtForRoot??"",fileCount:this.fileCount,totalChars:this.totalChars,docLengths:Object.fromEntries(this.docLengths),invertedIndex:{},timestamp:Date.now()};for(let[a,c]of this.invertedIndex)b.invertedIndex[a]=[...c];let c=i().join(a,"search-index.json");try{g().mkdirSync(a,{recursive:!0}),g().writeFileSync(c,JSON.stringify(b),"utf-8")}catch{}}load(a,b){let c,d,e=i().join(a,"search-index.json");try{c=g().readFileSync(e,"utf-8")}catch{return!1}try{d=JSON.parse(c)}catch{return!1}if(1!==d.version||d.builtForRoot!==b||m(b).length!==d.fileCount)return!1;let f=Object.keys(d.docLengths);if(Math.min(50,f.length)===f.length)for(let a of f)try{if(g().statSync(i().join(b,a)).mtimeMs>d.timestamp)return!1}catch{return!1}else{let a=Math.max(1,Math.floor(f.length/40)),c=new Set;for(let b=0;b<f.length;b+=a)c.add(b);for(let a=Math.max(0,f.length-10);a<f.length;a++)c.add(a);for(let a of c)try{if(g().statSync(i().join(b,f[a])).mtimeMs>d.timestamp)return!1}catch{return!1}}this.builtForRoot=d.builtForRoot,this.fileCount=d.fileCount,this.totalChars=d.totalChars,this.docLengths=new Map(Object.entries(d.docLengths).map(([a,b])=>[a,b]));let h=new Map,j=new Map;for(let[a,b]of Object.entries(d.invertedIndex)){let c=new Set(b);for(let b of(h.set(a,c),c)){let c=j.get(b);c||(c=new Set,j.set(b,c)),c.add(a)}}return this.invertedIndex=h,this.fileTokens=j,!0}constructor(){this.invertedIndex=null,this.builtForRoot=null,this.fileCount=0,this.docLengths=new Map,this.totalChars=0,this.fileTokens=new Map}}let v=new u;function w(){v.invalidate()}function x(a,b){v.isBuilt()&&(v.addFile(a,b),z=!0,y&&clearTimeout(y),y=setTimeout(A,5e3))}let y=null,z=!1;function A(){if(y&&(clearTimeout(y),y=null),z){z=!1;try{v.persist(i().join(o().homedir(),".mindos"))}catch{}}}"u">typeof process&&(process.on("beforeExit",A),process.on("SIGTERM",()=>{A(),process.exit(0)}),process.on("SIGINT",()=>{A(),process.exit(0)}));class B{rebuild(a){let b=m(a).filter(a=>a.endsWith(".md")),c=new Set(b),d=function(a){let b=new Map;for(let c of a){let a=i().basename(c).toLowerCase();b.has(a)||b.set(a,[]),b.get(a).push(c)}return b}(b),f=new Map,g=new Map;for(let h of b){let b;try{b=(0,e.TA)(a,h)}catch{continue}let i=C(b,h,c,d),j=new Set;for(let a of i)a!==h&&j.add(a);for(let a of(f.set(h,j),j)){let b=g.get(a);b||(b=new Set,g.set(a,b)),b.add(h)}}this.forwardLinks=f,this.backwardLinks=g,this.builtForRoot=a,this.fileSet=c,this.basenameMap=d}invalidate(){this.forwardLinks.clear(),this.backwardLinks.clear(),this.builtForRoot=null,this.fileSet.clear(),this.basenameMap.clear()}isBuiltFor(a){return this.builtForRoot===a}isBuilt(){return null!==this.builtForRoot}getForwardLinks(a){return[...this.forwardLinks.get(a)??[]]}getBacklinks(a){return[...this.backwardLinks.get(a)??[]]}getAllEdges(){let a=[];for(let[b,c]of this.forwardLinks)for(let d of c)a.push({source:b,target:d});return a}removeFile(a){let b=this.forwardLinks.get(a);if(b){for(let c of b)this.backwardLinks.get(c)?.delete(a);this.forwardLinks.delete(a)}let c=this.backwardLinks.get(a);if(c){for(let b of c)this.forwardLinks.get(b)?.delete(a);this.backwardLinks.delete(a)}this.fileSet.delete(a);let d=i().basename(a).toLowerCase(),e=this.basenameMap.get(d);if(e){let b=e.indexOf(a);b>=0&&e.splice(b,1),0===e.length&&this.basenameMap.delete(d)}}updateFile(a,b){let c;if(!this.builtForRoot||!b.endsWith(".md"))return;let d=this.forwardLinks.get(b);if(d)for(let a of d)this.backwardLinks.get(a)?.delete(b);try{c=(0,e.TA)(a,b)}catch{return}if(!this.fileSet.has(b)){this.fileSet.add(b);let a=i().basename(b).toLowerCase();this.basenameMap.has(a)||this.basenameMap.set(a,[]),this.basenameMap.get(a).push(b)}let f=C(c,b,this.fileSet,this.basenameMap),g=new Set;for(let a of f)a!==b&&g.add(a);for(let a of(this.forwardLinks.set(b,g),g)){let c=this.backwardLinks.get(a);c||(c=new Set,this.backwardLinks.set(a,c)),c.add(b)}}constructor(){this.forwardLinks=new Map,this.backwardLinks=new Map,this.builtForRoot=null,this.fileSet=new Set,this.basenameMap=new Map}}function C(a,b,c,d){let e,f=[],g=i().dirname(b),h=/\[\[([^\]|#]+)(?:[|#][^\]]*)?/g;for(;null!==(e=h.exec(a));){let a=e[1].trim();if(!a)continue;if(c.has(a)){f.push(a);continue}let b=a.endsWith(".md")?a:a+".md";if(c.has(b)){f.push(b);continue}let g=i().basename(b).toLowerCase(),h=d.get(g);h&&1===h.length&&f.push(h[0])}let j=/\[[^\]]+\]\(([^)]+\.md)(?:#[^)]*)?\)/g;for(;null!==(e=j.exec(a));){let a=e[1].trim();if(!a||a.startsWith("http"))continue;let b=i().normalize(i().join(g,a));c.has(b)&&f.push(b)}return f}c(20018),c(79646),c(15872)},15872:(a,b,c)=>{c.d(b,{_:()=>l,c:()=>k});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(20018),i=c(18451),j=c(1160);function k(a,b,c){let d=b.replace(/^[\p{Emoji_Presentation}\p{Extended_Pictographic}\s]+/u,"")||b,e=c.trim()||"(Describe the purpose and usage of this space.)";return`# ${d}
36
+ `;function f(a){return a.replace(/^[\p{Emoji_Presentation}\p{Extended_Pictographic}\s]+/u,"")||a}},4120:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{kh:()=>o});var e=c(29021),f=c.n(e),g=c(33873),h=c.n(g),i=c(21820),j=c.n(i),k=c(61374),l=c(27313),m=a([l]);l=(m.then?(await m)():m)[0];let p=h().join(j().homedir(),".mindos","config.json"),q={ai:{provider:"anthropic",providers:{anthropic:{apiKey:"",model:"claude-sonnet-4-6"},openai:{apiKey:"",model:"gpt-5.4",baseUrl:""}}},mindRoot:""};function n(a,b,c){if(a&&"object"==typeof a){let c=a[b];if("string"==typeof c&&""!==c.trim())return c}return c}function o(){return function(){try{var a;let b=f().readFileSync(p,"utf-8"),c=JSON.parse(b);return{ai:function(a){let b=a.ai;if(!b)return{...q.ai};let c="string"==typeof b.provider?b.provider:"anthropic",d=(0,l.rl)(c)?c:"anthropic";if(b.providers&&"object"==typeof b.providers){let a=b.providers,c={};for(let b of Object.keys(a)){var e;if(!(0,l.rl)(b))continue;let d=l.T_[b],f=q.ai.providers[b]??{apiKey:"",model:d.defaultModel};c[b]=(e=a[b],{apiKey:n(e,"apiKey",f.apiKey),model:n(e,"model",f.model),...void 0!==f.baseUrl?{baseUrl:n(e,"baseUrl",f.baseUrl)}:{}})}return c.anthropic||(c.anthropic=q.ai.providers.anthropic),c.openai||(c.openai=q.ai.providers.openai),{provider:d,providers:c}}return{provider:d,providers:{anthropic:{apiKey:n(b,"anthropicApiKey",""),model:n(b,"anthropicModel","claude-sonnet-4-6")},openai:{apiKey:n(b,"openaiApiKey",""),model:n(b,"openaiModel","gpt-5.4"),baseUrl:n(b,"openaiBaseUrl","")}}}}(c),agent:function(a){if(!a||"object"!=typeof a)return;let b={};return"number"==typeof a.maxSteps&&(b.maxSteps=Math.min(30,Math.max(1,a.maxSteps))),"boolean"==typeof a.enableThinking&&(b.enableThinking=a.enableThinking),"number"==typeof a.thinkingBudget&&(b.thinkingBudget=Math.min(5e4,Math.max(1e3,a.thinkingBudget))),("auto"===a.contextStrategy||"off"===a.contextStrategy)&&(b.contextStrategy=a.contextStrategy),"number"==typeof a.reconnectRetries&&(b.reconnectRetries=Math.min(10,Math.max(0,a.reconnectRetries))),Object.keys(b).length>0?b:void 0}(c.agent),acpAgents:(a=c.acpAgents,(0,k.gG)(a)),mindRoot:c.mindRoot??q.mindRoot,webPassword:"string"==typeof c.webPassword?c.webPassword:void 0,authToken:"string"==typeof c.authToken?c.authToken:void 0,mcpPort:"number"==typeof c.mcpPort?c.mcpPort:void 0,port:"number"==typeof c.port?c.port:void 0,startMode:"string"==typeof c.startMode?c.startMode:void 0,setupPending:!0===c.setupPending||void 0,disabledSkills:Array.isArray(c.disabledSkills)?c.disabledSkills:void 0,guideState:function(a){if(!a||"object"!=typeof a||!0!==a.active)return;let b="en"===a.template||"zh"===a.template||"empty"===a.template?a.template:"en";return{active:!0,dismissed:!0===a.dismissed,template:b,step1Done:!0===a.step1Done,askedAI:!0===a.askedAI,nextStepIndex:"number"==typeof a.nextStepIndex?a.nextStepIndex:0,walkthroughStep:"number"==typeof a.walkthroughStep?a.walkthroughStep:void 0,walkthroughDismissed:"boolean"==typeof a.walkthroughDismissed?a.walkthroughDismissed:void 0}}(c.guideState),baseUrlCompat:(()=>{let a=c.baseUrlCompat;if(!a||"object"!=typeof a)return;let b={};for(let[c,d]of Object.entries(a))("streaming"===d||"non-streaming"===d)&&(b[c]=d);return Object.keys(b).length>0?b:void 0})(),connectionMode:function(a){if(a.connectionMode&&"object"==typeof a.connectionMode){let b=a.connectionMode;if("boolean"==typeof b.cli&&"boolean"==typeof b.mcp)return{cli:b.cli,mcp:b.mcp}}let b=!0===a.setupPending||!a.mindRoot;return{cli:!0,mcp:!b}}(c),customAgents:Array.isArray(c.customAgents)?c.customAgents:void 0}}catch{return{...q,ai:{...q.ai,providers:{...q.ai.providers}},setupPending:!0,connectionMode:{cli:!0,mcp:!1}}}}().mindRoot||process.env.MIND_ROOT||h().join(j().homedir(),"MindOS","mind")}d()}catch(a){d(a)}})},8955:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.r(b),c.d(b,{"00058778a0b2a5dcb058e8f0e75c904c87c37a9bed":()=>e.Dg,"0021e1bb42dae75f4360ed3a0cf3785dbc8b8db114":()=>e.Bn,"005535884e94350c62e28126613d44d4558d09cba0":()=>e.EG,"005d61cc26dd79b46775adef800e98e1b368cb496a":()=>e.GB,"402a32761b503fc903290a84879df794d0100187a2":()=>e.VO,"4034f606760908535f5f7cd820a62714756441642c":()=>e.iJ,"4036ed6785c2bdcd0c2e14a4445d571615318ab699":()=>e.jW,"406b84708d2165b47f20d918c55dc1ae207c14fa1a":()=>e.Ar,"407a777f67f9059923f362281bbc10ede55dbd4f72":()=>e.ku,"40b63ea38c3b1eb0f034fa8b586f969c8aa2e167df":()=>e.bC,"40d1ccdb3bfbd3b45067cf4fc3593e34d34aec672e":()=>e.Ye,"60243dca79d5ab1ef1e0297569c5320b53b6f27b29":()=>e.f,"603dfc4e51b50521a1ace7d13b87085c76787591d8":()=>e.NN,"60ea96ae82c4236eec257dd4f09f3f4f7672dcf519":()=>e.X3,"60fbaa16d8e17aacf66fc85b115c652f72844a7076":()=>e.pG,"7048382ea5253f1beab235fcf8a9a470c5d792219b":()=>e.pX,"70e1e3535e4aaa837f0f6fbf5b149df3ee0cf1fd73":()=>e.FZ});var e=c(85224),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},14432:(a,b,c)=>{c.d(b,{Xs:()=>B,As:()=>x,rt:()=>e.rt,x3:()=>e.x3,_E:()=>w,H5:()=>e.H5,OV:()=>e.OV});var d=c(99863),e=c(18451),f=c(29021),g=c.n(f);c(79748);var h=c(33873),i=c.n(h);let j=new Set([".git","node_modules","app",".next",".DS_Store","mcp",".media"]),k=new Set([".md",".csv",".pdf",".png",".jpg",".jpeg",".gif",".webp",".svg",".bmp",".ico",".mp3",".wav",".m4a",".ogg",".flac",".aac",".mp4",".webm",".mov",".mkv"]),l=new Set(["INSTRUCTION.md","README.md","CONFIG.json","CHANGELOG.md"]);function m(a,b,c={}){let d,e=i().resolve(a),f=b??e,h=c.ignoredDirs??j,n=c.allowedExtensions??k;try{d=g().readdirSync(f,{withFileTypes:!0})}catch{return[]}let o=[];for(let b of d){let d=i().join(f,b.name);if(b.isDirectory()){if(h.has(b.name))continue;o.push(...m(a,d,c))}else if(b.isFile()){if(f===e&&l.has(b.name))continue;let a=i().extname(b.name).toLowerCase();n.has(a)&&o.push(i().relative(e,d))}}return o}var n=c(21820),o=c.n(n),p=c(89531);let q=/[\u4e00-\u9fff\u3040-\u309f\u30a0-\u30ff\uac00-\ud7af]/,r="u">typeof Intl&&Intl.Segmenter?new Intl.Segmenter("zh",{granularity:"word"}):null;function s(a){let b=new Set,c=a.toLowerCase(),d=c.match(/[a-z0-9_$@#]+/g);if(d)for(let a of d)a.length>=2&&b.add(a);if(q.test(c))if(r)for(let{segment:a,isWordLike:d}of r.segment(c)){if(!d)continue;let c=a.trim();if(c)for(let a of(b.add(c),c))q.test(a)&&b.add(a)}else{let a=[];for(let d of c)q.test(d)?a.push(d):a.length>0&&(t(a,b),a.length=0);a.length>0&&t(a,b)}return b}function t(a,b){for(let c=0;c<a.length;c++)b.add(a[c]),c+1<a.length&&b.add(a[c]+a[c+1])}class u{rebuild(a){let b=m(a),c=new Map,f=new Map,g=new Map,h=0;for(let j of b){let b;if(".pdf"===i().extname(j).toLowerCase())try{let c=(0,d.eX)(a,j);if(!(b=(0,p.b)(c)))continue}catch{continue}else try{b=(0,e.TA)(a,j)}catch{continue}f.set(j,b.length),h+=b.length,b.length>5e4&&(b=b.slice(0,5e4));let k=s(j+"\n"+b);for(let a of(g.set(j,k),k)){let b=c.get(a);b||(b=new Set,c.set(a,b)),b.add(j)}}this.invertedIndex=c,this.builtForRoot=a,this.fileCount=b.length,this.docLengths=f,this.totalChars=h,this.fileTokens=g}invalidate(){this.invertedIndex=null,this.builtForRoot=null,this.fileCount=0,this.docLengths.clear(),this.totalChars=0,this.fileTokens.clear()}removeFile(a){if(!this.invertedIndex)return;let b=this.fileTokens.get(a);if(b){for(let c of b)this.invertedIndex.get(c)?.delete(a);this.fileTokens.delete(a)}let c=this.docLengths.get(a)??0;this.totalChars-=c,this.docLengths.delete(a),this.fileCount=Math.max(0,this.fileCount-1)}addFile(a,b){let c;if(!this.invertedIndex)return;if(".pdf"===i().extname(b).toLowerCase())try{let e=(0,d.eX)(a,b);if(!(c=(0,p.b)(e)))return}catch{return}else try{c=(0,e.TA)(a,b)}catch{return}this.docLengths.set(b,c.length),this.totalChars+=c.length,this.fileCount++,c.length>5e4&&(c=c.slice(0,5e4));let f=s(b+"\n"+c);for(let a of(this.fileTokens.set(b,f),f)){let c=this.invertedIndex.get(a);c||(c=new Set,this.invertedIndex.set(a,c)),c.add(b)}}updateFile(a,b){this.invertedIndex&&(this.removeFile(b),this.addFile(a,b))}isBuiltFor(a){return null!==this.invertedIndex&&this.builtForRoot===a}isBuilt(){return null!==this.invertedIndex}getFileCount(){return this.fileCount}getAvgDocLength(){return this.fileCount>0?this.totalChars/this.fileCount:0}getDocLength(a){return this.docLengths.get(a)??0}getDocFrequency(a){return this.invertedIndex?this.invertedIndex.get(a)?.size??0:0}getCandidatesUnion(a){if(!a.trim()||!this.invertedIndex)return null;let b=s(a.toLowerCase().trim());if(0===b.size)return null;let c=new Map;for(let a of b){let b=this.invertedIndex.get(a);if(b)for(let a of b)c.set(a,(c.get(a)??0)+1)}if(0===c.size)return[];let d=b.size;if(d>=3){let a=Math.max(1,Math.floor(d/2)),b=[...c.entries()].filter(([,b])=>b>=a).map(([a])=>a);if(b.length>0)return b}return[...c.keys()]}getCandidates(a){if(!a.trim()||!this.invertedIndex)return null;let b=s(a.toLowerCase().trim());if(0===b.size)return null;let c=null;for(let a of b){let b=this.invertedIndex.get(a);if(!b)return[];if(null===c)c=new Set(b);else{for(let a of c)b.has(a)||c.delete(a);if(0===c.size)return[]}}return c?Array.from(c):[]}persist(a){if(!this.invertedIndex)return;let b={version:1,builtForRoot:this.builtForRoot??"",fileCount:this.fileCount,totalChars:this.totalChars,docLengths:Object.fromEntries(this.docLengths),invertedIndex:{},timestamp:Date.now()};for(let[a,c]of this.invertedIndex)b.invertedIndex[a]=[...c];let c=i().join(a,"search-index.json");try{g().mkdirSync(a,{recursive:!0}),g().writeFileSync(c,JSON.stringify(b),"utf-8")}catch{}}load(a,b){let c,d,e=i().join(a,"search-index.json");try{c=g().readFileSync(e,"utf-8")}catch{return!1}try{d=JSON.parse(c)}catch{return!1}if(1!==d.version||d.builtForRoot!==b||m(b).length!==d.fileCount)return!1;let f=Object.keys(d.docLengths);if(Math.min(50,f.length)===f.length)for(let a of f)try{if(g().statSync(i().join(b,a)).mtimeMs>d.timestamp)return!1}catch{return!1}else{let a=Math.max(1,Math.floor(f.length/40)),c=new Set;for(let b=0;b<f.length;b+=a)c.add(b);for(let a=Math.max(0,f.length-10);a<f.length;a++)c.add(a);for(let a of c)try{if(g().statSync(i().join(b,f[a])).mtimeMs>d.timestamp)return!1}catch{return!1}}this.builtForRoot=d.builtForRoot,this.fileCount=d.fileCount,this.totalChars=d.totalChars,this.docLengths=new Map(Object.entries(d.docLengths).map(([a,b])=>[a,b]));let h=new Map,j=new Map;for(let[a,b]of Object.entries(d.invertedIndex)){let c=new Set(b);for(let b of(h.set(a,c),c)){let c=j.get(b);c||(c=new Set,j.set(b,c)),c.add(a)}}return this.invertedIndex=h,this.fileTokens=j,!0}constructor(){this.invertedIndex=null,this.builtForRoot=null,this.fileCount=0,this.docLengths=new Map,this.totalChars=0,this.fileTokens=new Map}}let v=new u;function w(){v.invalidate()}function x(a,b){v.isBuilt()&&(v.addFile(a,b),z=!0,y&&clearTimeout(y),y=setTimeout(A,5e3))}let y=null,z=!1;function A(){if(y&&(clearTimeout(y),y=null),z){z=!1;try{v.persist(i().join(o().homedir(),".mindos"))}catch{}}}"u">typeof process&&(process.on("beforeExit",A),process.on("SIGTERM",()=>{A(),process.exit(0)}),process.on("SIGINT",()=>{A(),process.exit(0)}));class B{rebuild(a){let b=m(a).filter(a=>a.endsWith(".md")),c=new Set(b),d=function(a){let b=new Map;for(let c of a){let a=i().basename(c).toLowerCase();b.has(a)||b.set(a,[]),b.get(a).push(c)}return b}(b),f=new Map,g=new Map;for(let h of b){let b;try{b=(0,e.TA)(a,h)}catch{continue}let i=C(b,h,c,d),j=new Set;for(let a of i)a!==h&&j.add(a);for(let a of(f.set(h,j),j)){let b=g.get(a);b||(b=new Set,g.set(a,b)),b.add(h)}}this.forwardLinks=f,this.backwardLinks=g,this.builtForRoot=a,this.fileSet=c,this.basenameMap=d}invalidate(){this.forwardLinks.clear(),this.backwardLinks.clear(),this.builtForRoot=null,this.fileSet.clear(),this.basenameMap.clear()}isBuiltFor(a){return this.builtForRoot===a}isBuilt(){return null!==this.builtForRoot}getForwardLinks(a){return[...this.forwardLinks.get(a)??[]]}getBacklinks(a){return[...this.backwardLinks.get(a)??[]]}getAllEdges(){let a=[];for(let[b,c]of this.forwardLinks)for(let d of c)a.push({source:b,target:d});return a}removeFile(a){let b=this.forwardLinks.get(a);if(b){for(let c of b)this.backwardLinks.get(c)?.delete(a);this.forwardLinks.delete(a)}let c=this.backwardLinks.get(a);if(c){for(let b of c)this.forwardLinks.get(b)?.delete(a);this.backwardLinks.delete(a)}this.fileSet.delete(a);let d=i().basename(a).toLowerCase(),e=this.basenameMap.get(d);if(e){let b=e.indexOf(a);b>=0&&e.splice(b,1),0===e.length&&this.basenameMap.delete(d)}}updateFile(a,b){let c;if(!this.builtForRoot||!b.endsWith(".md"))return;let d=this.forwardLinks.get(b);if(d)for(let a of d)this.backwardLinks.get(a)?.delete(b);try{c=(0,e.TA)(a,b)}catch{return}if(!this.fileSet.has(b)){this.fileSet.add(b);let a=i().basename(b).toLowerCase();this.basenameMap.has(a)||this.basenameMap.set(a,[]),this.basenameMap.get(a).push(b)}let f=C(c,b,this.fileSet,this.basenameMap),g=new Set;for(let a of f)a!==b&&g.add(a);for(let a of(this.forwardLinks.set(b,g),g)){let c=this.backwardLinks.get(a);c||(c=new Set,this.backwardLinks.set(a,c)),c.add(b)}}constructor(){this.forwardLinks=new Map,this.backwardLinks=new Map,this.builtForRoot=null,this.fileSet=new Set,this.basenameMap=new Map}}function C(a,b,c,d){let e,f=[],g=i().dirname(b),h=/\[\[([^\]|#]+)(?:[|#][^\]]*)?/g;for(;null!==(e=h.exec(a));){let a=e[1].trim();if(!a)continue;if(c.has(a)){f.push(a);continue}let b=a.endsWith(".md")?a:a+".md";if(c.has(b)){f.push(b);continue}let g=i().basename(b).toLowerCase(),h=d.get(g);h&&1===h.length&&f.push(h[0])}let j=/\[[^\]]+\]\(([^)]+\.md)(?:#[^)]*)?\)/g;for(;null!==(e=j.exec(a));){let a=e[1].trim();if(!a||a.startsWith("http"))continue;let b=i().normalize(i().join(g,a));c.has(b)&&f.push(b)}return f}c(20018),c(79646),c(15872)},15872:(a,b,c)=>{c.d(b,{_:()=>l,c:()=>k});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(20018),i=c(18451),j=c(1160);function k(a,b,c){let d=b.replace(/^[\p{Emoji_Presentation}\p{Extended_Pictographic}\s]+/u,"")||b,e=c.trim()||"(Describe the purpose and usage of this space.)";return`# ${d}
37
37
 
38
38
  ${e}
39
39
 
@@ -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}},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}}};
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,"60ea96ae82c4236eec257dd4f09f3f4f7672dcf519",null),(0,e.A)(s,"4034f606760908535f5f7cd820a62714756441642c",null),(0,e.A)(t,"60243dca79d5ab1ef1e0297569c5320b53b6f27b29",null),(0,e.A)(u,"4036ed6785c2bdcd0c2e14a4445d571615318ab699",null),(0,e.A)(v,"406b84708d2165b47f20d918c55dc1ae207c14fa1a",null),(0,e.A)(w,"60fbaa16d8e17aacf66fc85b115c652f72844a7076",null),(0,e.A)(x,"407a777f67f9059923f362281bbc10ede55dbd4f72",null),(0,e.A)(y,"40d1ccdb3bfbd3b45067cf4fc3593e34d34aec672e",null),(0,e.A)(z,"7048382ea5253f1beab235fcf8a9a470c5d792219b",null),(0,e.A)(A,"70e1e3535e4aaa837f0f6fbf5b149df3ee0cf1fd73",null),(0,e.A)(B,"00058778a0b2a5dcb058e8f0e75c904c87c37a9bed",null),(0,e.A)(C,"005535884e94350c62e28126613d44d4558d09cba0",null),(0,e.A)(D,"402a32761b503fc903290a84879df794d0100187a2",null),(0,e.A)(E,"0021e1bb42dae75f4360ed3a0cf3785dbc8b8db114",null),(0,e.A)(F,"603dfc4e51b50521a1ace7d13b87085c76787591d8",null),(0,e.A)(G,"40b63ea38c3b1eb0f034fa8b586f969c8aa2e167df",null),(0,e.A)(H,"005d61cc26dd79b46775adef800e98e1b368cb496a",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}}};
@@ -1,2 +1,2 @@
1
- <!DOCTYPE html><!--K3wZNf5bj_AFYwtqcRXIf--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-72e8d9e9073fd1f9.js"/><script src="/_next/static/chunks/4bd1b696-10cb4c9d2844a506.js" async=""></script><script src="/_next/static/chunks/3794-c66343cd6a42366f.js" async=""></script><script src="/_next/static/chunks/main-app-85439cf6d0f88401.js" async=""></script><script src="/_next/static/chunks/app/error-fc1491d554a28327.js" async=""></script><script src="/_next/static/chunks/app/global-error-c37d50db6128ec01.js" async=""></script><title>500: Internal Server Error.</title><meta name="next-size-adjust" content=""/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><!--$--><!--html--><!--head--><!--body--><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
- @media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><!--/$--><script src="/_next/static/chunks/webpack-72e8d9e9073fd1f9.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[87460,[\"8039\",\"static/chunks/app/error-fc1491d554a28327.js\"],\"default\"]\n4:I[74581,[],\"\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\nd:I[54690,[\"4219\",\"static/chunks/app/global-error-c37d50db6128ec01.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"K3wZNf5bj_AFYwtqcRXIf\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$3\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},[[\"$\",\"div\",\"l\",{\"className\":\"content-width px-4 md:px-6 py-10 md:py-14 animate-pulse\",\"aria-busy\":\"true\",\"aria-label\":\"Loading\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3 mb-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-1 h-7 rounded-full bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-6 w-28 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-4 w-64 bg-muted rounded ml-4 mb-6\"}],[\"$\",\"div\",null,{\"className\":\"w-full max-w-xl flex flex-col sm:flex-row items-stretch sm:items-center gap-2 ml-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex-1 h-12 rounded-xl bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-12 w-16 rounded-xl bg-muted shrink-0\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3 mt-4 ml-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-9 w-28 rounded-lg bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-9 w-40 rounded-lg bg-muted\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 mb-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-4 w-16 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-2 sm:grid-cols-3 gap-2\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],[\"$\",\"div\",\"2\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],\"$L8\",\"$L9\",\"$La\"]}]]}],\"$Lb\"]}],[],[]],false,false],\"$Lc\",false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"e:I[90484,[],\"ViewportBoundary\"]\n10:I[90484,[],\"MetadataBoundary\"]\n8:[\"$\",\"div\",\"3\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\n9:[\"$\",\"div\",\"4\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\na:[\"$\",\"div\",\"5\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 mb-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-4 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-3\",\"children\":[[\"$\",\"div\",\"0\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}],[\"$\",\"div\",\"1\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}],[\"$\",\"div\",\"2\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L10\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L11\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"7:null\n11:[]\n"])</script></body></html>
1
+ <!DOCTYPE html><!--5GmVArEG8OX03azKICsGq--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-72e8d9e9073fd1f9.js"/><script src="/_next/static/chunks/4bd1b696-10cb4c9d2844a506.js" async=""></script><script src="/_next/static/chunks/3794-c66343cd6a42366f.js" async=""></script><script src="/_next/static/chunks/main-app-85439cf6d0f88401.js" async=""></script><script src="/_next/static/chunks/app/error-fc1491d554a28327.js" async=""></script><script src="/_next/static/chunks/app/global-error-c37d50db6128ec01.js" async=""></script><title>500: Internal Server Error.</title><meta name="next-size-adjust" content=""/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><!--$--><!--html--><!--head--><!--body--><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}
2
+ @media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error.</h2></div></div></div><!--$--><!--/$--><!--/$--><script src="/_next/static/chunks/webpack-72e8d9e9073fd1f9.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[57121,[],\"\"]\n3:I[87460,[\"8039\",\"static/chunks/app/error-fc1491d554a28327.js\"],\"default\"]\n4:I[74581,[],\"\"]\n5:I[90484,[],\"OutletBoundary\"]\n6:\"$Sreact.suspense\"\nd:I[54690,[\"4219\",\"static/chunks/app/global-error-c37d50db6128ec01.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"5GmVArEG8OX03azKICsGq\",\"c\":[\"\",\"_global-error\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"_global-error\",{\"children\":[\"__PAGE__\",{}]}]}],[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$3\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"html\",null,{\"id\":\"__next_error__\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"title\",null,{\"children\":\"500: Internal Server Error.\"}]}],[\"$\",\"body\",null,{\"children\":[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"style\":{\"lineHeight\":\"48px\"},\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}\\n@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"paddingRight\":23,\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\"},\"children\":\"500\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"28px\"},\"children\":\"Internal Server Error.\"}]}]]}]}]}]]}],null,[\"$\",\"$L5\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@7\"}]}]]}],{},null,false,false]},null,false,false]},[[\"$\",\"div\",\"l\",{\"className\":\"content-width px-4 md:px-6 py-10 md:py-14 animate-pulse\",\"aria-busy\":\"true\",\"aria-label\":\"Loading\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3 mb-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-1 h-7 rounded-full bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-6 w-28 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-4 w-64 bg-muted rounded ml-4 mb-6\"}],[\"$\",\"div\",null,{\"className\":\"w-full max-w-xl flex flex-col sm:flex-row items-stretch sm:items-center gap-2 ml-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex-1 h-12 rounded-xl bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-12 w-16 rounded-xl bg-muted shrink-0\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex items-center gap-3 mt-4 ml-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-9 w-28 rounded-lg bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-9 w-40 rounded-lg bg-muted\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 mb-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-4 w-16 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-2 sm:grid-cols-3 gap-2\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],[\"$\",\"div\",\"2\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}],\"$L8\",\"$L9\",\"$La\"]}]]}],\"$Lb\"]}],[],[]],false,false],\"$Lc\",false]],\"m\":\"$undefined\",\"G\":[\"$d\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"e:I[90484,[],\"ViewportBoundary\"]\n10:I[90484,[],\"MetadataBoundary\"]\n8:[\"$\",\"div\",\"3\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\n9:[\"$\",\"div\",\"4\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\na:[\"$\",\"div\",\"5\",{\"className\":\"flex items-start gap-3 px-3.5 py-3 rounded-xl border border-border\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-5 h-5 rounded bg-muted shrink-0 mt-0.5\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-20 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-full bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded\"}]]}]]}]\n"])</script><script>self.__next_f.push([1,"b:[\"$\",\"div\",null,{\"className\":\"mb-10\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 mb-4\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-4 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-3\",\"children\":[[\"$\",\"div\",\"0\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}],[\"$\",\"div\",\"1\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}],[\"$\",\"div\",\"2\",{\"children\":[[\"$\",\"div\",null,{\"className\":\"flex items-center gap-2 px-1 py-1.5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-4 h-4 rounded bg-muted\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-0.5 ml-2 border-l border-border/40 pl-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex items-center gap-3 px-3 py-2\",\"children\":[[\"$\",\"div\",null,{\"className\":\"w-3 h-3 rounded bg-muted shrink-0\"}],[\"$\",\"div\",null,{\"className\":\"flex-1 space-y-1\",\"children\":[[\"$\",\"div\",null,{\"className\":\"h-4 w-40 bg-muted rounded\"}],[\"$\",\"div\",null,{\"className\":\"h-3 w-24 bg-muted rounded\"}]]}],[\"$\",\"div\",null,{\"className\":\"h-3 w-12 bg-muted rounded shrink-0\"}]]}]]}]]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"c:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$Le\",null,{\"children\":\"$Lf\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L10\",null,{\"children\":[\"$\",\"$6\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L11\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"f:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"7:null\n11:[]\n"])</script></body></html>