Skip to main content
ACP lets external tools interact with the BRICKS Project Desktop agent over the Agent Client Protocol. You can use tools like acpx and OpenClaw to send prompts, manage sessions, and orchestrate agents — all powered by the same agent, settings, and MCP tools as the desktop GUI.

How it works

The desktop app runs a Unix socket server inside the Electron main process. The bridge CLI (bricks desktop-acp-bridge) pipes ACP JSON-RPC messages between stdin/stdout and the socket, so any ACP client can connect.
ACP client (acpx, OpenClaw, etc.)
  └─ spawns ─▶ bricks desktop-acp-bridge
                  └─ connects ─▶ Unix socket (~/.bricks-project-desktop/acp.sock)
                                    └─ BRICKS Project Desktop (shared agent)
Because the socket server runs inside the app, ACP sessions share everything with the GUI:
  • Sessions — conversations created via ACP appear in the sidebar and vice versa
  • Settings — API keys, default model, and provider config come from the app
  • MCP tools.mcp.json tools configured in the project are available
  • Skills — global and project skills are loaded

Enable ACP

ACP is disabled by default. To enable it:
  1. Open Settings (gear icon in the sidebar)
  2. Go to Agent
  3. Toggle Enable ACP
The socket server starts immediately — no app restart needed. A green ACP indicator appears in the sidebar footer when ACP is active. Click it to open Settings.
Bash commands run without approval in ACP mode (headless). Use acpx --deny-all to override this if needed.

Prerequisites

  • BRICKS Project Desktop is running with ACP enabled
  • BRICKS CLI is installed (bun add -g @anthropic-company/bricks-cli)
  • The working directory is a BRICKS project (contains application.json)

Verify the connection

Test that the bridge can reach the desktop app:
echo '{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"protocolVersion":1,"clientCapabilities":{},"clientInfo":{"name":"test"}}}' \
  | bricks desktop-acp-bridge
If you see Cannot connect to BRICKS Project Desktop, make sure the app is running and ACP is enabled in Settings.

Use with acpx

acpx is a headless CLI client for the Agent Client Protocol. It manages sessions, queues prompts, and streams agent output.

Install acpx

npm install -g acpx

Basic usage

# Create a session in the current project
acpx --agent 'bricks desktop-acp-bridge' sessions new

# Send a prompt
acpx --agent 'bricks desktop-acp-bridge' "list all files and summarize the project"

# Auto-approve all tool calls
acpx --agent 'bricks desktop-acp-bridge' --approve-all "fix the linting errors"

# Quiet mode (final output only)
acpx --agent 'bricks desktop-acp-bridge' --format quiet "what does this project do?"

# JSON output for automation
acpx --agent 'bricks desktop-acp-bridge' --format json "run the tests"

Persistent config

Add the agent to ~/.acpx/config.json to avoid repeating --agent:
{
  "agents": {
    "bricks": {
      "command": "bricks desktop-acp-bridge"
    }
  }
}
Then use the short form:
acpx bricks sessions new
acpx bricks "refactor the auth module"
acpx bricks sessions list
acpx bricks sessions close

Use with OpenClaw

OpenClaw supports ACP via acpx. With the bricks agent configured in ~/.acpx/config.json (see above), OpenClaw can connect to the desktop app’s agent for multi-agent orchestration.

Copy project path

Use Actions (top-right dropdown) > Copy Project Path to quickly copy the current project’s path for use with external tools.

Data

ItemLocation
Socket file~/.bricks-project-desktop/acp.sock
Set the BRICKS_PROJECT_DESKTOP_DATA_DIR environment variable to change the socket location along with all other app data.