Your own personal AI assistant. Any OS. Any Platform. The lobster way. 🦞
Go to file
2026-01-05 19:28:06 +00:00
.github/workflows CI: split macOS/android checks 2026-01-03 23:25:51 +01:00
apps fix(ci): satisfy formatter checks 2026-01-05 13:55:53 +00:00
assets style: lighten DMG background for label contrast 2025-12-19 22:51:54 +01:00
docs docs: finalize model config decisions 2026-01-05 19:28:06 +00:00
patches fix: Antigravity API compatibility and Gemini thinking tag leakage (#167) 2026-01-04 12:44:19 +01:00
Peekaboo@c1243a7978 fix: update ClawdBot Swift references 2026-01-04 17:57:53 +01:00
scripts docs: default mac build arch to host 2026-01-05 06:45:23 +01:00
skills chore: add model-usage skill 2026-01-05 18:16:29 +01:00
src refactor: unify reply dispatch across providers 2026-01-05 19:43:54 +01:00
Swabble chore(swift): update Swabble package lock 2026-01-03 13:38:18 +01:00
test chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
ui fix(ui): animate reading indicator dots 2026-01-05 17:40:15 +00:00
vendor/a2ui fix: restore build after deps update 2025-12-26 12:17:36 +00:00
.dockerignore Docker: add root-level setup 2026-01-02 13:53:06 +02:00
.env.example Add warelay CLI with Twilio webhook support 2025-11-24 11:23:15 +01:00
.gitignore chore: ignore module cache 2026-01-04 14:41:25 +00:00
.gitmodules submodules: bump Peekaboo 2025-12-18 09:06:39 +01:00
.npmrc feat: add bash pty diagnostics 2026-01-03 01:56:54 +00:00
.swiftformat fix(mac): add Sendable conformance to generated Swift protocol structs (#195) 2026-01-04 22:39:21 +00:00
.swiftlint.yml chore: lint and format cleanup 2026-01-04 16:24:17 +01:00
AGENTS.md docs: clarify a2ui bundle hash handling 2026-01-05 06:39:03 +01:00
appcast.xml chore: update appcast for 2026.1.5-3 2026-01-05 05:14:07 +01:00
biome.json chore: add oxlint type-aware lint 2025-12-23 00:28:55 +00:00
CHANGELOG.md refactor: unify reply dispatch across providers 2026-01-05 19:43:54 +01:00
CLAUDE.md Document exclamation mark escaping workaround for Claude Code 2025-12-02 06:52:56 +00:00
CONTRIBUTING.md chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
docker-compose.yml chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
docker-setup.sh chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
Dockerfile Docker: add root-level setup 2026-01-02 13:53:06 +02:00
Dockerfile.sandbox feat: add per-session agent sandbox 2026-01-03 21:41:58 +01:00
Dockerfile.sandbox-browser chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
LICENSE Initial commit 2025-11-24 11:16:47 +01:00
package.json chore: update pi dependencies 2026-01-05 06:19:35 +01:00
pnpm-lock.yaml chore: update pi dependencies 2026-01-05 06:19:35 +01:00
pnpm-workspace.yaml fix: enable lmstudio responses and drop think tags 2025-12-27 00:28:52 +00:00
README-header.png docs: add README header image 2025-11-25 14:29:21 +01:00
README.md docs: refresh README + architecture links 2026-01-05 20:10:56 +01:00
tsconfig.json web: add heartbeat and bounded reconnect tuning 2025-11-26 02:34:43 +01:00
vitest.config.ts chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
vitest.e2e.config.ts chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00

🦞 CLAWDBOT — Personal AI Assistant

CLAWDBOT

EXFOLIATE! EXFOLIATE!

CI status GitHub release Discord MIT License

Clawdbot is a personal AI assistant you run on your own devices. It answers you on the surfaces you already use (WhatsApp, Telegram, Slack, Discord, iMessage, WebChat), can speak and listen on macOS/iOS, and can render a live Canvas you control. The Gateway is just the control plane — the product is the assistant.

If you want a personal, single-user assistant that feels local, fast, and always-on, this is it.

Website: clawdbot.com · Docs: docs.clawdbot.com · FAQ: FAQ · Wizard: Wizard · Nix: nix-clawdbot · Docker: Docker · Discord: discord.gg/clawd

Preferred setup: run the onboarding wizard (clawdbot onboard). It walks through gateway, workspace, providers, and skills. The CLI wizard is the recommended path and works on macOS, Windows, and Linux.

Subscriptions: Anthropic (Claude Pro/Max) and OpenAI (ChatGPT/Codex) are supported via OAuth. See Onboarding.

Do not download prebuilt binaries. Build from source.

# Clone this repo
git clone https://github.com/clawdbot/clawdbot.git
cd clawdbot

pnpm install
pnpm build
pnpm ui:build
pnpm clawdbot onboard

Quick start (from source)

Runtime: Node ≥22 + pnpm.

pnpm install
pnpm build
pnpm ui:build

# Recommended: run the onboarding wizard
pnpm clawdbot onboard

# Link WhatsApp (stores creds in ~/.clawdbot/credentials)
pnpm clawdbot login

# Start the gateway
pnpm clawdbot gateway --port 18789 --verbose

# Dev loop (auto-reload on TS changes)
pnpm gateway:watch

# Send a message
pnpm clawdbot send --to +1234567890 --message "Hello from Clawdbot"

# Talk to the assistant (optionally deliver back to WhatsApp/Telegram/Slack/Discord)
pnpm clawdbot agent --message "Ship checklist" --thinking high

Upgrading? clawdbot doctor.

If you run from source, prefer pnpm clawdbot … (not global clawdbot).

Highlights

  • Local-first Gateway — single control plane for sessions, providers, tools, and events.
  • Multi-surface inbox — WhatsApp, Telegram, Slack, Discord, iMessage, WebChat, macOS, iOS/Android.
  • Voice Wake + Talk Mode — always-on speech for macOS/iOS/Android with ElevenLabs.
  • Live Canvas — agent-driven visual workspace with A2UI.
  • First-class tools — browser, canvas, nodes, cron, sessions, and Discord/Slack actions.
  • Companion apps — macOS menu bar app + iOS/Android nodes.
  • Onboarding + skills — wizard-driven setup with bundled/managed/workspace skills.

Everything we built so far

Core platform

  • Gateway WS control plane with sessions, presence, config, cron, webhooks, control UI, and Canvas host.
  • CLI surface: gateway, agent, send, wizard, doctor/update, and TUI.
  • Pi agent runtime in RPC mode with tool streaming and block streaming.
  • Session model: main for direct chats, group isolation, activation modes, queue modes, reply-back.
  • Media pipeline: images/audio/video, transcription hooks, size caps, temp file lifecycle.

Surfaces + providers

  • WhatsApp (Baileys), Telegram (grammY), Slack (Bolt), Discord (discord.js), Signal (signal-cli), iMessage (imsg), WebChat.
  • Group mention gating, reply tags, per-surface chunking and routing.

Apps + nodes

  • macOS app: menu bar control plane, Voice Wake/PTT, Talk Mode overlay, WebChat, Debug tools, SSH remote gateway control.
  • iOS node: Canvas, Voice Wake, Talk Mode, camera, screen recording, Bonjour pairing.
  • Android node: Canvas, Talk Mode, camera, screen recording, optional SMS.
  • macOS node mode: system.run/notify + canvas/camera exposure.

Tools + automation

  • Browser control: dedicated clawd Chrome/Chromium, snapshots, actions, uploads, profiles.
  • Canvas: A2UI push/reset, eval, snapshot.
  • Nodes: camera snap/clip, screen record, location.get, notifications.
  • Cron + wakeups; webhooks; Gmail Pub/Sub triggers.
  • Skills platform: bundled, managed, and workspace skills with install gating + UI.

Ops + packaging

  • Control UI + WebChat served directly from the Gateway.
  • Tailscale Serve/Funnel or SSH tunnels with token/password auth.
  • Nix mode for declarative config; Docker-based installs.
  • Health, doctor migrations, structured logging, release tooling.

How it works (short)

Your surfaces
   │
   ▼
┌───────────────────────────────┐
│            Gateway            │  ws://127.0.0.1:18789
│       (control plane)         │  tcp://0.0.0.0:18790 (optional Bridge)
└──────────────┬────────────────┘
               │
               ├─ Pi agent (RPC)
               ├─ CLI (clawdbot …)
               ├─ WebChat (browser)
               ├─ macOS app (Clawdbot.app)
               └─ iOS node (Canvas + voice)

Skills registry (ClawdHub)

ClawdHub is a minimal skill registry. With ClawdHub enabled, the agent can search for skills automatically and pull in new ones as needed.

https://clawdhub.com

Chat commands

Send these in WhatsApp/Telegram/Slack/WebChat (group commands are owner-only):

  • /status — health + session info (group shows activation mode)
  • /new or /reset — reset the session
  • /think <level> — off|minimal|low|medium|high
  • /verbose on|off
  • /restart — restart the gateway (owner-only in groups)
  • /activation mention|always — group activation toggle (groups only)

macOS app (optional)

The Gateway alone delivers a great experience. All apps are optional and add extra features.

macOS (Clawdbot.app) (optional)

  • Menu bar control for the Gateway and health.
  • Voice Wake + push-to-talk overlay.
  • WebChat + debug tools.
  • Remote gateway control over SSH.

Build/run: ./scripts/restart-mac.sh (packages + launches).

iOS node (optional)

  • Pairs as a node via the Bridge.
  • Voice trigger forwarding + Canvas surface.
  • Controlled via clawdbot nodes ….

Runbook: iOS connect.

Android node (optional)

  • Pairs via the same Bridge + pairing flow as iOS.
  • Exposes Canvas, Camera, and Screen capture commands.
  • Runbook: Android connect.

Agent workspace + skills

  • Workspace root: ~/clawd (configurable via agent.workspace).
  • Injected prompt files: AGENTS.md, SOUL.md, TOOLS.md.
  • Skills: ~/clawd/skills/<skill>/SKILL.md.

Configuration

Minimal ~/.clawdbot/clawdbot.json (model + defaults):

{
  agent: {
    model: "anthropic/claude-opus-4-5"
  }
}

Full configuration reference (all keys + examples).

WhatsApp

  • Link the device: pnpm clawdbot login (stores creds in ~/.clawdbot/credentials).
  • Allowlist who can talk to the assistant via whatsapp.allowFrom.

Telegram

  • Set TELEGRAM_BOT_TOKEN or telegram.botToken (env wins).
  • Optional: set telegram.groups (with telegram.groups."*".requireMention), telegram.allowFrom, or telegram.webhookUrl as needed.
{
  telegram: {
    botToken: "123456:ABCDEF"
  }
}

Discord

  • Set DISCORD_BOT_TOKEN or discord.token (env wins).
  • Optional: set discord.slashCommand, discord.dm.allowFrom, discord.guilds, or discord.mediaMaxMb as needed.
{
  discord: {
    token: "1234abcd"
  }
}

Browser control (optional):

{
  browser: {
    enabled: true,
    controlUrl: "http://127.0.0.1:18791",
    color: "#FF4500"
  }
}

Docs

Start with the docs index for navigation and “whats where.”
Read the architecture overview for the gateway + protocol model.
Use the full configuration reference when you need every key and example.
Run the Gateway by the book with the operational runbook.
Learn how the Control UI/Web surfaces work and how to expose them safely.
Understand remote access over SSH tunnels or tailnets.
Follow the onboarding wizard flow for a guided setup.
Wire external triggers via the webhook surface.
Set up Gmail Pub/Sub triggers.
Learn the macOS menu bar companion details.
Debug common failures with the troubleshooting guide.
Review security guidance before exposing anything.

Email hooks (Gmail)

clawdbot hooks gmail setup --account you@gmail.com
clawdbot hooks gmail run

Contributing

See CONTRIBUTING.md for guidelines, maintainers, and how to submit PRs.

AI/vibe-coded PRs welcome! 🤖

Clawd

Clawdbot was built for Clawd, a space lobster AI assistant. 🦞