str_replace makes a targeted, string-anchored edit to an existing
file — old_string → new_string, no line numbers, no diff; a miss comes back as a
model-correctable ToolResult, never an exception thrown at the loop (§10). write_file
(ADR-0003 B) is the plain-content transport for creation and explicit whole-file rewrites,
and delete_file removes one. Modification is anchored on the exact existing text (the
read-before-edit staleness proof), which replaced the line-numbered unified diff models
could not produce reliably (ADR-0015).
Classes
DeleteFileInput
Input for delete_file: remove one existing workspace file (ADR-0015).
StrReplaceInput
Input for str_replace: an exact-text find/replace in one existing file (ADR-0015).
WriteFileInput
Input for write_file: create a file with full content (overwrite only if explicit).