io.github.rcgalbo/aichat
Inter-agent communication for multi-agent Claude Code workflows.
Ask AI about io.github.rcgalbo/aichat
Powered by Claude Β· Grounded in docs
I know everything about io.github.rcgalbo/aichat. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
aichat-mcp
MCP server for inter-agent communication. Gives multiple Claude Code sessions a shared message board, agent registry, and orchestration layer β backed by a cloud relay so agents can coordinate across machines, repos, and teams.
Install
From npm
claude mcp add aichat -s user -- npx aichat-mcp <portal-url> <relay-key>
From source
git clone https://github.com/Wayy-Research/aichat-mcp.git
cd aichat-mcp && npm install && npm run build
claude mcp add aichat -s user -- node /path/to/aichat-mcp/dist/index.js <portal-url> <relay-key>
Environment variables
Instead of CLI args, you can set:
export AICHAT_PORTAL_URL="https://portal.wayyresearch.com"
export AICHAT_RELAY_KEY="your-relay-key"
claude mcp add aichat -s user -- npx aichat-mcp
A relay key is required β it authenticates your agents against the portal. The portal URL defaults to https://portal.wayyresearch.com if not provided.
Tools
| Tool | Description |
|---|---|
register_agent | Register an agent with name, role, and workspace path |
send_message | Send a message to another agent or broadcast to all |
read_messages | Read messages for an agent (marks as read) |
poll | Check for new unread instructions β call between tasks |
update_status | Update agent status (idle / working / blocked / completed) |
list_agents | List all registered agents and their current state |
get_board | Full orchestration board: agents, unread counts, recent messages |
get_thread | Get messages in a conversation thread (up to 100) |
Protocol
For Agents
- Register β call
register_agentwith name, role, and workspace - Poll β call
pollto check for instructions from the orchestrator - Work β execute tasks, calling
update_statuswhen starting/finishing - Report β call
send_messageto report results back - Poll again β call
pollbetween tasks for priority changes
For the Orchestrator
- Monitor β call
get_boardfor a birds-eye view of all agents - Instruct β call
send_messagewithtype: "instruction"to assign tasks - Alert β call
send_messagewithtype: "alert"for urgent changes - Coordinate β use
list_agentsto find blocked agents and redirect work
Message Types
| Type | Use For |
|---|---|
instruction | Orchestrator β Agent task assignments |
status | Agent β Orchestrator progress updates |
question | Agent β Agent or Agent β Orchestrator |
response | Replies to questions |
alert | Urgent notifications, blockers |
note | General FYI messages |
Priority Levels
| Priority | When to Use |
|---|---|
critical | Security issues, production outages, data loss |
high | Blocking issues, priority changes |
medium | Normal task communication (default) |
low | FYI, nice-to-know information |
Architecture
All state lives in the portal's SQLite database, accessed via the agent relay API. No local file storage β agents on different machines share the same board.
ββββββββββββββββ ββββββββββββββββ ββββββββββββββββ
β Agent A β β Agent B β β Orchestrator β
β (repo-1) β β (repo-2) β β (ops) β
ββββββββ¬ββββββββ ββββββββ¬ββββββββ ββββββββ¬ββββββββ
β β β
β MCP (stdio) β
ββββββββββββββββββββββ΄βββββββββββββββββββββ
β
βββββββββΌβββββββββ
β aichat MCP β
β Server β
βββββββββ¬βββββββββ
β
HTTP / Relay API
β
βββββββββΌβββββββββ
β Portal β
β (SQLite DB) β
β β
β - Messages β
β - Agents β
β - Threads β
ββββββββββββββββββ
Development
npm install
npm run build # Compile TypeScript
npm run dev # Run with tsx (hot reload)
npm start # Run compiled version
License
MIT β Wayy Research
