/>
🤖 Built for Claude Code

Remote control for
Claude Code.

Approve every tool call, send instructions mid-task, start new tasks — all from Telegram. Built specifically for Claude Code. No laptop needed.

Get started for free How it works ↓
terminal
$ ctrlpoint claude
Running Claude Code...
 
PreToolUse · Bash · rm -rf build/
⏳ waiting for approval...
✓ approved via Telegram
 
Claude finished. Waiting for
next task from Telegram...
🤖
CtrlPoint
bot
CtrlPoint
🏁 Claude finished
Built src/auth.py — 3 files changed
✓ Done
now add unit tests
CtrlPoint
🕉 Sent to Claude
Claude will start a new task.

How it works

Two-minute setup. Works with every Claude Code session.

Step 1

Install & connect

Run pip install ctrlpoint, then ctrlpoint setup — paste your Telegram token. The hook installs automatically.

Step 2

Start with ctrlpoint claude

Use ctrlpoint claude instead of claude. Your terminal stays open after each task — ready for the next one from Telegram.

Step 3

Walk away

Every tool call pauses and pings your phone — the exact command, file, or action. Approve or reject with one tap.

Step 4

Reply to keep going

Claude finished? Reply from Telegram with your next instruction. Claude picks it up and starts — no laptop, no re-launch.


Never re-launch Claude again

Start Claude with ctrlpoint claude and your terminal stays open after every task. Send a new task from Telegram — Claude wakes up automatically, runs it, and waits for the next one.

Survives server restarts  ·  Unlimited idle time  ·  Multiple sessions in different folders

terminal
$ ctrlpoint claude --resume
# Claude runs your task...
 
✓ Task complete
Waiting for Telegram...
 
# 3 hours later
📱 "add dark mode"
✓ Starting Claude...

What you get

Everything you need to stay in control without staying at your desk.

Message Claude Code from your phone ⭐

Send Claude an instruction any time — mid-task or between tasks. It reads your message and adjusts. Like texting your AI.

Approve every tool call

Before Claude runs any command, writes any file, or calls any API — it pauses. Tap Approve or Reject from wherever you are.

Finished notifications ⭐

Get a Telegram message the moment Claude stops. See what it did, tap Done or reply with the next task to keep going.

Auto-approval policies ⭐

Always allow file reads. Always block rm -rf. Set rules once — CtrlPoint enforces them every time.

Live activity feed

Tap Activity in the bot to see every tool call in real time — pending decisions and recent history.

Pause when you need focus

Pause approvals for a sprint, re-enable with one tap. No config files, no reinstall.

⭐ Pro plan feature


Pricing

Start free. Upgrade when you want the phone features.

Free
$0 / month
No credit card needed.
  • Approve & reject tool calls
  • Live activity feed
  • Pause and resume
  • Works with Claude Code
  • 20 approvals per day
  • Message Claude Code from phone
  • Finished notifications
  • Auto-approval policies
  • ctrlpoint claude idle wait
Start free
Pro
$4.99 / month
1-day free trial — no charge today.
  • Everything in Free
  • Unlimited approvals
  • 💬 Message Claude Code from your phone
  • 🏁 Finished notifications — reply to continue
  • ctrlpoint claude — unlimited idle wait
  • Auto-approval policies
  • Decision history log

Security

Built for developers who care about what runs on their machines

CtrlPoint is a relay, not a recorder. Here is exactly what it can and cannot see.

🔒

Your code never leaves your machine

CtrlPoint only sees tool names and arguments — Bash: rm -rf build/. Not your source files, not your API keys, not your codebase.

🔑

Token-scoped authentication

Every workspace gets a unique API token. The relay rejects any request without a valid token. Tokens can be rotated any time from Telegram.

🔗

HTTPS on every connection

All traffic between the hook on your machine and the relay is encrypted. There is no HTTP fallback, no plaintext channel.

🏠

Hooks run on your machine

The PreToolUse hook is a plain Python script that runs locally as a subprocess. You can read every line of it. It has no write access to anything.

Fail-open — never blocks your workflow

If the relay is unreachable or you do not respond, Claude auto-approves after the timeout. CtrlPoint never permanently blocks your agent.

📦

Self-hostable

Not comfortable with a shared relay? The full server code is open. Deploy to Railway, Fly.io, or your own VPS and point the hook at your instance.