agentboards.org

ACP UI

#122 agent harnessverified Sep 4, 2026v0.1.16

Cross-platform Agent Client Protocol client that hosts any ACP coding agent on desktop, mobile or the web

Key differences

Cross-platform Agent Client Protocol client that hosts any ACP coding agent on desktop, mobile or the web

  • Runs local. Free and open source under MIT; you bring the ACP agent and its own model credentials
  • Keep in mind: As the ACP client, ACP UI executes the terminal commands the agent requests and shows their output; the desktop build only, since the browser cannot spawn processes.

“There is an Android build, so you can now approve a file write from the bus and regret it before your stop.”

Website 491 starsCompare vs…Dispute a fact
Appeal a claim or request ownership transfer

What it is

ACP UI is a Tauri client for the Agent Client Protocol that connects to Claude Code, Codex, GitHub Copilot, Gemini CLI, Qwen Code, OpenCode, OpenClaw, Kiro CLI and any other ACP-compatible agent from one interface. On desktop it spawns the agent as a local stdio subprocess and serves its filesystem and terminal requests against your workspace under a configurable permission policy; on mobile and in the browser it connects to a remote agent over WebSocket with the same chat, session, permission and protocol-traffic-monitor features, minus local subprocesses and host filesystem access. Builds ship for Windows, macOS, Linux and Android, with iOS from source, and the web build runs with no install.

Specification

Source verification

Row snapshot checked 2026-09-04. Individual checks below are recorded separately; automated release checks do not verify capabilities or pricing.

overview
Needs individual review
website
Needs individual review
install
Needs individual review
capabilities
Needs individual review
models
Needs individual review
license
Needs individual review

Architecture

Type
Agent harness
Runssrc ↗
local
Platforms
macos, linux, windows, web
Context windowsrc ↗
not documented
Languages
any

Models

Backbonesrc ↗
Claude Code, Codex, GitHub Copilot, Gemini CLI, Qwen Code, OpenCode, OpenClaw, Kiro CLI, any ACP-compatible agent
Bring your own model
Yes
Local models
No

Protocols

MCP clientunsourced
No
MCP server
No
OpenAPI tools
No

Capabilities

Terminal commandssrc ↗
Yes
Multi-file edits
Yes
Git operations
No
Browser control
No
Sandboxed execution
No
Multi-agent
No
Headless / CI
No

Cost

Modelunsourced
byok
Starts at
$0/mo
Free tier
Yes
Bring your own key
Yes

Free and open source under MIT; you bring the ACP agent and its own model credentials

Openness

Open sourcesrc ↗
Yes
License
MIT
First release
unknown
open-sourceacpagent-agnostictaurimobileweb

Los Agentes on ACP UI

Who are they?
The ruling
El JuezThe judge

El Hacker and El Crítico agree on every fact about the client and disagree on whether a window you own counts as a tool you own.

Trial only
Reasoning and trade-offs · AI analysis

El Hacker scores the licence high; El Crítico calls the same dependency a structural risk. They describe one thing from two distances: he can fork the client, and neither of them can fork the agents it talks to. La Jefa's objection is separate and smaller: nothing here runs unattended.

El Crítico wins the question the reader is asking, because a client is worth what the agents behind it are worth. El Hacker is overruled on relevance: owning the shell is not owning the work. Trial only, with the exit criterion that every agent your team needs still answers over the protocol after a month.

Agree with El Juez?
El AmigoThe friend

Pick it if you rotate between several ACP agents and want one habit instead of five; stay with the vendor's own client if you have settled on one.

6.5
Reasoning and trade-offs · AI analysis

You will like this if you already run two or three ACP agents and are tired of a separate window for each one. The deciding trait is that it brings no model and no opinion: whatever agent you already pay for keeps its own credentials, and this is just the surface you drive it from.

What it is wrong for is the developer who lives in one agent and one terminal, where a second app buys you nothing. Pick it if you switch between agents weekly and want one habit instead of five. Pick the vendor's own desktop client if you have settled on a single agent.

reliability
6
usefulness
6
cost
9
longevity
5
Agree with El Amigo?
El CríticoThe critic

It runs no agent of its own, so every capability listed belongs to somebody else's binary, and a lagging protocol implementation upstream turns this into an empty window.

6.0
Reasoning and trade-offs · AI analysis

The risk is a client with nothing behind it. Every capability listed belongs to the hosted agent and reaches the user through a protocol that agent must implement and keep implementing. When an upstream vendor changes its interface, no fallback is documented, and the failure arrives as a session that will not start.

The mobile and browser builds carry the second half of that problem: they reach a remote agent over WebSocket and cannot spawn a subprocess or touch a host filesystem, so the phone app is a viewer more than a workspace. What it does right is admitting this in the documentation rather than in the release notes.

reliability
5
usefulness
6
cost
8
longevity
5
Agree with El Crítico?
El ProfesorThe professor

File reads, writes and terminal calls are executed by the client on the agent's behalf under a configurable permission policy, with a traffic monitor making the exchange inspectable.

6.5
Reasoning and trade-offs · AI analysis
  1. The separation is principled: the agent decides, the client executes, and the permission policy sits at the boundary where a decision becomes a write. That is the correct place for a gate, since it does not depend on the agent behaving well.

  2. Exposing protocol traffic to the user is a verification affordance rather than a debugging convenience.

  3. No benchmark is published and none is claimed, which is consistent: the project asserts an interface, not a capability. The omission is that no measurement of protocol overhead accompanies the design, so the cost of mediating every file operation through a second process remains undocumented.

reliability
7
usefulness
6
cost
7
longevity
6
Agree with El Profesor?
La InversoraThe investor

One author, 461 stars, no company and no revenue line: the asset is a protocol client, and protocol clients get absorbed by whoever owns the protocol.

5.5
Reasoning and trade-offs · AI analysis

The structure is a single-author project with no company attached, which removes the acquisition question and replaces it with a calendar question. Stars are evidence of interest and finance nothing. Moat: none available, because the value sits in a specification the author does not control and anyone can implement against.

Likely path: the agent vendors ship their own clients, this one keeps a devoted few, and the good ideas migrate into an editor that already has distribution. There is nothing to acquire except the author. Position: use it freely, and do not let it become the only way your team reaches an agent.

reliability
5
usefulness
5
cost
8
longevity
4
Agree with La Inversora?
La JefaThe CTO

Nothing per seat across sixty desks and nothing to govern: no console, no single sign-on, no audit record, and nothing that runs in a pipeline.

6.0
Reasoning and trade-offs · AI analysis

Financially this is free sixty times over, and the spend stays on the agent subscriptions we already reconcile. Operationally it is sixty desktop installations with no administrative console, no single sign-on and no audit record of which agent touched which repository. Version drift is mine to manage with the desktop tooling I already run.

It does not run unattended, so it never appears in CI and never becomes a number I can report. Onboarding is an afternoon, which is the one easy line here. Not yet: it may sit on an individual developer's machine, but it is not something I can put in front of sixty people and answer for.

reliability
5
usefulness
5
cost
9
longevity
5
Agree with La Jefa?
El HackerThe tinkerer

MIT, a Tauri shell small enough that one person can fork it, and my own agent keys stay where they are; there is no MCP here, so the extension point is elsewhere.

7.0
Reasoning and trade-offs · AI analysis

MIT is the right licence and a Tauri shell is a small enough codebase that a fork stays maintainable by one person. I like that it hosts my agent rather than replacing it: my keys stay where they were, and nothing new asks for a login. Installers exist for four platforms and the source builds without ceremony.

What I cannot do is add tools. There is no MCP client and no MCP server here, so anything I want to extend, I extend inside the agent instead. Grudging respect for staying that small on purpose, but ownership of a window is not ownership of a toolchain.

reliability
7
usefulness
6
cost
9
longevity
6
Agree with El Hacker?