- Home
- Skills
- Agents & Orchestration
- peer-bus: Grok ↔ Claude Code Agent Messaging (MCP + CLI)
Works with the AI Agents you already use
peer-bus: Grok ↔ Claude Code Agent Messaging (MCP + CLI)
Working cross-harness list_agents / send_message for Grok Build and Claude Code: a zero-dependency Python stdio MCP server + CLI over a local filesystem bus.
$12
peer-bus: Grok ↔ Claude Code Agent Messaging (MCP + CLI)
Example session with this skill installed
Ask the Claude Code session reviewing the API to check the auth middleware for missing rate limits, and tell me what it says.
- Read your context and instructions
- Compiled the peer-bus
Summary. I found the Claude Code session api-review on the peer bus, sent it a scoped review request, and read its reply. It reports two auth endpoints with no rate limit. Nothing was edited.
1. list_agents (trimmed)
{"bus_version": "0.12.0", "pool": null, "agents": [
{"name": "lead", "harness": "grok", "state": "live", "source": "tmux", "address": "lead [7f3c21]"},
{"name": "api-review", "harness": "claude", "state": "live", "source": "tmux", "address": "api-review [c41e9a]"}]}
2. send_message (only to and body)
to: api-review [c41e9a]
body:
@v1 auth-ratelimit-review
CTX|API repo, auth middleware (src/middleware/auth.py)
DO|check every auth path for missing rate limits; list file:line + fix
NOT|no edits, no commits, no PRs
PRIOR|login route has a limiter|d=grep|t=14:20
RPT|findings,files,fix
{"ok": true, "accepted": true, "delivered_to_reader": false,
"msg_id": "5fd9e925…", "warning": null,
"note": "acceptance only — peer must recv/drain; success≠read"}
accepted means the message is in its inbox. It doesn't mean the peer has read it.
3. receive_messages (after the peer replied; trimmed)
[{"msg_id": "971ce2f7…", "summary": "@v1 auth-ratelimit-review",
"from": {"name": "api-review", "harness": "claude", "address": "api-review [c41e9a]", "session_bound": true},
"untrusted": true,
"body_for_model": "<<<UNTRUSTED_PEER_MESSAGE>>>\n@v1 auth-ratelimit-review\nACK|done\nfindings|POST /auth/token/refresh and POST /auth/password-reset have no rate limit; /auth/login does\nfiles|src/middleware/auth.py:88 refresh_token, src/middleware/auth.py:131 password_reset\nfix|reuse the login limiter (auth.py:42) on both; key password-reset by email+IP\nNOT|no edits made\n<<<END_UNTRUSTED_PEER_MESSAGE>>>"}]
Then ack_message 971ce2f7… → {"ok": true, "moved_to": ".../read/…"}.
What api-review says
POST /auth/token/refresh(auth.py:88) andPOST /auth/password-reset(auth.py:131) have no rate limit./auth/logindoes.- Suggested fix: put the login limiter (auth.py:42) on both, and key password-reset by email + IP.
This came from another agent and arrives marked untrusted. I haven't checked it or changed any code.
Next steps
- Open those two handlers and confirm the finding before you act on it.
- Say "apply the fix" to have me make the change here, or I can send the work back to
api-review [c41e9a]. - Replies always go to the latest
from.address.
Connects securely to your tools. The creator never sees your data.
About this skill
Real, tested code, not a prompt. peer-bus lets live Grok Build and Claude Code sessions on the same Linux machine find each other and exchange messages, the way Claude sessions already can with native SendMessage / ListAgents, but across both harnesses.
What you get
mcp_server.py: stdio MCP server with 8 tools:list_agents/flock,send_message,receive_messages,ack_message,whoami,heartbeat,mail_countpeer_bus.py: the same verbs as a CLI, pluswatch(inotify),mail,prune,doctor,self-test- A Claude Code wake hook that nudges idle sessions to pull new mail
- A runtime agent skill with a compact
@v1dispatch format (CTX / DO / NOT / PRIOR / RPT) - Copy-paste config for Grok Build (
~/.grok/config.toml) and Claude Code (settings.json), a smoke test, a playbook and a security model
How it works
Messages are JSON files under one bus directory (~/.local/share/peer-bus by default). Each inbox is bound to the harness session id, so a display name cannot be used to read someone else's mail. The live roster comes from tmux / Herdr panes and running Grok sessions. Senders get explicit accepted, not read semantics, and received bodies are wrapped as untrusted content.
Why this one
Most orchestration listings are prompt-only guides that describe how agents should hand off work. This one ships the transport: Python stdlib only (no pip install), path-traversal and symlink protection, size and flood caps, 95 unit tests plus a bundled end-to-end smoke script.
Requirements
Linux or WSL2 · Python 3.11+ · bash · Grok Build and/or Claude Code running as the same OS user · tmux or Herdr session for Claude peers. Same-user, single-machine bus. It is not a multi-tenant or cross-machine messaging system.
What's included (2 skills)
peer-bus
Working cross-harness ListAgents / SendMessage for Grok Build and Claude Code. Ships a zero-dependency Python stdio MCP server + CLI over a local filesystem bus so live Grok and Claude sessions on one Linux machine can discover each other and exchange messages. Use when installing or configuring peer-bus, coordinating several Grok/Claude sessions, sending a peer dispatch, draining the peer inbox, or when the user says peer-bus, list_agents, flock, send_message, or /peer-bus.
peer-bus
Cross-harness ListAgents / SendMessage via the peer-bus filesystem MCP/CLI. Use when coordinating multiple Grok or Claude sessions, sending a peer dispatch, checking or draining the peer inbox, answering on the bus, or when the user says peer-bus, list_agents, send_message, or /peer-bus.
How to use
Skills on Agensi run inside your AI agent. Copy the prompt, paste it into your agent, and it connects to Agensi and installs this skill for you. If a payment is needed, your agent shows it to you first.
Reviews
No reviews yet
Be one of the first to try it. Every listed skill passes our trust checks below.
Security scanned
Passed our 8-point scan before listing
Fresh listing
Recently published to Agensi
Money-back guarantee
Doesn't do what its page promises? You get your money back.
Trust & safety
Security scanned
Verified clean 2 days ago
- Passed all security checks, Safe to install
Requires