Signal Claude Bridge banner
Lajdar Lajdar

Signal Claude Bridge

Development community

Description

Daemon connects end-to-end encrypted Signal message to a Claude Code agent. Whitelisting, prompt injection mitigation, permission isolation, and subprocess invocation with no shell involvement.

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

Signal-Claude Bridge

A lightweight daemon that connects Signal Messenger to Claude Code AI agents via signal-cli's JSON-RPC interface. Send a message on Signal, get an AI-powered response — no app, no web UI, just your existing Signal conversations.

Use it to build a personal assistant, a network diagnostics bot, a home automation helper, or anything else a Claude Code agent can do.

Architecture

Signal App                signal-cli daemon            this bridge              Claude Code CLI
    │                          │                           │                         │
    │──── encrypted msg ──────>│                           │                         │
    │                          │── JSON-RPC notification ─>│                         │
    │                          │                           │── claude -p --agent ───>│
    │                          │                           │                         │
    │                          │                           │<── stdout response ─────│
    │                          │<── JSON-RPC send ─────────│                         │
    │<─── encrypted msg ───────│                           │                         │

Features

  • Zero dependencies — stdlib-only Python, no pip install needed
  • Single file — the entire bridge is one ~450-line Python script
  • Agent-agnostic — works with any Claude Code agent, or none (uses default Claude behavior)
  • Whitelist access control — only configured phone numbers get responses
  • Input sanitization — control characters stripped, XML tag breakout prevented, message length enforced
  • Prompt injection mitigation — user input wrapped in untrusted delimiters with scope enforcement
  • Config validation — agent names validated, broad permission patterns flagged at startup
  • Isolated permissions — optional dedicated settings file keeps bridge permissions separate from your interactive Claude config
  • Rate limiting — per-sender