Commit Graph
46 Commits
Author SHA1 Message Date
thzxx 26cbac71fe feat: v4.0.0 大版本升级 - SQLite3 + ReAct Agent
- P0: 存储层 IndexedDB → SQLite3 (better-sqlite3),7张表 + FTS5全文搜索
- P1: Agent Engine 升级为 ReAct 模式(思考→行动→观察→反思)
- P2: 新增 4 个工具(memory_search, memory_add, session_list, session_read)
- P3: 上下文管理器(滑动窗口 + 摘要压缩 + 记忆注入)
- P4: UI 改版(ReAct 执行面板样式 + 思考过程卡片)
- P5: IndexedDB → SQLite 数据迁移支持
- MAX_LOOPS 10→15, MAX_LOOP_TIME 5min→10min, 错误自动重试 2 次
2026-04-17 12:35:42 +08:00
thzxx 1771b1e326 bump: 版本号更新至 3.3.4
- package.json: 3.3.3 → 3.3.4
- src/renderer/index.html: 版本显示 v3.3.4
- README.md: badge、下载链接、构建分支引用
- docs/CHANGELOG.md: 版本链 + v3.3.4 更新日志
- docs/BUILD.md: 构建分支引用 + v3.3.4 构建日志
- docs/DEVELOPMENT.md: 版本号
2026-04-17 10:38:21 +08:00
Metona 9850bbf094 chore: 版本号 3.3.2 → 3.3.3 2026-04-17 09:05:38 +08:00
Metona 76981e4206 fix: 工具面板 badge 显示与下拉框样式
1. 修复工具面板中除 run_command 外所有工具的 badge 错误显示为需确认,实际应为自动
   - 根因:CONFIRM_TOOLS 数组仅包含 run_command,但 HTML 硬编码了多个工具为 confirm
   - 涉及工具:write_file, create_directory, delete_file, move_file, copy_file, append_file, edit_file, download_file, replace_in_files, compress
2. 修复 run_command 执行模式下拉框未选中项白字白底不可见
   - 根因:内联样式引用了未定义的 CSS 变量 --bg-tertiary,option 元素无暗色背景
   - 改用 --bg-card 并为 option 元素添加显式暗色背景
2026-04-17 08:53:26 +08:00
thzxx b2c3e6eb84 docs: 同步更新 README/DEVELOPMENT/BUILD 文档与实际代码一致 2026-04-16 20:02:35 +08:00
thzxx a18b04a890 chore: 版本号更新至 3.3.2 2026-04-16 19:50:44 +08:00
thzxx c62fd4c7fd feat: run_command 改为下拉框设置自动/需确认/禁用三种模式
- 替换原有开关为下拉选择框(selectRunCommandMode)
- 新增 setRunCommandMode() 动态控制确认行为
- 需确认模式:弹窗确认后执行
- 自动模式:直接执行,无需确认
- 禁用模式:工具不可用
- 新增 .tool-card-badge.disabled 样式
- 状态从 runCommandEnabled(bool) 迁移为 runCommandMode(string)
2026-04-16 19:39:11 +08:00
Metona Dev 405040c1be chore: 版本号更新至 3.3.1 2026-04-16 13:54:16 +08:00
thzxx f58be52e98 fix: 修正帮助面板描述与实际功能不一致
- 工作空间终端从「多终端 Tab」改为「单一终端进程」
- 移除工作空间面板拖拽调整宽度的描述(当前固定 480px)
2026-04-16 10:28:58 +08:00
thzxx 9f0c5ae7b5 chore: 版本号更新至 3.3.0 2026-04-16 10:19:51 +08:00
OpenClaw Agent 80158cb5bf feat: git 工具升级为全操作支持(16 个子操作)
git 工具支持的操作:
- status: 查看状态(分支/修改/暂存/未追踪/删除/重命名)
- log: 提交历史
- diff: 差异查看(支持 staged)
- add: 暂存文件
- commit: 提交
- push/pull: 推送/拉取
- branch: 列出/创建/删除分支
- checkout: 切换分支
- merge: 合并分支
- stash: 暂存更改
- remote: 查看/添加远程仓库
- clone: 克隆仓库
- init: 初始化仓库
- reset: 重置
- tag: 标签管理

全部自动执行,无需用户确认
2026-04-16 09:55:33 +08:00
OpenClaw Agent 396100335a feat: 工具扩展至 20 个,新增 8 个实用工具
新增工具:
- get_file_info: 获取文件详细元数据(自动)
- tree: 树形目录结构展示(自动)
- download_file: URL 下载文件到本地(需确认)
- diff_files: 两个文件对比差异(自动)
- replace_in_files: glob 批量查找替换(需确认)
- read_multiple_files: 批量读取多个文件(自动)
- git_status: Git 仓库状态查看(自动)
- compress: 创建/解压 zip/tar.gz(需确认)
2026-04-16 09:50:52 +08:00
OpenClaw Agent 8901f841da refactor: 设置面板移除工具相关,全部移入工具面板
- 设置面板不再包含 Tool Calling 和命令执行配置
- 工具面板新增 Tool Calling 主开关
- Tool Calling 和 run_command 状态完全由工具面板管理
- 清理 settings-modal.ts 中的工具相关代码
2026-04-16 09:46:18 +08:00
OpenClaw Agent 5a3b88f232 feat: 工具列表独立为工具面板模态框
- Header 新增 🔧 工具按钮,点击打开工具面板
- 新增 tools-modal.ts 组件
- 工具面板以卡片网格展示全部 12 个工具
- 每个工具显示名称、描述、自动/需确认标签
- run_command 开关内嵌在工具卡片中
- 设置面板简化为「查看全部工具」按钮
- 设置面板保留 run_command 开关同步
2026-04-16 09:42:26 +08:00
OpenClaw Agent 4099b5180f feat: 工具调用扩展,新增 5 个实用工具(共 12 个)
新增工具:
- move_file: 移动/重命名文件(需确认)
- copy_file: 复制文件/目录(需确认)
- web_fetch: 抓取网页内容,自动提取文本(自动)
- append_file: 追加内容到文件末尾(需确认)
- edit_file: 文件内查找替换,支持全部替换(需确认)

同步更新:
- 主进程 IPC 分发
- 工具安全检查(路径白名单)
- 设置面板工具列表 UI
- 帮助文档工具说明
2026-04-16 09:38:52 +08:00
OpenClaw Agent 8ec34106cd feat: 将记忆系统和知识库合并改造为长效向量记忆系统
- 移除知识库(KB/RAG)功能,删除 kb-modal.ts、rag.ts、memory-panel.ts
- 新增 vector-memory.ts:记忆向量存储与检索引擎
- 新增 memory-modal.ts:大模态框布局的记忆管理面板
- 简化记忆分类为3类:fact(事实)、preference(偏好)、rule(规则)
- 嵌入模型配置移至设置面板
- 无嵌入模型时自动降级为关键词搜索模式
- 向量搜索支持语义相似度检索
- 嵌入模型变化时自动重新索引所有记忆
2026-04-16 09:27:05 +08:00
thzxx 466df86fe4 feat: 移除系统提示词功能,由记忆系统替代
- 移除设置面板中的系统提示词开关和文本框
- 移除 input-area 和 agent-engine 中的系统提示词注入逻辑
- 移除 state/KEYS 中 SYSTEM_PROMPT 和 SYSTEM_PROMPT_ENABLED
- 移除 types.d.ts 中对应的 StateKey 类型
- 更新 README.md 设置表和帮助文档
- 记忆系统已完全覆盖系统提示词的功能,且更智能:自动提取、跨会话持久化、按相关性动态注入
2026-04-15 19:53:54 +08:00
thzxx 40b45db9c6 chore: 版本号更新至 3.2.6
- package.json version → 3.2.6
- index.html app-version → v3.2.6
- README badge、安装包名、git checkout 分支
- CHANGELOG 新增 v3.2.6 条目,更新标签链
- BUILD.md 新增 v3.2.6 构建日志,更新 checkout 命令
- DEVELOPMENT.md 补充 flex 子元素说明
2026-04-15 10:37:00 +08:00
thzxx d6373ffafe fix: 工作空间面板改为 flex 子元素,修复与主内容区错位
- workspace-panel 从 position:fixed 改为 flex 子元素,与日志面板布局模式一致
- 移除 margin-right:480px hack,工作空间自然占据宽度
- 移除 updateNavHeight() 和 --nav-height CSS 变量(不再需要)
- 移除 border-top(flex 布局下顶部自动对齐)
2026-04-15 10:17:04 +08:00
thzxx 80ea5df68d fix: token图标改用纯path SVG内联,避免text元素在部分系统不显示 2026-04-14 18:47:37 +08:00
thzxx 43f45cc09c refactor: 工作空间改为单一终端,移除多 Tab 机制
- 移除新建终端按钮和 Tab 栏,只保留唯一默认终端
- AI 命令始终发往唯一终端,避免多终端时目标不确定
- 删除 createTerminalSession/closeTerminalTab/renderTerminalTabs 等多 Tab 相关代码
2026-04-08 16:35:54 +08:00
thzxx 8783cd9b59 fix: 工作空间面板定位、中文乱码、快捷键、帮助文档
- 工作空间面板 top 改用 CSS 变量 --nav-height,JS 动态计算 header+model-bar 实际高度
- Windows 下 spawn 子进程前加 chcp 65001 切换 UTF-8 代码页,修复中文乱码
- 补全 Ctrl+K(知识库)、Ctrl+M(记忆面板)快捷键,防止 Ctrl+M 默认行为冲突
- 帮助弹框内容全面更新,修正工作空间为常驻显示,补充 Ctrl+N、布局说明等
- Token 统计图标从 emoji 🪙 改为内联 SVG,兼容所有 Windows 字体
2026-04-08 16:29:22 +08:00
thzxx 68c5571dd8 chore: 版本号更新至 3.2.5
更新文件:package.json、index.html、README.md、docs/BUILD.md、docs/CHANGELOG.md
2026-04-08 14:24:43 +08:00
thzxx f0bad05494 chore: 版本号更新至 3.2.4
- package.json version 3.2.4
- README.md 版本徽章、下载说明、构建分支
- docs/CHANGELOG.md 新增 v3.2.4 版本说明,版本链补全 v3.2.3
- docs/BUILD.md 新增 v3.2.4 构建日志,构建分支引用
- src/renderer/index.html 应用标题版本号
2026-04-08 13:26:14 +08:00
thzxx d150b53116 refactor: 工作空间去掉手动命令输入,终止时自动反馈 AI
- 移除工作空间终端的命令输入框和执行按钮
- 用户只能通过终止按钮中断卡住的 AI 命令
- 终止后自动通过 killTool IPC 终止进程,结果自动回传 AI
- 新增 workspace:killTool IPC 和 terminateCurrentToolCommand
- 新增终端底部状态提示(等待/执行中)
- 修复工作空间面板顶部对齐(90px → 92px)
2026-04-08 12:57:48 +08:00
thzxx f9eca2e524 v3.2.3: 工作空间面板改为常驻显示,固定宽度480px,不可关闭不可拖拽 2026-04-08 12:22:37 +08:00
thzxx 117df2e2cf chore: 版本号更新至 3.2.2 2026-04-07 20:17:25 +08:00
thzxx 48468f4a6c chore: 版本号更新至 3.2.1 2026-04-07 19:50:25 +08:00
thzxx 46c9595f26 fix: 修复工作空间面板协调性问题
- 头部 Tab 改用 ws-header-tab class,与终端 Tab 的 ws-tab 解除冲突
- 终端 Tab bar 补充完整基础样式(background、border、cursor、transition)
- 补充 .ws-file-toolbar 的 min-height 和按钮 flex-shrink
- 移除未使用的 WorkspaceFileEntry、logWarn import
- resizer 添加 title 提示
2026-04-07 18:35:26 +08:00
thzxx 0e1f216aa4 feat: 添加工作空间面板 - 右侧终端/文件浏览器
- 新增主进程 workspace.ts:spawn 进程管理,流式输出,安全检查
- IPC 双向通信:workspace:exec(on/send 模式,无超时限制)
- preload 暴露 workspace API
- 渲染进程 workspace-panel.ts:多终端 Tab、ANSI 颜色渲染、文件浏览器
- 设置面板添加工作空间目录配置
- 启动时自动创建 workspace 目录
- 窗口关闭时自动清理所有子进程
- 帮助文档更新
2026-04-07 18:30:45 +08:00
thzxx 9485b4c09e chore: bump version to 3.2.0 2026-04-07 18:21:26 +08:00
thzxx 06e1900435 fix: Agent Loop 注入工具路径上下文引导,避免连续操作时路径丢失 2026-04-07 11:05:52 +08:00
thzxx 5cde0fab6e chore: 版本号升级 3.1.0 → 3.1.1 2026-04-07 02:49:40 +08:00
thzxx 0a476365b2 chore: 版本号升级 3.0.0 → 3.1.0 2026-04-07 02:02:19 +08:00
thzxx 79e4cac19b feat: header 增加当前会话总 token 消耗统计
- 新增 totalTokens 元素(帮助按钮右侧,🪙 图标 + 数字)
- chat-area.ts 新增 updateTotalTokens() 函数
- 四个触发点:新消息完成、新建会话、加载历史、应用初始化
- 数字自动格式化(toLocaleString)
2026-04-07 02:00:27 +08:00
thzxx 02d5ff19c7 feat: 文件对话框全部改用 Electron 原生对话框
- input-area.ts: 图片/文件上传改用 dialog.showOpenDialog(通过 IPC)
- settings-modal.ts: 导入改用原生打开对话框,导出改用原生保存对话框
- kb-modal.ts: 知识库文档上传改用原生打开对话框
- ipc.ts/preload.ts/types.d.ts: writeFile 增加 encoding 参数支持二进制写入
- index.html: 移除 4 个无用的 <input type="file"> 元素
- 清理死代码: fileToBase64, fileToText, isMetonaFile
2026-04-07 01:33:51 +08:00
thzxx e1e67dd285 docs: 更新帮助弹框 — 新增 Tool Calling 和 Agent 记忆系统说明,移除已废弃的 Agent 预设 2026-04-07 00:01:14 +08:00
Metona Dev e999c420d1 fix: 日志面板默认常驻显示,移除关闭/清空/切换按钮
- 日志面板默认打开(移除 display:none)
- 移除关闭按钮、清空按钮、头部切换按钮
- 移除对应的事件处理和 CSS
2026-04-06 20:27:37 +08:00
Metona Fix 1033cefdfb feat: 添加左侧实时执行日志面板
功能:
- 日志面板位于聊天区左侧,可折叠/展开
- 实时展示所有执行事件:
  - 🤔 模型思考过程
  - 📡 流式响应状态
  - 🔧 工具调用(参数+结果)
  - ⚠️ 错误和警告
  - ℹ️ Agent Loop 迭代
  -  操作完成
- 日志自动滚动、最大 500 条、可清空
- 等宽字体显示,按级别着色
- 头部新增日志开关按钮
2026-04-06 19:14:51 +08:00
Metona Fix 0f25921fb9 fix: 修复工具调用确认后卡死问题
根本原因:
1. 模型能力检测缺少 tools 检查 — gemma4 等模型不支持 Tool Calling 但代码允许启用
2. 流式调用无超时保护 — 模型无限思考时无法自动恢复
3. AbortController 竞态 — 确认对话框后状态同步问题

修复内容:
- 模型能力检测增加 tools 字段检查,模型栏显示 🔧 Tools 标签
- Agent Loop 流式调用增加 2 分钟单次超时保护
- 开启 Tool Calling 时自动检测模型兼容性并警告
- 设置面板开启 Tool Calling 时检查并提示不兼容模型
- 输入区域 Agent Loop 分支增加模型支持检测和用户提示
2026-04-06 19:02:34 +08:00
thzxx 18a24a2a59 refactor: remove Agent preset system, fix run_command enable bug
- Delete preset-manager.ts and preset-bar.ts
- Clean up all preset references from main.ts, types.d.ts, state.ts
- Remove preset modal HTML and CSS, rename temp-slider/modal-actions classes
- Fix run_command tool not being enabled (missing setToolEnabled call)
2026-04-06 15:44:27 +08:00
thzxx 9e6fce2c3f chore: bump version to 3.0.0 2026-04-06 15:31:28 +08:00
thzxx dc43db7d9c feat: Agent 记忆系统替代预设功能,全功能协调运作
核心改造:
- 取消 Agent 预设(保留兼容),新增 AI Agent 记忆系统
- 自动提取 → 存储 → 检索 → 注入上下文的完整记忆闭环
- 记忆类型:事实/偏好/规则/事件,支持重要性评分和标签

新增文件:
- services/memory-manager.ts: 记忆管理核心
  - 关键词+标签+重要性加权检索
  - 会话结束自动提取(LLM 驱动)
  - 去重检测、使用频率追踪
- components/memory-panel.ts: 记忆管理面板 UI

修改文件:
- types.d.ts: 新增 MemoryEntry/MemorySearchResult 类型
- db/chat-db.ts: 升级 v2,新增 memories 存储
- input-area.ts: 对话流集成记忆检索+自动提取
- agent-engine.ts: Agent Loop 注入记忆上下文
- settings-modal.ts: 记忆开关设置
- main.ts: 记忆系统初始化
- index.html: 记忆设置面板 HTML
- style.css: 记忆面板完整样式

功能协调:
- 对话流: 记忆检索 → RAG 检索 → 系统提示词组合 → 流式对话
- Agent Loop: 记忆检索 → 系统提示词注入 → 工具调用循环
- 会话结束: 自动提取关键信息 → 存入记忆库
- 跨会话: 记忆持久化 IndexedDB,新对话自动召回相关记忆
2026-04-06 13:44:45 +08:00
thzxx 5bfb137a8a feat: v3.0 Tool Calling — AI 本地文件操作系统
新增文件:
- src/main/tool-security.ts: 路径白名单/黑名单、命令安全检查
- src/main/tool-handlers.ts: 7个工具实现(read/write/list/search/create/delete/run)
- src/renderer/services/tool-registry.ts: 工具注册调度中心
- src/renderer/services/agent-engine.ts: Agent Loop 流式多轮工具调用引擎
- src/renderer/components/tool-confirm-modal.ts: 高风险操作确认对话框

修改文件:
- types.d.ts: 新增 ToolCall/ToolResult/ToolCallRecord 等类型
- ollama.ts: chatStream 支持 tools 参数
- ipc.ts: 新增 tool:execute/getConfig/setAllowedDirs IPC
- preload.ts: 暴露 tool API
- chat-area.ts: 渲染工具调用卡片
- input-area.ts: 集成 Agent Loop 引擎
- settings-modal.ts: 工具调用开关设置
- index.html: 工具调用设置面板 + 确认对话框 HTML
- style.css: 工具调用卡片、确认对话框样式
- main.ts: 初始化工具调用配置
2026-04-06 13:29:43 +08:00
thzxx 0ec6e902de feat: TypeScript + Electron v2.0.0 构建系统完善
- 添加 vite.config.ts 构建配置
- 添加 tsconfig.main.json(主进程单独编译)
- 修复主进程模块化(menu/tray 使用 setQuitting)
- 修复渲染进程导入路径
- 删除旧版 JS/Web 文件(js/、electron/、sw.js、manifest.json)
- 构建验证通过:NSIS 安装包 + 便携版
2026-04-06 03:21:05 +08:00
thzxx 7ca0e33d77 feat: TypeScript + Electron v2 重构 - 纯桌面版
- 全面迁移到 TypeScript,严格类型定义
- 放弃 Web 版,专注 Electron 桌面应用
- 主进程模块化:main.ts, preload.ts, menu.ts, tray.ts, ipc.ts, utils.ts
- 渲染进程完整迁移所有功能组件
- 删除 PWA 相关文件 (sw.js, manifest.json)
- 删除 Web 版降级逻辑
- 保留所有核心功能:流式对话、多模型、Think推理、多模态、RAG知识库、Agent预设、历史管理
- 保留 Windows 11 Fluent Design 暗色主题样式
2026-04-06 03:04:20 +08:00