agent-relay 6.2.3 → 6.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,33 +1,55 @@
1
- ![Agent Relay](./readme-banner.png)
1
+ <img src="./readme-banner.png" alt="Agent Relay" height="392">
2
2
 
3
+ **Website:** [agentrelay.com](https://agentrelay.com) · **Docs:** [agentrelay.com/docs](https://agentrelay.com/docs)
3
4
 
5
+ <a href="https://www.npmjs.com/package/@agent-relay/sdk"><img alt="npm" src="https://img.shields.io/npm/v/@agent-relay/sdk"></a>
6
+ <a href="https://github.com/AgentWorkforce/relay/actions/workflows/test.yml"><img alt="Tests" src="https://img.shields.io/github/actions/workflow/status/AgentWorkforce/relay/test.yml?branch=main&label=tests"></a>
7
+ <a href="./LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-blue.svg"></a>
4
8
 
5
- <div align="center">
9
+ </div>
6
10
 
7
-
11
+ ## Multi Agent Orchestration
8
12
 
9
- [![Featured on OSSCAR](https://osscar.dev/api/badge?slug=agentworkforce)](https://osscar.dev/org/agentworkforce)
13
+ Enable your Claude Code, Codex, OpenCode agent spawn agent teams that can communicate and collaborate. Not subagents, but real agents who
14
+ could spawn their own subagents. This allows for powerful AI cross-collaboration so you can get the best harnesses + models working
15
+ together.
10
16
 
11
- Agent Relay is real-time communication infrastructure for agent-to-agent work. Spawn agents from code, give them shared channels, direct messages, threads, reactions, and presence, and let them coordinate in the same workspace.
17
+ ## Benefits Over Subagents
12
18
 
13
- It is not a framework or a harness. Your agents keep running however they already run. Agent Relay is the communication layer that helps them talk to each other and take action together.
19
+ 1. The agent orchestrating has full insight what the spawned agents are doing. It can read the logs and steer mid turn if needed
20
+ 2. Enables advanced swarm techniques as each agent can communicate with each other and coordinate to form agent teams for different types: review/fix loops, adversarial/debate pairs, fan-out -> pipeline -> gather, or lead + workers to name a few
21
+ 3. Diversity of thought and implementation. Codex implement, Claude review, Gemini do the final verification leads to better results as different models + harnesses excel in different things.
22
+ 4. Review happens as a conversation between the live reviewer and the live implementer, not as a report handed back to the parent after each one finishes.
23
+ 5. Audit trail exists outside the agent and outside the parent. With the [Agent Relay Observer](https://agentrelay.com/observer) you get full auditability into every single DM and group message sent by the agents.
14
24
 
15
- **Website:** [agentrelay.com](https://agentrelay.com) · **Docs:** [agentrelay.com/docs](https://agentrelay.com/docs)
25
+ ## Get Started
16
26
 
17
- <a href="https://www.npmjs.com/package/@agent-relay/sdk"><img alt="npm" src="https://img.shields.io/npm/v/@agent-relay/sdk"></a>
18
- <a href="https://github.com/AgentWorkforce/relay/actions/workflows/test.yml"><img alt="Tests" src="https://img.shields.io/github/actions/workflow/status/AgentWorkforce/relay/test.yml?branch=main&label=tests"></a>
19
- <a href="./LICENSE"><img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-blue.svg"></a>
20
- </div>
27
+ 1. Install the agent-relay cli
28
+
29
+ ```
30
+ curl -fsSL https://raw.githubusercontent.com/AgentWorkforce/relay/main/install.sh | bash
31
+
32
+ ```
33
+
34
+ 2. Install the skill
35
+
36
+ ```
37
+ npx skills add https://github.com/agentworkforce/skills --skill orchestrating-agent-relay
38
+ ```
39
+
40
+ 3. Tell your agent to use it
41
+
42
+ ```
43
+ use the orchestrating-agent-relay skill to spawn a claude and codex agent and [YOUR_TASK]
44
+ ```
21
45
 
46
+ For single, well-scoped, one-shot tasks, subagents still win. Agent relay's advantages compound when work is multi-step, multi-role, long-running or needs independent verification.
22
47
 
23
- ## Why Agent Relay
48
+ ## SDK
24
49
 
25
- - **Built for real-time coordination**: channels, messages, inboxes, reactions, and presence for agents that need to collaborate.
26
- - **Works with terminal-native agents**: use Claude Code, Codex, Gemini CLI, OpenCode, and other supported runtimes without changing how they run.
27
- - **SDK-first**: spawn agents programmatically, route work, wait for readiness, and manage lifecycles from TypeScript or Python.
28
- - **Useful from both code and tools**: wire Relay into apps, scripts, plugins, and local workflows.
50
+ Use the Agent Relay SDK to spawn and control agents programmatically.
29
51
 
30
- ## Install
52
+ ### Install
31
53
 
32
54
  **TypeScript / Node.js**
33
55
 
@@ -45,7 +67,7 @@ pip install agent-relay-sdk
45
67
 
46
68
  See the [Python SDK](./packages/sdk-py) for Python usage and adapters.
47
69
 
48
- ## Quick example
70
+ ### Quick example
49
71
 
50
72
  ```typescript
51
73
  import { AgentRelay, Models } from '@agent-relay/sdk';
@@ -82,53 +104,17 @@ await relay.shutdown();
82
104
 
83
105
  Want more than a toy example? Start with:
84
106
 
85
- - [Introduction](./docs/introduction.md)
86
- - [CLI on the Relay](./docs/cli-on-the-relay.md)
87
- - [Examples](./examples/README.md)
88
- - [TypeScript SDK README](./packages/sdk/README.md)
89
- - [Python SDK README](./packages/sdk-py/README.md)
107
+ - [Introduction](https://agentrelay.com/docs/introduction)
108
+ - [TypeScript SDK README](https://agentrelay.com/docs/typescript-sdk)
109
+ - [Python SDK README](https://agentrelay.com/docs/python-sdk)
90
110
 
91
- ## What you can build
111
+ ### What you can build
92
112
 
93
113
  - Multi-agent coding flows with shared channels and worker handoffs
94
114
  - Agent inboxes for status updates, blockers, and review loops
95
115
  - Tooling that lets existing agents communicate without rewriting their runtime
96
116
  - Local or remote coordination patterns where multiple agents need shared context
97
117
 
98
- ## Claude Code plugin
99
-
100
- Use Agent Relay directly inside Claude Code, no SDK required. The plugin adds multi-agent coordination via slash commands or natural language.
101
-
102
- ```text
103
- /plugin marketplace add Agentworkforce/skills
104
- /plugin install claude-relay-plugin
105
- ```
106
-
107
- Once installed, you can coordinate teams of agents with built-in skills:
108
-
109
- ```text
110
- > /relay-team Refactor the auth module, split the middleware, update tests, and update docs
111
- > /relay-fanout Run linting fixes across all packages in the monorepo
112
- > /relay-pipeline Analyze the API logs, generate a summary report, then draft an email
113
- ```
114
-
115
- Or just describe what you want in plain language:
116
-
117
- ```text
118
- > Use relay fan-out to lint all packages in parallel
119
- > Split the migration into three relay workers, one for the schema, one for the API, and one for the frontend
120
- ```
121
-
122
- See [docs/plugin-claude-code.md](./docs/plugin-claude-code.md) and the [plugin README](https://github.com/AgentWorkforce/skills/tree/main/plugins/claude-relay-plugin) for more.
123
-
124
- ## Agent Relay CLI
125
-
126
- Install the CLI with:
127
-
128
- ```bash
129
- curl -fsSL https://raw.githubusercontent.com/AgentWorkforce/relay/main/install.sh | bash
130
- ```
131
-
132
118
  Then use Agent Relay to bring agents into a shared workspace and route work between them.
133
119
 
134
120
  ## Supported agents and runtimes
@@ -142,7 +128,7 @@ Agent Relay is designed for terminal-native agents and SDK-driven workflows. Thi
142
128
 
143
129
  The broader SDK and workflow surface also includes additional integrations in the codebase. See the package docs for details.
144
130
 
145
- ## Development
131
+ ### Development
146
132
 
147
133
  If you want to work on the repo itself:
148
134
 
@@ -154,7 +140,6 @@ npm test
154
140
 
155
141
  Useful references:
156
142
 
157
- - [ARCHITECTURE.md](./ARCHITECTURE.md)
158
143
  - [CHANGELOG.md](./CHANGELOG.md)
159
144
  - [GitHub Issues](https://github.com/AgentWorkforce/relay/issues)
160
145
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-relay",
3
- "version": "6.2.3",
3
+ "version": "6.2.5",
4
4
  "description": "Real-time agent-to-agent communication system",
5
5
  "type": "module",
6
6
  "main": "dist/index.cjs",
@@ -10,7 +10,6 @@
10
10
  "install.sh",
11
11
  "scripts/postinstall.js",
12
12
  "scripts/build-cjs.mjs",
13
- "relay-snippets",
14
13
  "LICENSE",
15
14
  "README.md"
16
15
  ],
@@ -133,14 +132,14 @@
133
132
  },
134
133
  "homepage": "https://github.com/AgentWorkforce/relay#readme",
135
134
  "dependencies": {
136
- "@agent-relay/cloud": "6.2.3",
137
- "@agent-relay/config": "6.2.3",
138
- "@agent-relay/hooks": "6.2.3",
139
- "@agent-relay/sdk": "6.2.3",
140
- "@agent-relay/telemetry": "6.2.3",
141
- "@agent-relay/trajectory": "6.2.3",
142
- "@agent-relay/user-directory": "6.2.3",
143
- "@agent-relay/utils": "6.2.3",
135
+ "@agent-relay/cloud": "6.2.5",
136
+ "@agent-relay/config": "6.2.5",
137
+ "@agent-relay/hooks": "6.2.5",
138
+ "@agent-relay/sdk": "6.2.5",
139
+ "@agent-relay/telemetry": "6.2.5",
140
+ "@agent-relay/trajectory": "6.2.5",
141
+ "@agent-relay/user-directory": "6.2.5",
142
+ "@agent-relay/utils": "6.2.5",
144
143
  "@aws-sdk/client-s3": "3.1020.0",
145
144
  "@modelcontextprotocol/sdk": "^1.0.0",
146
145
  "@relayauth/core": "^0.1.2",
@@ -167,7 +166,6 @@
167
166
  "smol-toml": "^1.6.0",
168
167
  "ssh2": "^1.17.0",
169
168
  "tar": "^7.5.10",
170
- "uuid": "^10.0.0",
171
169
  "ws": "^8.18.3",
172
170
  "yaml": "^2.7.0",
173
171
  "zod": "^3.23.8",
@@ -182,7 +180,6 @@
182
180
  "@types/express": "^5.0.6",
183
181
  "@types/node": "^22.19.3",
184
182
  "@types/ssh2": "^1.15.5",
185
- "@types/uuid": "^10.0.0",
186
183
  "@types/ws": "^8.18.1",
187
184
  "@typescript-eslint/eslint-plugin": "^8.18.2",
188
185
  "@typescript-eslint/parser": "^8.18.2",
@@ -1,40 +0,0 @@
1
- # Agent Policy
2
-
3
- You are operating under organizational agent policies. These policies govern your interactions with other agents and tools.
4
-
5
- ## Your Permissions
6
-
7
- Check the policy service for your specific permissions. If no explicit restrictions are defined, you have full permissions.
8
-
9
- ## General Rules
10
-
11
- 1. **Spawn Authorization**: Only spawn agents you are authorized to spawn. Check with Lead before spawning if unsure.
12
-
13
- 2. **Message Routing**: Only message agents you are authorized to communicate with. Use proper channels.
14
-
15
- 3. **Tool Usage**: Only use tools you are authorized to use. Read-only operations are generally safer.
16
-
17
- 4. **Rate Limits**: Respect rate limits on messages. Don't spam other agents.
18
-
19
- ## Restricted Agents
20
-
21
- Workers and non-lead agents typically have these restrictions:
22
- - Cannot spawn other agents without Lead approval
23
- - Can only message Lead, Coordinator, and their assigned peers
24
- - Limited to read-only tools unless explicitly granted write access
25
-
26
- ## Lead Agents
27
-
28
- Lead agents typically have elevated permissions:
29
- - Can spawn Worker agents
30
- - Can message all agents
31
- - Can use all tools
32
- - Responsible for enforcing policy on spawned agents
33
-
34
- ## Enforcement
35
-
36
- Policy violations are blocked at runtime. If your action is blocked, you'll receive a denial message explaining why. Do not attempt to circumvent policy restrictions.
37
-
38
- ## Checking Your Policy
39
-
40
- To see your current policy, ask Lead or check the dashboard at `/api/policy/:workspaceId`.
@@ -1,64 +0,0 @@
1
- # Agent Relay Protocol (Internal)
2
-
3
- Advanced features for session continuity and trajectory tracking.
4
-
5
- ## Session Continuity
6
-
7
- Use `mcp__relaycast__message_dm_send` with a continuity message to save state for session recovery:
8
-
9
- ```
10
- mcp__relaycast__message_dm_send(to: "system", text: "KIND: continuity\nACTION: save\n\nCurrent task: Implementing user authentication\nCompleted: User model, JWT utils\nIn progress: Login endpoint")
11
- ```
12
-
13
- ### When to Save
14
-
15
- - Before long-running operations (builds, tests)
16
- - When switching task areas
17
- - Every 15-20 minutes of active work
18
- - Before ending session
19
-
20
- ## Work Trajectories
21
-
22
- Record your work as a trajectory for future agents.
23
-
24
- ### Starting Work
25
-
26
- ```bash
27
- trail start "Implement user authentication"
28
- trail start "Fix login bug" --task "agent-relay-123"
29
- ```
30
-
31
- ### Recording Decisions
32
-
33
- ```bash
34
- trail decision "Chose JWT over sessions" --reasoning "Stateless scaling"
35
- trail decision "Used existing auth middleware"
36
- ```
37
-
38
- ### Completing Work
39
-
40
- ```bash
41
- trail complete --summary "Added JWT auth" --confidence 0.85
42
- ```
43
-
44
- Confidence: 0.9+ (high), 0.7-0.9 (good), 0.5-0.7 (some uncertainty), <0.5 (needs review)
45
-
46
- ### Abandoning Work
47
-
48
- ```bash
49
- trail abandon --reason "Blocked by missing credentials"
50
- ```
51
-
52
- ## Cross-Project Messaging
53
-
54
- In bridge mode, use `project:agent` format with `mcp__relaycast__message_dm_send`:
55
-
56
- ```
57
- mcp__relaycast__message_dm_send(to: "frontend:Designer", text: "Please update the login UI.")
58
- ```
59
-
60
- Special targets:
61
-
62
- - `project:lead` - Lead agent of that project
63
- - `project:*` - Broadcast to project
64
- - `*:*` - Broadcast to all projects
@@ -1,117 +0,0 @@
1
- # Agent Relay
2
-
3
- Real-time agent-to-agent messaging via MCP tools.
4
-
5
- ## MCP Tools
6
-
7
- All agent communication uses MCP tools provided by the Relaycast MCP server.
8
- Tool names use dot-notation: Claude uses `mcp__relaycast__<category>_<action>`, other CLIs use `relaycast.<category>.<action>`.
9
-
10
- | Tool | Description |
11
- | --------------------------------- | ------------------------------------- |
12
- | `message.dm.send(to, text)` | Send a DM to an agent |
13
- | `message_post(channel, text)` | Post a message to a channel |
14
- | `message.inbox.check()` | Check your inbox for new messages |
15
- | `agent_list()` | List online agents |
16
- | `agent_add(name, cli, task)` | Spawn a new worker agent |
17
- | `agent_remove(name)` | Release/stop a worker agent |
18
-
19
- ## Sending Messages
20
-
21
- ### Direct Messages
22
-
23
- ```
24
- mcp__relaycast__message_dm_send(to: "Bob", text: "Can you review my code changes?")
25
- ```
26
-
27
- ### Channel Messages
28
-
29
- ```
30
- mcp__relaycast__message_post(channel: "general", text: "The API endpoints are ready")
31
- ```
32
-
33
- ## Spawning & Releasing Agents
34
-
35
- ### Spawn a Worker
36
-
37
- ```
38
- mcp__relaycast__agent_add(name: "WorkerName", cli: "claude", task: "Task description here")
39
- ```
40
-
41
- ### CLI Options
42
-
43
- | CLI Value | Description |
44
- | ----------- | ---------------------------- |
45
- | `claude` | Claude Code (Anthropic) |
46
- | `codex` | Codex CLI (OpenAI) |
47
- | `gemini` | Gemini CLI (Google) |
48
- | `opencode` | OpenCode CLI (multi-model) |
49
- | `aider` | Aider coding assistant |
50
- | `goose` | Goose AI assistant |
51
-
52
- ### Release a Worker
53
-
54
- ```
55
- mcp__relaycast__agent_remove(name: "WorkerName")
56
- ```
57
-
58
- ## Receiving Messages
59
-
60
- Messages appear as:
61
-
62
- ```
63
- Relay message from Alice [abc123]: Content here
64
- ```
65
-
66
- Channel messages include `[#channel]`:
67
-
68
- ```
69
- Relay message from Alice [abc123] [#general]: Hello!
70
- ```
71
-
72
- Reply to the channel shown, not the sender.
73
-
74
- ## When You Are Spawned
75
-
76
- If you were spawned by another agent:
77
-
78
- 1. Your first message is your task from your spawner
79
- 2. Use `mcp__relaycast__message_dm_send` to reply to your spawner
80
- 3. Report status to your spawner (your lead), not broadcast
81
-
82
- ```
83
- mcp__relaycast__message_dm_send(to: "Lead", text: "ACK: Starting on the task.")
84
- ```
85
-
86
- ## Protocol
87
-
88
- - **ACK** when you receive a task: `ACK: Brief description`
89
- - **DONE** when complete: `DONE: What was accomplished`
90
- - Send status to your **lead**, not broadcast
91
-
92
- ## Agent Naming (Local vs Bridge)
93
-
94
- **Local communication** uses plain agent names. The `project:` prefix is **ONLY** for cross-project bridge mode.
95
-
96
- | Context | Correct | Incorrect |
97
- | ---------------------- | ----------------------------------------------------------- | ------------------------------------------------------ |
98
- | Local (same project) | `mcp__relaycast__message_dm_send(to: "Lead", ...)` | `mcp__relaycast__message_dm_send(to: "project:lead", ...)` |
99
- | Bridge (cross-project) | `mcp__relaycast__message_dm_send(to: "frontend:Designer", ...)` | N/A |
100
-
101
- ## Multi-Workspace
102
-
103
- When connected to multiple workspaces, messages include workspace context:
104
-
105
- ```
106
- Relay message from Alice [my-team / abc123]: Hello!
107
- ```
108
-
109
- - Messages are scoped to the originating workspace
110
- - Reply within the same workspace context shown in the message header
111
-
112
- ## Checking Status
113
-
114
- ```
115
- mcp__relaycast__agent_list() # List online agents
116
- mcp__relaycast__message_inbox_check() # Check for unread messages
117
- ```