I wanted my OpenClaw bot to be able to see what code changes are on my local computer, not inside a remote server that Clawdbot is on. So I built a bridge.

clawd2claude is a lightweight HTTP bridge that connects OpenClaw in Telegram to a Claude Code instance running on my machine. I talk to OpenClaw in Telegram, then it tells my Claude Code on my computer what to do. They talk like they are two agents working together on a task.

The flow looks like this:

Telegram
  |
  v
OpenClaw (remote server)
  |
  v  HTTP POST
ngrok (public URL)
  |
  v  tunnel
clawd2claude bridge (my machine, port 8081)
  |
  v  spawns CLI subprocess
Claude Code (my machine, my local project)

Your secrets, env files, and uncommitted code never leave your machine. Only Claude Code's text response goes back through the bridge.