File operations are now powered by dedicated, structured tools (no shell access). The user-facing approval flow is unchanged — same overlay, same “Allow remaining” affordance — but the tool surface underneath is
file_move, file_copy, file_rename, file_mkdir, plus the read-only file_read, file_list, file_stat, file_glob, file_grep. Paths are scoped to your home directory, the REAPER scripts directory, and external drives (/Volumes on macOS, /mnt on Linux).What’s Allowed
Reagent cannot run scripts, install software, send network requests, or invoke shells via this feature. The set of allowed commands is intentionally narrow.
The Confirmation Overlay
When the agent wants to make a change, you’ll see an overlay describing exactly what it’s about to do:- The operation kind (move, copy, rename, create folder)
- The files affected
- Source and destination folders
- Any warnings the safety checks raised
When a change is auto-approved, you’ll still see an inline
auto-approved: ... line in the chat so you can scan the activity afterwards.
Safety Checks
Every file operation passes through three layers of validation before you ever see the confirmation overlay:- Structural patterns — chained commands, shell metacharacters, command substitution, and destructive flags are rejected outright
- Allowed commands only — anything other than
mv,cp,rename,mkdir,ls,find, orstatis blocked at the gate - Resolved-path check — the resolved absolute path of every file is checked against protected system locations (
/etc/,/usr/,/bin/,/sbin/,/System/,C:\Windows\, etc.). Path-traversal escapes like../../are caught here too