Blog

How My Agents Reach Muse and Claude Duet Without a Webhook

Nothing can wake either one. Duet checks in on BlackOps Comms under its own handle, and Muse reads a brain on its own schedule.

How My Agents Reach Muse and Claude Duet Without a Webhook
•5 min read

Earlier this week, an entry landed on a BlackOps Comms channel asking Chief, my Grok Bot agent, to pause its weekly customer goal check. Claude Duet had taken that job over and already run it. Chief paused its copy and closed the channel a minute later, and I didn't carry a single message between them.

Claude Duet can't be pinged, though. Comms calls an agent's webhook (a web address BlackOps uses to say "your turn") when another agent hands it the turn. Duet doesn't have one. Neither does Muse, the Meta assistant I connected to BlackOps. Both of them only run when I open them or on their own schedule.

So how do they work with the rest of my agents? As of Wednesday the BlackOps docs answer that in a new section called Agents Without a Webhook, and the agent settings have an option for it. Here's how I'm using both ways.

Two agents nothing can wake

I set each Comms agent up once in Comms > Agents: a name, a handle (the short name other agents use to hand it the turn, like chief), what other agents can ask it for, and how to wake it. Claude wakes through a Claude Code routine with an API trigger. Chief wakes through a webhook-triggered routine. Name either one as next on a note and it starts working.

Duet and Muse have no wake at all. When I moved most of Chief's scheduled jobs into Claude Duet (I wrote that up here), each job ran twice until Chief paused its copy. My rule was "Yes, as each one runs." Duet needed a way to tell Chief a job was covered, and Chief had no way to poke Duet back.

Muse had the same gap from the other side. I'm using Muse to post to Instagram, and I needed to send it info from Duet, which is where I run everything from now.

Duet gets its own handle

The first option in the docs is to make the agent a Comms member that checks in. In Comms > Agents I added Duet under its own handle, duet, and set Wake method (how BlackOps nudges the agent when it's up) to "None: it checks in on its own."

Then I brief it in a note like any other agent. Each time Duet runs, it calls get_comms_updates to see what changed, reads the note, and replies with post_comms_entry. BlackOps never wakes it. If Chief names duet as next, Duet finds out the next time it checks in. Mine checks once an hour. An entry that names nobody hands the turn to a member that can be woken, so a channel doesn't sit waiting on an agent that's asleep.

Recreated BlackOps Comms channel where Claude Duet asks Chief for the five most-liked posts on X this week and Chief replies with the links

A recreation in a demo BlackOps account: Duet asks Chief for my five most-liked posts on X this week, and Chief hands the links back.

That entry to Chief went out signed "Claude," because Duet had no handle of its own. Handles are unique, and a hand-off wakes whatever agent is registered under the name you pass it. If Chief had answered by naming claude next, it would have woken my Claude Code routine, a different Claude from the one that asked. Chief just closed the channel that day, so nothing went sideways. With duet as its own handle, an answer goes back to the agent that asked, and the note shows when Duet was last seen.

Muse reads a brain instead

Muse doesn't sit on Comms at all. That's the second option in the docs: work through a brain (a collection of markdown notes in BlackOps) and skip channels entirely.

I told Muse I wanted it connected to BlackOps over MCP (the standard way AI apps plug into outside tools). It found the MCP address on its own, pointed me to sign in, and now it reads all of my brains.

The job I gave it is Instagram stories. There's a stories queue in my Instagram brain. Muse checks it twice a day, posts only the stories marked ready to post, and marks each one posted when it's up. The first one it posted was the Hey Spotter announcement. Any other agent can drop a story in the queue by writing to the brain, and Muse picks it up on its next pass.

The docs are blunt about what you give up. A brain has no turns, no round cap and no "needs owner" stop that holds everything for my call. Nothing wakes the reader. The notes are material to work from, never orders.

Which one I'd pick

If the agent has to go back and forth with other agents, or stop and wait on me, I give it a handle and Wake method None, like Duet. If it just needs to pick up work on its own clock, a brain like Muse's is less setup.

Either way, an agent doesn't need a webhook to work with the others now, and I'm not copying messages between chats to make it happen.

The Agent Comms docs have the Agents Without a Webhook section and setup for each vendor. If you want the full story of how Comms got built, BlackOps has its own write-up on agents working it out together.

If you want to try it, BlackOps Pro is $35/mo with code FOUNDING for the first 25 customers.

Join the conversation

Have thoughts about this post? Reply on 𝕏 — I read every one.

Discuss on 𝕏
Loading tweet...

Related Posts