What is OpenACP? The Universal Remote for AI Coding Agents
Imagine you have a home theater system with a TV, a soundbar, a streaming box, a gaming console, and a Blu-ray player. Each one came with its own remote control. Your coffee table is cluttered with five remotes, and every time you want to switch activities you have to remember which remote does what. Now imagine someone hands you a single universal remote that controls every device, from any room in the house, and it is completely free.
That is what OpenACP does for AI coding agents. In a world where developers juggle Claude Code, Gemini CLI, Codex CLI, GitHub Copilot, Cursor, Cline, Goose, Amp, and more than twenty other AI-powered coding tools, OpenACP is the one interface that connects them all to the messaging platforms you already use: Telegram, Discord, and Slack. It is free, open-source under the MIT license, and entirely self-hosted on your own machine.
The Problem: Terminal Overload and Context Fragmentation
Modern software development in 2026 looks dramatically different from even two years ago. AI coding agents have gone from novelty to necessity. Most professional developers now use at least one AI agent as part of their daily workflow, and many use two or three depending on the task. Need to scaffold a new project? Claude Code is fantastic at understanding complex requirements. Debugging a gnarly production issue? Gemini CLI's deep context window can digest entire stack traces. Working on a quick refactor? Codex CLI from OpenAI is fast and efficient.
But here is the problem: every single one of these agents lives in its own terminal session. Each session is isolated. There is no unified interface for managing them. If you step away from your computer, your agents are stranded. If you want to check on a running task from your phone, you are out of luck. If a colleague wants to see what your agent is doing, they need to physically look at your screen or you need to share your terminal.
This problem gets worse as teams grow. In a typical engineering team of five to ten developers, the collective number of terminal sessions running AI agents at any given time can be in the dozens. Each agent produces its own output, asks its own permission questions, and runs in its own silo. There is no visibility, no centralized control, and no way to interact with these agents from anywhere other than the terminal where they were started.
Developers have tried to work around this with tmux, screen sessions, SSH tunnels, and various hacks. But these are all workarounds, not solutions. What the developer ecosystem needed was a proper protocol-level solution -- something that could bridge any AI agent to any messaging platform in a standardized, extensible way. That is exactly what OpenACP provides.
What is OpenACP?
OpenACP stands for Open Agent Client Protocol. At its core, it is a bridge -- a piece of software that sits between your AI coding agents and your messaging platforms. It translates messages from Telegram, Discord, or Slack into commands that AI agents understand, and then streams the agent's responses back to your chat in real time.
But calling it "just a bridge" undersells what it does. OpenACP is an entire runtime environment for managing AI coding agents remotely. It handles session management, permission control, voice input, file viewing, usage tracking, tunneling, and much more. Think of it as an operating system for your AI coding workflow, accessible from anywhere you have an internet connection.
Here are the key facts about OpenACP:
- Free and open-source under the MIT license. No subscriptions, no usage fees, no hidden costs.
- Self-hosted -- runs entirely on your machine. Your code never leaves your environment.
- Supports 28+ AI coding agents including Claude Code, Gemini CLI, Codex CLI, GitHub Copilot, Cursor, Cline, Goose, Amp, Auggie CLI, Junie, Kilo, and Qwen Code.
- Connects to Telegram, Discord, and Slack with platform-native features for each.
- Real-time streaming -- see agent responses appear character by character, just like in the terminal.
- Permission control -- approve or deny agent actions directly from chat buttons.
- Voice support -- send voice messages that get transcribed and sent to your agent.
- Install in seconds with a single npm command.
How OpenACP Works: The Architecture
Understanding how OpenACP works requires understanding its three-layer architecture. Each layer has a specific responsibility, and together they create a seamless experience that feels like the AI agent is natively integrated into your messaging platform.
Layer 1: The Messaging Platform Adapter
The first layer handles communication with your chosen messaging platform. OpenACP uses battle-tested libraries for each platform: grammy for Telegram, discord.js for Discord, and @slack/bolt for Slack. This layer is responsible for receiving incoming messages, parsing commands, rendering responses with platform-appropriate formatting, and managing platform-specific features like Telegram forum topics, Discord threads, and Slack channels.
Layer 2: The ACP Runtime
The middle layer is the heart of OpenACP. The runtime manages sessions, routes messages to the correct agent, handles permission requests, tracks usage and budgets, manages configuration, and exposes a REST API on port 21420 for programmatic access. It is built with Hono for the API server, Pino for structured logging, and Zod for runtime type validation. This layer is platform-agnostic -- it does not care whether a message came from Telegram or Slack. It speaks the Agent Client Protocol.
Layer 3: The Agent Process Manager
The bottom layer manages the actual AI agent processes. When you start a session, OpenACP spawns the appropriate agent (Claude Code, Gemini CLI, Codex CLI, or any other supported agent) as a subprocess. It communicates with the agent through the ACP protocol, streaming output in real time and relaying permission requests back up through the layers to your chat interface.
Here is a simplified flow of what happens when you send a message:
You (Telegram/Discord/Slack)
|
v
[Platform Adapter] -- receives message, parses intent
|
v
[ACP Runtime] -- routes to active session, validates permissions
|
v
[Agent Process] -- Claude Code / Gemini / Codex / etc.
|
v
[Streaming Response] -- flows back up through each layer
|
v
You see the response in real time
The entire round trip happens in milliseconds for the initial acknowledgment, and then the response streams continuously as the agent generates output. This streaming behavior is critical because AI agents can produce long, detailed responses. Without streaming, you would be staring at a blank screen for thirty seconds or more before seeing anything. With OpenACP, you see the response building in real time, just like watching an AI type in a terminal.
The ACP Protocol: An Open Standard for AI Agents
The Agent Client Protocol (ACP) is the open standard that makes OpenACP possible. If you are familiar with the Language Server Protocol (LSP) that powers code editors like VS Code, you already understand the concept. LSP created a universal standard for code intelligence -- any editor that speaks LSP can work with any language server. Before LSP, every editor had to build custom integrations for every programming language. LSP solved that M-times-N problem by creating a standardized protocol.
ACP does the same thing for AI coding agents. Before ACP, if you wanted to connect Telegram to Claude Code, you had to build a custom integration for that specific combination. Want to add Gemini CLI support? Build another custom integration. Want to add Discord support? Multiply all your work by two. This is the classic M-times-N problem: M platforms times N agents equals an explosive number of custom integrations.
ACP collapses this into M-plus-N. Each platform needs one adapter. Each agent needs one ACP implementation. And they all work together automatically. This is why OpenACP can support 28+ agents on three platforms without the codebase becoming unmanageable. The protocol handles the complexity.
The ACP protocol defines standardized message formats for:
- Session management -- creating, resuming, and transferring sessions.
- Message exchange -- sending prompts and receiving streamed responses.
- Permission requests -- the agent asking for approval to perform actions like file writes, command execution, or network requests.
- Status updates -- the agent reporting its current state (thinking, executing, waiting).
- File operations -- viewing, creating, and modifying files.
- Usage tracking -- reporting token usage, costs, and budget adherence.
Supported Platforms: Telegram, Discord, and Slack
OpenACP does not just connect to messaging platforms -- it deeply integrates with each one, using platform-native features to create the best possible experience. Here is what each platform offers:
Telegram
Telegram is arguably where OpenACP shines brightest. The integration uses Telegram's forum topics feature to create separate threads for each coding session. This means you can have multiple agents working on different tasks, each in its own organized topic. Responses stream in real time, and permission requests appear as inline buttons that you can tap to approve or deny. Perhaps the most magical feature is voice message support: you can literally speak your coding instructions, and OpenACP uses Groq's speech-to-text engine to transcribe your voice and send it to the agent. This is powered by Groq STT for transcription and Edge TTS for any text-to-speech responses, both of which are completely free.
Telegram also supports auto-naming of sessions based on the conversation content, so your forum topics get descriptive titles like "Refactoring auth module" or "Adding payment webhook" instead of generic timestamps. For mobile developers, this is a game-changer. You can manage your AI coding agents from your phone, on the bus, at lunch, or from your couch. The full power of Claude Code or any other agent is literally in your pocket.
Discord
Discord integration uses thread-based sessions, which map naturally to Discord's threading model. Each coding session gets its own thread, keeping your channels clean. Slash commands provide quick access to common operations, and button interactions handle permission requests. If your team already uses Discord for communication, OpenACP slides right in alongside your existing workflow. Your developers can start AI coding sessions right in the channels where they are already discussing the code.
Slack
Slack integration uses Socket Mode for reliable, firewall-friendly connections. Sessions are organized by channel, with thread organization keeping conversations tidy. If your company uses Slack as its primary communication tool, OpenACP means your developers can interact with AI agents without leaving the platform they already have open all day. No context switching, no separate apps, no additional tools to learn.
The Self-Hosted Philosophy
One of OpenACP's most important design decisions is that it is entirely self-hosted. In an era where most developer tools are SaaS products that require sending your code to someone else's server, OpenACP takes the opposite approach. Everything runs on your machine. Your code stays on your machine. Your conversations stay on your machine. Your API keys stay on your machine.
This is not just a privacy feature -- it is a security feature. Many development teams work on proprietary code that cannot be sent to third-party services due to legal, compliance, or contractual restrictions. With OpenACP, there is nothing to worry about. The entire system runs locally. The only network traffic is between your machine and the messaging platform (Telegram, Discord, or Slack), and the content of that traffic is your chat messages, not your source code.
OpenACP also supports tunneling for remote access. If you want to access your local OpenACP instance from outside your network, you can use Cloudflare Tunnels, ngrok, bore, or Tailscale. This means you can run OpenACP on your powerful development machine at the office and control it from your phone at home, all without exposing any ports or compromising security.
Configuration is stored in a simple JSON file at ~/.openacp/config.json, and environment variables prefixed with OPENACP_ can override any setting. There is no complex database, no cloud dashboard, no account to create. It is refreshingly simple for such a powerful tool.
Who Is OpenACP For?
OpenACP serves several distinct audiences, each with different needs but all sharing the desire to interact with AI coding agents more flexibly.
Solo Developers Who Want Mobility
If you are a solo developer or freelancer, OpenACP frees you from your desk. Start a coding session on your desktop, then continue managing it from your phone while you are away. Send voice instructions to your AI agent while walking the dog. Check on a long-running refactoring task from the coffee shop. OpenACP turns your AI coding agent into a truly mobile assistant.
Teams Who Want Visibility
For development teams, OpenACP provides something that terminal-based agents completely lack: visibility. When an AI agent is working through a shared Telegram group or Discord channel, the entire team can see what it is doing. Code reviews become more collaborative. Knowledge sharing happens naturally. Junior developers learn by watching how seniors interact with AI agents. And when something goes wrong, everyone can see the full context.
Agent Explorers Who Want Flexibility
The AI coding agent landscape is evolving rapidly. New agents launch every month, each with different strengths. With OpenACP, you are not locked into a single agent. You can switch between Claude Code, Gemini CLI, and Codex CLI depending on the task. You can try new agents as they launch without changing your workflow. The ACP protocol ensures that every agent works the same way through your messaging platform, regardless of who built it.
Security-Conscious Organizations
For organizations with strict security requirements -- financial services, healthcare, defense, or any company with sensitive IP -- OpenACP's self-hosted architecture is a fundamental requirement, not a nice-to-have. No code leaves the building. No conversations are stored on third-party servers. No API keys are shared with intermediaries. OpenACP gives these organizations the productivity benefits of AI coding agents without the security trade-offs.
Getting Started with OpenACP
Getting started with OpenACP takes less than five minutes. The only prerequisite is Node.js version 20 or higher. Here is the quick start:
npm install -g @openacp/cli
openacp
That is it. Two commands. The second command launches an interactive setup wizard that guides you through every step:
- Choose your platform -- Telegram, Discord, or Slack.
- Connect your bot -- follow the guided instructions to create a bot on your chosen platform and enter its token.
- Pick your workspace -- select the directory where your AI agent will operate.
- Select your agent -- choose from 28+ supported AI coding agents.
- Choose your run mode -- interactive or daemon mode.
The wizard handles all the complexity behind the scenes. It validates your inputs, checks for prerequisites, and creates your configuration file automatically. Within minutes, you will be sending messages from your phone and watching an AI agent write code in real time.
For a detailed walkthrough of every step, check out our complete setup guide. If you are specifically interested in the Telegram integration, our Telegram deep dive covers every feature in detail.
The Bottom Line
OpenACP is what happens when you take the Unix philosophy -- "do one thing and do it well" -- and apply it to the AI coding agent ecosystem. It does not try to be an AI agent itself. It does not try to replace your editor. It does not try to host your code. It does exactly one thing: it connects your AI coding agents to your messaging platforms, and it does it exceptionally well.
In a market increasingly dominated by proprietary, subscription-based developer tools, OpenACP stands out as free, open-source, and self-hosted. It is built by developers, for developers, and its MIT license means it will remain free forever. The ACP protocol ensures it will continue to support new agents as they launch, without requiring any changes to your setup.
Whether you are a solo developer who wants to code from your phone, a team leader who wants visibility into AI-assisted development, or a security-conscious organization that needs everything to stay on-premises, OpenACP has you covered. The future of AI-assisted development is not about which agent you use -- it is about how flexibly you can use all of them. And that is exactly what OpenACP delivers.
Try OpenACP Today
Install in seconds. Connect your favorite AI coding agent to Telegram, Discord, or Slack.
npm install -g @openacp/cli && openacp