Slack Approval Flow
Interactive Block Kit buttons for approving restricted terminal commands in Slack.
How It Works
- The agent requests a terminal command that isn’t in the allowed prefixes list (or contains shell operators)
- An approval message is sent to the Slack channel/thread with Block Kit buttons
- The user sees three interactive buttons:
Command requires approval:
rm -rf /tmp/old-cache
Allow Once
Allow Always
Deny
Approval Options
| Option | Behavior |
|---|---|
| Allow Once | Execute the command this time only |
| Allow Always | Execute and persist the command prefix for future auto-approval |
| Deny | Reject the command — agent receives denial message |
The approval flow in Slack works identically to Telegram. “Allow Always” persists the prefix to SQLite so it survives daemon restarts.
Shell Operators
Commands containing
; | && || $() or backticks always require approval, even if the prefix is whitelisted.