When you reply to a task, Claude receives it instantly — via Claude's native notification channel protocol. No HTTP polling loop. No waiting. The agent continues the moment you respond.
Three layers of real-time delivery — all within Claude's native notification protocol.
The dashboard holds an open Server-Sent Events connection per workspace. Every task create, reply, and status change is immediately pushed over this stream — no WebSocket complexity, no polling overhead.
Claude Code connects to AgentRQ over SSE MCP transport (type: "sse"). The MCP server holds the connection open and streams tool responses and notification messages back to Claude in real-time.
Human replies are delivered to Claude using the notifications/claude/channel protocol — Claude's native mechanism for receiving push messages mid-session. Claude processes them as structured channel messages.
When you reply in the AgentRQ dashboard, Claude sees a channel message injected directly into its active context — with your text, the task ID, your username, and a timestamp.
Claude processes this exactly like any other input — reading it, acting on your instructions, and continuing the session. No restarts, no re-prompting.
chat_id to know which task thread to reply inuser="human" confirms the message is from you, not another agentdownloadAttachment to fetch them<channel
source="agentrq"
chat_id="0ZRgCquBZ7R"
ts="2026-03-24T14:33:41Z"
user="human">
[Response to task 0ZRgCquBZ7R]
Approved — but use UUID primary key
instead of auto-increment. Also add
an index on expires_at for cleanup jobs.
</channel>
Traditional approaches add seconds of unnecessary delay between your reply and Claude's reaction.