awb-agent-manager 1.6.76 → 1.6.78

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 (78) hide show
  1. package/README.md +18 -9
  2. package/dist/lib/agent-manager-commands.d.ts +2 -0
  3. package/dist/lib/agent-manager-commands.js +31 -13
  4. package/dist/lib/agent-manager-commands.js.map +1 -1
  5. package/dist/lib/cli-adapters/index.d.ts +3 -0
  6. package/dist/lib/cli-adapters/index.js +12 -3
  7. package/dist/lib/cli-adapters/index.js.map +1 -1
  8. package/dist/lib/constants.d.ts +1 -0
  9. package/dist/lib/constants.js +1 -0
  10. package/dist/lib/constants.js.map +1 -1
  11. package/dist/lib/event-dispatcher.d.ts +4 -0
  12. package/dist/lib/event-dispatcher.js +146 -0
  13. package/dist/lib/event-dispatcher.js.map +1 -1
  14. package/dist/lib/instance-heartbeat.d.ts +3 -0
  15. package/dist/lib/instance-heartbeat.js +4 -0
  16. package/dist/lib/instance-heartbeat.js.map +1 -1
  17. package/dist/lib/managed-agent-context.d.ts +2 -0
  18. package/dist/lib/managed-agent-context.js +1 -0
  19. package/dist/lib/managed-agent-context.js.map +1 -1
  20. package/dist/lib/managed-agent-store.d.ts +2 -0
  21. package/dist/lib/managed-agent-store.js.map +1 -1
  22. package/dist/lib/orphan-cleanup.d.ts +1 -0
  23. package/dist/lib/orphan-cleanup.js +56 -1
  24. package/dist/lib/orphan-cleanup.js.map +1 -1
  25. package/dist/lib/outbox.d.ts +28 -0
  26. package/dist/lib/outbox.js +169 -0
  27. package/dist/lib/outbox.js.map +1 -0
  28. package/dist/lib/rest.d.ts +36 -2
  29. package/dist/lib/rest.js +78 -6
  30. package/dist/lib/rest.js.map +1 -1
  31. package/dist/lib/runtime/acp/acp-client.d.ts +29 -0
  32. package/dist/lib/runtime/acp/acp-client.js +227 -0
  33. package/dist/lib/runtime/acp/acp-client.js.map +1 -0
  34. package/dist/lib/runtime/acp/acp-types.d.ts +118 -0
  35. package/dist/lib/runtime/acp/acp-types.js +2 -0
  36. package/dist/lib/runtime/acp/acp-types.js.map +1 -0
  37. package/dist/lib/runtime/acp/json-rpc-peer.d.ts +34 -0
  38. package/dist/lib/runtime/acp/json-rpc-peer.js +262 -0
  39. package/dist/lib/runtime/acp/json-rpc-peer.js.map +1 -0
  40. package/dist/lib/runtime/collaboration-governor.d.ts +29 -0
  41. package/dist/lib/runtime/collaboration-governor.js +125 -0
  42. package/dist/lib/runtime/collaboration-governor.js.map +1 -0
  43. package/dist/lib/runtime/hermes/hermes-process.d.ts +26 -0
  44. package/dist/lib/runtime/hermes/hermes-process.js +128 -0
  45. package/dist/lib/runtime/hermes/hermes-process.js.map +1 -0
  46. package/dist/lib/runtime/hermes/hermes-runtime.d.ts +38 -0
  47. package/dist/lib/runtime/hermes/hermes-runtime.js +146 -0
  48. package/dist/lib/runtime/hermes/hermes-runtime.js.map +1 -0
  49. package/dist/lib/runtime/hermes/hermes-session-store.d.ts +29 -0
  50. package/dist/lib/runtime/hermes/hermes-session-store.js +96 -0
  51. package/dist/lib/runtime/hermes/hermes-session-store.js.map +1 -0
  52. package/dist/lib/runtime/runtime-events.d.ts +48 -0
  53. package/dist/lib/runtime/runtime-events.js +2 -0
  54. package/dist/lib/runtime/runtime-events.js.map +1 -0
  55. package/dist/lib/runtime/runtime-health.d.ts +22 -0
  56. package/dist/lib/runtime/runtime-health.js +105 -0
  57. package/dist/lib/runtime/runtime-health.js.map +1 -0
  58. package/dist/lib/runtime/runtime-registry.d.ts +7 -0
  59. package/dist/lib/runtime/runtime-registry.js +142 -0
  60. package/dist/lib/runtime/runtime-registry.js.map +1 -0
  61. package/dist/lib/runtime/runtime-supervisor.d.ts +54 -0
  62. package/dist/lib/runtime/runtime-supervisor.js +234 -0
  63. package/dist/lib/runtime/runtime-supervisor.js.map +1 -0
  64. package/dist/lib/runtime/runtime-types.d.ts +36 -0
  65. package/dist/lib/runtime/runtime-types.js +11 -0
  66. package/dist/lib/runtime/runtime-types.js.map +1 -0
  67. package/dist/lib/service-install.js +1 -1
  68. package/dist/lib/setup.js +1 -1
  69. package/dist/lib/setup.js.map +1 -1
  70. package/dist/lib/skills/skill-materializer.d.ts +23 -0
  71. package/dist/lib/skills/skill-materializer.js +82 -0
  72. package/dist/lib/skills/skill-materializer.js.map +1 -0
  73. package/dist/lib/ticket-ref-capture.js +1 -0
  74. package/dist/lib/ticket-ref-capture.js.map +1 -1
  75. package/dist/main.js +110 -19
  76. package/dist/main.js.map +1 -1
  77. package/dist/package.json +2 -2
  78. package/package.json +2 -2
package/README.md CHANGED
@@ -1,14 +1,22 @@
1
1
  # awb-agent-manager
2
2
 
3
- Standalone subagent runner for [AI Workflow Board](../../README.md). Connects to
4
- an AWB server over SSE + REST, spawns CLI-driven agents (Claude, Codex, Antigravity,
5
- PI, or any custom binary that speaks MCP), and reports liveness back to the AWB
6
- admin dashboard.
3
+ Runtime Host for [AI Workflow Board](../../README.md). It connects to AWB over
4
+ SSE + REST, owns managed Agent execution, advertises runtime capabilities, and
5
+ supports Hermes over the official ACP stdio protocol alongside registered CLI
6
+ adapters.
7
7
 
8
8
  agent-manager owns SSE event delivery, persistent ticket/chat sessions,
9
9
  subagent supervision, fs browser, instance heartbeats, and CLI lifecycle
10
10
  management.
11
11
 
12
+ The package, binary, config directory, and API retain the `agent-manager` name
13
+ for compatibility. Architecturally it is an execution-plane service: AWB owns
14
+ durable Agent identity, authorization, work state, skills, collaboration
15
+ policy, and audit history. There is no editor/plugin execution fallback.
16
+
17
+ See [the Runtime Host reference](../../docs/agent-manager.md) and
18
+ [the Hermes runtime guide](../../docs/hermes-runtime.md).
19
+
12
20
  ```
13
21
  ┌─────────────────────────────────────────────────────────────────┐
14
22
  │ AWB server (NestJS) │
@@ -22,12 +30,13 @@ management.
22
30
  │ awb-agent-manager (this package) ││
23
31
  │ ├── EventStream SSE consumer + reconnect ││
24
32
  │ ├── EventDispatcher route → ticket / chat / fs / command ││
25
- │ ├── ManagedAgents spawn / stop / restart CLI children ││
33
+ │ ├── ManagedAgents isolate / start / stop Agent runtimes ││
34
+ │ ├── HermesRuntime one ACP process per durable AWB Agent ││
26
35
  │ └── InstanceHeartbeat per-process registry ping ──────────────┘
27
36
  └─────────────────────────────────────────────────────────────────┘
28
37
  │ stdio
29
38
 
30
- claude / codex / antigravity / pi / custom CLI
39
+ hermes-acp / claude / codex / antigravity / pi / custom CLI
31
40
  ```
32
41
 
33
42
  ## Install
@@ -78,7 +87,7 @@ After redeeming, the manager stores its API key and agent identity in
78
87
  `$AWB_AGENT_MANAGER_HOME/config.json` (default
79
88
  `~/.config/awb-agent-manager/config.json`).
80
89
 
81
- 1. **Mint** — In the AWB admin UI: _Admin → Agent Manager → Pair manager…_.
90
+ 1. **Mint** — In the AWB UI: _WorkspaceAI Agents → Agent Manager Runtime → Pair manager…_.
82
91
  The dialog returns a raw token (long-form) and a 6-char display code; copy
83
92
  either. Both are shown only once. TTL 10 minutes, single-use.
84
93
  2. **Run the wizard** — On the host that will run the manager:
@@ -123,8 +132,8 @@ After redeeming, the manager stores its API key and agent identity in
123
132
  instance dashboard and starts listening for `agent_manager_command` SSE
124
133
  events.
125
134
 
126
- 4. **Add managed agents** — Back in AWB, _Agent ManagerManaged Agents
127
- Create_. Pick the CLI (`claude` / `codex` / `antigravity` / `pi` / `custom`),
135
+ 4. **Add managed agents** — Back in AWB, open _WorkspaceAI Agents_ and
136
+ choose _New Managed Agent_. Pick the CLI (`claude` / `codex` / `antigravity` / `pi` / `custom`),
128
137
  point at a working directory, and leave _Spawn on this manager after create_
129
138
  on for one-click setup. The manager provisions a per-agent apiKey, writes its
130
139
  on-disk config + mcp-config.json, and starts routing matching ticket /
@@ -4,6 +4,7 @@ import type { ManagedAgentContextRegistry } from './managed-agent-context.js';
4
4
  import type { BaseSessionManager } from './base-session-manager.js';
5
5
  import type { SubagentManager } from './subagent-manager.js';
6
6
  import type { CircuitBreaker } from './circuit-breaker.js';
7
+ import type { RuntimeSupervisor } from './runtime/runtime-supervisor.js';
7
8
  type CommandKind = 'spawn_agent' | 'stop_agent' | 'restart_agent' | 'restart_all_agents' | 'set_working_dir' | 'reload_config' | 'update_plugins' | 'refresh_mcp_config' | 'update_manager' | 'restart_manager';
8
9
  export interface AgentManagerCommandPayload {
9
10
  command_id: string;
@@ -23,6 +24,7 @@ export interface CommandHandlerDeps {
23
24
  ticketSessionManager?: Pick<BaseSessionManager, 'stopForAgent'> | null;
24
25
  subagentManager?: Pick<SubagentManager, 'stopForAgent'> | null;
25
26
  circuitBreaker?: CircuitBreaker | null;
27
+ runtimeSupervisor?: Pick<RuntimeSupervisor, 'stopForAgent'> | null;
26
28
  reloadConfig?: () => Promise<string> | string;
27
29
  requestStreamReconnect?: () => Promise<void> | void;
28
30
  }
@@ -119,6 +119,7 @@ export class AgentManagerCommandHandler {
119
119
  const model = (typeof remote?.model === 'string' && remote.model.trim()) ||
120
120
  (typeof payload.args?.model === 'string' && payload.args.model.trim()) ||
121
121
  '';
122
+ const runtimeConfig = remote?.runtime_config ?? payload.args?.runtime_config ?? null;
122
123
  if (!workingDir) {
123
124
  throw new Error('spawn_agent: working_dir is empty — set it before spawning');
124
125
  }
@@ -132,6 +133,7 @@ export class AgentManagerCommandHandler {
132
133
  working_dir: workingDir,
133
134
  workspace_id: remote?.workspace_id || '',
134
135
  model: model || null,
136
+ runtime_config: runtimeConfig,
135
137
  last_spawn_at: new Date().toISOString(),
136
138
  });
137
139
  let rawApiKey = await readApiKey(agentId);
@@ -157,16 +159,18 @@ export class AgentManagerCommandHandler {
157
159
  await eraseAgentCredential(agentId);
158
160
  }
159
161
  let extraEnv = {};
160
- try {
161
- const prep = await createAdapter(cli).prepareCliHome(cliHomeDir, credential, { url: this.#config.url, apiKey: rawApiKey }, model || null);
162
- extraEnv = prep?.extraEnv ?? {};
163
- }
164
- catch (err) {
165
- const detail = `spawn_agent: cli-home prep failed for agent=${agentId.slice(0, 8)} cli=${cli}: ${err?.message ?? err}`;
166
- log(detail);
167
- if (cli === 'codex') {
168
- this.#deps.registry.markStopped(agentId, detail);
169
- throw new Error(detail);
162
+ if (cli !== 'hermes') {
163
+ try {
164
+ const prep = await createAdapter(cli).prepareCliHome(cliHomeDir, credential, { url: this.#config.url, apiKey: rawApiKey }, model || null);
165
+ extraEnv = prep?.extraEnv ?? {};
166
+ }
167
+ catch (err) {
168
+ const detail = `spawn_agent: cli-home prep failed for agent=${agentId.slice(0, 8)} cli=${cli}: ${err?.message ?? err}`;
169
+ log(detail);
170
+ if (cli === 'codex') {
171
+ this.#deps.registry.markStopped(agentId, detail);
172
+ throw new Error(detail);
173
+ }
170
174
  }
171
175
  }
172
176
  if (this.#deps.contextRegistry) {
@@ -180,6 +184,7 @@ export class AgentManagerCommandHandler {
180
184
  subagent_log_path: subagentLogPathFor(agentId),
181
185
  cli_home_dir: cliHomeDir,
182
186
  model: model || null,
187
+ runtime_config: runtimeConfig,
183
188
  extra_env: extraEnv,
184
189
  credential_provider: credential?.provider ?? null,
185
190
  credential_id: credential?.credential_id ?? null,
@@ -218,7 +223,7 @@ export class AgentManagerCommandHandler {
218
223
  if (present.length === 0) {
219
224
  log(`spawn_agent: agent=${agentId.slice(0, 8)} credential=${fetched.provider} ` +
220
225
  `(id=${fetched.credential_id.slice(0, 8)}) has empty required field(s) ${required.join(',')} — ` +
221
- `re-edit the credential in AWB Admin → Credentials. Falling back to operator HOME.`);
226
+ `re-edit the credential in AWB Settings → Credentials. Falling back to operator HOME.`);
222
227
  return null;
223
228
  }
224
229
  }
@@ -246,6 +251,7 @@ export class AgentManagerCommandHandler {
246
251
  let chatKilled = 0;
247
252
  let ticketKilled = 0;
248
253
  let subagentKilled = 0;
254
+ let runtimeKilled = 0;
249
255
  try {
250
256
  const r = await this.#deps.chatSessionManager?.stopForAgent(agentId);
251
257
  chatKilled = r?.count ?? 0;
@@ -273,9 +279,21 @@ export class AgentManagerCommandHandler {
273
279
  catch (err) {
274
280
  log(`${reason}: subagentManager.stopForAgent failed: ${err?.message ?? err}`);
275
281
  }
282
+ try {
283
+ const r = await this.#deps.runtimeSupervisor?.stopForAgent(agentId);
284
+ runtimeKilled = r?.count ?? 0;
285
+ }
286
+ catch (err) {
287
+ log(`${reason}: runtimeSupervisor.stopForAgent failed: ${err?.message ?? err}`);
288
+ }
276
289
  await eraseSecrets(agentId).catch(() => undefined);
277
290
  const inflight = Array.from(inflightByKey.values());
278
- if (!rec && !hadContext && chatKilled === 0 && ticketKilled === 0 && subagentKilled === 0) {
291
+ if (!rec
292
+ && !hadContext
293
+ && chatKilled === 0
294
+ && ticketKilled === 0
295
+ && subagentKilled === 0
296
+ && runtimeKilled === 0) {
279
297
  return {
280
298
  summary: `stop_agent: agent=${agentId.slice(0, 8)} not running on this manager`,
281
299
  inflight,
@@ -284,7 +302,7 @@ export class AgentManagerCommandHandler {
284
302
  return {
285
303
  summary: `stop_agent ok: agent=${agentId.slice(0, 8)} ` +
286
304
  `(context dropped, secrets erased, chat_sessions=${chatKilled} ` +
287
- `ticket_sessions=${ticketKilled} subagents=${subagentKilled})`,
305
+ `ticket_sessions=${ticketKilled} subagents=${subagentKilled} runtimes=${runtimeKilled})`,
288
306
  inflight,
289
307
  };
290
308
  }
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager-commands.js","sourceRoot":"","sources":["../../src/lib/agent-manager-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-manager-commands.js","sourceRoot":"","sources":["../../src/lib/agent-manager-commands.ts"],"names":[],"mappings":"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"}
@@ -7,3 +7,6 @@ export { DeepSeekCliAdapter } from './deepseek.js';
7
7
  export { AntigravityCliAdapter } from './antigravity.js';
8
8
  export { CodexCliAdapter } from './codex.js';
9
9
  export { PiCliAdapter } from './pi.js';
10
+ export { RuntimeSelectionError } from '../runtime/runtime-types.js';
11
+ export { getRuntimeDescriptor, validateRuntimeConfig, } from '../runtime/runtime-registry.js';
12
+ export type { AgentRuntimeConfig, RuntimeCapabilities, RuntimeDescriptor, } from '../runtime/runtime-types.js';
@@ -4,8 +4,13 @@ import { AntigravityCliAdapter } from './antigravity.js';
4
4
  import { CodexCliAdapter } from './codex.js';
5
5
  import { PiCliAdapter } from './pi.js';
6
6
  import { ADAPTER_CAPABILITIES, CliAdapter, PARSE_STAGE, } from './base.js';
7
+ import { RuntimeSelectionError } from '../runtime/runtime-types.js';
8
+ import { KNOWN_RUNTIME_IDS, } from '../runtime/runtime-registry.js';
7
9
  export function createAdapter(cliType) {
8
- const t = String(cliType || 'claude').toLowerCase();
10
+ const t = String(cliType ?? '').trim().toLowerCase();
11
+ if (!t) {
12
+ throw new RuntimeSelectionError('runtime_not_configured', null, 'Agent runtime is not configured');
13
+ }
9
14
  switch (t) {
10
15
  case 'claude':
11
16
  return new ClaudeCliAdapter();
@@ -17,15 +22,19 @@ export function createAdapter(cliType) {
17
22
  return new CodexCliAdapter();
18
23
  case 'pi':
19
24
  return new PiCliAdapter();
25
+ case 'hermes':
26
+ throw new RuntimeSelectionError('runtime_unavailable', t, 'Hermes runtime adapter is not available yet');
20
27
  default:
21
- return new ClaudeCliAdapter();
28
+ throw new RuntimeSelectionError('runtime_unknown', t, `Unknown agent runtime: ${t}`);
22
29
  }
23
30
  }
24
- export const KNOWN_ADAPTER_CLI_TYPES = Object.freeze(['claude', 'deepseek', 'antigravity', 'codex', 'pi']);
31
+ export const KNOWN_ADAPTER_CLI_TYPES = KNOWN_RUNTIME_IDS;
25
32
  export { CliAdapter, ADAPTER_CAPABILITIES, PARSE_STAGE };
26
33
  export { ClaudeCliAdapter } from './claude.js';
27
34
  export { DeepSeekCliAdapter } from './deepseek.js';
28
35
  export { AntigravityCliAdapter } from './antigravity.js';
29
36
  export { CodexCliAdapter } from './codex.js';
30
37
  export { PiCliAdapter } from './pi.js';
38
+ export { RuntimeSelectionError } from '../runtime/runtime-types.js';
39
+ export { getRuntimeDescriptor, validateRuntimeConfig, } from '../runtime/runtime-registry.js';
31
40
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/cli-adapters/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,WAAW,GACZ,MAAM,WAAW,CAAC;AAEnB,MAAM,UAAU,aAAa,CAAC,OAAkC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,IAAI,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC;IACpD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,QAAQ;YACX,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAClC,KAAK,aAAa;YAChB,OAAO,IAAI,qBAAqB,EAAE,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,IAAI,eAAe,EAAE,CAAC;QAC/B,KAAK,IAAI;YACP,OAAO,IAAI,YAAY,EAAE,CAAC;QAC5B;YAGE,OAAO,IAAI,gBAAgB,EAAE,CAAC;IAClC,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAE3G,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/cli-adapters/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EACL,oBAAoB,EACpB,UAAU,EACV,WAAW,GACZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAEL,iBAAiB,GAElB,MAAM,gCAAgC,CAAC;AAExC,MAAM,UAAU,aAAa,CAAC,OAAkC;IAC9D,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACrD,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,IAAI,qBAAqB,CAC7B,wBAAwB,EACxB,IAAI,EACJ,iCAAiC,CAClC,CAAC;IACJ,CAAC;IACD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,QAAQ;YACX,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAChC,KAAK,UAAU;YACb,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAClC,KAAK,aAAa;YAChB,OAAO,IAAI,qBAAqB,EAAE,CAAC;QACrC,KAAK,OAAO;YACV,OAAO,IAAI,eAAe,EAAE,CAAC;QAC/B,KAAK,IAAI;YACP,OAAO,IAAI,YAAY,EAAE,CAAC;QAC5B,KAAK,QAAQ;YACX,MAAM,IAAI,qBAAqB,CAC7B,qBAAqB,EACrB,CAAC,EACD,6CAA6C,CAC9C,CAAC;QACJ;YACE,MAAM,IAAI,qBAAqB,CAC7B,iBAAiB,EACjB,CAAC,EACD,0BAA0B,CAAC,EAAE,CAC9B,CAAC;IACN,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,uBAAuB,GAAG,iBAAiB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,WAAW,EAAE,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EACL,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,gCAAgC,CAAC"}
@@ -4,6 +4,7 @@ export declare const AGENT_PATH: string;
4
4
  export declare const SUBAGENTS_BASE_DIR: string;
5
5
  export declare const SUBAGENTS_PERSIST_PATH: string;
6
6
  export declare const SESSION_DEFER_PATH: string;
7
+ export declare const OUTBOX_PATH: string;
7
8
  export declare const INSTANCES_DIR: string;
8
9
  export declare const MANAGED_AGENTS_DIR: string;
9
10
  export declare const LOG_DIR: string;
@@ -19,6 +19,7 @@ export const AGENT_PATH = join(AGENT_MANAGER_HOME, 'agent.json');
19
19
  export const SUBAGENTS_BASE_DIR = join(AGENT_MANAGER_HOME, 'subagents');
20
20
  export const SUBAGENTS_PERSIST_PATH = join(AGENT_MANAGER_HOME, 'subagents.json');
21
21
  export const SESSION_DEFER_PATH = join(AGENT_MANAGER_HOME, 'session-defer.json');
22
+ export const OUTBOX_PATH = join(AGENT_MANAGER_HOME, 'outbox.json');
22
23
  export const INSTANCES_DIR = join(AGENT_MANAGER_HOME, 'instances');
23
24
  export const MANAGED_AGENTS_DIR = join(AGENT_MANAGER_HOME, 'agents');
24
25
  export const LOG_DIR = AGENT_MANAGER_HOME;
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAE5C,SAAS,aAAa;IACpB,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB;QAAE,OAAO,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAClF,IAAI,QAAQ,EAAE,KAAK,OAAO,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QACpC,IAAI,OAAO;YAAE,OAAO,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IACzD,CAAC;IACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;IACxC,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC,GAAG,EAAE,mBAAmB,CAAC,CAAC;IAC/C,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;AACzD,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,EAAE,CAAC;AAClD,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,kBAAkB,EAAE,aAAa,CAAC,CAAC;AACnE,MAAM,CAAC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,EAAE,YAAY,CAAC,CAAC;AACjE,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;AACxE,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,CAAC;AAKjF,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAAC;AACjF,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,CAAC;AAKnE,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC;AACrE,MAAM,CAAC,MAAM,OAAO,GAAG,kBAAkB,CAAC;AAC1C,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;AAE3D,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,CAAC;AACzC,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AACtC,MAAM,CAAC,MAAM,kBAAkB,GAAG,KAAK,CAAC;AACxC,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAM5C,MAAM,CAAC,MAAM,+BAA+B,GAAG,MAAM,CAAC;AAEtD,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,IAAI;IACb,aAAa,EAAE,EAAE;IACjB,UAAU,EAAE,EAAE;IACd,SAAS,EAAE,QAAQ;IACnB,sBAAsB,EAAE,WAAW;IACnC,sBAAsB,EAAE,IAAI;IAC5B,wBAAwB,EAAE,IAAI;IAC9B,WAAW,EAAE,EAAE;IACf,kBAAkB,EAAE,EAAE;IAMtB,gBAAgB,EAAE,IAAI;CACvB,CAAC,CAAC;AAKH,MAAM,CAAC,MAAM,uCAAuC,GAAG,EAAE,GAAG,EAAE,CAAC;AAE/D,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAC5C,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AACtC,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,CAAC;AAEnC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,CAAU,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/lib/constants.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ import { DispatchBlockTracker, InflightDispatchTracker } from './dispatch-prefli
6
6
  import type { RetryScheduler } from './dispatch-preflight.js';
7
7
  import { SessionLimitDeferStore } from './session-limit-defer.js';
8
8
  import type { HarnessSpec, RuntimeProfileSpec, ResolvedEffortPreset } from './cli-adapters/base.js';
9
+ import type { AgentRuntimeConfig } from './runtime/runtime-types.js';
10
+ import type { RuntimeSupervisor } from './runtime/runtime-supervisor.js';
9
11
  interface ResolvedEnvironmentConfig {
10
12
  repositories: Array<{
11
13
  resource_id?: string;
@@ -52,6 +54,7 @@ export interface AgentExecutionContext {
52
54
  credential_provider?: string | null;
53
55
  credential_id?: string | null;
54
56
  model?: string | null;
57
+ runtime_config?: AgentRuntimeConfig | null;
55
58
  }
56
59
  export interface SubagentSpawnArgs {
57
60
  kind: 'trigger' | 'chat';
@@ -197,6 +200,7 @@ export interface EventDispatcherDeps {
197
200
  poolRetryScheduler?: RetryScheduler | null;
198
201
  poolRetryMaxAttempts?: number | null;
199
202
  sessionLimitDeferStore?: SessionLimitDeferStore | null;
203
+ runtimeSupervisor?: RuntimeSupervisor | null;
200
204
  }
201
205
  export declare class EventDispatcher {
202
206
  #private;
@@ -13,6 +13,8 @@ import { FolderMutex } from './run-execution-lock.js';
13
13
  import { fireAndForgetTool } from './mcp-client.js';
14
14
  import { mentionTriggerId } from './subagent-manager.js';
15
15
  import { SHARED_WORKTREE_COLD_IMPORT_TTL_MINUTES } from './constants.js';
16
+ import { createHash } from 'node:crypto';
17
+ import { SkillMaterializer, } from './skills/skill-materializer.js';
16
18
  export function parseHarnessConfig(raw) {
17
19
  let obj = raw;
18
20
  if (typeof obj === 'string') {
@@ -220,6 +222,7 @@ export class EventDispatcher {
220
222
  #managedAgentContexts;
221
223
  #worktreeManager;
222
224
  #runtimeProfileOverride;
225
+ #runtimeSupervisor;
223
226
  #dispatchBlockers = new DispatchBlockerTracker();
224
227
  #spawnSuppressor = new RoleSpawnSuppressor();
225
228
  #inflightDispatch;
@@ -317,6 +320,7 @@ export class EventDispatcher {
317
320
  this.#managedAgentContexts = deps.managedAgentContexts ?? null;
318
321
  this.#worktreeManager = deps.worktreeManager ?? null;
319
322
  this.#runtimeProfileOverride = deps.runtimeProfileOverride;
323
+ this.#runtimeSupervisor = deps.runtimeSupervisor ?? null;
320
324
  this.#inflightDispatch = deps.inflightDispatchTracker ?? new InflightDispatchTracker();
321
325
  this.#dispatchBlockTracker = deps.dispatchBlockTracker ?? new DispatchBlockTracker();
322
326
  this.#poolReclaimTrigger = deps.poolReclaimTrigger ?? null;
@@ -497,8 +501,42 @@ export class EventDispatcher {
497
501
  credential_provider: ctx.credential_provider ?? null,
498
502
  credential_id: ctx.credential_id ?? null,
499
503
  model: ctx.model ?? null,
504
+ runtime_config: ctx.runtime_config ?? null,
500
505
  };
501
506
  }
507
+ async #dispatchHermes(args) {
508
+ if (!this.#runtimeSupervisor) {
509
+ throw new Error('runtime_supervisor_unavailable');
510
+ }
511
+ let skillDirectory = '';
512
+ if (args.skillSnapshot) {
513
+ const materializationId = `run-${createHash('sha256')
514
+ .update(args.skillSnapshot.run_id || args.runId)
515
+ .digest('hex')
516
+ .slice(0, 32)}`;
517
+ const root = args.agentContext.cli_home_dir
518
+ ? `${args.agentContext.cli_home_dir}/runs`
519
+ : `${args.agentContext.cwd}/.awb/runtime-runs`;
520
+ skillDirectory = await new SkillMaterializer(root).materialize(materializationId, args.skillSnapshot);
521
+ }
522
+ return this.#runtimeSupervisor.dispatch({
523
+ agentId: args.agentContext.agent_id,
524
+ runId: args.runId,
525
+ leaseId: args.leaseId,
526
+ cwd: args.agentContext.cwd,
527
+ apiKey: args.agentContext.api_key,
528
+ runtimeId: args.agentContext.cli,
529
+ runtimeConfig: args.agentContext.runtime_config,
530
+ model: args.agentContext.model,
531
+ systemContext: [
532
+ args.systemContext,
533
+ skillDirectory
534
+ ? `Immutable AWB skill snapshot directory: ${skillDirectory}`
535
+ : '',
536
+ ].filter(Boolean).join('\n\n'),
537
+ task: args.task,
538
+ });
539
+ }
502
540
  #resolveAgentContextFromMembers(memberIds) {
503
541
  if (!memberIds.length || !this.#managedAgentContexts)
504
542
  return undefined;
@@ -860,6 +898,42 @@ export class EventDispatcher {
860
898
  const worktreeInstructions = worktreeMode === 'shared'
861
899
  ? sharedWorktreeInstructions(agentContext?.cwd || '')
862
900
  : '';
901
+ if (agentContext?.cli === 'hermes') {
902
+ try {
903
+ const ticket = await fetchTicketContext(this.#config, ev.ticket_id);
904
+ if (ticket && selectedRepo) {
905
+ ticket.base_repo = {
906
+ id: selectedRepo.resourceId,
907
+ name: '',
908
+ url: selectedRepo.url,
909
+ default_branch: selectedRepo.branch,
910
+ };
911
+ ticket.base_branch = selectedRepo.branch;
912
+ }
913
+ const rolePrompt = ev.role_prompt || '';
914
+ const taskText = this.#prompts?.composeTriggerPrompt(ticket, rolePrompt, ev.ticket_prompt || '', ev.ticket_id, ev.column_prompt || null) ?? `[trigger] ${ev.ticket_id}`;
915
+ const result = await this.#dispatchHermes({
916
+ agentContext,
917
+ runId: `ticket:${ev.ticket_id}:${ev.action || '_'}`,
918
+ leaseId: String(ev.worktree_lease_id || `cwd:${agentContext.cwd}`),
919
+ systemContext: [
920
+ rolePrompt,
921
+ harness?.system_prompt_append || '',
922
+ `Trigger source: ${ev.trigger_source || 'unknown'}`,
923
+ ].filter(Boolean).join('\n\n'),
924
+ task: taskText,
925
+ skillSnapshot: ev.skill_snapshot ?? null,
926
+ });
927
+ log(`Trigger dispatched through Hermes ACP: ticket=${ev.ticket_id} ` +
928
+ `session=${result.sessionId} stop=${result.stopReason}`);
929
+ this.#ackDispatch(ev, 'processed');
930
+ }
931
+ catch (err) {
932
+ log(`Hermes trigger dispatch failed closed: ${err?.code || ''} ${err?.message ?? err}`);
933
+ this.#ackDispatch(ev, 'nack', err?.code || 'runtime_protocol_error');
934
+ }
935
+ return;
936
+ }
863
937
  const delegation = this.#config?.delegation ?? {};
864
938
  const delegationEnabled = delegation.enabled !== false;
865
939
  const persistentTicket = delegation.persistentTicketSessions !== false;
@@ -966,6 +1040,7 @@ export class EventDispatcher {
966
1040
  trigger_id: String(ev?.field_changed || ''),
967
1041
  outcome,
968
1042
  reason: reason ? String(reason).slice(0, 500) : '',
1043
+ skill_snapshot_run_id: String(ev?.skill_snapshot?.run_id || ''),
969
1044
  });
970
1045
  }
971
1046
  async handleChatRequest(raw) {
@@ -982,6 +1057,25 @@ export class EventDispatcher {
982
1057
  const delegation = this.#config?.delegation ?? {};
983
1058
  const delegationEnabled = delegation.enabled !== false;
984
1059
  const persistentChat = delegation.persistentChatSessions !== false;
1060
+ if (agentContext?.cli === 'hermes') {
1061
+ const rolePrompt = payload.role_prompt || '';
1062
+ const taskText = this.#prompts?.composeChatPrompt(rolePrompt, Array.isArray(payload.history) ? payload.history : [], payload.new_message || '', payload.room_id || '', true) ?? `[chat] ${payload.new_message || ''}`;
1063
+ try {
1064
+ const result = await this.#dispatchHermes({
1065
+ agentContext,
1066
+ runId: `chat:${payload.room_id || payload.user_id || 'direct'}:${agentContext.agent_id}`,
1067
+ leaseId: `chat:${agentContext.cwd}`,
1068
+ systemContext: rolePrompt,
1069
+ task: taskText,
1070
+ });
1071
+ log(`Chat request dispatched through Hermes ACP: room=${payload.room_id || ''} ` +
1072
+ `session=${result.sessionId} stop=${result.stopReason}`);
1073
+ }
1074
+ catch (err) {
1075
+ log(`Hermes chat dispatch failed closed: ${err?.code || ''} ${err?.message ?? err}`);
1076
+ }
1077
+ return;
1078
+ }
985
1079
  if (delegationEnabled &&
986
1080
  persistentChat &&
987
1081
  this.#chatSessionManager &&
@@ -1091,6 +1185,26 @@ export class EventDispatcher {
1091
1185
  const delegation = this.#config?.delegation ?? {};
1092
1186
  const delegationEnabled = delegation.enabled !== false;
1093
1187
  const persistentTicket = delegation.persistentTicketSessions !== false;
1188
+ if (agentContext?.cli === 'hermes') {
1189
+ try {
1190
+ const ticket = ticketId ? await fetchTicketContext(this.#config, ticketId) : null;
1191
+ const rolePrompt = ev.role_prompt || '';
1192
+ const taskText = this.#prompts?.composeCommentMentionPrompt(ticket, rolePrompt, mention, ticketId) ?? `[mention] ${ticketId} ${commentId}`;
1193
+ const result = await this.#dispatchHermes({
1194
+ agentContext,
1195
+ runId: `ticket:${ticketId}:${mention.role_shortcut || '_'}`,
1196
+ leaseId: String(ev.worktree_lease_id || `cwd:${agentContext.cwd}`),
1197
+ systemContext: rolePrompt,
1198
+ task: taskText,
1199
+ });
1200
+ log(`Comment mention dispatched through Hermes ACP: ticket=${ticketId} ` +
1201
+ `session=${result.sessionId} stop=${result.stopReason}`);
1202
+ }
1203
+ catch (err) {
1204
+ log(`Hermes mention dispatch failed closed: ${err?.code || ''} ${err?.message ?? err}`);
1205
+ }
1206
+ return;
1207
+ }
1094
1208
  if (delegationEnabled && persistentTicket && this.#ticketSessionManager && ticketId) {
1095
1209
  try {
1096
1210
  const forwarded = this.#ticketSessionManager.forwardCommentMention(ticketId, mention, ev.agent_id || '');
@@ -1308,6 +1422,38 @@ export class EventDispatcher {
1308
1422
  const delegation = this.#config?.delegation ?? {};
1309
1423
  const delegationEnabled = delegation.enabled !== false;
1310
1424
  const persistentChat = delegation.persistentChatSessions !== false;
1425
+ if (runContext?.cli === 'hermes') {
1426
+ try {
1427
+ const history = await fetchChatRoomHistory(this.#config, p.room_id);
1428
+ const prepared = await prepareChatAttachments(this.#config, p.room_id, Array.isArray(p.attachments) ? p.attachments : [], { fetchImages: false });
1429
+ const rolePrompt = p.role_prompt || '';
1430
+ const taskText = this.#prompts?.composeChatRoomPrompt(p.room_id, history, {
1431
+ content: p.content || '',
1432
+ sender_name: p.sender_name || '',
1433
+ sender_id: p.sender_id || '',
1434
+ }, prepared, true, undefined, typeof p.room_name === 'string' ? p.room_name : '', !!p.is_action_room) ?? `[chat_room] ${p.content || ''}`;
1435
+ const runId = runProvision?.run_id
1436
+ || `chat:${p.room_id || 'room'}:${runContext.agent_id}`;
1437
+ const result = await this.#dispatchHermes({
1438
+ agentContext: runContext,
1439
+ runId,
1440
+ leaseId: runProvision?.run_id || `chat:${runContext.cwd}`,
1441
+ systemContext: rolePrompt,
1442
+ task: taskText,
1443
+ });
1444
+ this.#chatSessionManager?.recordRoomMessage(p);
1445
+ if (p.room_id)
1446
+ await this.#setChatRoomTyping(p.room_id, false, '').catch(() => { });
1447
+ log(`Chat room dispatched through Hermes ACP: room=${p.room_id || ''} ` +
1448
+ `run=${runId} session=${result.sessionId} stop=${result.stopReason}`);
1449
+ }
1450
+ catch (err) {
1451
+ if (p.room_id)
1452
+ await this.#setChatRoomTyping(p.room_id, false, '').catch(() => { });
1453
+ log(`Hermes room dispatch failed closed: ${err?.code || ''} ${err?.message ?? err}`);
1454
+ }
1455
+ return;
1456
+ }
1311
1457
  if (delegationEnabled && persistentChat && this.#chatSessionManager && p.room_id) {
1312
1458
  const responderAgentId = agentContext?.agent_id || loadAgentInfo()?.agent_id || '';
1313
1459
  try {