AMQ Remote
SkillCommunicationLets your agent be controlled remotely from Buzz on your phone or desktop.
Available today. Use it from your connected AI after setup.
No other account needed.
Add ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
Then ask your AI: use the AMQ Remote skill
About this skill
Let the owner reach this running agent from Buzz, on the phone or in Buzz Desktop. Use when the user types /amq-remote, /amq-remote --native, /amq-remote off, or /amq-remote status, or asks to control this session from Buzz. Not for AMQ messaging between agents (use amq-cli).
What this skill tells your AI
The instructions your AI receives, as published by avivsinai/agent-message-queue in skills/amq-remote/SKILL.md and read by ahel’s review.
/amq-remote gives this session its own Buzz agent, "AMQ: ", with its
own DM. The owner DMs that agent from the Buzz phone app or Buzz Desktop.
Several sessions can be connected at once; each has its own agent.
- Default (AMQ mailbox). Each DM arrives as an AMQ message from
buzzin this agent's inbox. This agent answers withamq reply --id <id>, and that reply is shown in the DM. A reply with--kind statusshows as progress; any other reply is the final answer. No Stop hook and no wake are needed. Noticing the message is this agent's own business (a wake, a built-in consumer, monitor, or the next drain). --native. For a session that is not on AMQ: each DM is typed into this exact conversation, and the harness's own final answer goes back. On Claude Code it needs the AMQ Stop hook.
Run the steps in order. When a step says to stop, show the user the command's own message. Do not work around a refusal.
/amq-remote (connect)
- Tools. Run
command -v amq-remote amq-acp. If either is missing, tell the user to runbrew install avivsinai/tap/amq, then stop. - Bind.
- Default: run
amq-remote attach --self. It usesAM_ROOTandAM_ME. If it says this session is not an AMQ participant, offer--native. --native: use$AM_ROOTwhen set, else$HOME/.amq/remote/root(create it withmkdir -p). Runamq-remote attach --self --native --root "$ROOT". If it fails, show its message and stop.
- Default: run
--nativeon Claude Code only: the Stop hook. Runamq-remote doctor --root "$ROOT" --jsonand read itsfailinglist; the exit code is not the signal. If an entry hasboundarynative_capability, tell the user this step adds one Stop hook to~/.claude/settings.json(it always exits 0, andamq-remote claude uninstall-stop-hookremoves it). Ask once, then runamq-remote claude install-stop-hook. The default mailbox path never needs this.- This session's Buzz agent. Attach printed the session name
<name>. Runamq-acp setup --session <name> --out "$HOME/Downloads/AMQ <name>.agent.json"and show its printed steps: in Buzz Desktop, Agents, then + then Import, pick that file, then Start. If this was the first/amq-remoteon the Mac (the harness file did not exist before) and Desktop was open, it must be restarted first so it sees the harness. Skip this step when the agent "AMQ: " already exists in Desktop. - Tell the user: "Connected. DM AMQ: from the Buzz app or
Desktop."
- Default: "DMs arrive in this agent's AMQ inbox. Stop in Buzz stops waiting; a delivered message may still be acted on."
--native: "A DM sent while this session is busy waits. Buzz Stop cannot interrupt a Claude turn."
Codex with --native: attach needs CODEX_THREAD_ID and a thread loaded in
the Codex app-server daemon. A session started with plain codex is not in
the daemon; start it with codex app-server daemon start, then
codex --remote unix://.
Answering a Buzz DM (default mailbox)
A message from buzz with subject "Buzz DM" is the owner writing from Buzz.
Do the work, then answer with amq reply --id <that message id>. Use
--kind status for an interim update. Keep the final answer short; it is
read in a chat.
/amq-remote off
Run amq-remote detach --self. The session keeps running; the Buzz agent
then answers "Not connected".
/amq-remote status
List ~/.amq/remote/bindings/ (one file per connected session: carrier,
root, and handle or target).
Trust limits
The Buzz agent's identity belongs to Buzz Desktop. Its grant has no kind limit
and no expiry. Archiving the agent does not invalidate a copied key and
grant; only removing the agent's relay access does that. Buzz "owner only"
also admits the owner's other agents. See the amq-acp README.
Signals
- GitHub stars
- 87
- Forks
- 13
- Last commit
- Sep 2026
ahel review
K1binfo
installs-packages
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
amq-remote- Source
- github.com/avivsinai/agent-message-queue