Skip to main content

signal-client

PyPI version Python versions License Docs

Async Python framework for resilient Signal bots. Build fast on bbernhard/signal-cli-rest-api with typed helpers, resilient ingestion, and observability baked in.

Features

  • Resilience First: Backpressure, DLQ retries, and rate/circuit breakers keep handlers stable during bursts.
  • Typed Context Helpers: Replies, reactions, attachments, locks, and receipts all live on one ergonomic context.
  • Operations Ready: Health and metrics servers, structured logging with PII redaction, and storage options (memory, SQLite, Redis).

Quick Start

1. Prerequisites

  • A Signal phone number registered with signal-cli.
  • A running bbernhard/signal-cli-rest-api instance.
  • Export these environment variables:
    export SIGNAL_PHONE_NUMBER="+15551234567"
    export SIGNAL_SERVICE_URL="http://localhost:8080"
    export SIGNAL_API_URL="http://localhost:8080"
    

2. Install

# Using poetry
poetry add signal_client

# Using pip
pip install signal-client

3. Create a Bot

import asyncio
from signal_client import SignalClient, command

@command("!ping")
async def ping(ctx):
    await ctx.reply_text("pong")

async def main():
    bot = SignalClient()
    bot.register(ping)
    await bot.start()

if __name__ == "__main__":
    asyncio.run(main())

4. Run It

python your_bot_file.py

Documentation

For full guides, examples, and API references, see the official docs site.

Contributing

Contributions are welcome! Please open an issue or submit a pull request.

  • Set up your development environment with poetry install.
  • Activate pre-commit hooks with poetry run pre-commit install.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Metadata

Release files for signal-client 0.1.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for signal-client 0.1.6
File Size Uploaded
signal_client-0.1.6.tar.gz 58.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for signal-client 0.1.6
File Interpreter ABI Platform
signal_client-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 148.4 kB

Release files / signal_client-0.1.6.tar.gz

Download URL signal_client-0.1.6.tar.gz
Size 58.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a3d1801cfef0bf2d6ca41e0022e72a941ec301a4078faca7498dcce4feddaec0
BLAKE2b-256 checksum
How to use checksums
12610075997c951d2f63762526b7ef5d3d8efe7e1676b22946562fbd8049f5a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 8, 2025.

Transparency log

Release files / signal_client-0.1.6-py3-none-any.whl

Download URL signal_client-0.1.6-py3-none-any.whl
Size 89.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
a451086527ccdea059c16d0954c618eba407e2c4a29501165d9badc87e89f903
BLAKE2b-256 checksum
How to use checksums
37a38bbcec4fc0421e2f1ccf1c8e6277f2bbcadc8eb9902b80e9d7aab828867b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Dec 8, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page