❌ Why is the edit tool problematic?
- String matching failures cause frequent editing errors, wasting tokens
- Extremely sensitive to indentation and whitespace, hard for models to match perfectly
- Partial edits easily corrupt file structure, breaking code
- Failures trigger infinite retry loops, severely impacting productivity
- File corruption requires manual intervention, disrupting workflow
✅ NoEdit Solution
- Completely disable edit tool via tool.definition hook, remove from model's view
- Modify write tool description to guide AI toward full overwrites instead of partial edits
- Explicitly forbid edit tool usage in system prompts
- All file modifications done atomically via write tool, ensuring integrity
- Reduce token consumption by 20-40%, improve success rate and development speed
Key Features
Complete Disable
Clear edit tool description so model cannot understand how to use it, blocking edit operations at the source
Smart Overwrite
Modify write tool description to explicitly guide models toward full file overwrites, ensuring operation integrity
Save Tokens
Avoid infinite retry loops from edit failures, significantly reduce token consumption and API costs
Atomic Operations
All modifications completed in one write operation, avoiding file corruption from partial edits
📋 Manual Installation
If one-click install doesn't work for you:
# 1. Create global plugin directory
mkdir -p ~/.config/opencode/plugin
# 2. Download plugin
curl -fsSL https://noedit.qmiweb.com/noedit.ts -o ~/.config/opencode/plugin/noedit.ts
# 3. Add to global config
echo '{
"plugin": ["~/.config/opencode/plugin/noedit.ts"]
}' > ~/.config/opencode/opencode.json
Ready to say goodbye to edit tool frustrations?
After global installation, all OpenCode projects will automatically disable the edit tool
curl -fsSL https://noedit.qmiweb.com/install.sh | bash