I just wanted to close my laptop.
I was running ML training jobs that take hours. Wanting to leave the office, but afraid to close the laptop. Checking SSH from my phone on the subway. Sound familiar?
The old way: SSH with tmux. VPN configurations. Dynamic DNS. Port forwarding. Key management. It all works until it doesn’t.
One day I asked myself a simple question: why can’t I just check my terminal from anywhere? Like checking email. Without infrastructure.
The problem with existing solutions
When OpenClaw went viral (214K GitHub stars), I understood why — people want AI agents that control their computers. But I tried it, and hit the same wall everyone hits:
- It only controls the machine it runs on
- No remote access through NAT/firewalls
- Complex Docker setup
- No multi-machine support
If your server is behind a firewall (and whose isn’t?), you’re back to VPN.
A different architecture
I built CMDOP with a fundamentally different approach:
[Your Phone/Laptop] → [Relay] ← [Agent on Server]
(Client) (Router) (Outbound only)
The key insight: the agent makes outbound connections to the relay. Not the other way around. This means:
- No open ports on your server
- No VPN
- No port forwarding
- Works through any NAT/firewall
- The relay just routes encrypted traffic
15 seconds to set up
pip install "cmdop-bot[telegram]"
cmdop-bot init
cmdop-bot start
That’s it. You now have a Telegram bot that gives you terminal access to your server. From your phone. From anywhere.
What you get
- Multi-machine — control unlimited servers from one interface
- Multiple clients — Telegram, Discord, CLI, desktop app, mobile app
- Built-in permissions — admin/execute/read per user per machine
- End-to-end encrypted — always
- Typed Python SDK — Pydantic models, async support
- Open-source MIT
The code
from cmdop import CMDOPClient
client = CMDOPClient(api_key="your-key")
# Check what's running on your GPU server
result = client.terminal.execute(
machine_id="gpu-server",
command="nvidia-smi"
)
print(result.output)
Free forever
For personal use. No catch. I built this for myself. Then I realized others have the same problem. So I made it free.
Try it
-
Install:
pip install cmdop -
GitHub: github.com/commandoperator
- cmdop-sdk — Python SDK
- cmdop-bot — Telegram/Discord bot
- cmdop-agent — CLI agent
-
Website: cmdop.com
“I built this for myself. Then I realized others have the same problem. So I made it free for personal use. No catch.” — A developer who got tired of SSH
