filesystem: make edit/edit_lines the default, smart_edit a last-resort fallback
Agent overused smart_edit (whole-file LLM call, weak context). Rewrite the
FilesystemTool description decision tree so edit (exact text) is the default and
edit_lines (by line numbers) is the deterministic option; smart_edit is reserved
for genuinely semantic changes that cannot be expressed as exact text or line
numbers. Strengthen the old_not_unique hint to steer back to edit/edit_lines
before smart_edit. Add an "Editing policy" section to the navi_code and
developer profile prompts reinforcing the same priority.

Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 0063b83 commit 9640fa333cbc01df812009827b1de6b55cfafb32
@Eugene Sukhodolskiy Eugene Sukhodolskiy authored 8 hours ago
Showing 4 changed files
View
navi/profiles/developer/system_prompt.txt
View
navi/profiles/navi_code/system_prompt.txt
View
navi/tools/filesystem.py
View
tests/unit/tools/test_filesystem.py