Skip to content

feat(tools): 新增 EditFileTool / GlobTool / GrepTool / BashTool#5

Merged
Jonnytoshen merged 8 commits into
mainfrom
feat/useful-tools
May 25, 2026
Merged

feat(tools): 新增 EditFileTool / GlobTool / GrepTool / BashTool#5
Jonnytoshen merged 8 commits into
mainfrom
feat/useful-tools

Conversation

@Jonnytoshen

Copy link
Copy Markdown
Owner

概述

新增 5 个实用工具(edit_fileglobgrepbashlist_directory 升级),完善工具集,使 Super Agent 具备完整的文件读写、搜索和命令执行能力。

变更内容

新增工具

  • EditFileTool:精确局部替换文件内容(old_stringnew_string),匹配 0 次或多次时返回友好错误引导模型修正;串行执行
  • GlobTool:基于 fast-glob,支持 * / ** 通配符搜索文件,自动忽略 node_modules.git;只读可并发
  • GrepTool:递归正则搜索文件内容,跳过二进制文件和忽略目录,最多返回 50 条匹配,结果截断至 3000 字符;只读可并发
  • BashTool:执行 shell 命令,超时 10s,WebContainer 环境自动降级提示;串行执行

其他变更

  • 新增 sample-data.txt:工具系统设计说明文档,同时作为 ReadFileTool 截断功能的测试数据
  • 新增 preflight 脚本:串联 lintformat:check,用于 CI 和 PR 前检查
  • 引入 fast-glob 依赖
  • mock-model v0.4.1:新增 测试编辑测试glob测试搜索测试bash 意图检测
  • 更新 SYSTEM prompt 和启动提示,列出全部可用工具

检查

  • pnpm preflight(lint + format:check)✅

- 新增 edit_file 工具:通过 old_string/new_string 精确替换文件片段,
  非全量覆写;匹配为 0 次或多次时返回友好错误信息引导模型修正
- 注册 editFileTool 到 allTools 并更新 tools/index.ts 导出
- mock-model v0.4.1:新增"测试编辑"意图检测
- 更新 SYSTEM prompt 和启动提示,加入 edit_file 工具说明
- 新增 glob 工具:基于 fast-glob,支持 * / ** 通配符,
  自动忽略 node_modules 和 .git,只读可并发
- 注册 GlobTool 到 allTools 并更新 tools/index.ts 导出
- mock-model:新增"测试glob"意图检测
- 更新 SYSTEM prompt 和启动提示,加入 glob 工具说明
- 新增 grep 工具:递归搜索文件内容,支持正则表达式,
  跳过 node_modules/.git/dist 及二进制文件,
  最多返回 50 条匹配,只读可并发
- 注册 GrepTool 到 allTools 并更新 tools/index.ts 导出
- mock-model:新增"测试搜索"意图检测
- 更新启动提示,加入"测试搜索"示例
- 新增 bash 工具:通过 execSync 执行 shell 命令,超时 10s,
  结果截断至 3000 字符;WebContainer 环境下自动降级并返回友好提示
- 串行执行(isConcurrencySafe: false),防止并发副作用
- 注册 BashTool 到 allTools 并更新 tools/index.ts 导出
- mock-model:新增"测试bash"意图检测
- 更新 SYSTEM prompt 和启动提示,加入 bash 工具说明
Copilot AI review requested due to automatic review settings May 25, 2026 03:15
@Jonnytoshen Jonnytoshen merged commit 89dda6d into main May 25, 2026
1 check failed
@Jonnytoshen Jonnytoshen deleted the feat/useful-tools branch May 25, 2026 03:15
@Jonnytoshen Jonnytoshen removed the request for review from Copilot May 25, 2026 03:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant