agent-relay 3.2.14 → 3.2.16

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.
Files changed (137) hide show
  1. package/bin/agent-relay-broker-darwin-arm64 +0 -0
  2. package/bin/agent-relay-broker-darwin-x64 +0 -0
  3. package/bin/agent-relay-broker-linux-arm64 +0 -0
  4. package/bin/agent-relay-broker-linux-x64 +0 -0
  5. package/dist/index.cjs +3859 -17164
  6. package/package.json +8 -8
  7. package/packages/acp-bridge/package.json +2 -2
  8. package/packages/config/package.json +1 -1
  9. package/packages/hooks/package.json +4 -4
  10. package/packages/memory/package.json +2 -2
  11. package/packages/openclaw/package.json +2 -2
  12. package/packages/policy/package.json +2 -2
  13. package/packages/sdk/dist/broker-path.d.ts +19 -0
  14. package/packages/sdk/dist/broker-path.d.ts.map +1 -0
  15. package/packages/sdk/dist/broker-path.js +71 -0
  16. package/packages/sdk/dist/broker-path.js.map +1 -0
  17. package/packages/sdk/dist/cli-registry.d.ts.map +1 -1
  18. package/packages/sdk/dist/cli-registry.js +10 -1
  19. package/packages/sdk/dist/cli-registry.js.map +1 -1
  20. package/packages/sdk/dist/client.d.ts +6 -1
  21. package/packages/sdk/dist/client.d.ts.map +1 -1
  22. package/packages/sdk/dist/client.js +18 -0
  23. package/packages/sdk/dist/client.js.map +1 -1
  24. package/packages/sdk/dist/communicate/adapters/index.d.ts +0 -5
  25. package/packages/sdk/dist/communicate/adapters/index.d.ts.map +1 -1
  26. package/packages/sdk/dist/communicate/adapters/index.js +0 -5
  27. package/packages/sdk/dist/communicate/adapters/index.js.map +1 -1
  28. package/packages/sdk/dist/communicate/adapters/pi.d.ts +0 -1
  29. package/packages/sdk/dist/communicate/adapters/pi.d.ts.map +1 -1
  30. package/packages/sdk/dist/communicate/adapters/pi.js +0 -4
  31. package/packages/sdk/dist/communicate/adapters/pi.js.map +1 -1
  32. package/packages/sdk/dist/communicate/core.d.ts.map +1 -1
  33. package/packages/sdk/dist/communicate/core.js +2 -3
  34. package/packages/sdk/dist/communicate/core.js.map +1 -1
  35. package/packages/sdk/dist/communicate/index.d.ts +17 -1
  36. package/packages/sdk/dist/communicate/index.d.ts.map +1 -1
  37. package/packages/sdk/dist/communicate/index.js +40 -1
  38. package/packages/sdk/dist/communicate/index.js.map +1 -1
  39. package/packages/sdk/dist/communicate/transport.d.ts +0 -1
  40. package/packages/sdk/dist/communicate/transport.d.ts.map +1 -1
  41. package/packages/sdk/dist/communicate/transport.js +42 -134
  42. package/packages/sdk/dist/communicate/transport.js.map +1 -1
  43. package/packages/sdk/dist/http.d.ts +38 -0
  44. package/packages/sdk/dist/http.d.ts.map +1 -0
  45. package/packages/sdk/dist/http.js +60 -0
  46. package/packages/sdk/dist/http.js.map +1 -0
  47. package/packages/sdk/dist/protocol.d.ts +25 -0
  48. package/packages/sdk/dist/protocol.d.ts.map +1 -1
  49. package/packages/sdk/dist/relay.d.ts +26 -3
  50. package/packages/sdk/dist/relay.d.ts.map +1 -1
  51. package/packages/sdk/dist/relay.js +62 -4
  52. package/packages/sdk/dist/relay.js.map +1 -1
  53. package/packages/sdk/dist/workflows/api-executor.d.ts +16 -0
  54. package/packages/sdk/dist/workflows/api-executor.d.ts.map +1 -0
  55. package/packages/sdk/dist/workflows/api-executor.js +94 -0
  56. package/packages/sdk/dist/workflows/api-executor.js.map +1 -0
  57. package/packages/sdk/dist/workflows/builder.d.ts +14 -0
  58. package/packages/sdk/dist/workflows/builder.d.ts.map +1 -1
  59. package/packages/sdk/dist/workflows/builder.js +26 -0
  60. package/packages/sdk/dist/workflows/builder.js.map +1 -1
  61. package/packages/sdk/dist/workflows/cloud-runner.d.ts +15 -0
  62. package/packages/sdk/dist/workflows/cloud-runner.d.ts.map +1 -0
  63. package/packages/sdk/dist/workflows/cloud-runner.js +41 -0
  64. package/packages/sdk/dist/workflows/cloud-runner.js.map +1 -0
  65. package/packages/sdk/dist/workflows/index.d.ts +2 -0
  66. package/packages/sdk/dist/workflows/index.d.ts.map +1 -1
  67. package/packages/sdk/dist/workflows/index.js +1 -0
  68. package/packages/sdk/dist/workflows/index.js.map +1 -1
  69. package/packages/sdk/dist/workflows/run.d.ts.map +1 -1
  70. package/packages/sdk/dist/workflows/run.js +4 -0
  71. package/packages/sdk/dist/workflows/run.js.map +1 -1
  72. package/packages/sdk/dist/workflows/runner.d.ts +14 -0
  73. package/packages/sdk/dist/workflows/runner.d.ts.map +1 -1
  74. package/packages/sdk/dist/workflows/runner.js +154 -10
  75. package/packages/sdk/dist/workflows/runner.js.map +1 -1
  76. package/packages/sdk/dist/workflows/types.d.ts +13 -3
  77. package/packages/sdk/dist/workflows/types.d.ts.map +1 -1
  78. package/packages/sdk/dist/workflows/types.js +5 -1
  79. package/packages/sdk/dist/workflows/types.js.map +1 -1
  80. package/packages/sdk/dist/workflows/validator.d.ts.map +1 -1
  81. package/packages/sdk/dist/workflows/validator.js +12 -0
  82. package/packages/sdk/dist/workflows/validator.js.map +1 -1
  83. package/packages/sdk/package.json +13 -3
  84. package/packages/sdk/src/__tests__/channel-management.test.ts +131 -0
  85. package/packages/sdk/src/__tests__/communicate/core.test.ts +36 -88
  86. package/packages/sdk/src/__tests__/communicate/transport.test.ts +41 -80
  87. package/packages/sdk/src/__tests__/orchestration-upgrades.test.ts +120 -0
  88. package/packages/sdk/src/__tests__/relay-channel-ops.test.ts +121 -0
  89. package/packages/sdk/src/__tests__/workflow-runner.test.ts +2 -2
  90. package/packages/sdk/src/broker-path.ts +74 -0
  91. package/packages/sdk/src/cli-registry.ts +10 -1
  92. package/packages/sdk/src/client.ts +28 -0
  93. package/packages/sdk/src/communicate/adapters/index.ts +0 -5
  94. package/packages/sdk/src/communicate/adapters/pi.ts +1 -5
  95. package/packages/sdk/src/communicate/core.ts +6 -10
  96. package/packages/sdk/src/communicate/index.ts +57 -1
  97. package/packages/sdk/src/communicate/transport.ts +46 -177
  98. package/packages/sdk/src/http.ts +96 -0
  99. package/packages/sdk/src/protocol.ts +24 -0
  100. package/packages/sdk/src/relay.ts +93 -8
  101. package/packages/sdk/src/workflows/README.md +5 -2
  102. package/packages/sdk/src/workflows/api-executor.ts +108 -0
  103. package/packages/sdk/src/workflows/builder.ts +40 -0
  104. package/packages/sdk/src/workflows/cloud-runner.ts +56 -0
  105. package/packages/sdk/src/workflows/index.ts +2 -0
  106. package/packages/sdk/src/workflows/run.ts +5 -0
  107. package/packages/sdk/src/workflows/runner.ts +181 -11
  108. package/packages/sdk/src/workflows/types.ts +19 -4
  109. package/packages/sdk/src/workflows/validator.ts +15 -0
  110. package/packages/sdk-py/README.md +7 -0
  111. package/packages/sdk-py/pyproject.toml +1 -1
  112. package/packages/sdk-py/src/agent_relay/__init__.py +2 -0
  113. package/packages/sdk-py/src/agent_relay/client.py +4 -0
  114. package/packages/sdk-py/src/agent_relay/communicate/adapters/__init__.py +0 -9
  115. package/packages/sdk-py/src/agent_relay/communicate/adapters/agno.py +5 -9
  116. package/packages/sdk-py/src/agent_relay/communicate/adapters/claude_sdk.py +5 -7
  117. package/packages/sdk-py/src/agent_relay/communicate/adapters/crewai.py +3 -13
  118. package/packages/sdk-py/src/agent_relay/communicate/adapters/google_adk.py +5 -2
  119. package/packages/sdk-py/src/agent_relay/communicate/adapters/openai_agents.py +5 -9
  120. package/packages/sdk-py/src/agent_relay/communicate/core.py +7 -24
  121. package/packages/sdk-py/src/agent_relay/communicate/transport.py +35 -212
  122. package/packages/sdk-py/src/agent_relay/communicate/types.py +1 -1
  123. package/packages/sdk-py/src/agent_relay/protocol.py +1 -0
  124. package/packages/sdk-py/src/agent_relay/relay.py +9 -1
  125. package/packages/sdk-py/tests/communicate/adapters/test_claude_sdk.py +6 -6
  126. package/packages/sdk-py/tests/communicate/conftest.py +86 -233
  127. package/packages/sdk-py/tests/communicate/integration/test_cross_framework.py +2 -2
  128. package/packages/sdk-py/tests/communicate/integration/test_end_to_end.py +14 -24
  129. package/packages/sdk-py/tests/communicate/test_transport.py +65 -54
  130. package/packages/sdk-py/tests/test_send_message_mode.py +91 -0
  131. package/packages/sdk-swift/Sources/AgentRelaySDK/RelayObserver.swift +323 -0
  132. package/packages/sdk-swift/Sources/AgentRelaySDK/RelayObserverTypes.swift +143 -0
  133. package/packages/sdk-swift/Tests/AgentRelaySDKTests/RelayObserverTests.swift +526 -0
  134. package/packages/telemetry/package.json +1 -1
  135. package/packages/trajectory/package.json +2 -2
  136. package/packages/user-directory/package.json +2 -2
  137. package/packages/utils/package.json +2 -2
@@ -102,8 +102,10 @@ export interface AgentDefinition {
102
102
  * analyst → interactive: false, reads code/files, writes findings, no sub-agents
103
103
  */
104
104
  preset?: AgentPreset;
105
+ /** System prompt / skills for API-mode agents (cli: 'api'). */
106
+ skills?: string;
105
107
  }
106
- export type AgentCli = 'claude' | 'codex' | 'gemini' | 'aider' | 'goose' | 'opencode' | 'droid' | 'cursor' | 'cursor-agent' | 'agent';
108
+ export type AgentCli = 'claude' | 'codex' | 'gemini' | 'aider' | 'goose' | 'opencode' | 'droid' | 'cursor' | 'cursor-agent' | 'agent' | 'api';
107
109
  /** Resource and behavioral constraints for an agent. */
108
110
  export interface AgentConstraints {
109
111
  maxTokens?: number;
@@ -133,8 +135,8 @@ export interface WorkflowDefinition {
133
135
  steps: WorkflowStep[];
134
136
  onError?: 'fail' | 'skip' | 'retry';
135
137
  }
136
- /** Step type: agent (LLM-powered), deterministic (shell command), or worktree (git worktree setup). */
137
- export type WorkflowStepType = 'agent' | 'deterministic' | 'worktree';
138
+ /** Step type: agent (LLM-powered), deterministic (shell command), worktree (git worktree setup), or integration (external service). */
139
+ export type WorkflowStepType = 'agent' | 'deterministic' | 'worktree' | 'integration';
138
140
  /** Parameter definition for a custom step. */
139
141
  export interface CustomStepParam {
140
142
  /** Parameter name. */
@@ -216,6 +218,12 @@ export interface WorkflowStep {
216
218
  failOnError?: boolean;
217
219
  /** Capture stdout as step output for downstream steps. Default: true. */
218
220
  captureOutput?: boolean;
221
+ /** Integration name: 'github', 'linear', 'slack' (required for integration steps). */
222
+ integration?: string;
223
+ /** Action within the integration, e.g. 'create-pr', 'create-branch' (required for integration steps). */
224
+ action?: string;
225
+ /** Action parameters, supports {{steps.X.output}} interpolation. */
226
+ params?: Record<string, string>;
219
227
  /** Branch name for the worktree (required for worktree steps). */
220
228
  branch?: string;
221
229
  /** Base branch to create the worktree from. Default: HEAD. */
@@ -229,6 +237,8 @@ export interface WorkflowStep {
229
237
  export declare function isDeterministicStep(step: WorkflowStep): boolean;
230
238
  /** Type guard: Check if a step is a worktree (git worktree setup) step. */
231
239
  export declare function isWorktreeStep(step: WorkflowStep): boolean;
240
+ /** Type guard: Check if a step is an integration (external service) step. */
241
+ export declare function isIntegrationStep(step: WorkflowStep): boolean;
232
242
  /** Type guard: Check if a step uses a custom step definition. */
233
243
  export declare function isCustomStep(step: WorkflowStep): boolean;
234
244
  /** Type guard: Check if a step is an agent (LLM-powered) step. */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"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"}
@@ -12,12 +12,16 @@ export function isDeterministicStep(step) {
12
12
  export function isWorktreeStep(step) {
13
13
  return step.type === 'worktree';
14
14
  }
15
+ /** Type guard: Check if a step is an integration (external service) step. */
16
+ export function isIntegrationStep(step) {
17
+ return step.type === 'integration';
18
+ }
15
19
  /** Type guard: Check if a step uses a custom step definition. */
16
20
  export function isCustomStep(step) {
17
21
  return step.use !== undefined;
18
22
  }
19
23
  /** Type guard: Check if a step is an agent (LLM-powered) step. */
20
24
  export function isAgentStep(step) {
21
- return step.type !== 'deterministic' && step.type !== 'worktree';
25
+ return step.type !== 'deterministic' && step.type !== 'worktree' && step.type !== 'integration';
22
26
  }
23
27
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6RH,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,IAAkB;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;AACvC,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,cAAc,CAAC,IAAkB;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC;AAClC,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,OAAO,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC;AAChC,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,WAAW,CAAC,IAAkB;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC;AACnE,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/workflows/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuSH,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB,CAAC,IAAkB;IACpD,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,CAAC;AACvC,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,cAAc,CAAC,IAAkB;IAC/C,OAAO,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC;AAClC,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,iBAAiB,CAAC,IAAkB;IAClD,OAAO,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC;AACrC,CAAC;AAED,iEAAiE;AACjE,MAAM,UAAU,YAAY,CAAC,IAAkB;IAC7C,OAAO,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC;AAChC,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,WAAW,CAAC,IAAkB;IAC5C,OAAO,IAAI,CAAC,IAAI,KAAK,eAAe,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,CAAC;AAClG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/workflows/validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAiC,MAAM,YAAY,CAAC;AAEjF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,CAgI3E;AAWD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8B1F"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/workflows/validator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAiC,MAAM,YAAY,CAAC;AAEjF,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAID,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,eAAe,GAAG,eAAe,EAAE,CA6I3E;AAWD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CA8B1F"}
@@ -1,5 +1,17 @@
1
+ const CHANNEL_NAME_RE = /^[a-z0-9][a-z0-9-]*$/;
1
2
  export function validateWorkflow(config) {
2
3
  const issues = [];
4
+ // Validate channel name format (must be lowercase alphanumeric + hyphens)
5
+ const channel = config.swarm?.channel ?? config.channel;
6
+ if (channel && !CHANNEL_NAME_RE.test(channel)) {
7
+ issues.push({
8
+ severity: 'error',
9
+ code: 'INVALID_CHANNEL_NAME',
10
+ message: `Channel name "${channel}" is invalid. Must be lowercase alphanumeric and hyphens, starting with a letter or number.`,
11
+ fix: `Use .toLowerCase().replace(/[^a-z0-9-]/g, '-').replace(/-+/g, '-').replace(/^-|-$/g, '') on the channel name.`,
12
+ location: 'swarm:channel',
13
+ });
14
+ }
3
15
  const agentMap = new Map(config.agents.map((a) => [a.name, a]));
4
16
  const hasReviewerAgent = config.agents.some((a) => {
5
17
  const role = a.role?.toLowerCase() ?? '';
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/workflows/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/workflows/validator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-relay/sdk",
3
- "version": "3.2.14",
3
+ "version": "3.2.16",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -69,6 +69,16 @@
69
69
  "types": "./dist/communicate/adapters/ai-sdk.d.ts",
70
70
  "import": "./dist/communicate/adapters/ai-sdk.js",
71
71
  "default": "./dist/communicate/adapters/ai-sdk.js"
72
+ },
73
+ "./http": {
74
+ "types": "./dist/http.d.ts",
75
+ "import": "./dist/http.js",
76
+ "default": "./dist/http.js"
77
+ },
78
+ "./broker-path": {
79
+ "types": "./dist/broker-path.d.ts",
80
+ "import": "./dist/broker-path.js",
81
+ "default": "./dist/broker-path.js"
72
82
  }
73
83
  },
74
84
  "files": [
@@ -102,8 +112,8 @@
102
112
  "typescript": "^5.7.3"
103
113
  },
104
114
  "dependencies": {
105
- "@agent-relay/config": "3.2.14",
106
- "@relaycast/sdk": "^1.0.0",
115
+ "@agent-relay/config": "3.2.16",
116
+ "@relaycast/sdk": "^1.1.0",
107
117
  "@sinclair/typebox": "^0.34.48",
108
118
  "chalk": "^4.1.2",
109
119
  "listr2": "^10.2.1",
@@ -0,0 +1,131 @@
1
+ import { afterEach, describe, expect, it, vi } from 'vitest';
2
+
3
+ import { AgentRelayClient } from '../client.js';
4
+ import type { BrokerEvent } from '../protocol.js';
5
+ import { AgentRelay } from '../relay.js';
6
+
7
+ function createMockFacadeClient() {
8
+ const listeners = new Set<(event: BrokerEvent) => void>();
9
+
10
+ const mock = {
11
+ subscribeChannels: vi.fn(async () => undefined),
12
+ unsubscribeChannels: vi.fn(async () => undefined),
13
+ muteChannel: vi.fn(async () => undefined),
14
+ unmuteChannel: vi.fn(async () => undefined),
15
+ onEvent: vi.fn((listener: (event: BrokerEvent) => void) => {
16
+ listeners.add(listener);
17
+ return () => {
18
+ listeners.delete(listener);
19
+ };
20
+ }),
21
+ };
22
+
23
+ const emit = (event: BrokerEvent) => {
24
+ for (const listener of Array.from(listeners)) {
25
+ listener(event);
26
+ }
27
+ };
28
+
29
+ return {
30
+ client: mock,
31
+ emit,
32
+ };
33
+ }
34
+
35
+ function wireRelay(relay: AgentRelay, client: ReturnType<typeof createMockFacadeClient>['client']): void {
36
+ (relay as any).client = client;
37
+ (relay as any).wireEvents(client);
38
+ }
39
+
40
+ afterEach(() => {
41
+ vi.restoreAllMocks();
42
+ });
43
+
44
+ describe('channel management protocol messages', () => {
45
+ it('subscribeChannels sends the correct SdkToBroker message shape', async () => {
46
+ const client = new AgentRelayClient();
47
+ vi.spyOn(client, 'start').mockResolvedValue(undefined);
48
+ const requestOk = vi.spyOn(client as any, 'requestOk').mockResolvedValue(undefined);
49
+
50
+ await client.subscribeChannels('worker-1', ['ch-a', 'ch-b']);
51
+
52
+ expect(requestOk).toHaveBeenCalledWith('subscribe_channels', {
53
+ name: 'worker-1',
54
+ channels: ['ch-a', 'ch-b'],
55
+ });
56
+ });
57
+
58
+ it('unsubscribeChannels sends the correct SdkToBroker message shape', async () => {
59
+ const client = new AgentRelayClient();
60
+ vi.spyOn(client, 'start').mockResolvedValue(undefined);
61
+ const requestOk = vi.spyOn(client as any, 'requestOk').mockResolvedValue(undefined);
62
+
63
+ await client.unsubscribeChannels('worker-1', ['ch-b']);
64
+
65
+ expect(requestOk).toHaveBeenCalledWith('unsubscribe_channels', {
66
+ name: 'worker-1',
67
+ channels: ['ch-b'],
68
+ });
69
+ });
70
+
71
+ it('muteChannel sends the correct SdkToBroker message shape', async () => {
72
+ const client = new AgentRelayClient();
73
+ vi.spyOn(client, 'start').mockResolvedValue(undefined);
74
+ const requestOk = vi.spyOn(client as any, 'requestOk').mockResolvedValue(undefined);
75
+
76
+ await client.muteChannel('worker-1', 'ch-a');
77
+
78
+ expect(requestOk).toHaveBeenCalledWith('mute_channel', {
79
+ name: 'worker-1',
80
+ channel: 'ch-a',
81
+ });
82
+ });
83
+
84
+ it('unmuteChannel sends the correct SdkToBroker message shape', async () => {
85
+ const client = new AgentRelayClient();
86
+ vi.spyOn(client, 'start').mockResolvedValue(undefined);
87
+ const requestOk = vi.spyOn(client as any, 'requestOk').mockResolvedValue(undefined);
88
+
89
+ await client.unmuteChannel('worker-1', 'ch-a');
90
+
91
+ expect(requestOk).toHaveBeenCalledWith('unmute_channel', {
92
+ name: 'worker-1',
93
+ channel: 'ch-a',
94
+ });
95
+ });
96
+ });
97
+
98
+ describe('channel management facade state updates', () => {
99
+ it('channel_subscribed updates Agent.channels', () => {
100
+ const relay = new AgentRelay();
101
+ const { client, emit } = createMockFacadeClient();
102
+ wireRelay(relay, client);
103
+
104
+ const agent = (relay as any).ensureAgentHandle('worker-1', 'pty', ['ch-a']);
105
+
106
+ emit({
107
+ kind: 'channel_subscribed',
108
+ name: 'worker-1',
109
+ channels: ['ch-b'],
110
+ });
111
+
112
+ expect(agent.channels).toEqual(['ch-a', 'ch-b']);
113
+ });
114
+
115
+ it('channel_muted updates Agent.mutedChannels', () => {
116
+ const relay = new AgentRelay();
117
+ const { client, emit } = createMockFacadeClient();
118
+ wireRelay(relay, client);
119
+
120
+ const agent = (relay as any).ensureAgentHandle('worker-1', 'pty', ['ch-a']);
121
+
122
+ emit({
123
+ kind: 'channel_muted',
124
+ name: 'worker-1',
125
+ channel: 'ch-a',
126
+ });
127
+
128
+ expect(agent.channels).toEqual(['ch-a']);
129
+ expect(agent.mutedChannels).toEqual(['ch-a']);
130
+ });
131
+ });
@@ -66,15 +66,11 @@ class MockRelayServer {
66
66
 
67
67
  baseUrl = '';
68
68
 
69
- /** Track agent tokens from registration: token -> agentId */
70
- private tokenToAgentId = new Map<string, string>();
71
-
72
69
  constructor() {
73
70
  this.server.on('upgrade', this.handleUpgrade.bind(this));
74
71
  this.wsServer.on('connection', (socket, request) => {
75
72
  const url = new URL(request.url ?? '/', 'http://127.0.0.1');
76
- const token = url.searchParams.get('token');
77
- const agentId = token ? this.tokenToAgentId.get(token) : undefined;
73
+ const agentId = url.pathname.split('/').at(-1);
78
74
  if (!agentId) {
79
75
  socket.close();
80
76
  return;
@@ -190,7 +186,7 @@ class MockRelayServer {
190
186
  this.requestLog.set(operation, entries);
191
187
  }
192
188
 
193
- private authorizeWorkspaceKey(request: IncomingMessage, response: ServerResponse): boolean {
189
+ private authorize(request: IncomingMessage, response: ServerResponse): boolean {
194
190
  if (request.headers.authorization !== `Bearer ${this.apiKey}`) {
195
191
  sendJson(response, 401, { message: 'Unauthorized' });
196
192
  return false;
@@ -198,126 +194,81 @@ class MockRelayServer {
198
194
  return true;
199
195
  }
200
196
 
201
- private resolveAgentFromToken(request: IncomingMessage): string | undefined {
202
- const auth = request.headers.authorization ?? '';
203
- if (auth.startsWith('Bearer ')) {
204
- const token = auth.slice(7);
205
- return this.tokenToAgentId.get(token);
206
- }
207
- return undefined;
208
- }
209
-
210
- private authorizeAgentToken(request: IncomingMessage, response: ServerResponse): string | undefined {
211
- const agentId = this.resolveAgentFromToken(request);
212
- if (!agentId) {
213
- sendJson(response, 401, { ok: false, error: { message: 'Unauthorized' } });
214
- }
215
- return agentId;
216
- }
217
-
218
197
  private async handleRequest(request: IncomingMessage, response: ServerResponse): Promise<void> {
219
198
  const url = new URL(request.url ?? '/', this.baseUrl || 'http://127.0.0.1');
220
199
  const pathname = url.pathname;
221
200
 
222
- // POST /v1/agentsregister (workspace key auth)
223
- if (request.method === 'POST' && pathname === '/v1/agents') {
201
+ if (request.method === 'POST' && pathname === '/v1/agents/register') {
224
202
  const json = await readJson(request);
225
203
  this.record('register_agent', json);
226
- if (!this.authorizeWorkspaceKey(request, response)) return;
204
+ if (!this.authorize(request, response)) return;
227
205
 
228
206
  const agentId = `agent-${this.nextAgentId++}`;
229
207
  const token = `token-${agentId}`;
230
208
  this.registeredAgents.set(agentId, { name: json.name, token });
231
- this.tokenToAgentId.set(token, agentId);
232
- sendJson(response, 200, { ok: true, data: { id: agentId, name: json.name, token, status: 'online' } });
209
+ sendJson(response, 200, { agent_id: agentId, token });
233
210
  return;
234
211
  }
235
212
 
236
- // POST /v1/agents/disconnect — unregister (agent token auth)
237
- if (request.method === 'POST' && pathname === '/v1/agents/disconnect') {
238
- const agentId = this.authorizeAgentToken(request, response);
239
- if (!agentId) return;
213
+ if (request.method === 'DELETE' && pathname.startsWith('/v1/agents/')) {
214
+ const agentId = pathname.split('/').at(-1)!;
240
215
  this.record('unregister_agent', { agent_id: agentId });
216
+ if (!this.authorize(request, response)) return;
241
217
 
242
- // Remove token mapping
243
- const auth = request.headers.authorization ?? '';
244
- const token = auth.startsWith('Bearer ') ? auth.slice(7) : '';
245
- this.tokenToAgentId.delete(token);
246
218
  this.registeredAgents.delete(agentId);
247
219
  this.inboxes.delete(agentId);
248
220
  this.websockets.get(agentId)?.close();
249
- sendJson(response, 200, { ok: true });
221
+ sendJson(response, 204, {});
250
222
  return;
251
223
  }
252
224
 
253
- // POST /v1/dm — send DM (agent token auth)
254
- if (request.method === 'POST' && pathname === '/v1/dm') {
225
+ if (request.method === 'POST' && pathname === '/v1/messages/dm') {
255
226
  const json = await readJson(request);
256
- const agentId = this.authorizeAgentToken(request, response);
257
- if (!agentId) return;
258
- const senderName = this.registeredAgents.get(agentId)?.name ?? 'unknown';
259
- this.record('send_dm', { ...json, from: senderName });
227
+ this.record('send_dm', json);
228
+ if (!this.authorize(request, response)) return;
260
229
 
261
- const msgId = `message-${this.nextMessageId++}`;
262
- sendJson(response, 201, { ok: true, data: { id: msgId, text: json.text } });
230
+ sendJson(response, 200, { message_id: `message-${this.nextMessageId++}` });
263
231
  return;
264
232
  }
265
233
 
266
- // POST /v1/channels/{channel}/messages — channel post (agent token auth)
267
- const channelMatch = pathname.match(/^\/v1\/channels\/([^/]+)\/messages$/);
268
- if (request.method === 'POST' && channelMatch) {
234
+ if (request.method === 'POST' && pathname === '/v1/messages/channel') {
269
235
  const json = await readJson(request);
270
- const channel = decodeURIComponent(channelMatch[1]);
271
- const agentId = this.authorizeAgentToken(request, response);
272
- if (!agentId) return;
273
- const senderName = this.registeredAgents.get(agentId)?.name ?? 'unknown';
274
- this.record('post_message', { ...json, channel, from: senderName });
275
-
276
- const msgId = `message-${this.nextMessageId++}`;
277
- sendJson(response, 201, { ok: true, data: { id: msgId, channel_name: channel, text: json.text } });
236
+ this.record('post_message', json);
237
+ if (!this.authorize(request, response)) return;
238
+
239
+ sendJson(response, 200, { message_id: `message-${this.nextMessageId++}` });
278
240
  return;
279
241
  }
280
242
 
281
- // POST /v1/messages/{id}/replies — reply (agent token auth)
282
- const replyMatch = pathname.match(/^\/v1\/messages\/([^/]+)\/replies$/);
283
- if (request.method === 'POST' && replyMatch) {
243
+ if (request.method === 'POST' && pathname === '/v1/messages/reply') {
284
244
  const json = await readJson(request);
285
- const parentId = decodeURIComponent(replyMatch[1]);
286
- const agentId = this.authorizeAgentToken(request, response);
287
- if (!agentId) return;
288
- const senderName = this.registeredAgents.get(agentId)?.name ?? 'unknown';
289
- this.record('reply', { ...json, message_id: parentId, from: senderName });
290
-
291
- const msgId = `message-${this.nextMessageId++}`;
292
- sendJson(response, 201, { ok: true, data: { id: msgId, text: json.text } });
245
+ this.record('reply', json);
246
+ if (!this.authorize(request, response)) return;
247
+
248
+ sendJson(response, 200, { message_id: `message-${this.nextMessageId++}` });
293
249
  return;
294
250
  }
295
251
 
296
- // GET /v1/inbox — inbox (agent token auth)
297
- if (request.method === 'GET' && pathname === '/v1/inbox') {
298
- const agentId = this.authorizeAgentToken(request, response);
299
- if (!agentId) return;
252
+ if (request.method === 'GET' && pathname.startsWith('/v1/inbox/')) {
253
+ const agentId = pathname.split('/').at(-1)!;
300
254
  this.record('check_inbox', { agent_id: agentId });
255
+ if (!this.authorize(request, response)) return;
301
256
 
302
257
  const messages = this.inboxes.get(agentId) ?? [];
303
258
  this.inboxes.set(agentId, []);
304
- sendJson(response, 200, { ok: true, data: { unread_channels: [], mentions: [], unread_dms: messages, recent_reactions: [] } });
259
+ sendJson(response, 200, { messages });
305
260
  return;
306
261
  }
307
262
 
308
- // GET /v1/agents — list agents (workspace key auth)
309
263
  if (request.method === 'GET' && pathname === '/v1/agents') {
310
264
  this.record('list_agents');
311
- if (!this.authorizeWorkspaceKey(request, response)) return;
265
+ if (!this.authorize(request, response)) return;
312
266
 
313
- const agentList: Array<{ name: string; id: string; status: string }> = [];
314
- for (const [agentId, registration] of this.registeredAgents.entries()) {
315
- agentList.push({ name: registration.name, id: agentId, status: 'online' });
316
- }
317
- for (const name of this.extraAgents) {
318
- agentList.push({ name, id: `extra-${name}`, status: 'online' });
267
+ const agents = new Set<string>(this.extraAgents);
268
+ for (const registration of this.registeredAgents.values()) {
269
+ agents.add(registration.name);
319
270
  }
320
- sendJson(response, 200, { ok: true, data: agentList });
271
+ sendJson(response, 200, { agents: [...agents] });
321
272
  return;
322
273
  }
323
274
 
@@ -327,18 +278,15 @@ class MockRelayServer {
327
278
  private handleUpgrade(request: IncomingMessage, socket: any, head: Buffer): void {
328
279
  const url = new URL(request.url ?? '/', this.baseUrl || 'http://127.0.0.1');
329
280
  const pathname = url.pathname;
330
- if (pathname !== '/v1/ws') {
281
+ if (!pathname.startsWith('/v1/ws/')) {
331
282
  socket.destroy();
332
283
  return;
333
284
  }
334
285
 
286
+ const agentId = pathname.split('/').at(-1)!;
335
287
  const token = url.searchParams.get('token');
336
- if (!token) {
337
- socket.destroy();
338
- return;
339
- }
340
- const agentId = this.tokenToAgentId.get(token);
341
- if (!agentId || !this.registeredAgents.has(agentId)) {
288
+ const registration = this.registeredAgents.get(agentId);
289
+ if (!registration || token !== registration.token) {
342
290
  socket.destroy();
343
291
  return;
344
292
  }