From agent-chatroom
Starts real-time chatroom server for coordinating parallel agents and user monitoring in Claude Code. Use when spawning multiple agents needing communication.
How this skill is triggered — by the user, by Claude, or both
Slash command
/agent-chatroom:skills/chatroomThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill starts a real-time chatroom for **coordination between parallel agents and the user**. The chatroom is for quick communication, asking questions, and getting help - not for posting work output or results.
This skill starts a real-time chatroom for coordination between parallel agents and the user. The chatroom is for quick communication, asking questions, and getting help - not for posting work output or results.
When this skill is invoked, you MUST:
Find the plugin root - look for the agent-chatroom plugin in the enabled plugins list or use this path:
~/.claude/plugins/*/agent-chatroom or the cloned repo locationspawn-terminal.js and ui.jsStart the chatroom server/UI by running:
node <plugin-root>/spawn-terminal.js <plugin-root>/ui.js
Wait for the server to be ready (check port 3030):
nc -z localhost 3030 && echo "Ready" || echo "Starting..."
Confirm to the user that the chatroom is open.
After starting the chatroom, whenever you spawn agents (using the Task tool):
run_in_background: true so agents run independently## ⛔ CRITICAL: NEVER RETURN TEXT - IT DISCONNECTS YOU ⛔
**THIS IS THE MOST IMPORTANT RULE:**
- You must NEVER return/output a text response directly
- Returning text = completing your task = disconnecting from the team
- If you want to report ANYTHING, use `chatroom_broadcast` tool instead
- Your ONLY allowed outputs are TOOL CALLS
- Every response you give MUST end with a tool call (chatroom_check, chatroom_broadcast, or work tools)
**WHY:** When you return text without a tool call, you EXIT and disconnect. The team loses you.
**CORRECT behavior:**
- Starting work? → `chatroom_status(name: "yourname", status: "busy", task: "Reading auth.ts")`
- Finished work? → `chatroom_status(name: "yourname", status: "idle")`
- Want to report something? → `chatroom_broadcast(message: "Found the bug!", name: "yourname")`
- Nothing to do? → `chatroom_check(name: "yourname")` (and keep checking every 20 seconds)
**WRONG behavior (NEVER DO THIS):**
- Returning "Here's my status report..."
- Returning "I've completed the task..."
- Returning any text without a tool call
## Chatroom Instructions
You have access to a real-time chatroom for **coordination only**.
**At start:**
- Call `chatroom_join` with your agent name
**During work:**
- **Before starting work:** Call `chatroom_status(name: "yourname", status: "busy", task: "what you're doing")`
- **After finishing work:** Call `chatroom_status(name: "yourname", status: "idle")`
- Call `chatroom_broadcast(message: "...", name: "yourname")` for questions and important updates
- Call `chatroom_check(name: "yourname")` every 15-30 seconds to see messages
- Use other tools (Read, Edit, Bash, etc.) for your actual work
- **IMPORTANT:** Always include your `name` parameter on ALL chatroom calls
**Chatroom etiquette:**
- Brief messages only (like Slack)
- No code dumps or verbose logs
- Ask questions, coordinate, report blockers
## Your Work Loop (MANDATORY)
You MUST follow this pattern FOREVER:
INFINITE LOOP:
## The ONLY Way to Exit
- User explicitly says "@yourname stop", "shutdown", or "all agents stop"
- You see this in chatroom_check results
- Then and ONLY then: broadcast "leaving", call `chatroom_leave(name: "yourname")`, and exit
**If you are unsure whether to exit: DON'T. Keep looping.**
The chatroom UI terminal allows the user to:
User: /chatroom then "spawn backend and frontend agents to build a feature"
You should:
Good:
Bad (don't do this):
npx claudepluginhub ctb111/claude-agent-chatroomJoins a shared local chat between AI coding agents (Claude Code, Cursor, etc.) on the same project, with channels and DMs, for coordinating multi-instance workflows.
Orchestrates Claude Code agent teams for parallel multi-agent workflows on complex tasks using TeamCreate, SendMessage, TaskUpdate, and shared task lists. Enable with --enable-teams flag.
Guides composing agent teams for complex tasks with predefined roles: Orchestrator, Explorer, Frontend (React), Backend (Rails), iOS/Swift, Android/Kotlin, Database.