Repository navigation
v2.0.0 - Complete File Editing Overhaul
v2.0.0 - Complete File Editing Overhaul
π Major Release - This release represents a complete rewrite of the file editing interception system based on deep reverse engineering of the Augment VS Code extension (v0.778.0).
β¨ New Features
Advanced str-replace-editor Implementation
- Multi-entry replacements: Support for
old_str_1/new_str_1,old_str_2/new_str_2, etc. (up to 20 entries) - Three-tier matching algorithm:
- Exact verbatim matching
- Line number-based disambiguation (with 20% tolerance)
- Basic fuzzy matching (trimmed line matching)
- Insert command support:
insertcommand for adding content at specific line numbers - Line ending preservation: Automatically detects and preserves original line endings (CRLF/LF)
Unified Tool Interception Architecture
- All providers now support interception: Anthropic, OpenAI, and Google providers all use the same interception logic
- Proper result handling: Intercepted tool results are correctly returned to the AI as
tool_result_node(type 1) - Consistent behavior: All providers now handle file editing tools identically
π§ Improvements
edit-file Tool Handling
- Changed from conversion to error: Previously converted to
viewtool (wasting a round trip) - Now returns clear error: Instructs AI to use
str-replace-editorinstead - Better user experience: AI immediately knows to use the correct tool
Provider-Specific Enhancements
- Anthropic provider: Added
convertOrInterceptFileEditcall intool_usecompletion handler - Google provider: Added
fixToolCallInputandconvertOrInterceptFileEditinfunctionCallhandler - OpenAI provider: Fixed intercepted result handling to return
tool_result_nodeinstead ofnull
π Bug Fixes
- Fixed issue where intercepted tools would not return results to the AI
- Fixed single-replacement limitation in
str-replace-editor - Fixed missing line number disambiguation
- Fixed lack of fuzzy matching fallback
π Technical Details
Based on reverse engineering analysis of Augment extension's implementation:
PCclass (str-replace-editor): Complete implementation includinghandleStrReplace,handleInsert,singleStrReplaceg$eclass (edit-file): Server-side API call mechanism- Checkpoint system:
addCheckpoint()βqt().writeFile()βWorkspaceEdit.replace() - Line ending handling:
OD()normalization,JX()detection,sUe()restoration
π Breaking Changes
edit-filetool now returns an error instead of converting toviewprocessToolCallForAugmentnow returnstool_result_nodefor intercepted tools instead ofnull
π¦ Installation
Download augment-proxy-manager-2.0.0.vsix and install via:
Extensions: Install from VSIX...
Or use the command line:
code --install-extension augment-proxy-manager-2.0.0.vsix