thzxx 4554177db0 feat: 升级至 v0.3.3 — 新增 delete_file 工具 + 文件工具全面优化
## 主要变更

### 1. 新增 delete_file 工具(26 → 27 个)
- 支持:删除文件/空目录(默认)/递归删除非空目录(recursive: true)
- 5 层安全防护:
  * isPathWithinWorkspace — 路径遍历防护
  * isProtectedWorkspaceFile — MEMORY.md 拦截
  * 工作空间根目录保护 — 禁止删除 workspace 本身
  * 递归删除需显式开启 — 默认仅删空目录
  * riskLevel: HIGH + requiresPermission — 破坏性操作必须确认
- 友好错误处理:ENOTEMPTY 时提示设置 recursive: true

### 2. 文件工具全面优化(6 个工具)
- 抽取共享代码到 file-guard.ts:
  * safeResolvePath — 合并路径遍历 + MEMORY.md 校验
  * matchGlob — 简易通配符匹配
  * extractErrorMessage — 统一错误提取
  * MAX_FILE_SIZE_BYTES (10MB) / FILE_TOOL_TIMEOUT_MS (15s) / MAX_LINE_LENGTH (10000)
- read_file:stat 预检 + 超长行截断 + 二进制检测 + 大小上限
- write_file:原子写入(临时文件+rename)+ 内容大小上限 + append 返回 new_file_size
- list_directory:1000 结果上限 + modified time + include_hidden 参数 + 提前终止优化
- search_files:regex lastIndex 修复 + context_lines + include_hidden + 大文件跳过
- file_editor:dry_run 预览模式 + 文件大小上限

### 3. 审计修复(1 FAIL + 3 WARN)
- FAIL: isBinaryFile 用 bytesRead 限制循环,修复 < 8KB 文本误判为二进制
- WARN-1: file-editor dry_run preview 分模式计算,修复 insert 范围过大
- WARN-2: write_file 允许空字符串创建空文件
- WARN-3: list_directory listDir 提前终止,避免大目录全量遍历
2026-07-14 21:42:46 +08:00
2026-06-27 21:33:27 +08:00
2026-06-27 21:33:27 +08:00
2026-06-27 21:33:27 +08:00

MetonaAI Desktop

生产级通用 AI Agent 智能体桌面应用。

技术栈

  • 运行时: Electron 35 + React 19 + TypeScript 5.8
  • 状态管理: Zustand 5
  • 数据库: better-sqlite3
  • LLM: DeepSeek / Agnes AI / Ollama
  • 协议: MCP (Model Context Protocol)
  • 构建: electron-vite + Vite 6

快速开始

# 安装依赖
npm install

# 开发模式
npm run dev

# 构建
npm run build

配置

复制 .env.example.env,填入 API Key

cp .env.example .env

或在应用设置界面中配置 LLM Provider。

项目结构

MetonaAI-Desktop/
├── electron/              # Electron 主进程
│   ├── main.ts            # 应用入口
│   ├── preload.ts         # 安全桥接脚本
│   ├── ipc/               # IPC 通道处理
│   ├── services/          # 业务服务(数据库、会话、记忆等)
│   └── harness/           # Agent 核心引擎
│       ├── agent-loop/    # ReAct 状态机
│       ├── adapters/      # LLM Provider 适配器
│       ├── tools/         # 工具注册与内置工具
│       ├── memory/        # 记忆系统
│       ├── prompts/       # System Prompt 构建
│       └── types/         # Metona IR 类型定义
├── src/                   # React 渲染进程
│   ├── components/        # UI 组件
│   ├── hooks/             # React Hooks
│   ├── stores/            # Zustand 状态管理
│   ├── styles/            # 全局样式
│   └── types/             # 类型声明
├── docs/                  # 设计文档
├── standard/              # 开发规范
└── apis/                  # API 文档

功能

  • 三栏布局(Sidebar + Chat + DetailPanel
  • 流式对话(DeepSeek / Agnes / Ollama
  • 9 个内置工具(文件系统、网络、记忆、命令行)
  • MCP 协议支持
  • 会话持久化(SQLite
  • 三层记忆系统(情节/语义/工作)
  • 全链路追踪(Trace Viewer
  • 审计日志(防篡改)
  • 系统托盘 + 全局快捷键
  • 暗色/亮色主题
  • 14 个键盘快捷键

许可证

MIT

S
Description
MetonaAI Desktop — 生产级通用 AI Agent 智能体桌面应用
Readme MIT
4.1 MiB
Languages
TypeScript 78.4%
HTML 21%
CSS 0.6%