feat: 升级至 v0.3.4 — 接入 Xiaomi MiMo Provider + 文档全量校准

新增 MiMo (小米) LLM Provider 适配器,支持 mimo-v2.5-pro 和 mimo-v2.5 两个文本模型,复用 OpenAI 兼容 SSE 流式解析,支持 Thinking 模式和 Function Calling。同步校准全量 docs 文档与 README 使其与实际代码一致。

主要变更:
- 新增 mimo.adapter.ts 适配器(SSE + thinking.type + max_completion_tokens)
- 修复 thinking 逻辑 bug:禁用思考时未传 temperature/top_p
- 补全 sse-stream.ts 的 MiMo 缓存字段映射(prompt_tokens_details.cached_tokens)
- 补全 sse-stream.ts 的 finish_reason 映射(repetition_truncation)
- 注册 MiMo 适配器到 adapters/index.ts、main.ts 工厂
- handlers.ts 添加 mimo.contextWindow 热重载触发
- database.service.ts seed 添加 mimo 默认配置
- SettingsModal/OnboardingWizard/Header 添加 MiMo Provider UI
- constants.ts PROVIDER_LABELS 添加 mimo
- .env.example 添加 MIMO_API_KEY/MIMO_BASE_URL
- 反向修改 4 个 docs HTML 设计文档(工具数量/版本日期/适配器列表/数据库表)
- 反向修改 Agent网络工具通用设计-v2.md 附录 B 文件索引
- 完全重写 README.md(v0.3.4、27 工具、4 适配器、9 表)
This commit is contained in:
thzxx
2026-07-15 22:28:09 +08:00
parent 4554177db0
commit 656c6b7af1
22 changed files with 1677 additions and 115 deletions
+15 -9
View File
@@ -920,15 +920,21 @@ web_search(query) → [SearXNG模式] → JSON结果 → 相关性过滤
| 文件 | 说明 |
|------|------|
| `src/main/browser.ts` | 浏览器控制核心(9 个函数 |
| `src/main/tool-handlers-system.ts` | web_fetch + web_search + SearXNG(核心实现 |
| `src/main/ipc.ts` | IPC 工具调度 |
| `src/main/main.ts` | 应用生命周期(browserClose on quit |
| `src/renderer/components/searxng-modal.ts` | SearXNG 配置模态框 |
| `src/renderer/index.html` | SearXNG 模态框 HTML |
| `src/renderer/styles/style.css` | SearXNG 样式 |
| `src/renderer/services/tool-registry.ts` | 工具定义和参数声明 |
| `src/renderer/services/agent-engine.ts` | 工具超时配置、并行/串行调度 |
| `electron/harness/tools/built-in/browser.ts` | 浏览器控制核心(9 个 action 路由 |
| `electron/harness/tools/built-in/browser-window-manager.ts` | 浏览器窗口状态管理 + 页面操作(单例 + 隔离会话 |
| `electron/harness/tools/built-in/web-search.ts` | web_search 工具(SearXNG / 内置四引擎双模式) |
| `electron/harness/tools/built-in/web-fetch.ts` | web_fetch 工具(三阶段回退抓取 |
| `electron/harness/tools/built-in/network-utils.ts` | 网络工具函数(LRU 缓存、UA 轮换、反爬请求头、拦截检测、HTML 转文本、SearXNG 认证) |
| `electron/harness/tools/built-in/http-request.ts` | HTTP/REST API 请求工具 |
| `electron/harness/tools/built-in/file-guard.ts` | 文件保护(工作空间边界 + MEMORY.md 保护) |
| `electron/harness/tools/registry.ts` | 工具注册表 + PolicyEngine 策略引擎 + truncateResult |
| `electron/harness/sandbox/permissions.ts` | PolicyEngine(三级权限 + 频率限制 + 通配符策略) |
| `electron/harness/agent-loop/engine.ts` | Agent Loop 引擎(ReAct 状态机 + 工具超时配置) |
| `electron/ipc/handlers.ts` | IPC 通道处理(50+ 通道,含 `searxng:testConnection` |
| `electron/main.ts` | 应用生命周期(启动流程 + browserClose on quit |
| `src/components/settings/SettingsModal.tsx` | 设置面板(含 SearXNG 配置 Tab |
| `src/stores/agent-store.ts` | Agent 状态管理(Zustand |
| `src/hooks/useAgentStream.ts` | 流式事件监听 Hook |
## 附录 C:第三方库速查表
@@ -480,7 +480,7 @@ MeToast.<span class="hl-fn">warning</span>(<span class="hl-str">'操作已取消
<tr><th>Tab</th><th>内容</th></tr>
<tr><td class="f1">LLM 配置</td><td class="f2">Provider 选择、API Key、模型名称、参数滑块(temperature/maxTokens/contextWindow</td></tr>
<tr><td class="f1">Agent 配置</td><td class="f2">最大迭代次数、超时、Thinking 开关、反思模式、压缩阈值</td></tr>
<tr><td class="f1">工具管理</td><td class="f2">9 个基础工具开关、风险级别配置、路径白名单、命令黑名单</td></tr>
<tr><td class="f1">工具管理</td><td class="f2">27 个内置工具开关、风险级别配置、路径白名单、命令黑名单</td></tr>
<tr><td class="f1">MCP 服务</td><td class="f2">Server 列表、添加/删除/启停、连接状态指示灯</td></tr>
<tr><td class="f1">外观</td><td class="f2">主题(light/dark/auto)、字体大小、消息密度、动画开关</td></tr>
<tr><td class="f1">日志与数据</td><td class="f2">日志级别、数据库位置、数据导出/清理、使用统计</td></tr>
@@ -718,7 +718,7 @@ MeToast.<span class="hl-fn">warning</span>(<span class="hl-str">'操作已取消
<div style="text-align:center;padding:40px 0 20px;color:var(--text-dim);font-size:13px;border-top:1px solid var(--border)">
<p>&#x1F3A8; MetonaAI Desktop UI/UX 设计集成方案</p>
<p>研究来源: <strong style="color:var(--accent)">Fuselab Creative · Ant Design X · Google A2UI · Hermes Agent · Siyu's Newsletter</strong></p>
<p style="margin-top:6px">集成组件: <strong style="color:var(--purple)">MetonaToast v2.0.0</strong> · 版本 <strong style="color:var(--accent2)">v1.0.0</strong> · 2026-06-26</p>
<p style="margin-top:6px">集成组件: <strong style="color:var(--purple)">MetonaToast v2.0.0</strong> · 版本 <strong style="color:var(--accent2)">v1.0.0</strong> · 2026-07-15</p>
</div>
<!-- Back to Top Button -->
@@ -280,7 +280,7 @@
<div class="hero-meta">
<span><span class="dot dot-accent"></span> 版本: <strong>v1.0.0</strong></span>
<span><span class="dot dot-green"></span> 适用范围: <strong>Electron 主进程 / IPC / 渲染进程</strong></span>
<span><span class="dot dot-orange"></span> 更新日期: <strong>2026-06-26</strong></span>
<span><span class="dot dot-orange"></span> 更新日期: <strong>2026-07-15</strong></span>
</div>
<div class="note-box" style="margin-top:16px">
<strong>&#x1F4CB; 文档层级:</strong>本文档是 <strong>类型系统与数据格式的权威定义</strong>,与《构建指南》第四章(ReAct)、第五章(Harness)对应。冲突时以本文档为准。
@@ -309,11 +309,11 @@
<span class="hl-box">│ Metona IR Standard │</span> ← 项目内唯一标准
<span class="hl-box">└────────────┬─────────────┘</span>
┌────────┼────────┬────────
│ │ │
<span class="hl-box">┌───▼──┐ ┌──▼───┐ ┌─▼───┐ ┌─▼─────┐</span>
<span class="hl-box">│DeepSeek│ │Agnes│ │Ollama│ │Anthropic│</span> ← Adapter 层
<span class="hl-box">└───────┘ └─────┘ └──────┘ └────────┘</span>
┌────────┼────────┐
│ │ │
<span class="hl-box">┌───▼──┐ ┌──▼───┐ ┌─▼───┐</span>
<span class="hl-box">│DeepSeek│ │Agnes│ │Ollama│</span> ← Adapter 层
<span class="hl-box">└───────┘ └─────┘ └──────┘</span>
</pre>
</div>
<p class="desc">
@@ -1000,13 +1000,13 @@
<td>Ollama 原生 JSON / NDJSON</td>
</tr>
<tr>
<td class="field-name">AnthropicAdapter</td>
<td class="field-name">AnthropicAdapter(未来计划,未实现)</td>
<td class="field-type">anthropic</td>
<td>https://api.anthropic.com/v1/messages</td>
<td>Anthropic 原生 JSON</td>
</tr>
<tr>
<td class="field-name">OpenAIAdapter</td>
<td class="field-name">OpenAIAdapter(未来计划,未实现)</td>
<td class="field-type">openai</td>
<td>https://api.openai.com/v1/chat/completions</td>
<td>OpenAI 原生 JSON</td>
@@ -1177,8 +1177,8 @@ electron/harness/adapters/
├── deepseek.adapter.ts
├── agnes-ai.adapter.ts
├── ollama.adapter.ts
├── anthropic.adapter.ts
└── openai.adapter.ts</pre>
# ├── anthropic.adapter.ts # 未来计划
# └── openai.adapter.ts # 未来计划</pre>
</div>
<h3>迁移检查清单</h3>
@@ -1204,7 +1204,7 @@ electron/harness/adapters/
<!-- FOOTER -->
<div style="text-align:center; padding: 40px 0 20px; color: var(--text-dim); font-size: 13px; border-top: 1px solid var(--border);">
<p>&#x1F4DC; Metona 内部 API 请求与响应标准 —— 项目端到端类型安全的基础</p>
<p>版本: <strong style="color:var(--accent)">v1.0.0</strong> · 生效日期: <strong style="color:var(--accent)">2026-06-25</strong></p>
<p>版本: <strong style="color:var(--accent)">v1.0.0</strong> · 生效日期: <strong style="color:var(--accent)">2026-07-15</strong></p>
<p style="margin-top:8px;">所属项目: Metona (AI Agent Desktop) · 技术栈: TypeScript + React + SQLite + Electron</p>
</div>
@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>MetonaAI-Desktop 架构与交互设计文档 | v1.0</title>
<title>MetonaAI-Desktop 架构与交互设计文档 | v1.1</title>
<style>
:root {
--bg: #0f1117;
@@ -141,7 +141,7 @@
<a href="#workspace">&#x1F4C1; 工作空间</a>
<a href="#db-config">&#x1F4BE; 数据库配置</a>
<div class="sidebar-section">9 个基础工具</div>
<div class="sidebar-section">27 个内置工具</div>
<a href="#tools-overview">&#x1F4CA; 工具总表</a>
<a href="#tool-filesystem">&#x1F4C4; 文件系统工具</a>
<a href="#tool-web">&#x1F310; 网络搜索与抓取</a>
@@ -165,14 +165,14 @@
<div class="hero">
<h1>MetonaAI-Desktop 架构与交互设计</h1>
<p>基于「生产级通用 AI Agent 桌面应用构建指南」+「Metona 内部 IR 标准」,定义完整的系统架构、9 个基础工具、4 个用户级磁盘文件、工作空间机制、数据库配置规范及全链路可追踪日志体系。</p>
<p>基于「生产级通用 AI Agent 桌面应用构建指南」+「Metona 内部 IR 标准」,定义完整的系统架构、27 个内置工具、4 个用户级磁盘文件、工作空间机制、数据库配置规范及全链路可追踪日志体系。</p>
<div class="hero-meta">
<span><span class="dot dot-cyan"></span> 版本: <strong>v1.0.0</strong></span>
<span><span class="dot dot-cyan"></span> 版本: <strong>v1.1.0</strong></span>
<span><span class="dot dot-green"></span> 技术栈: <strong>React + Material UI (MUI) + Electron + SQLite</strong></span>
<span><span class="dot dot-amber"></span> 日期: <strong>2026-06-26</strong></span>
<span><span class="dot dot-amber"></span> 日期: <strong>2026-07-15</strong></span>
</div>
<div class="note-box" style="margin-top:16px">
<strong>&#x1F4CB; 文档层级:</strong>本文档是 <strong>工作空间、9 个基础工具、4 个磁盘文件、数据库配置的权威定义</strong>,与《构建指南》第三、五、六章对应。冲突时以本文档为准。
<strong>&#x1F4CB; 文档层级:</strong>本文档是 <strong>工作空间、27 个内置工具、4 个磁盘文件、数据库配置的权威定义</strong>,与《构建指南》第三、五、六章对应。冲突时以本文档为准。
</div>
</div>
@@ -184,7 +184,7 @@
<p class="desc">
MetonaAI-Desktop 是一个运行在用户本地桌面上的通用 AI Agent 应用。它以<strong>工作空间(Workspace</strong>为基本组织单元,
通过 <strong>4 个 Markdown 磁盘文件</strong> 定义 Agent 的灵魂、行为、记忆和用户画像,
提供 <strong>9 个基础工具</strong> 赋予 Agent 操作文件系统、网络、记忆和命令行的能力。
提供 <strong>27 个内置工具</strong> 赋予 Agent 操作文件系统、网络、记忆和命令行的能力。
全链路操作<strong>透明可追踪</strong>,所有决策过程、工具调用、LLM 推理记录在本地 SQLite 日志中。
</p>
@@ -203,11 +203,11 @@
<span class="hl-box">│ └────┬──────────────────────────────────────────────┘ │</span>
<span class="hl-box">│ │ │</span>
<span class="hl-box">│ ┌────▼──────────────────────────────────────────────┐ │</span>
<span class="hl-box">│ │ 9 Base Tools (统一 IR) │ │</span>
<span class="hl-box">│ │ read_file | write_file | list_dir | search_files │ │</span>
<span class="hl-box">│ │ web_search | web_extract │ │</span>
<span class="hl-box">│ │ memory_store | memory_search │ │</span>
<span class="hl-box">│ │ run_command │ │</span>
<span class="hl-box">│ │ 27 Base Tools (统一 IR) │ │</span>
<span class="hl-box">│ │ filesystem(5) | editor | code_search | diff │ │</span>
<span class="hl-box">│ │ web_search | web_fetch | web_browser | http │ │</span>
<span class="hl-box">│ │ memory(2) | run_command | delegate_task │ │</span>
<span class="hl-box">│ │ git(4) | dev_tools(3) | task_mgr | todo | think │ │</span>
<span class="hl-box">│ └────┬──────────────────────────────────────────────┘ │</span>
<span class="hl-box">│ │ │</span>
<span class="hl-box">│ ┌────▼──────────────────────────────────────────────┐ │</span>
@@ -388,9 +388,9 @@
<hr class="section-divider">
<!-- ====== 9 个基础工具 ====== -->
<!-- ====== 27 个内置工具 ====== -->
<section class="api-section" id="tools-overview">
<h2>&#x1F4CA; 9 个基础工具 — 总表</h2>
<h2>&#x1F4CA; 27 个内置工具 — 总表</h2>
<p class="desc">所有工具使用 <strong>Metona IR 的 MetonaToolDef / MetonaToolCall / MetonaToolResult</strong> 结构。内置在 Tool Registry 中,Adaper 为 LLM 生成 JSON Schema 格式的描述。</p>
<table class="spec">
@@ -400,16 +400,17 @@
<tr><td class="f-name">3</td><td class="f-name">list_directory</td><td class="f-type">filesystem</td><td class="f-risk risk-safe">SAFE</td><td></td><td>列出目录内容</td></tr>
<tr><td class="f-name">4</td><td class="f-name">search_files</td><td class="f-type">filesystem</td><td class="f-risk risk-safe">SAFE</td><td></td><td>按模式搜索文件(名称/内容)</td></tr>
<tr><td class="f-name">5</td><td class="f-name">web_search</td><td class="f-type">network</td><td class="f-risk risk-medium">LOW</td><td></td><td>网络搜索,返回结果列表</td></tr>
<tr><td class="f-name">6</td><td class="f-name">web_extract</td><td class="f-type">network</td><td class="f-risk risk-medium">LOW</td><td></td><td>抓取网页内容转 Markdown</td></tr>
<tr><td class="f-name">6</td><td class="f-name">web_fetch</td><td class="f-type">network</td><td class="f-risk risk-medium">LOW</td><td></td><td>抓取网页内容转 Markdown</td></tr>
<tr><td class="f-name">7</td><td class="f-name">memory_store</td><td class="f-type">database</td><td class="f-risk risk-medium">MEDIUM</td><td></td><td>存储一条记忆到 SQLite</td></tr>
<tr><td class="f-name">8</td><td class="f-name">memory_search</td><td class="f-type">database</td><td class="f-risk risk-safe">SAFE</td><td></td><td>检索记忆(关键词匹配)</td></tr>
<tr><td class="f-name">9</td><td class="f-name">run_command</td><td class="f-type">code_execution</td><td class="f-risk risk-high">HIGH</td><td></td><td>执行 Shell 命令,沙箱限制</td></tr>
<tr><td colspan="6" style="padding:14px;color:var(--text-dim);font-size:13px;">完整 27 个工具列表详见 README.md「内置工具」章节。新增工具涵盖:file_editor、code_search、diff_viewer、web_browser、http_request、git_status/git_diff/git_log/git_commit、lint_code、run_tests、project_info、delegate_task、task_manager、todo_write、think、view_image。</td></tr>
</table>
</section>
<!-- --- 文件系统工具 --- -->
<section class="api-section" id="tool-filesystem">
<h2>&#x1F4C4; 类别一:文件系统工具(4个)</h2>
<h2>&#x1F4C4; 类别一:文件系统工具(5个)</h2>
<h3>1. read_file</h3>
<p class="desc">读取文件完整内容。支持行偏移和行数限制,自动检测二进制文件。文件超过 100K 字符时返回截断提示。</p>
@@ -453,7 +454,7 @@
<!-- --- 网络工具 --- -->
<section class="api-section" id="tool-web">
<h2>&#x1F310; 类别二:网络搜索与抓取(2个)</h2>
<h2>&#x1F310; 类别二:网络搜索与抓取(2个)(另有 18 个工具见 README.md</h2>
<h3>5. web_search</h3>
<p class="desc">执行网络搜索,返回标题、摘要和 URL。支持搜索运算符(site:、filetype: 等)。</p>
@@ -463,8 +464,8 @@
<tr><td class="f-name">limit</td><td class="f-type">number</td><td class="f-opt">可选</td><td>结果数(默认 5,最大 100</td></tr>
</table>
<h3>6. web_extract</h3>
<p class="desc">抓取网页内容并转换为 Markdown。支持 HTML 页面和 PDF 链接。超过 5000 字符自动摘要。</p>
<h3>6. web_fetch</h3>
<p class="desc">抓取网页内容,三阶段回退(HTTP + 反爬 + 浏览器渲染),10MB 限制</p>
<table class="spec">
<tr><th>参数</th><th>类型</th><th>必填</th><th>说明</th></tr>
<tr><td class="f-name">urls</td><td class="f-type">string[]</td><td class="f-req">必填</td><td>待抓取的 URL 列表(最多 5 个)</td></tr>
@@ -473,7 +474,7 @@
<!-- --- 记忆工具 --- -->
<section class="api-section" id="tool-memory">
<h2>&#x1F9E0; 类别三:记忆工具(2个)</h2>
<h2>&#x1F9E0; 类别三:记忆工具(2个)(另有 18 个工具见 README.md</h2>
<h3>7. memory_store</h3>
<p class="desc">将一条内容存入持久记忆。写入 SQLite,支持关键词检索。Agent 可在对话中保存重要信息。</p>
@@ -499,7 +500,7 @@
<!-- --- 命令工具 --- -->
<section class="api-section" id="tool-command">
<h2>&#x2692;&#xFE0F; 类别四:命令工具(1个)</h2>
<h2>&#x2692;&#xFE0F; 类别四:命令工具(1个)(另有 18 个工具见 README.md</h2>
<h3>9. run_command</h3>
<p class="desc">在沙箱环境中执行 Shell 命令。命令在工作空间目录下运行,有超时限制和输出截断。高危命令需用户确认。</p>
@@ -962,7 +963,7 @@
<div style="text-align:center; padding: 40px 0 20px; color: var(--text-dim); font-size: 13px; border-top: 1px solid var(--border);">
<p>&#x1F3D7;&#xFE0F; MetonaAI-Desktop 架构与交互设计文档</p>
<p>基于: <strong style="color:var(--accent)">生产级通用 AI Agent 构建指南</strong> + <strong style="color:var(--accent)">Metona 内部 IR 标准</strong></p>
<p style="margin-top:6px;">版本 <strong style="color:var(--accent)">v1.1.0</strong> · 2026-06-26</p>
<p style="margin-top:6px;">版本 <strong style="color:var(--accent)">v1.1.0</strong> · 2026-07-15</p>
</div>
<!-- Back to Top Button -->
@@ -591,7 +591,7 @@
<div class="hero-meta">
<span><span class="dot dot-blue"></span> 技术栈: <strong>TypeScript + React + SQLite + Electron</strong></span>
<span><span class="dot dot-green"></span> 版本: <strong>v1.0.0</strong></span>
<span><span class="dot dot-amber"></span> 更新日期: <strong>2026-06-26</strong></span>
<span><span class="dot dot-amber"></span> 更新日期: <strong>2026-07-15</strong></span>
</div>
<div class="note-box" style="margin-top:16px">
<strong>&#x1F4CB; 文档层级:</strong>本文档是 <strong>理论基础与全景概述</strong>。各子领域的权威定义见以下文档(冲突时以子文档为准):<br>• 类型系统与数据格式 → <strong>《Metona 内部 API 请求与响应标准》</strong><br>• 工作空间/工具/磁盘文件 → <strong>《MetonaAI-Desktop 架构与交互设计》</strong><br>• 用户界面与交互 → <strong>《MetonaAI-Desktop UI/UX 设计集成方案》</strong>
@@ -601,7 +601,7 @@
<div class="content">
<h1>生产级通用 AI Agent 智能体桌面应用:完整设计与构建指南</h1>
<blockquote>
<p><strong>技术栈</strong>TypeScript + React + SQLite + Electron<br><strong>版本</strong>v1.0.0 | <strong>更新日期</strong>2026-06-24<br><strong>定位</strong>:从架构设计到代码实现的全链路生产级工程指南</p>
<p><strong>技术栈</strong>TypeScript + React + SQLite + Electron<br><strong>版本</strong>v1.0.0 | <strong>更新日期</strong>2026-07-15<br><strong>定位</strong>:从架构设计到代码实现的全链路生产级工程指南</p>
</blockquote>
<hr>
<h2>目录</h2>
@@ -1092,12 +1092,28 @@
│ │ ├── tools/ # 工具注册与管理
│ │ │ ├── registry.ts # 工具注册表
│ │ │ ├── base-tool.ts # 工具基类/接口
│ │ │ └── built-in/ # 内置工具集
│ │ │ ├── filesystem.ts # 文件系统工具
│ │ │ ├── web-search.ts # 网络搜索工具
│ │ │ ├── calculator.ts # 计算器工具
│ │ │ ├── code-executor.ts # 代码执行工具
│ │ │ ── index.ts
│ │ │ └── built-in/ # 内置工具集21 个文件,27 个工具)
│ │ │ ├── filesystem.ts # 文件系统5 工具
│ │ │ ├── file-editor.ts # 编辑器
│ │ │ ├── code-search.ts # 代码搜索
│ │ │ ├── diff-viewer.ts # 差异查看
│ │ │ ── web-search.ts # 网络搜索
│ │ │ ├── web-fetch.ts # 网页抓取
│ │ │ ├── browser.ts # 浏览器工具
│ │ │ ├── browser-window-manager.ts
│ │ │ ├── network.ts # 网络工具入口
│ │ │ ├── network-utils.ts # 网络工具函数
│ │ │ ├── http-request.ts # HTTP 请求
│ │ │ ├── memory.ts # 记忆工具
│ │ │ ├── command.ts # 命令执行
│ │ │ ├── git.ts # Git 工具(4 个)
│ │ │ ├── dev-tools.ts # 开发工具(3 个)
│ │ │ ├── task-manager.ts # 任务管理
│ │ │ ├── delegate-task.ts # 子任务委派
│ │ │ ├── todo.ts # TODO 工具
│ │ │ ├── think.ts # 思考工具
│ │ │ ├── view-image.ts # 图片查看
│ │ │ └── file-guard.ts # 文件保护
│ │ ├── prompts/ # Prompt 模板管理
│ │ │ ├── system-prompt.ts # 系统 Prompt 构建
│ │ │ ├── templates/ # Prompt 模板文件
@@ -2661,6 +2677,7 @@ export class ToolRegistry {
}
}
</code></pre>
<p><strong>&#x1F527; 备注</strong>v0.3.3 当前已实现 <strong>27 个内置工具</strong>,完整列表详见 <code>README.md</code>「内置工具」章节。下方仅以文件系统工具为示例展示实现规范。</p>
<p><strong>内置工具示例——文件系统工具</strong></p>
<pre><code class="language-typescript">// ====== electron/harness/tools/built-in/filesystem.ts ======
@@ -3298,6 +3315,7 @@ export interface ValidationIssue {
</tbody>
</table>
<h3>6.2 SQLite 存储方案设计</h3>
<p><strong>&#x1F4C1; 实际表结构</strong>v0.3.3 实际共 <strong>9 张表</strong>,包含:<code>sessions</code><code>messages</code><code>app_config</code><code>audit_logs</code><code>mcp_servers</code><code>episodic_memories</code><code>semantic_memories</code><code>working_memories</code><code>tasks</code>(新增任务表,用于 Agent 子任务管理)。</p>
<pre><code class="language-sql">-- ====== database/schema.sql ======
-- ============================================
@@ -4345,6 +4363,7 @@ declare global {
}
</code></pre>
<h3>8.3 IPC 通道设计规范</h3>
<p><strong>&#x1F517; 实际规模</strong>v0.3.3 实际已注册 <strong>50+ 个 IPC 通道</strong>,覆盖 agent、sessions、db、mcp、config、app、tasks 等多个 domain。下方代码为注册规范的代表性示例。</p>
<pre><code class="language-typescript">// ====== electron/ipc/index.ts ======
/**
@@ -6548,7 +6567,7 @@ ENABLE_TELEMETRY=true
<!-- FOOTER -->
<div style="text-align:center;padding:40px 0 20px;color:var(--text-dim);font-size:13px;border-top:1px solid var(--border)">
<p>&#x1F916; 生产级通用 AI Agent 智能体桌面应用:完整设计与构建指南</p>
<p>版本: <strong style="color:var(--accent)">v1.0.0</strong> · 最后更新: <strong style="color:var(--accent)">2026-06-24</strong></p>
<p>版本: <strong style="color:var(--accent)">v1.0.0</strong> · 最后更新: <strong style="color:var(--accent)">2026-07-15</strong></p>
<p style="margin-top:8px">作者: <strong style="color:var(--accent2)">AI Agent Engineering Team</strong> · 许可协议: <strong style="color:var(--green)">CC BY-SA 4.0</strong></p>
</div>