Help us improve
Share bugs, ideas, or general feedback.
From claude-net
Auto-invoked skill to coordinate between multiple agents and prevent conflicts
npx claudepluginhub andrehrferreira/claude-net --plugin claude-netHow this skill is triggered — by the user, by Claude, or both
Slash command
/claude-net:coordinatorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill enables agents to check the network status, communicate with other agents, and coordinate work to avoid conflicts.
Coordinates multi-agent sessions with file reservations, inbox notifications, thread-based handoffs, and anti-collision locking for shared workspaces.
Proactively orchestrates AI agents: scans statuses, assesses progress, sends instructions, and coordinates multi-agent workflows until completion.
Coordinates with other AI agents using Wit CLI before code edits: declares intents, locks symbols, checks conflicts to prevent merge issues in multi-agent workflows.
Share bugs, ideas, or general feedback.
This skill enables agents to check the network status, communicate with other agents, and coordinate work to avoid conflicts.
This skill is automatically invoked by claude-net in these scenarios:
The coordinator skill exposes these capabilities:
Get current network status — active agents, their tasks, and shared resources.
Returns:
- List of active agents with status (idle, editing, building, testing)
- Current task for each agent
- Files in use
- Active locks
- Recent errors
Send a message to another agent or broadcast to all agents.
net_send(
to: "agent-id" | "broadcast",
subject: string,
content: string,
metadata?: Record<string, unknown>
)
Returns: message-id
Example:
net_send(
to: "agent-abc123",
subject: "Blocked on file lock",
content: "I need to edit src/auth.ts but you have it locked. Can you release it?"
)
Retrieve messages sent to this agent.
net_inbox(unreadOnly?: boolean)
Returns: Message[]
- id: message ID
- from: sender agent ID
- subject: message subject
- content: message content
- timestamp: when message was sent
- read: whether message was read
Get recent build or test errors.
net_errors(type: "build" | "test" | "all", limit?: number)
Returns: ErrorRecord[]
- BuildError: { timestamp, agentId, command, exitCode, stdout, stderr }
- TestError: { timestamp, agentId, command, failedTests, totalTests, output }
Search agent history for past actions.
net_history(
query: string,
limit?: number
)
Returns: HistoryEntry[]
- timestamp
- event (tool_executed, file_edited, build_started, etc.)
- tool (Edit, Bash, Write, etc.)
- metadata
When these tools are available, follow these coordination rules:
net_status for locks on the target filenet_status for ongoing builds/tests by other agentsnet_send to communicate with conflicting agentnet_errors to understand what went wrongnet_history to understand previous session stateWhen a conflict is detected:
Agent A wants to edit src/auth.ts:
1. Call net_status → See Agent B editing src/auth.ts
2. Call net_send to Agent B → "I need to edit src/auth.ts when you're done"
3. Wait for Agent B to finish (lock released in net_status)
4. Call net_send to Agent B → "Thanks, starting my edits"
5. Proceed with editing
✓ Prevents merge conflicts — Lock coordination ensures only one agent touches a file at a time ✓ Avoids duplicate work — Agents can see what others are doing ✓ Enables recovery — History allows resuming work after crashes ✓ Improves diagnostics — Shared error logs help understand failures ✓ Facilitates learning — Agent can review past interactions and adjust strategy
All coordination interactions are persisted:
~/.claude-net/messages/ — for inter-agent communication~/.claude-net/history/{agent-id}/ — for session recovery and analysis~/.claude-net/errors/ — for debuggingThis enables agent learning across sessions and post-mortem analysis of coordination patterns.