RuntimesProvider CLI

ACP-Compatible CLIs

Connect and run third-party agent CLIs through the Agent Client Protocol (ACP) standard.

Mopheus natively supports communicating with third-party agent CLIs through the Agent Client Protocol (ACP). ACP is an open, bidirectional JSON-RPC 2.0 protocol standard that decouples workspace orchestration from specific agent runtimes.

Through ACP, Mopheus standardizes prompt dispatching, tool-call tracking, execution results, workspace state synchronization, and next-turn interactive steering across diverse agent tools.


Protocol Capabilities Matrix

DimensionSpecification
ProtocolACP (JSON-RPC 2.0 via stdin/stdout)
Session lifecycleSupports session/new, session/prompt, session/cancel
Interaction deliveryNext-turn delivery
Workspace stateAutomatic synchronization of workspace roots and context
Unattended permissionsConfigurable permission auto-approval (e.g. bypassPermissions)
Filesystem sandboxSupported on Linux (same as native providers)

Verified and Supported ACP CLIs

1. Hermes (Built-in Default)

Hermes is the default built-in ACP provider in Mopheus.

FieldValue
Binaryhermes
Path overrideMOPHEUS_HERMES_PATH
Verifyhermes --version
Task skill path.hermes/skills/

Installation: Install hermes on the daemon host and ensure it is in $PATH; the daemon discovers it automatically upon start.

2. Kiro CLI

Kiro CLI provides full ACP support. Mopheus includes a dedicated workspace state adapter (WorkspaceStateCapable) that injects workspace boundaries upon session initialization.

  • Command: kiro-cli
  • Environment variable: MOPHEUS_KIRO_PATH
  • Skill path: .kiro/skills/

3. Qoder CLI

Qoder CLI supports ACP mode via the --acp argument and integrates with Mopheus unattended session policies.

  • Command: qodercli
  • Typical ACP launch args: --acp-args=--acp,--permission-mode,bypass_permissions
  • Workspace isolation: Uses .qoder/ as home and workdir subdirectories.

4. OpenCode / MimoCode (ACP Modes)

In addition to their native line protocols, Mopheus includes built-in registrations for their ACP variants:

  • OpenCode ACP: Registered as opencode-acp, executing opencode acp.
  • MimoCode ACP: Registered as mimocode-acp, executing mimocode acp.

5. Qwen Code

Qwen Code is available as the built-in qwen ACP provider.

  • Command: qwen
  • Path override: MOPHEUS_QWENCODE_PATH
  • ACP mode: Started with --acp

ACP Token Usage Reporting

ACP does not provide one uniform token-usage payload across CLI implementations. Usage availability and field meanings depend on the CLI and its version. Mopheus records usage data emitted by the active CLI; it cannot infer actual token usage when a CLI does not report it.

CLIObserved ACP usage reporting
Qwen CodeEmits usage metadata during execution. In the verified run, Mopheus recorded in-flight usage and the final total matched the runtime usage journal. Cached input is reported separately from uncached input; thought tokens are included in output tokens.
OpenCodeIn the tested environment, usable token usage was available at completion, but not as in-flight usage updates. Availability may vary by CLI version.
Qoder CLIWith Qoder CLI 1.1.65 and the tested zhipu/glm5.3-cp model, the ACP session completed but returned zero usage values and no usable streaming usage metadata. Other versions, models, or configurations may behave differently.

Registering Custom ACP CLIs

Any third-party CLI implementing the ACP specification can be registered as an available provider with one CLI command:

mopheus provider register my-agent acp \
  --cmd-name my-agent-cli \
  --env-var MY_AGENT_PATH \
  --acp-args=--acp \
  --unattended-mode bypassPermissions

See Custom Provider CLI for unattended permission modes, aliases, and profile persistence details.