littleguys for ACP agents
Every ACP agent,
as a contact.
By herval · Published · Updated
littleguys is a free, open-source Mac app that speaks the Agent Client Protocol (ACP), the protocol coding agents use to talk to editors and other apps. Pick an agent from the ACP registry and it becomes a contact with its own chats, the way you'd talk to a friend on WhatsApp: you reply, approve its commands and start new threads from a small window instead of a terminal tab, and the little guy in your menu bar tells you when one needs you. It uses the login you already have for each agent.
Is there a Mac app for chatting with Codex, Gemini CLI and other ACP agents?
Yes: littleguys is a free, open-source ACP client for Mac. Pick Codex, Gemini CLI, GitHub Copilot CLI or another agent from the ACP registry, choose a folder, and it becomes a contact you chat with, approve and schedule, next to your OpenClaw, Hermes and Claude Code agents. Which app is right depends on where you want the agent: if you want it inside your code, with a file tree and diffs, use an editor that speaks ACP, such as Zed or a JetBrains IDE. littleguys is the chat window, not the editor.
Agents you can add
- In one click, with Node.js: Codex, Gemini CLI, GitHub Copilot CLI, Claude Code, Cline, Qwen Code, Kilo, Factory Droid, Auggie, Grok Build, and the rest of the registry's agents published to npm or PyPI. littleguys downloads the agent the first time it starts it.
- Once it's installed on this Mac: Goose, OpenCode, Cursor, Amp, Junie, Mistral Vibe, Devin, Kimi CLI and the other agents that ship as a download. littleguys lists one as soon as its command is on your PATH; it doesn't download these for you.
- Anything else that speaks ACP: type the command that starts it in ACP mode, such as
hermes acp, or the address of an ACP server (ws://orwss://, with a token if it needs one), on this Mac or another machine, such asgoose serve.
What you get
- One contact per agent, each working in the folder you pick, with as many threads as you like. Replies stream in, with the agent's tool calls as they happen.
- Permission requests become cards: allow once, always allow (when the agent offers it), or deny. The menu bar shows when one is waiting.
- The agent's slash commands are in the composer, and you can attach images and files to agents that take them.
- Past sessions: for agents that can list and reload their sessions, older ones show up as threads you can pick up again.
- Routines: a prompt on a schedule, with run-now and history. Results land in a thread.
- Next to everything else: the same window holds your OpenClaw and Hermes agents and every Claude Code session on this Mac.
Set it up
- Have the agent signed in on this Mac, for example by running
geminionce, orcodex login. If it isn't, littleguys says which command to run. - Install Node.js (
brew install node) for agents that come from npm, which littleguys starts withnpx. A few come from PyPI and need uv (brew install uv). - Install littleguys with Homebrew or the .dmg (below), 17 MB.
- Add a bot → Agents (ACP), pick the agent from the registry, choose the folder it works in, and click Add.
What it doesn't do
- It doesn't watch an agent that's already running in your terminal. littleguys starts its own process for each ACP agent and talks to it over stdio. Claude Code is the exception: littleguys also follows its terminal sessions.
- It isn't an editor: no file tree, diff review or terminal. Agents read and change files with their own tools, in the folder you pick. Editors such as Zed and JetBrains IDEs are ACP clients too, if you want the agent inside your code.
- Routines run only while littleguys is open. A run that comes due while it's closed is skipped, not caught up later.
- It's a Mac app only, for macOS 13 or later. The comparison shows the alternatives.
or with Homebrew:
brew install herval/tap/littleguys
Free and open source · macOS 13+ · Apple silicon and Intel