Local-first agent runtime for Slack, Discord, Telegram, WeChat, and Lark
Project description
Vibe Remote
Your AI agent army, commanded from Slack, Discord, Telegram, WeChat & Lark.
No laptop. No IDE. Just vibes.
Supported Platforms
Supported Agents
The Pitch
You're at the beach. Phone buzzes — production's on fire.
Old you: Panic. Find WiFi. Open laptop. Wait for IDE. Lose your tan.
Vibe Remote you: Open Slack, Discord, Telegram, or WeChat. Type "Fix the auth bug in login.py". Watch Claude Code fix it in real-time. Approve. Sip margarita.
AI works. You live.
Install in 10 Seconds
curl -fsSL https://avibe.bot/install.sh | bash && vibe
Open source — view the script on GitHub. The short URL is a 307 redirect to that file.
That's it. Browser opens -> Follow the wizard -> Done.
Need to open the Web UI from another device or a remote server? Run:
vibe remote
Windows?
We recommend the WSL setup on Windows because it has the best compatibility.
- Recommended: Run Vibe Remote with WSL from Scratch
If you are new to WSL, this guide explains:
- where to install WSL
- which terminal window to use
- where to run the Vibe Remote install command
- how to launch Ubuntu and open the Web UI
What Ships Today
Not an agent framework. Not a hosted coding VM. Vibe Remote is the remote-control layer for the coding agents already running on your machine.
- Chat apps become terminals: Slack, Discord, Telegram, WeChat, and Lark / Feishu.
- Real coding agents, no middleman: Claude Code, OpenCode, and Codex run as themselves.
- Thread = session: Start five threads, run five isolated jobs, resume later.
- Web setup, not token archaeology: Local wizard, dashboard, routing, and health checks.
- Remote UI when you need it:
vibe remoteopens your local Web UI through a secure avibe.bot tunnel. - Walk away without losing the loop: Completion notifications, scheduled tasks, and async hooks keep work moving.
Why This Exists
| Problem | Solution |
|---|---|
| Claude Code is amazing but needs a terminal | Slack/Discord/Telegram/WeChat/Lark IS your terminal now |
| Context-switching kills flow | Stay in one app |
| Start on desktop, continue on phone | Resume the exact agent session from the current project in seconds |
| Can't code from phone | Yes you can |
| Multiple agents, multiple setups | One chat app, any agent |
Supported Agents:
- Claude Code — Deep reasoning, complex refactors
- OpenCode — Fast, extensible, community favorite
- Codex — OpenAI's coding model
Meet Vibey
Lives in your Slack, Discord, Telegram, Lark, or WeChat. Reads the room. Picks up where you left off. Asks the right question when it's not sure. Goes quiet when you're heads-down. Ships at 2am because that's when the vibe hits — then leaves a note about what it touched.
Vibe Remote is the wire. Vibey is the colleague on the other end.
Forgets nothing. Holds opinions. Says thanks when you fix its bugs.
Why Vibe Remote over OpenClaw?
| Vibe Remote | OpenClaw | |
|---|---|---|
| Setup | One command + web wizard. Done in 2 minutes. | Gateway + channels + JSON config. Expect an afternoon. |
| Security | Local-first. Socket Mode / WebSocket only. No public endpoints, no inbound ports, minimal attack surface. | Gateway exposes ports. More moving parts, more attack surface. |
| Token cost | Thin transport layer — relays messages between your IM and agent. Zero LLM overhead from the middleware itself. | Every message carries a long system context for maintaining agent persona, IM tooling, and orchestration plumbing. Tokens burn on overhead before your actual task even starts. |
OpenClaw is a personal AI assistant — great for casual chat, but its always-on agent loop makes it expensive for real productivity workloads. Vibe Remote is not an agent framework. It's a remote control — a minimal bridge between your chat app and whatever AI agent you already use. It adds no extra intelligence layer, no extra token spend, and no extra attack surface. Every token goes straight to your task.
Highlights
Setup WizardOne-command install, guided configuration. No manual token juggling. |
DashboardReal-time status, health monitoring, and quick controls. |
Channel RoutingPer-channel agent configuration. Different projects, different agents. |
Instant Notifications
Get notified the moment your AI finishes. Like assigning tasks to employees — delegate, go do something else, and come back when the work is done. No need to babysit.
Thread = Session
Each Slack/Discord/Telegram/WeChat/Lark chat scope is an isolated workspace. Open 5 chats, run 5 parallel tasks. Context stays separate.
Resume Anywhere
Laptop closed. Commute started. Production still needs you.
Vibe Remote lets you reopen real agent sessions from your current working directory across Claude Code, OpenCode, and Codex. Pick the latest session, jump from desktop to mobile, and keep going without re-explaining the task, hunting for an old thread, or losing the thread of thought.
Interactive Prompts
When your agent needs input — file selection, confirmation, options — your chat app pops up buttons or a modal. Full CLI interactivity, zero terminal required.
Scheduled Tasks & Async Hooks
Ask your agent to schedule work for later, repeat a prompt on a cron, or queue a one-shot async follow-up after a long-running job.
- Persist recurring or one-off prompts with
vibe task - Queue a single async send with
vibe hook send - Keep session context and delivery target separate when needed
📡 Your Machine, In Your Pocket — Powered by avibe.bot
Your Vibe Remote runs on your machine. You don't sit in front of it 24/7.
You're on a plane. At a café. Holding someone else's borrowed laptop. The bot just pinged you that a job needs attention — and the control panel is back home.
vibe remote
One command. Your local Web UI becomes reachable from any browser on Earth — through a secure avibe.bot tunnel.
- 🌍 Your own
you-app.avibe.bot— 30-second sign-in, your slug for life - 🔒 Fail-closed at every join — Auth, routing, host checks default to "deny"
- 📱 Mobile-aware UI — Thumb-friendly layout, designed for borrowed screens
- ⏱ 24-hour sessions — Cookie auto-renews mid-session, no sudden logouts
No VPN. No port forwarding. No "wait what's my IP again." No public webhooks pointed at your laptop. Your data plane stays on your machine; avibe.bot is just the control-plane handshake.
Your agents work on your machine. You command them from your pocket.
How It Works
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ You │ Slack │ │ stdio │ Claude Code │
│ (anywhere) │ Discord │ Vibe Remote │ ──────────▶ │ OpenCode │
│ │ Telegram │ (your host) │ ◀────────── │ Codex │
│ │ WeChat │ │ │ │
│ │ Lark │ │ │ │
└──────────────┘ └──────────────┘ └──────────────┘
- You type in Slack/Discord/Telegram/WeChat/Lark: "Add dark mode to the settings page"
- Vibe Remote routes to your configured agent
- Agent reads your codebase, writes code, streams back
- You review in your chat app, iterate in thread
Your data never leaves your machine. Vibe Remote runs locally and connects via Slack Socket Mode, Discord Gateway, Telegram Bot API long polling, WeChat polling, or Lark WebSocket.
Commands
| In chat | What it does |
|---|---|
@Vibe Remote /start |
Open control panel |
/stop |
Kill current session |
| Just type | Talk to your agent |
| Reply in thread | Continue conversation |
Pro tip: Each thread = isolated session. Start multiple threads for parallel tasks.
Detailed references:
Instant Agent Switching
Need a different agent mid-conversation? Just prefix your message:
Plan: Design a new caching layer for the API
That's it. No menus, no commands. Type AgentName: and your message routes to that agent instantly.
Per-Channel Routing
Different projects, different agents:
#frontend → OpenCode (fast iteration)
#backend → Claude Code (complex logic)
#prototypes → Codex (quick experiments)
Configure in web UI → Channels.
CLI
vibe # Start everything
vibe status # Check if running
vibe stop # Stop everything
vibe doctor # Diagnose issues
vibe task # Create and manage scheduled tasks
vibe hook # Queue one-shot async sends
Detailed references:
Prerequisites
You need at least one coding agent installed:
OpenCode (Recommended)
curl -fsSL https://opencode.ai/install | bash
Required: Add to ~/.config/opencode/opencode.json to skip permission prompts:
{
"permission": "allow"
}
Claude Code
npm install -g @anthropic-ai/claude-code
Codex
npm install -g @openai/codex
Security
- Local-first — Vibe Remote runs on your machine
- Socket Mode / WebSocket — No public URLs, no webhooks
- Your tokens — Stored in
~/.vibe_remote/, never uploaded - Your data — Stays on your disk, sent only to your chosen AI provider
Uninstall
vibe stop && uv tool uninstall vibe-remote && rm -rf ~/.vibe_remote
Roadmap
- Slack support
- Discord support
- Telegram support
- WeChat support
- Lark (Feishu) support
- Web UI setup wizard & dashboard
- Per-channel agent routing
- Interactive prompts (buttons, modals)
- File attachments
- SaaS Mode
- Vibe Remote Coding Agent (one agent to rule them all)
- Skills Manager
- Best practices & multi-workspace guide
Docs
- Official Docs — Quickstart, platform guides, agent setup, troubleshooting, and AI-readable install instructions
- CLI Reference — Command-line usage and service lifecycle
- Install via AI Agent — Give this to Claude Code, Codex, or OpenCode for guided setup
- Incus Tenant Scaffold — Create isolated Vibe Remote tenants on one Incus host
- Slack Setup Guide — Detailed setup with screenshots
- Discord Setup Guide — Detailed setup with screenshots
- Telegram Setup Guide — BotFather setup, token validation, and chat discovery
- WeChat Setup Guide — Follow the in-app wizard (
vibe→ choose WeChat) - Lark Setup Guide — Follow the in-app wizard (
vibe→ choose Lark)
Stop context-switching. Start vibe coding.
Install Now · Setup Guide · Report Bug · Follow @alex_metacraft
Built for developers who code from anywhere.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vibe_remote-2.3.1.tar.gz.
File metadata
- Download URL: vibe_remote-2.3.1.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c31861171fa175c4c1e2bc959487d5a1c0efe448ea80cb2bd5eac0d24138e24c
|
|
| MD5 |
3734b3925451b1a4d07b6082160550f2
|
|
| BLAKE2b-256 |
a5fce61987e3e3cbbee75114d7d88b0fbfcf06db8ed7933f955433218f757dd0
|
Provenance
The following attestation bundles were made for vibe_remote-2.3.1.tar.gz:
Publisher:
publish.yml on cyhhao/vibe-remote
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibe_remote-2.3.1.tar.gz -
Subject digest:
c31861171fa175c4c1e2bc959487d5a1c0efe448ea80cb2bd5eac0d24138e24c - Sigstore transparency entry: 1522123804
- Sigstore integration time:
-
Permalink:
cyhhao/vibe-remote@ef107ae58b06ceec02abbfba4229a198c4cf9afa -
Branch / Tag:
refs/tags/v2.3.1 - Owner: https://github.com/cyhhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ef107ae58b06ceec02abbfba4229a198c4cf9afa -
Trigger Event:
push
-
Statement type:
File details
Details for the file vibe_remote-2.3.1-py3-none-any.whl.
File metadata
- Download URL: vibe_remote-2.3.1-py3-none-any.whl
- Upload date:
- Size: 1.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85433b461bd3d546a5951ac1dde963af4e7e9c5978edd5f6ec5979dd3ea425ef
|
|
| MD5 |
202776e78cb9159bbc993022702940c7
|
|
| BLAKE2b-256 |
3f4aa517fb40af5540056bfd6e77e01091070d8713db4df87d424166b9ac07fb
|
Provenance
The following attestation bundles were made for vibe_remote-2.3.1-py3-none-any.whl:
Publisher:
publish.yml on cyhhao/vibe-remote
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
vibe_remote-2.3.1-py3-none-any.whl -
Subject digest:
85433b461bd3d546a5951ac1dde963af4e7e9c5978edd5f6ec5979dd3ea425ef - Sigstore transparency entry: 1522123929
- Sigstore integration time:
-
Permalink:
cyhhao/vibe-remote@ef107ae58b06ceec02abbfba4229a198c4cf9afa -
Branch / Tag:
refs/tags/v2.3.1 - Owner: https://github.com/cyhhao
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@ef107ae58b06ceec02abbfba4229a198c4cf9afa -
Trigger Event:
push
-
Statement type: