browser-testing-with-s…
Use when testing web applications with visual verification - automates Chrome browser interactions, element selection, and screenshot capture for confirming UI…
The canonical way to run agent-relay - self-bootstrap the local broker and autonomously spawn, monitor, and coordinate a team of worker agents without human intervention. Covers infrastructure startup, agent spawning, lifecycle monitoring, message-based reading via the relay
$ npx -y skills add AgentWorkforce/relay --skill orchestrating-agent-relay --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/orchestrating-agent-relayContext preview
The summary Claude sees to decide when to auto-load this skill.
The canonical way to run agent-relay - self-bootstrap the local broker and autonomously spawn, monitor, and coordinate a team of worker agents without human intervention. Covers infrastructure startup, agent spawning, lifecycle monitoring, message-based reading via the relay
name: orchestrating-agent-relay description: The canonical way to run agent-relay - self-bootstrap the local broker and autonomously spawn, monitor, and coordinate a team of worker agents without human intervention. Covers infrastructure startup, agent spawning, lifecycle monitoring, message-based reading via the relay MCP, and team coordination.
Self-bootstrap agent-relay infrastructure and manage a team of agents autonomously.
A headless orchestrator is an agent that:
1. Starts the local relay broker itself (`agent-relay node up`) 2. Spawns and manages worker agents on that broker 3. Monitors agent lifecycle events 4. Coordinates work without human intervention
The orchestrator drives the team and reads/sends/lists through the **Agent Relay MCP server** (`agent-relay mcp`). The session registers itself once with the `register_agent` tool (name it `orchestrator`) — every messaging tool errors with `Not registered. Call the "register_agent" tool first.` until it does. Lifecycle control — starting the broker, spawning/releasing local agents, streaming broker debug events — goes through the `agent-relay node` command group. The workers it spawns are registered participants too; their peer-messaging reference is the **`using-agent-relay`** skill.
and the engine routes that agent's messages to its node reliably (ordered, resumable). The local broker is a node; agents you spawn on it are bound to it.
plus custom node actions). The engine **places** a spawn or action onto a node by capability + liveness + capacity + least-loaded, or onto a named `target_node`. Spawning and releasing agents are actions. Most orchestration spawns on the local broker; fleets matter when coordinating across nodes.
reactions and read receipts. Reading another agent's replies is a messaging operation (`check_inbox`, `list_messages`, `get_message_thread`), **not** a broker-event tail.
| Step | Command/Tool | | --------------------------------- | ----------------------------------------------------------------- | | Verify installation | `command -v agent-relay` or `npx agent-relay --version` | | Verify Node runtime if shim fails | `node --version` or fix mise/asdf first | | Start broker | `agent-relay node up --background --verbose` | | Check broker readiness | `agent-relay node status --wait-for 10` | | Workspace + cloud + broker status | `agent-relay status` | | Spawn worker | `agent-relay node agent spawn claude --name Worker1 --task "..."` | | List workers | `agent-relay node agent list` | | Resource usage | `agent-relay node metrics` | | Send DM to worker (MCP) | `send_dm(to: "Worker1", text: "...")` | | Post to channel (MCP) | `post_message(channel: "general", text: "...")` | | Read worker replies (MCP) | `check_inbox(limit: 20)` / `list_messages(channel: "general")` | | Give a human a follow-along link | `agent-relay observer` | | Inspect a worker's TTY | `agent-relay node agent attach Worker1 --mode view` | | Release worker | `agent-relay node agent release Worker1` | | Stop broker | `agent-relay node down` |
# Check if agent-relay is available command -v agent-relay || npx agent-relay --version # If your shell reports a mise/asdf shim error, fix Node first node --version # e.g. for mise: mise use -g node@22.22.1 # If not installed, install globally npm install -g agent-relay # Or use npx (no global install) npx agent-relay --version
# Starts a detached broker and returns after API readiness agent-relay node up --background --verbose
Verify broker readiness before spawning any workers:
# Polls for readiness; must report the daemon running before you spawn workers agent-relay node status --wait-for 10
`agent-relay status` (top level) reports workspace, cloud login, and local broker status together; `agent-relay node status` is the focused broker-daemon readiness check.
> The broker/agent lifecycle commands live under `agent-relay node …`. The old > flat `agent-relay local …` group still works as a **hidden, deprecated alias** > and prints a removal warning — use `node` in new work.
When verifying from a source checkout or throwaway git worktree, run these commands from the project/worktree root. The CLI writes runtime state to `.agentworkforce/relay/` and may create `.mcp.json`; clean those files after validation if the worktree should remain clean.
The broker:
lock/pid, and `.agentworkforce/relay/connection.json`)
The orchestrator's MCP session can sp
Tired of copy/pasting from Claude Code into Slack so your coworker can paste it into their agent? Ever put an important rule in a skill or AGENTS.md, only for the agent to completely ignore it? You and your teammates agents ever build the same thing?
Repo: AgentWorkforce/relay
Use when testing web applications with visual verification - automates Chrome browser interactions, element selection, and screenshot capture for confirming UI…
Use when coordinating multiple AI agents with Agent Relay's workflow engine and need to pick the right orchestration pattern - covers the 10 core patterns…
Use when creating or improving Claude Code agents. Expert guidance on agent file structure, frontmatter, persona definition, tool access, model selection, and…
Use when creating or publishing Claude Code hooks - covers executable format, event types, JSON I/O, exit codes, security requirements, and PRPM package…
Use when creating or fixing .claude/rules/ files - provides correct paths frontmatter (not globs), glob patterns, and avoids Cursor-specific fields like…
Use when creating new Claude Code skills or improving existing ones - ensures skills are discoverable, scannable, and effective through proper structure, CSO…