❌ 为什么 edit 工具是个问题?
- 字符串匹配失败导致编辑操作频繁出错,浪费大量 Token
- 对缩进和空格极度敏感,模型难以完美复现原字符串
- 部分编辑容易损坏文件结构,导致代码无法运行
- 失败时代理进入无限重试循环,严重影响开发效率
- 文件损坏后需要人工干预修复,打断开发流程
✅ NoEdit 的解决方案
- 通过 tool.definition 钩子彻底禁用 edit 工具,从模型视角移除
- 修改 write 工具描述,明确指导 AI 使用全量覆写而非部分编辑
- 在系统提示词中明确禁止使用 edit 工具,避免误用
- 所有文件修改通过 write 工具原子性完成,确保完整性
- 减少 20-40% 的 Token 消耗,提高操作成功率和开发速度
核心特性
彻底禁用
清空 edit 工具描述,让模型无法理解如何使用,从源头阻止 edit 操作
智能覆写
修改 write 工具描述,明确指导模型使用全量覆写,确保文件操作完整性
节省 Token
避免 edit 失败导致的无限重试,显著减少 Token 消耗和 API 费用
原子操作
所有修改通过 write 工具一次性完成,避免部分编辑导致的文件损坏
📋 手动安装
如果一键安装不适用,可以手动安装:
# 1. 创建全局插件目录
mkdir -p ~/.config/opencode/plugin
# 2. 下载插件
curl -fsSL https://noedit.qmiweb.com/noedit.ts -o ~/.config/opencode/plugin/noedit.ts
# 3. 添加到全局配置
echo '{
"plugin": ["~/.config/opencode/plugin/noedit.ts"]
}' > ~/.config/opencode/opencode.json
准备好告别 edit 工具的困扰了吗?
全局安装后,所有 OpenCode 项目都会自动禁用 edit 工具
curl -fsSL https://noedit.qmiweb.com/install.sh | bash