SlackAgentBridge banner
SergioTCG SergioTCG

SlackAgentBridge

Communication community

Description

Control local Claude Code and Codex CLI sessions from Slack with private channels and resumable terminals.

Installation

This entry records only its repository, not the path inside it, so there is no exact command to give. Open the source below and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

README

Slack Agent Bridge

Control local [Claude Code](https://claude.com/claude-code), [Codex CLI](https://developers.openai.com/codex/cli/), and [Pi](https://github.com/earendil-works/pi) sessions from Slack. Each native session gets a private Slack channel where prompts, responses, progress, and attachments flow both ways.

Version 2 has one command language everywhere: `sab` in a shell and `/sab-*` in Slack. The active Slack channel selects its provider; only creation and provider switching need an explicit `claude`, `codex`, or `pi` target.

Provider processes live in detached-capable tmux sessions. Ghostty is an optional viewport, not a process-lifetime requirement: close every terminal and the agents continue running; open or focus one later without resuming or duplicating the native conversation.

[!WARNING] **This is remote code execution by design.** Slack-spawned Claude sessions default to `--dangerously-skip-permissions`; Slack-spawned Codex sessions default to `--dangerously-bypass-approvals-and-sandbox` (`--yolo`). Pi's built-in tools are unrestricted by default; SAB's optional `--safe` flag adds fail-closed Slack approval per tool call. Anyone able to act as the bridge owner can steer processes with that Mac user's privileges. Read [SECURITY.md](SECURITY.md) before installing.

[!NOTE] The daemon currently targets macOS and launchd. Ghostty is needed only when terminal viewports are wanted. Claude uses its Channels API; Codex uses hooks, tmux, and a loopback App Server event proxy; Pi uses an explicitly loaded native extension.

Capabilities

Capability Claude Code Codex CLI Pi
Private channel per native session
Slack prompts and attachments
Return generated files to Slack
Final responses and live working status
Selected interim progress managed runs
Model and effort controls
Remote permission decisions