Release v0.15.0: Simplified File Editor Tools
What's New in v0.15.0
This minor release simplifies the file editor interface by removing the complex multi-command file_editor tool and providing simple, flat alternatives that are much easier for AI agents to use.
Breaking Changes
Removed: file_editor multi-command interface
The complex file_editor(command, path, skip_confirm, options_json) tool has been removed. This tool required JSON parsing and had a confusing multi-command interface that caused agent errors.
Migration Guide:
If you were using file_editor, switch to these simpler alternatives:
| Old (file_editor) | New (simple alternatives) |
|---|---|
file_editor("view", path, False, "{}") |
view_file_with_lines(path, "", "") |
file_editor("create", path, False, '{"content": "text"}') |
write_file_from_string(path, "text", False) |
file_editor("str_replace", path, False, '{"old_str": "x", "new_str": "y"}') |
replace_in_file(path, "x", "y", -1) |
file_editor("insert", path, False, '{"line_number": 5, "content": "text"}') |
insert_at_line(path, 5, "text") |
file_editor("find", path, False, '{"pattern": "TODO"}') |
find_text_in_file(path, "TODO", False) |
New Features
Added 2 Simple Flat Tools:
-
view_file_with_lines(path, start_line, end_line)- View files with line numbers- Unique feature: Adds line numbers to file viewing (unlike
read_file_to_string) - Examples:
view_file_with_lines("file.py", "", "") # View entire file view_file_with_lines("file.py", "10", "20") # View lines 10-20
- Unique feature: Adds line numbers to file viewing (unlike
-
find_text_in_file(path, search_text, use_regex)- Search/grep functionality- New functionality: Search for patterns in files
- Examples:
find_text_in_file("file.py", "TODO", False) # Simple text search find_text_in_file("file.py", "def \\w+\\(", True) # Regex search
Bug Fixes
- Fixed Windows import error (from v0.14.1): Added
__all__definition tohelpers.pyto resolve strict import behavior on Windows platforms
Improvements
- Reduced code complexity: Removed 405 lines of complex code
- Better agent compatibility: Flat, simple function signatures instead of multi-command JSON interfaces
- No duplicate tools: Removed tools that duplicated existing operations
- Cleaner codebase: Simplified
editor.pyfrom 566 to 230 lines
Statistics
- Total Tools: 20 filesystem tools (clean, no duplicates)
- Code Reduction: -405 lines total
- Tests: 176/180 passing (4 pre-existing agent eval test failures)
- Quality: All ruff and format checks pass
Installation
pip install --upgrade basic-open-agent-toolsFull Changelog
See commit history for detailed changes.
🤖 Generated with Claude Code