@oni.bot/core 1.0.3 → 1.1.0

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 (146) hide show
  1. package/dist/checkpointers/postgres.d.ts.map +1 -1
  2. package/dist/checkpointers/postgres.js +2 -1
  3. package/dist/checkpointers/postgres.js.map +1 -1
  4. package/dist/cli/inspect.d.ts.map +1 -1
  5. package/dist/cli/inspect.js +4 -2
  6. package/dist/cli/inspect.js.map +1 -1
  7. package/dist/coordination/request-reply.d.ts +11 -2
  8. package/dist/coordination/request-reply.d.ts.map +1 -1
  9. package/dist/coordination/request-reply.js.map +1 -1
  10. package/dist/events/bus.d.ts.map +1 -1
  11. package/dist/events/bus.js +1 -0
  12. package/dist/events/bus.js.map +1 -1
  13. package/dist/graph.d.ts +11 -1
  14. package/dist/graph.d.ts.map +1 -1
  15. package/dist/graph.js +4 -2
  16. package/dist/graph.js.map +1 -1
  17. package/dist/harness/agent-loop.d.ts +1 -7
  18. package/dist/harness/agent-loop.d.ts.map +1 -1
  19. package/dist/harness/agent-loop.js +2 -642
  20. package/dist/harness/agent-loop.js.map +1 -1
  21. package/dist/harness/loop/hooks.d.ts +7 -0
  22. package/dist/harness/loop/hooks.d.ts.map +1 -0
  23. package/dist/harness/loop/hooks.js +46 -0
  24. package/dist/harness/loop/hooks.js.map +1 -0
  25. package/dist/harness/loop/index.d.ts +8 -0
  26. package/dist/harness/loop/index.d.ts.map +1 -0
  27. package/dist/harness/loop/index.js +257 -0
  28. package/dist/harness/loop/index.js.map +1 -0
  29. package/dist/harness/loop/inference.d.ts +19 -0
  30. package/dist/harness/loop/inference.d.ts.map +1 -0
  31. package/dist/harness/loop/inference.js +121 -0
  32. package/dist/harness/loop/inference.js.map +1 -0
  33. package/dist/harness/loop/memory.d.ts +22 -0
  34. package/dist/harness/loop/memory.d.ts.map +1 -0
  35. package/dist/harness/loop/memory.js +73 -0
  36. package/dist/harness/loop/memory.js.map +1 -0
  37. package/dist/harness/loop/safety.d.ts +8 -0
  38. package/dist/harness/loop/safety.d.ts.map +1 -0
  39. package/dist/harness/loop/safety.js +21 -0
  40. package/dist/harness/loop/safety.js.map +1 -0
  41. package/dist/harness/loop/tools.d.ts +24 -0
  42. package/dist/harness/loop/tools.d.ts.map +1 -0
  43. package/dist/harness/loop/tools.js +184 -0
  44. package/dist/harness/loop/tools.js.map +1 -0
  45. package/dist/harness/loop/types.d.ts +7 -0
  46. package/dist/harness/loop/types.d.ts.map +1 -0
  47. package/dist/harness/loop/types.js +9 -0
  48. package/dist/harness/loop/types.js.map +1 -0
  49. package/dist/harness/memory/fs-compat.d.ts +3 -0
  50. package/dist/harness/memory/fs-compat.d.ts.map +1 -0
  51. package/dist/harness/memory/fs-compat.js +26 -0
  52. package/dist/harness/memory/fs-compat.js.map +1 -0
  53. package/dist/harness/memory/index.d.ts +105 -0
  54. package/dist/harness/memory/index.d.ts.map +1 -0
  55. package/dist/harness/memory/index.js +491 -0
  56. package/dist/harness/memory/index.js.map +1 -0
  57. package/dist/harness/memory/prompter.d.ts +7 -0
  58. package/dist/harness/memory/prompter.d.ts.map +1 -0
  59. package/dist/harness/memory/prompter.js +24 -0
  60. package/dist/harness/memory/prompter.js.map +1 -0
  61. package/dist/harness/memory/ranker.d.ts +15 -0
  62. package/dist/harness/memory/ranker.d.ts.map +1 -0
  63. package/dist/harness/memory/ranker.js +72 -0
  64. package/dist/harness/memory/ranker.js.map +1 -0
  65. package/dist/harness/memory/scanner.d.ts +26 -0
  66. package/dist/harness/memory/scanner.d.ts.map +1 -0
  67. package/dist/harness/memory/scanner.js +187 -0
  68. package/dist/harness/memory/scanner.js.map +1 -0
  69. package/dist/harness/memory/types.d.ts +50 -0
  70. package/dist/harness/memory/types.d.ts.map +1 -0
  71. package/dist/harness/memory/types.js +7 -0
  72. package/dist/harness/memory/types.js.map +1 -0
  73. package/dist/harness/memory-loader.d.ts +2 -149
  74. package/dist/harness/memory-loader.d.ts.map +1 -1
  75. package/dist/harness/memory-loader.js +1 -713
  76. package/dist/harness/memory-loader.js.map +1 -1
  77. package/dist/hitl/interrupt.d.ts.map +1 -1
  78. package/dist/hitl/interrupt.js +2 -1
  79. package/dist/hitl/interrupt.js.map +1 -1
  80. package/dist/prebuilt/react-agent.d.ts.map +1 -1
  81. package/dist/prebuilt/react-agent.js +6 -2
  82. package/dist/prebuilt/react-agent.js.map +1 -1
  83. package/dist/pregel/checkpointing.d.ts +12 -0
  84. package/dist/pregel/checkpointing.d.ts.map +1 -0
  85. package/dist/pregel/checkpointing.js +60 -0
  86. package/dist/pregel/checkpointing.js.map +1 -0
  87. package/dist/pregel/execution.d.ts +7 -0
  88. package/dist/pregel/execution.d.ts.map +1 -0
  89. package/dist/pregel/execution.js +178 -0
  90. package/dist/pregel/execution.js.map +1 -0
  91. package/dist/pregel/index.d.ts +61 -0
  92. package/dist/pregel/index.d.ts.map +1 -0
  93. package/dist/pregel/index.js +154 -0
  94. package/dist/pregel/index.js.map +1 -0
  95. package/dist/pregel/interrupts.d.ts +3 -0
  96. package/dist/pregel/interrupts.d.ts.map +1 -0
  97. package/dist/pregel/interrupts.js +7 -0
  98. package/dist/pregel/interrupts.js.map +1 -0
  99. package/dist/pregel/state-helpers.d.ts +12 -0
  100. package/dist/pregel/state-helpers.d.ts.map +1 -0
  101. package/dist/pregel/state-helpers.js +71 -0
  102. package/dist/pregel/state-helpers.js.map +1 -0
  103. package/dist/pregel/streaming.d.ts +5 -0
  104. package/dist/pregel/streaming.d.ts.map +1 -0
  105. package/dist/pregel/streaming.js +462 -0
  106. package/dist/pregel/streaming.js.map +1 -0
  107. package/dist/pregel/types.d.ts +48 -0
  108. package/dist/pregel/types.d.ts.map +1 -0
  109. package/dist/pregel/types.js +5 -0
  110. package/dist/pregel/types.js.map +1 -0
  111. package/dist/pregel.d.ts +1 -66
  112. package/dist/pregel.d.ts.map +1 -1
  113. package/dist/pregel.js +2 -854
  114. package/dist/pregel.js.map +1 -1
  115. package/dist/swarm/agent-node.d.ts +11 -0
  116. package/dist/swarm/agent-node.d.ts.map +1 -0
  117. package/dist/swarm/agent-node.js +156 -0
  118. package/dist/swarm/agent-node.js.map +1 -0
  119. package/dist/swarm/compile-ext.d.ts +5 -0
  120. package/dist/swarm/compile-ext.d.ts.map +1 -0
  121. package/dist/swarm/compile-ext.js +126 -0
  122. package/dist/swarm/compile-ext.js.map +1 -0
  123. package/dist/swarm/config.d.ts +147 -0
  124. package/dist/swarm/config.d.ts.map +1 -0
  125. package/dist/swarm/config.js +17 -0
  126. package/dist/swarm/config.js.map +1 -0
  127. package/dist/swarm/factories.d.ts +37 -0
  128. package/dist/swarm/factories.d.ts.map +1 -0
  129. package/dist/swarm/factories.js +703 -0
  130. package/dist/swarm/factories.js.map +1 -0
  131. package/dist/swarm/graph.d.ts +14 -147
  132. package/dist/swarm/graph.d.ts.map +1 -1
  133. package/dist/swarm/graph.js +30 -917
  134. package/dist/swarm/graph.js.map +1 -1
  135. package/dist/swarm/pool.js.map +1 -1
  136. package/dist/swarm/supervisor.js.map +1 -1
  137. package/dist/testing/index.d.ts +2 -2
  138. package/dist/testing/index.d.ts.map +1 -1
  139. package/dist/testing/index.js +3 -2
  140. package/dist/testing/index.js.map +1 -1
  141. package/dist/tools/define.d.ts +2 -1
  142. package/dist/tools/define.d.ts.map +1 -1
  143. package/dist/tools/define.js +3 -1
  144. package/dist/tools/define.js.map +1 -1
  145. package/dist/tools/types.d.ts.map +1 -1
  146. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"pregel.js","sourceRoot":"","sources":["../src/pregel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pregel.js","sourceRoot":"","sources":["../src/pregel.ts"],"names":[],"mappings":"AAAA,iDAAiD;AACjD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { NodeFn } from "../types.js";
2
+ import type { SwarmAgentDef } from "./types.js";
3
+ import type { AgentRegistry } from "./registry.js";
4
+ import type { BaseSwarmState } from "./config.js";
5
+ export interface SwarmLiveState {
6
+ hasSupervisor: boolean;
7
+ supervisorNodeName: string;
8
+ onErrorPolicy: "fallback" | "throw";
9
+ }
10
+ export declare function createAgentNode<S extends BaseSwarmState>(def: SwarmAgentDef<S>, registry: AgentRegistry<S>, swarmState: SwarmLiveState): NodeFn<S>;
11
+ //# sourceMappingURL=agent-node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-node.d.ts","sourceRoot":"","sources":["../../src/swarm/agent-node.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,MAAM,EAAa,MAAM,aAAa,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAGnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAOlD,MAAM,WAAW,cAAc;IAC7B,aAAa,EAAO,OAAO,CAAC;IAC5B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAO,UAAU,GAAG,OAAO,CAAC;CAC1C;AAMD,wBAAgB,eAAe,CAAC,CAAC,SAAS,cAAc,EACtD,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,EACrB,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,UAAU,EAAE,cAAc,GACzB,MAAM,CAAC,CAAC,CAAC,CAmKX"}
@@ -0,0 +1,156 @@
1
+ // ============================================================
2
+ // src/swarm/agent-node.ts — createAgentNode factory
3
+ // Extracted from SwarmGraph.addAgent() to keep graph.ts thin.
4
+ // ============================================================
5
+ import { Command } from "../types.js";
6
+ import { Handoff } from "./types.js";
7
+ import { getInbox } from "./mailbox.js";
8
+ import { runWithTimeout } from "../internal/timeout.js";
9
+ // ----------------------------------------------------------------
10
+ // createAgentNode
11
+ // ----------------------------------------------------------------
12
+ export function createAgentNode(def, registry, swarmState) {
13
+ return async (state, config) => {
14
+ registry.markBusy(def.id);
15
+ // Fire onStart hook
16
+ await def.hooks?.onStart?.(def.id, state);
17
+ const maxRetries = def.maxRetries ?? 2;
18
+ const retryDelayMs = def.retryDelayMs ?? 0;
19
+ let lastError;
20
+ let lastAttempt = 0;
21
+ for (let attempt = 0; attempt <= maxRetries; attempt++) {
22
+ lastAttempt = attempt;
23
+ try {
24
+ // Get inbox and filter out already-consumed messages
25
+ const consumedIds = (state.context?.__consumedMsgIds ?? []);
26
+ const consumedSet = new Set(consumedIds);
27
+ const allInbox = getInbox(state.swarmMessages ?? [], def.id);
28
+ const inbox = allInbox.filter((m) => !consumedSet.has(m.id));
29
+ // Track consumed message IDs
30
+ const newConsumedIds = [...consumedIds, ...inbox.map((m) => m.id)];
31
+ const agentInput = {
32
+ ...state,
33
+ context: {
34
+ ...(state.context ?? {}),
35
+ inbox,
36
+ __consumedMsgIds: newConsumedIds,
37
+ },
38
+ };
39
+ let effectiveTimeout = def.timeout;
40
+ // Clamp agent timeout to remaining deadline (if set)
41
+ const deadlineAbs = state.context?.__deadlineAbsolute;
42
+ if (deadlineAbs != null) {
43
+ const remaining = deadlineAbs - Date.now();
44
+ if (remaining <= 0) {
45
+ throw new Error(`Agent "${def.id}" deadline expired`);
46
+ }
47
+ if (effectiveTimeout == null || remaining < effectiveTimeout) {
48
+ effectiveTimeout = remaining;
49
+ }
50
+ }
51
+ const result = await runWithTimeout(() => def.skeleton.invoke(agentInput, {
52
+ ...config,
53
+ agentId: def.id,
54
+ }), effectiveTimeout, () => new Error(`Agent "${def.id}" timed out after ${effectiveTimeout}ms`));
55
+ registry.markIdle(def.id);
56
+ // ---- Handoff detection ----
57
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
58
+ if (result instanceof Handoff || (result && result.isHandoff)) { // SAFE: duck-typing unknown agent return value
59
+ const handoff = result instanceof Handoff
60
+ ? result
61
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
62
+ : new Handoff(result.opts); // SAFE: duck-typing unknown agent return value
63
+ // Fire onComplete for handoffs too
64
+ await def.hooks?.onComplete?.(def.id, result);
65
+ return new Command({
66
+ update: {
67
+ context: { ...(state.context ?? {}), ...(handoff.context ?? {}) },
68
+ handoffHistory: [{
69
+ from: def.id,
70
+ to: handoff.to,
71
+ message: handoff.message,
72
+ step: state.supervisorRound ?? 0,
73
+ timestamp: Date.now(),
74
+ resume: handoff.resume,
75
+ }],
76
+ currentAgent: handoff.to,
77
+ },
78
+ goto: handoff.to,
79
+ });
80
+ }
81
+ // Fire onComplete hook
82
+ await def.hooks?.onComplete?.(def.id, result);
83
+ // ---- Normal result ----
84
+ return {
85
+ ...result,
86
+ context: {
87
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
88
+ ...(result.context ?? {}), // SAFE: spreading unknown result context field
89
+ __consumedMsgIds: newConsumedIds,
90
+ },
91
+ agentResults: {
92
+ ...(state.agentResults ?? {}),
93
+ [def.id]: result,
94
+ },
95
+ handoffHistory: [
96
+ {
97
+ from: def.id,
98
+ to: "__completed__",
99
+ message: "Agent completed",
100
+ step: state.supervisorRound ?? 0,
101
+ timestamp: Date.now(),
102
+ },
103
+ ],
104
+ };
105
+ }
106
+ catch (err) {
107
+ lastError = err;
108
+ if (attempt < maxRetries) {
109
+ // Backoff delay between retries — clamped to remaining deadline
110
+ if (retryDelayMs > 0) {
111
+ let delay = retryDelayMs;
112
+ const dl = state.context?.__deadlineAbsolute;
113
+ if (dl != null) {
114
+ const remaining = dl - Date.now();
115
+ if (remaining <= 0)
116
+ break; // deadline expired, stop retrying
117
+ delay = Math.min(delay, remaining);
118
+ }
119
+ await new Promise((r) => setTimeout(r, delay));
120
+ }
121
+ continue; // retry
122
+ }
123
+ }
124
+ }
125
+ // All retries exhausted — mark error once, then fire onError hook
126
+ registry.markError(def.id);
127
+ await def.hooks?.onError?.(def.id, lastError);
128
+ // Keep agent in error status (don't reset to idle)
129
+ // Build structured error context
130
+ const errStr = String(lastError instanceof Error ? lastError.message : lastError);
131
+ const errType = errStr.includes("timeout") ? "timeout" :
132
+ errStr.includes("model") ? "model_error" :
133
+ errStr.includes("tool") ? "tool_error" :
134
+ "unknown";
135
+ if (swarmState.hasSupervisor && swarmState.onErrorPolicy !== "throw") {
136
+ return new Command({
137
+ update: {
138
+ context: {
139
+ ...(state.context ?? {}),
140
+ lastAgentError: {
141
+ agent: def.id,
142
+ error: errStr,
143
+ type: errType,
144
+ attempt: lastAttempt,
145
+ maxRetries,
146
+ },
147
+ },
148
+ },
149
+ goto: swarmState.supervisorNodeName,
150
+ });
151
+ }
152
+ // No supervisor, or onError: "throw" — rethrow
153
+ throw lastError;
154
+ };
155
+ }
156
+ //# sourceMappingURL=agent-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-node.js","sourceRoot":"","sources":["../../src/swarm/agent-node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { ONISkeletonV3, StateGraph } from "../graph.js";
2
+ import type { AgentRegistry } from "./registry.js";
3
+ import type { BaseSwarmState, SwarmExtensions } from "./config.js";
4
+ export declare function buildSwarmExtensions<S extends BaseSwarmState>(skeleton: ONISkeletonV3<S>, registry: AgentRegistry<S>, inner: StateGraph<S>, hasSupervisor: boolean, supervisorNodeName: string, onErrorPolicy: "fallback" | "throw"): SwarmExtensions<S>;
5
+ //# sourceMappingURL=compile-ext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile-ext.d.ts","sourceRoot":"","sources":["../../src/swarm/compile-ext.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAA0B,UAAU,EAAE,MAAM,aAAa,CAAC;AAErF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAyB,eAAe,EAAE,MAAM,aAAa,CAAC;AAI1F,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,cAAc,EAC3D,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,EAC1B,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,EACpB,aAAa,EAAE,OAAO,EACtB,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,UAAU,GAAG,OAAO,GAClC,eAAe,CAAC,CAAC,CAAC,CAwHpB"}
@@ -0,0 +1,126 @@
1
+ // ============================================================
2
+ // src/swarm/compile-ext.ts — buildSwarmExtensions factory
3
+ // Extracted from SwarmGraph.compile() to keep graph.ts thin.
4
+ // ============================================================
5
+ import { END, Send } from "../types.js";
6
+ import { createAgentNode } from "./agent-node.js";
7
+ export function buildSwarmExtensions(skeleton, registry, inner, hasSupervisor, supervisorNodeName, onErrorPolicy) {
8
+ return {
9
+ registry,
10
+ agentStats: () => registry.stats(),
11
+ toMermaid: () => {
12
+ // Read from the live runner's edge map so the diagram reflects
13
+ // agents added/removed via spawnAgent()/removeAgent() after compile.
14
+ const runner = skeleton._runner;
15
+ const edgesBySource = runner?._edgesBySource;
16
+ if (!edgesBySource)
17
+ return inner.toMermaid(); // safe fallback
18
+ const lines = ["graph TD"];
19
+ for (const [from, edges] of edgesBySource) {
20
+ for (const edge of edges) {
21
+ if (edge.type === "static" && edge.to !== undefined) {
22
+ lines.push(` ${from} --> ${edge.to}`);
23
+ }
24
+ else {
25
+ lines.push(` ${from} -->|?| conditional_${from}`);
26
+ }
27
+ }
28
+ }
29
+ return lines.join("\n");
30
+ },
31
+ spawnAgent(def) {
32
+ // spawnAgent requires a supervisor to route the spawned agent back into the graph.
33
+ // In unsupervised topologies there is no return path, so the agent would never execute.
34
+ if (!hasSupervisor) {
35
+ throw new Error(`spawnAgent() requires a supervisor node. ` +
36
+ `Use SwarmGraph.hierarchical() to add a supervisor, or call addAgent() before compile() for static topologies.`);
37
+ }
38
+ // Register in the registry
39
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
40
+ registry.register(def); // SAFE: external boundary — generic registry accepts narrower S
41
+ // Use the same createAgentNode path as static agents so dynamic agents get
42
+ // inbox tracking, timeout clamping, handoff handling, retry backoff, and
43
+ // structured error context — identical behavior to compile-time addAgent().
44
+ const swarmLiveState = { hasSupervisor, supervisorNodeName, onErrorPolicy };
45
+ const agentNode = createAgentNode(def, registry, swarmLiveState);
46
+ // Add node to the compiled runner's nodes map
47
+ const runner = skeleton._runner;
48
+ if (runner?.nodes) {
49
+ runner.nodes.set(def.id, { name: def.id, fn: agentNode });
50
+ }
51
+ // In supervised swarms, add a conditional return edge so the runner
52
+ // knows to send this agent's output back to the supervisor (or END).
53
+ if (hasSupervisor && runner) {
54
+ const returnEdge = {
55
+ type: "conditional",
56
+ from: def.id,
57
+ condition: (st) => st.done ? END : supervisorNodeName,
58
+ };
59
+ const edgesBySource = runner._edgesBySource;
60
+ const list = edgesBySource.get(def.id) ?? [];
61
+ list.push(returnEdge);
62
+ edgesBySource.set(def.id, list);
63
+ }
64
+ },
65
+ removeAgent(agentId) {
66
+ registry.deregister(agentId);
67
+ const runner = skeleton._runner;
68
+ // If the agent is not in the compiled node map it was never part of the graph —
69
+ // no edges can reference it, so there is nothing structural to clean up.
70
+ if (!runner?.nodes?.has(agentId))
71
+ return;
72
+ runner.nodes.delete(agentId);
73
+ // Remove stale edges pointing TO the removed agent so Pregel doesn't try to route to it.
74
+ // Also remove edges FROM the agent (it won't execute, but keeps _edgesBySource clean).
75
+ const edgesBySource = runner._edgesBySource;
76
+ if (edgesBySource) {
77
+ for (const [from, edges] of edgesBySource) {
78
+ let changed = false;
79
+ const updated = edges
80
+ .filter((e) => {
81
+ // Drop static edges that target the removed agent
82
+ if (e.type === "static" && e.to === agentId) {
83
+ changed = true;
84
+ return false;
85
+ }
86
+ return true;
87
+ })
88
+ .map((e) => {
89
+ if (e.type !== "conditional")
90
+ return e;
91
+ // (a) Remap any pathMap entry whose value is the removed agentId → END
92
+ let newPathMap = e.pathMap;
93
+ if (newPathMap) {
94
+ const stale = Object.values(newPathMap).some((v) => v === agentId);
95
+ if (stale) {
96
+ newPathMap = Object.fromEntries(Object.entries(newPathMap).map(([k, v]) => [k, v === agentId ? END : v]));
97
+ }
98
+ }
99
+ // (b) Wrap the condition so any runtime return of agentId is replaced with END.
100
+ // We cannot introspect the closure, so we always wrap for safety.
101
+ const orig = e.condition;
102
+ const wrapped = (state, cfg) => {
103
+ const result = orig(state, cfg);
104
+ if (!Array.isArray(result)) {
105
+ // Single NodeName — replace agentId with END
106
+ return result === agentId ? END : result;
107
+ }
108
+ if (result.length > 0 && result[0] instanceof Send) {
109
+ // Send[] — filter out Sends targeting the removed agent
110
+ return result.filter((r) => r.node !== agentId);
111
+ }
112
+ // NodeName[] — replace agentId entries with END
113
+ return result.map((r) => (r === agentId ? END : r));
114
+ };
115
+ changed = true;
116
+ return { ...e, condition: wrapped, pathMap: newPathMap };
117
+ });
118
+ if (changed)
119
+ edgesBySource.set(from, updated);
120
+ }
121
+ edgesBySource.delete(agentId);
122
+ }
123
+ },
124
+ };
125
+ }
126
+ //# sourceMappingURL=compile-ext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compile-ext.js","sourceRoot":"","sources":["../../src/swarm/compile-ext.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,147 @@
1
+ import { END } from "../types.js";
2
+ import type { ChannelSchema, NodeDefinition, Edge, ONICheckpointer } from "../types.js";
3
+ import type { BaseStore } from "../store/index.js";
4
+ import type { GuardrailsConfig } from "../guardrails/types.js";
5
+ import type { EventListeners } from "../events/types.js";
6
+ import type { TracerLike } from "../telemetry.js";
7
+ import type { ONIModel } from "../models/types.js";
8
+ import type { SwarmAgentDef, HandoffRecord, SwarmMessage } from "./types.js";
9
+ import type { AgentRegistry } from "./registry.js";
10
+ export interface PregelRunnerInternals<S extends Record<string, unknown>> {
11
+ nodes: Map<string, NodeDefinition<S>>;
12
+ _edgesBySource: Map<string, Edge<S>[]>;
13
+ }
14
+ export type BaseSwarmState = {
15
+ task: string;
16
+ context: Record<string, unknown>;
17
+ agentResults: Record<string, unknown>;
18
+ messages: Array<{
19
+ role: string;
20
+ content: string;
21
+ }>;
22
+ swarmMessages: SwarmMessage[];
23
+ supervisorRound: number;
24
+ currentAgent: string | null;
25
+ done: boolean;
26
+ handoffHistory: HandoffRecord[];
27
+ [key: string]: unknown;
28
+ };
29
+ export declare const baseSwarmChannels: {
30
+ task: import("../types.js").Channel<string>;
31
+ context: import("../types.js").Channel<{}>;
32
+ agentResults: import("../types.js").Channel<{}>;
33
+ messages: import("../types.js").Channel<{
34
+ role: string;
35
+ content: string;
36
+ }[]>;
37
+ swarmMessages: import("../types.js").Channel<SwarmMessage[]>;
38
+ supervisorRound: import("../types.js").Channel<number>;
39
+ currentAgent: import("../types.js").Channel<string | null>;
40
+ done: import("../types.js").Channel<boolean>;
41
+ handoffHistory: import("../types.js").Channel<HandoffRecord[]>;
42
+ };
43
+ export interface HierarchicalConfig<S extends BaseSwarmState> {
44
+ supervisor: {
45
+ model?: ONIModel;
46
+ strategy: "llm" | "rule" | "round-robin";
47
+ rules?: Array<{
48
+ condition: (task: string, context: Record<string, unknown>) => boolean;
49
+ agentId: string;
50
+ }>;
51
+ systemPrompt?: string;
52
+ maxRounds?: number;
53
+ /** Whole-swarm deadline in ms, computed from invoke-time (not compile-time). */
54
+ deadlineMs?: number;
55
+ /** Auto-recover: when an agent errors, route to an idle agent with matching capability. */
56
+ autoRecover?: boolean;
57
+ };
58
+ agents: SwarmAgentDef<S>[];
59
+ channels?: Partial<ChannelSchema<S>>;
60
+ onError?: "fallback" | "throw";
61
+ }
62
+ export interface FanOutConfig<S extends BaseSwarmState> {
63
+ agents: SwarmAgentDef<S>[];
64
+ reducer: (agentResults: Record<string, unknown>, weights?: Record<string, number>) => Partial<S>;
65
+ channels?: Partial<ChannelSchema<S>>;
66
+ /** Max agents to run simultaneously (default: all). */
67
+ maxConcurrency?: number;
68
+ /** Per-agent timeout in ms. Agents that exceed this are marked with _error. */
69
+ timeoutMs?: number;
70
+ /** Per-agent weights passed to the reducer as second argument. */
71
+ weights?: Record<string, number>;
72
+ }
73
+ export interface PipelineConfig<S extends BaseSwarmState> {
74
+ stages: SwarmAgentDef<S>[];
75
+ transitions?: Record<string, (state: S) => string | typeof END>;
76
+ channels?: Partial<ChannelSchema<S>>;
77
+ }
78
+ export interface PeerNetworkConfig<S extends BaseSwarmState> {
79
+ agents: SwarmAgentDef<S>[];
80
+ entrypoint: string;
81
+ handoffs: Record<string, (state: S) => string | typeof END>;
82
+ channels?: Partial<ChannelSchema<S>>;
83
+ }
84
+ export interface MapReduceConfig<S extends BaseSwarmState> {
85
+ mapper: SwarmAgentDef<S>;
86
+ poolSize?: number;
87
+ poolStrategy?: "round-robin" | "least-busy" | "random";
88
+ inputField: keyof S;
89
+ reducer: (agentResults: Record<string, unknown>) => Partial<S>;
90
+ channels?: Partial<ChannelSchema<S>>;
91
+ }
92
+ export interface DebateConfig<S extends BaseSwarmState> {
93
+ debaters: SwarmAgentDef<S>[];
94
+ judge: {
95
+ model: ONIModel;
96
+ systemPrompt?: string;
97
+ maxRounds: number;
98
+ consensusKeyword?: string;
99
+ /** Enable per-round scoring of debaters (scores stored in context.debateScores). */
100
+ scoreDebaters?: boolean;
101
+ /** Auto-consensus when score spread is within this threshold. */
102
+ consensusThreshold?: number;
103
+ };
104
+ topic: keyof S;
105
+ channels?: Partial<ChannelSchema<S>>;
106
+ }
107
+ export interface HierarchicalMeshConfig<S extends BaseSwarmState> {
108
+ coordinator: {
109
+ model: ONIModel;
110
+ strategy: "llm" | "rule" | "round-robin";
111
+ rules?: Array<{
112
+ condition: (task: string, context: Record<string, unknown>) => boolean;
113
+ agentId: string;
114
+ }>;
115
+ systemPrompt?: string;
116
+ maxRounds?: number;
117
+ };
118
+ teams: Record<string, {
119
+ topology: "pipeline" | "peerNetwork";
120
+ agents: SwarmAgentDef<S>[];
121
+ handoffs?: Record<string, (state: S) => string | typeof END>;
122
+ }>;
123
+ channels?: Partial<ChannelSchema<S>>;
124
+ }
125
+ export interface SwarmCompileOpts<S> {
126
+ checkpointer?: ONICheckpointer<S>;
127
+ interruptBefore?: string[];
128
+ interruptAfter?: string[];
129
+ store?: BaseStore;
130
+ guardrails?: GuardrailsConfig;
131
+ listeners?: EventListeners;
132
+ defaults?: {
133
+ nodeTimeout?: number;
134
+ };
135
+ deadLetterQueue?: boolean;
136
+ tracer?: TracerLike;
137
+ }
138
+ export interface SwarmExtensions<S extends Record<string, unknown>> {
139
+ registry: AgentRegistry<S>;
140
+ agentStats: () => ReturnType<AgentRegistry<S>["stats"]>;
141
+ toMermaid: () => string;
142
+ /** Dynamically spawn a new agent into the compiled swarm */
143
+ spawnAgent: (def: SwarmAgentDef<S>) => void;
144
+ /** Remove an agent from the compiled swarm (marks as terminated) */
145
+ removeAgent: (agentId: string) => void;
146
+ }
147
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/swarm/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ // ============================================================
2
+ // src/swarm/config.ts — SwarmGraph topology config types
3
+ // Extracted from graph.ts to keep SwarmGraph class focused.
4
+ // ============================================================
5
+ import { appendList, lastValue, mergeObject } from "../types.js";
6
+ export const baseSwarmChannels = {
7
+ task: lastValue(() => ""),
8
+ context: mergeObject(() => ({})),
9
+ agentResults: mergeObject(() => ({})),
10
+ messages: appendList(() => []),
11
+ swarmMessages: appendList(() => []),
12
+ supervisorRound: lastValue(() => 0),
13
+ currentAgent: lastValue(() => null),
14
+ done: lastValue(() => false),
15
+ handoffHistory: appendList(() => []),
16
+ };
17
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/swarm/config.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,yDAAyD;AACzD,4DAA4D;AAC5D,+DAA+D;AAE/D,OAAO,EAAO,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAqCtE,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,IAAI,EAAa,SAAS,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;IACpC,OAAO,EAAU,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACxC,YAAY,EAAK,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IACxC,QAAQ,EAAS,UAAU,CAAC,GAAG,EAAE,CAAC,EAA8C,CAAC;IACjF,aAAa,EAAI,UAAU,CAAC,GAAG,EAAE,CAAC,EAAoB,CAAC;IACvD,eAAe,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;IACnC,YAAY,EAAK,SAAS,CAAC,GAAkB,EAAE,CAAC,IAAI,CAAC;IACrD,IAAI,EAAa,SAAS,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;IACvC,cAAc,EAAG,UAAU,CAAC,GAAG,EAAE,CAAC,EAAqB,CAAC;CACzD,CAAC"}
@@ -0,0 +1,37 @@
1
+ import type { ChannelSchema } from "../types.js";
2
+ import type { SwarmAgentDef } from "./types.js";
3
+ import type { BaseSwarmState, HierarchicalConfig, FanOutConfig, PipelineConfig, PeerNetworkConfig, MapReduceConfig, DebateConfig, HierarchicalMeshConfig } from "./config.js";
4
+ import type { SwarmGraph } from "./graph.js";
5
+ export declare function buildHierarchical<S extends BaseSwarmState>(config: HierarchicalConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
6
+ export declare function buildFanOut<S extends BaseSwarmState>(config: FanOutConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
7
+ export declare function buildPipeline<S extends BaseSwarmState>(config: PipelineConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
8
+ export declare function buildPeerNetwork<S extends BaseSwarmState>(config: PeerNetworkConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
9
+ export declare function buildMapReduce<S extends BaseSwarmState>(config: MapReduceConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
10
+ export declare function buildDebate<S extends BaseSwarmState>(config: DebateConfig<S>, swarm: SwarmGraph<S>): SwarmGraph<S>;
11
+ export declare function buildHierarchicalMesh<S extends BaseSwarmState>(config: HierarchicalMeshConfig<S>, swarm: SwarmGraph<S>, makeSwarm: (channels?: Partial<ChannelSchema<S>>) => SwarmGraph<S>): SwarmGraph<S>;
12
+ export declare function buildRace<S extends BaseSwarmState>(config: {
13
+ agents: SwarmAgentDef<S>[];
14
+ accept?: (result: unknown) => boolean;
15
+ timeoutMs?: number;
16
+ channels?: Partial<ChannelSchema<S>>;
17
+ }, swarm: SwarmGraph<S>): SwarmGraph<S>;
18
+ export declare function buildDag<S extends BaseSwarmState>(config: {
19
+ agents: SwarmAgentDef<S>[];
20
+ dependencies: Record<string, string[]>;
21
+ channels?: Partial<ChannelSchema<S>>;
22
+ }, swarm: SwarmGraph<S>): SwarmGraph<S>;
23
+ export declare function buildPool<S extends BaseSwarmState>(config: {
24
+ agent: SwarmAgentDef<S>;
25
+ poolSize: number;
26
+ inputField: keyof S;
27
+ reducer: (results: Record<string, unknown>) => Partial<S>;
28
+ channels?: Partial<ChannelSchema<S>>;
29
+ }, swarm: SwarmGraph<S>): SwarmGraph<S>;
30
+ export declare function buildCompose<S extends BaseSwarmState>(config: {
31
+ stages: Array<{
32
+ id: string;
33
+ swarm: SwarmGraph<S>;
34
+ }>;
35
+ channels?: Partial<ChannelSchema<S>>;
36
+ }, swarm: SwarmGraph<S>): SwarmGraph<S>;
37
+ //# sourceMappingURL=factories.d.ts.map