Skip to main content

Gate Claude Code tool use behind Slack approvals and enable remote task execution from your phone

Project description

claude-gate

Gate Claude Code tool use behind approvals and control it remotely from your phone via Slack DMs.

What it does

  • Approval gate — every Bash, Write, or Edit action Claude takes pops up on your phone as a Slack button. Allow, block, or grant a 15-minute "allow all" session.
  • Remote task execution — start a session, then send a text or 🎙️ voice message from Slack and Claude Code runs it on your machine, streaming live progress back to you.
  • Interactive sessions!start-session opens a back-and-forth conversation with Claude directly from Slack.

Install

pipx install claude-gate

Setup

1. Create a Slack app

Run the guided setup to get the manifest and step-by-step instructions:

cg setup-slack

This prints the Slack app manifest and walks you through creating the app, installing it to your workspace, and copying the Bot Token (xoxb-...) and App Token (xapp-...).

2. Initialise your project

Run this from your project root:

cg init

This creates .claude/ with all hook scripts and settings, then prompts for your tokens.

3. Verify and start

cg doctor   # confirms tokens work
cg up       # starts the daemon (Ctrl+C to stop)
cg up -d    # or run it in the background

Slack commands

Command What it does
!start-session Open an interactive back-and-forth session
!end-session Close the interactive session
!status Show what's running and elapsed time
!output [N] Dump the last N lines of output
!stop Kill the running task
!log Show the path to the full task log file
!revoke Revoke the "Allow All Session" flag early
🎙️ Voice message Transcribed via Whisper, confirmed via button (requires active session)

CLI reference

cg setup-slack     Print Slack app manifest and guided setup (start here)
cg init            Scaffold .claude/ and configure credentials
cg init --adopt    Existing .claude/ setup — just write .env
cg up              Start daemon in foreground
cg up -d           Start daemon detached (background)
cg down            Stop background daemon
cg status          Show daemon status and recent logs
cg logs [-f]       Tail activity and daemon logs
cg doctor          Verify tokens, deps, hook integrity
cg upgrade-hooks   Update hook files from package (backs up yours first)
cg remove          Remove claude-gate from the current project

Requirements

  • Python 3.10+
  • A Slack workspace where you can install apps
  • claude CLI installed and authenticated
  • notify-send for desktop notifications (optional — sudo apt install libnotify-bin)
  • OpenAI API key for voice message transcription (optional)

How it works

Claude Code runs hooks before every tool use. The hooks in .claude/hooks/ post an approval card to your Slack DM and wait for your response. The daemon (cg up) listens for incoming Slack messages and spawns claude --print subprocesses for remote tasks.

See CLAUDE.md for the full architecture.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

claude_gate-1.0.0.tar.gz (26.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

claude_gate-1.0.0-py3-none-any.whl (29.6 kB view details)

Uploaded Python 3

File details

Details for the file claude_gate-1.0.0.tar.gz.

File metadata

  • Download URL: claude_gate-1.0.0.tar.gz
  • Upload date:
  • Size: 26.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for claude_gate-1.0.0.tar.gz
Algorithm Hash digest
SHA256 504a162099b71b403f83980e65d6ab6f552642c5fe639acd04930906cc40e67f
MD5 b02a69303f54e5b9207f32e30594d64f
BLAKE2b-256 aee01ee6e7a33bf12e8eac773f6aac6b16c4b2b4026750888357765ced95f3e8

See more details on using hashes here.

File details

Details for the file claude_gate-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: claude_gate-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 29.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for claude_gate-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 80f9be95c1ce4dd07ec915f0f3c506426feec4571c33383083bde32d7e1b9cde
MD5 ff1b23e485d702e8e92d8691bbf75d6c
BLAKE2b-256 fd274a6054d4a9e96c3a7e7e54f06b719000da02a39ffb3e28be1774c5dd7d92

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page