Skip to content

Releases: xbirimensah/whatsapp-bridge

v0.2.1 - redesigned web UI, status filtering, hardening

Choose a tag to compare

@xbirimensah xbirimensah released this 06 Jul 19:21

Polish release: redesigned web UI plus fixes.

  • Redesigned web UI (Beeper-inspired dark inbox): sidebar with search + All/Unread/Groups filter chips, compact WhatsApp-style bubbles with inline timestamps, refined group receipts and reactions
  • Demo mode: open /?demo=1 to preview the full inbox with mock data - no pairing, no token
  • Statuses fixed: status@broadcast and broadcast lists no longer appear as conversations, and the autoreply sidecar never drafts or auto-replies to them
  • Bug fixes: stale-response race when switching chats/sessions, media blob memory leak, reaction picker event handling
  • Hardening: nosniff + Referrer-Policy on all responses, Cache-Control: no-store on API JSON

v0.2.0 - bring your own LLM + history-grounded drafts

Choose a tag to compare

@xbirimensah xbirimensah released this 06 Jul 17:55

The autoreply sidecar no longer assumes Claude Code or an external notes source. Bring any LLM, and drafts ground themselves in your own WhatsApp history out of the box.

Bring your own LLM

AUTOREPLY_LLM_PROVIDER selects the backend for draft generation:

  • claude-cli (default) - the local claude CLI, no API key needed
  • anthropic - Anthropic Messages API via the official SDK (AUTOREPLY_LLM_API_KEY or ANTHROPIC_API_KEY)
  • openai - ANY OpenAI-compatible chat-completions endpoint: OpenAI, OpenRouter, Groq, Mistral, and local runtimes like Ollama or LM Studio (AUTOREPLY_LLM_BASE_URL + AUTOREPLY_LLM_MODEL; key optional for local endpoints)

Drafts grounded in your own message history

  • Reference context from WhatsApp history: each draft now sees the recent conversation with that chat plus keyword matches across all stored messages - no external "second brain" required
  • Style corpus auto-build: if no style corpus exists when the first draft is generated, one is built automatically from your own sent messages
  • npm run autoreply:build-corpus no longer fails without a notes source - it falls back to a WhatsApp-only corpus

Config

# example: OpenRouter
AUTOREPLY_LLM_PROVIDER=openai
AUTOREPLY_LLM_BASE_URL=https://openrouter.ai/api/v1
AUTOREPLY_LLM_API_KEY=sk-or-...
AUTOREPLY_LLM_MODEL=anthropic/claude-sonnet-4.6

Full reference: docs/autoreply.md

v0.1.0 - notification channels + guided setup

Choose a tag to compare

@xbirimensah xbirimensah released this 06 Jul 17:40

Self-hosted WhatsApp bridge for AI agents: one paired number exposed via REST, MCP, and a web UI, built on Baileys with a single SQLite file for storage.

Highlights

  • REST API (127.0.0.1:8080/v1) - conversations, messages, send, aliases, webhook test
  • MCP server (stdio) - ~20 tools for Claude Code, Codex, or any MCP-capable agent, with a safety contract in AGENTS.md
  • Web UI - single-page inbox with bearer-token login
  • Inbound webhook - every received message POSTed to a URL of your choice, with retries
  • Full history backfill on first pair, LID/phone alias merging, display-name resolution
  • Autoreply sidecar (optional) - drafts replies in your own voice via Claude, delivers them for review, and can auto-send under strict safety gates (confidence threshold, sensitive-topic blocks, cooldowns, group protection)

New in this release

  • Selectable notification channels: draft notifications can now go to Telegram, Slack, your own WhatsApp number (self-chat or a second number, sent through the bridge itself), or a generic webhook - pick one with AUTOREPLY_NOTIFY_CHANNEL
  • Guided setup wizard: npm run autoreply:setup-notify walks you through credentials per channel, writes .env, and sends a test notification
  • Loop protection: the WhatsApp notify chat is excluded from autoreply processing, so notifications can never generate drafts about themselves
  • SOPs: step-by-step setup guides for humans (docs/sop-notifications-human.md) and AI agents (docs/sop-notifications-agent.md)
  • Expanded README: full explanation of the autoreply pipeline, how the confidence threshold and safety gates work, and the notification channels
  • Cross-platform guide: docs/cross-platform.md documents the exact patch list for Linux and Windows (WSL2 recommended)

Install

git clone https://github.com/obirimensah05/whatsapp-bridge.git
cd whatsapp-bridge
npm install
npm run pair -- main <countrycode+digits>

Requires Node 20+. See the README for pairing, service setup, and the full API table.