rename: remaining Bouncer mentions → Dispatcher
Some checks failed
Deploy (Gitea) / deploy (push) Failing after 2s
Some checks failed
Deploy (Gitea) / deploy (push) Failing after 2s
- BOUNCER-PRIVACY-TAGS → *DISPATCHER-PRIVACY-TAGS* - BOUNCER-SHELL-TIMEOUT → *DISPATCHER-SHELL-TIMEOUT* - BOUNCER-SHELL-MAX-OUTPUT → *DISPATCHER-SHELL-MAX-OUTPUT* - bouncer-privacy-tags docstrings → Dispatcher privacy tags - 'Bouncer' in log messages, docstrings, test descriptions - 'Bouncer Security Dispatcher' → 'Security Dispatcher'
This commit is contained in:
@@ -8,9 +8,9 @@
|
||||
The Shell Actuator is the agent's hand in the physical world. Given a shell command, it executes it via ~bash -c~ and returns the output. This is how the agent installs packages, reads files, runs scripts, and interacts with any Unix tool.
|
||||
|
||||
Because shell execution is the highest-risk operation in the system, the Shell Actuator is protected by multiple safety layers:
|
||||
1. The Bouncer's shell safety gate blocks destructive commands (~rm -rf /~, ~dd~, ~mkfs~)
|
||||
2. The Bouncer's injection gate blocks backtick and ~$()~ patterns
|
||||
3. The Bouncer's network exfil gate blocks connections to unwhitelisted hosts
|
||||
1. The Dispatcher's shell safety gate blocks destructive commands (~rm -rf /~, ~dd~, ~mkfs~)
|
||||
2. The Dispatcher's injection gate blocks backtick and ~$()~ patterns
|
||||
3. The Dispatcher's network exfil gate blocks connections to unwhitelisted hosts
|
||||
4. The actuator enforces a timeout (default 30s) so hanging commands don't freeze the agent
|
||||
5. The actuator caps output (default 100KB) so infinite output doesn't exhaust memory
|
||||
|
||||
@@ -24,9 +24,9 @@ Because shell execution is the highest-risk operation in the system, the Shell A
|
||||
(declare (ignore context))
|
||||
(let* ((payload (getf action :payload))
|
||||
(cmd (getf payload :cmd))
|
||||
(timeout-sym (find-symbol "*BOUNCER-SHELL-TIMEOUT*" :passepartout))
|
||||
(timeout-sym (find-symbol "*DISPATCHER-SHELL-TIMEOUT*" :passepartout))
|
||||
(timeout (or (getf payload :timeout) (if timeout-sym (symbol-value timeout-sym) 30)))
|
||||
(max-sym (find-symbol "*BOUNCER-SHELL-MAX-OUTPUT*" :passepartout))
|
||||
(max-sym (find-symbol "*DISPATCHER-SHELL-MAX-OUTPUT*" :passepartout))
|
||||
(max-output (or (getf payload :max-output) (if max-sym (symbol-value max-sym) 100000))))
|
||||
(log-message "ACT [Shell]: ~a (timeout: ~as)" cmd timeout)
|
||||
(multiple-value-bind (out err code)
|
||||
|
||||
Reference in New Issue
Block a user