VibeAround Documentation
VibeAround lets you reach your local AI coding agents (Claude Code, Codex, Gemini CLI, and more) from the surfaces you already use: IM channels such as Telegram, Slack, and Feishu, a browser dashboard with a full term...
VibeAround lets you reach your local AI coding agents (Claude Code, Codex, Gemini CLI, and more) from the surfaces you already use: IM channels such as Telegram, Slack, and Feishu, a browser dashboard with a full terminal, a desktop control app, and a TUI/CLI. One local runtime, one workspace model, many doors into it.
New here? Read in this order: What is VibeAround → Install → Quick tour → Concepts. Everything else is lookup material.
中文文档:docs/zh/。
Sections
| Directory | What it holds | Read it when |
|---|---|---|
| product/ | What VibeAround is and what it supports | You are evaluating it |
| guides/ | Task-oriented how-tos | You want to get something done |
| architecture/ | Concepts and how the system works | You want to understand it |
| reference/ | Lookup tables: settings, CLI, API surfaces, limits | You need to check a detail |
| internals/ | Flow walkthroughs and per-module internals | You are debugging or changing the code |
Product
| Page | What it answers |
|---|---|
| What is VibeAround | What problem does it solve, and for whom? |
| Supported matrix | Which agents, channels, and model providers are supported? |
Use cases
Scenario-oriented pages (also the website's landing content): remote coding · Codex on mobile · Codex remote · Claude remote · Gemini remote · OpenCode remote · Claude Code switcher
Guides
| Page | What you get done |
|---|---|
| Install and onboarding | Install the desktop app or npm CLI, finish first-run setup |
| Download | Current desktop packages, CLI release, and short download routes |
| Quick tour | First chat, first IM channel, first handover — in 15 minutes |
| CLI quick start | Install the npm CLI, start the daemon, and run the first terminal workflow |
| Desktop app | Manage profiles, launches, and services from the GUI |
| Web dashboard | Web terminal, web chat, live preview |
| IM usage | Drive an agent from chat; full slash-command reference |
| Connect channels | Configure Telegram, Slack, Feishu, and the others |
| Model profiles | Provider credentials and model routing |
| Host web search | Configure host-side web search fallback and provider search replacement |
| Agent launch | Launch agent CLIs in your own terminal |
| Tunnels and remote access | Reach the dashboard from outside localhost |
| Build a channel plugin | A plugin for a new IM platform with the SDK |
| Build from source | Compile the workspace and package the apps |
| Troubleshooting and FAQ | Fix common problems |
Architecture
| Page | What it answers |
|---|---|
| Concepts | What are workspaces, threads, routes, sessions, agents, and profiles? |
| Overview | The layer diagram, every communication edge, and the module map |
| Session lifecycle | When do threads open and close? What survives a restart? |
| Channel plugin system | How do IM integrations work under the hood? |
| Local API and bridge | How does the model API bridge translate between providers? |
| Security model | What is trusted, what is paired, what is tunneled? |
Reference
| Page | Contents |
|---|---|
| Configuration | settings.json, environment variables, data directory |
| CLI | Every va command |
| API surfaces | MCP tools, local API routes, WebSocket endpoints, preview URLs |
| Timers and limits | Every timeout, TTL, interval, and size limit — the single authoritative table |
| Provider endpoints | Per-provider plans, regions, base URLs, models, and credential semantics |
Internals
For debugging and changing the code. See the internals index for the full map. How internals content is split:
- architecture/ answers why it is designed this way — the model, at reader level.
- internals/flows/ follow one request through time — hop by hop with code anchors.
- internals/modules/ describe one component in space — responsibility, key types, invariants, known debt.
If you want to trace behavior, start from the flow; if you want to modify a component, start from the module; the flow and module pages cross-link where they meet. Cross-cutting subsystems get dedicated deep-dives — currently Launch (env injection, per-OS handling, producers).
Conventions used in these docs
~/.vibearound/is the data directory on every platform (override withVIBEAROUND_DATA_DIR).- The local server listens on port
12358by default. - Shell examples use
va, the CLI installed bynpm i @vibearound/cli. The longer aliasvibearoundworks everywherevadoes. - Every page ends with Source anchors — the code files the page derives from — and a Last verified version. If you change an anchored file, update the page and bump the version.
- Pages chain with prev/next links following the recommended reading order.