From 3ff7c3733c9d258a73c274000e1336b3fbe25308 Mon Sep 17 00:00:00 2001 From: Kieran Klukas Date: Mon, 26 Jan 2026 02:46:32 -0500 Subject: [PATCH] docs: add inline approval buttons section for Discord/Slack --- docs/tools/exec-approvals.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/docs/tools/exec-approvals.md b/docs/tools/exec-approvals.md index ec350f9d9..73fa1163b 100644 --- a/docs/tools/exec-approvals.md +++ b/docs/tools/exec-approvals.md @@ -187,6 +187,40 @@ Reply in chat: /approve deny ``` +### Inline approval buttons + +For Discord and Slack, you can enable inline buttons instead of text commands: + +**Discord:** +```yaml +channels: + discord: + execApprovals: + enabled: true + approvers: ["123456789012345678"] # Discord user IDs + agentFilter: ["main"] # optional + sessionFilter: ["discord"] # optional +``` + +**Slack:** +```yaml +channels: + slack: + execApprovals: + enabled: true + approvers: ["U12345678"] # Slack user IDs + agentFilter: ["main"] # optional + sessionFilter: ["slack"] # optional +``` + +When enabled, approval requests show Block Kit (Slack) or component (Discord) buttons: +- **Allow once** → run now +- **Always allow** → add to allowlist + run +- **Deny** → block + +Messages update in-place when resolved or expired. The text forwarder is automatically +skipped for channels with inline buttons enabled. + ### macOS IPC flow ``` Gateway -> Node Service (WS)