Bring Your Own Agent will be available soon.
macrod, a small daemon that runs on your computer and waits for agent sessions. When you start a session or @mention your custom agent, macrod launches your configured harness, sends it the prompt, and bridges its ACP connection to Macro.
Before you start
You need:- A machine that can keep an agent harness and
macrodrunning - An ACP-compatible harness installed and configured on that machine
- A public HTTPS endpoint that forwards webhooks (in this demo, to port
8790)
1
Create a Macro agent
Open Settings → Bots → Create bot. Enable Make this bot a coding agent, choose the channels it can join, and create it.Copy the agent token when it appears. Macro shows it only once, but you can create a new one later if you lose it.
2
Prepare an agent harness
Install your preferred ACP-compatible agent and identify the command that starts its ACP server. Verify that command before configuring
macrod.These harnesses provide ACP entrypoints:- Claude Code:
npx -y @agentclientprotocol/claude-agent-acp - Codex:
npx -y @agentclientprotocol/codex-acp - Hermes:
hermes-acp(runhermes-acp --checkfirst) - OpenCode:
opencode acp - OpenClaw:
openclaw acp
claude and codex commands do not expose ACP servers directly.3
Download macrod
Open the latest Macro release and download the
macrod archive for your OS and architecture. Currently, we officially support macOS and Linux.4
Start the HTTPS tunnel
macrod listens on port 8790 and receives requests at POST /macro-events. Macro must be able to reach that endpoint over public HTTPS.For the Cloudflare quick tunnel described above, run:A quick-tunnel URL changes whenever
cloudflared restarts. Create a named Cloudflare tunnel for a stable endpoint.5
Configure macrod
Create Change
macro.toml beside the macrod binary:you@example.com in owner_user_id to the email address you use to sign in to Macro. Replace mbot_... with the token from the first step. Set command and args to the ACP launch command from the second step.6
Start the agent
Keep the HTTPS tunnel running, then start When
macrod from a shell where your harness command is available:macrod reports that it is listening for agent triggers, @mention the agent in one of its Macro channels.Keep it connected
Bothmacrod and your HTTPS tunnel must stay running for you to start self-hosted agent sessions from Macro.