@oni.bot/core 1.0.1 → 1.0.2

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 (59) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/SECURITY.md +2 -2
  3. package/dist/agents/context.d.ts +0 -2
  4. package/dist/agents/context.d.ts.map +1 -1
  5. package/dist/agents/context.js +1 -3
  6. package/dist/agents/context.js.map +1 -1
  7. package/dist/agents/define-agent.d.ts.map +1 -1
  8. package/dist/agents/define-agent.js +92 -39
  9. package/dist/agents/define-agent.js.map +1 -1
  10. package/dist/agents/functional-agent.d.ts.map +1 -1
  11. package/dist/agents/functional-agent.js +0 -7
  12. package/dist/agents/functional-agent.js.map +1 -1
  13. package/dist/agents/types.d.ts +0 -2
  14. package/dist/agents/types.d.ts.map +1 -1
  15. package/dist/checkpointers/postgres.js +4 -4
  16. package/dist/checkpointers/postgres.js.map +1 -1
  17. package/dist/checkpointers/sqlite.js +4 -4
  18. package/dist/checkpointers/sqlite.js.map +1 -1
  19. package/dist/cli/router.js +1 -1
  20. package/dist/config/loader.d.ts.map +1 -1
  21. package/dist/config/loader.js +23 -1
  22. package/dist/config/loader.js.map +1 -1
  23. package/dist/context.d.ts +20 -0
  24. package/dist/context.d.ts.map +1 -1
  25. package/dist/context.js.map +1 -1
  26. package/dist/coordination/request-reply.d.ts +1 -0
  27. package/dist/coordination/request-reply.d.ts.map +1 -1
  28. package/dist/coordination/request-reply.js +13 -1
  29. package/dist/coordination/request-reply.js.map +1 -1
  30. package/dist/graph.d.ts.map +1 -1
  31. package/dist/graph.js +17 -2
  32. package/dist/graph.js.map +1 -1
  33. package/dist/index.js +1 -1
  34. package/dist/mcp/client.js +1 -1
  35. package/dist/pregel.d.ts +2 -0
  36. package/dist/pregel.d.ts.map +1 -1
  37. package/dist/pregel.js +415 -341
  38. package/dist/pregel.js.map +1 -1
  39. package/dist/store/index.d.ts +1 -1
  40. package/dist/store/index.d.ts.map +1 -1
  41. package/dist/store/index.js +28 -5
  42. package/dist/store/index.js.map +1 -1
  43. package/dist/streaming.d.ts +5 -2
  44. package/dist/streaming.d.ts.map +1 -1
  45. package/dist/streaming.js +9 -8
  46. package/dist/streaming.js.map +1 -1
  47. package/dist/swarm/graph.d.ts +1 -0
  48. package/dist/swarm/graph.d.ts.map +1 -1
  49. package/dist/swarm/graph.js +162 -40
  50. package/dist/swarm/graph.js.map +1 -1
  51. package/dist/swarm/pool.d.ts.map +1 -1
  52. package/dist/swarm/pool.js +12 -4
  53. package/dist/swarm/pool.js.map +1 -1
  54. package/dist/tools/define.d.ts.map +1 -1
  55. package/dist/tools/define.js +1 -0
  56. package/dist/tools/define.js.map +1 -1
  57. package/dist/tools/types.d.ts +2 -0
  58. package/dist/tools/types.d.ts.map +1 -1
  59. package/package.json +7 -1
package/CHANGELOG.md CHANGED
@@ -5,6 +5,26 @@ All notable changes to @oni.bot/core are documented here.
5
5
  Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
  This project uses [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.0.2] — 2026-03-13
9
+
10
+ ### Fixed
11
+ - **Budget guardrails:** `BudgetTracker.record()` is now called from `defineAgent` after each `model.chat()` via a RunContext callback; throws `BudgetExceededError` when `maxTokensPerRun`/`maxTokensPerAgent`/`maxCostPerRun` is exceeded.
12
+ - **defineAgent ToolContext:** `store` and stream `emit` now read from the live RunContext instead of being hard-coded to `null`/noop, so tools receive the real store and can emit custom stream events.
13
+ - **parallelSafe enforcement:** `parallelSafe: false` is now preserved through `ToolDefinition` and respected by `defineAgent` — when any tool in a batch has `parallelSafe: false` all calls in that step execute sequentially.
14
+ - **pathMap compile-time validation:** `StateGraph.compile()` now validates conditional edge `pathMap` targets at compile time, throwing `NodeNotFoundError` instead of failing silently at runtime.
15
+ - **spawnAgent in unsupervised swarms:** `spawnAgent()` now throws a clear error when called on a swarm without a supervisor, rather than silently adding an agent that never executes.
16
+ - **removeAgent edge cleanup:** `removeAgent()` now removes stale static edges pointing to the removed node from `_edgesBySource`, preventing `NodeNotFoundError` when Pregel tries to route to a removed agent.
17
+ - **Lifecycle events from defineAgent:** `llm.request`, `llm.response`, `tool.call`, and `tool.result` events are now emitted and audit entries written for every model call and tool execution inside `defineAgent`.
18
+ - **toolPermissions enforcement:** `checkToolPermission()` is called before each tool execution in `defineAgent`, outside the tool's try/catch, so `ToolPermissionError` propagates as a real graph failure.
19
+
20
+ ## [1.0.1] — 2026-03-13
21
+
22
+ ### Fixed
23
+ - **Token streaming (parallel nodes):** Replaced module-level `_tokenHandler` global with `AsyncLocalStorage` — each node in a parallel fan-out now gets its own token handler, preventing tokens from being silently dropped or misrouted to the wrong node.
24
+ - **HITL resume:** `resume()` now looks up the session by `resumeId` (not just the first pending interrupt) and calls `markResumed()` so sessions transition from `"pending"` to `"resumed"` after being handled.
25
+ - **Subgraph checkpointer restore:** The child runner's original `checkpointer` is saved before being overwritten with a `NamespacedCheckpointer` and restored after the subgraph completes, preventing the child's checkpointer from leaking across invocations.
26
+ - **Circuit breaker fallback:** The user-supplied `fallback(state, error)` is now called with the real node state and the `CircuitBreakerOpenError` instance rather than `(undefined, undefined)`.
27
+
8
28
  ## [1.0.0] — 2026-03-13
9
29
 
10
30
  ### Breaking Changes
package/SECURITY.md CHANGED
@@ -4,8 +4,8 @@
4
4
 
5
5
  | Version | Supported |
6
6
  | ------- | ------------------ |
7
- | 0.7.x | :white_check_mark: |
8
- | < 0.7 | :x: |
7
+ | 1.x | :white_check_mark: |
8
+ | < 1.0 | :x: |
9
9
 
10
10
  ## Reporting a Vulnerability
11
11
 
@@ -16,9 +16,7 @@ export interface BuildAgentContextOptions<S = Record<string, unknown>> {
16
16
  remainingSteps: number;
17
17
  onSend: (agent: string, payload: unknown) => void;
18
18
  getInbox: () => SwarmMessageView[];
19
- onRequest: (agent: string, payload: unknown) => Promise<unknown>;
20
19
  onReply: (msg: SwarmMessageView, payload: unknown) => void;
21
- onPublish: (topic: string, data: unknown) => void;
22
20
  }
23
21
  export declare function buildAgentContext<S = Record<string, unknown>>(opts: BuildAgentContextOptions<S>): AgentContext<S>;
24
22
  //# sourceMappingURL=context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agents/context.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,QAAQ,EAMT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAMjE,MAAM,WAAW,wBAAwB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC;IACT,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IAGvB,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,QAAQ,EAAE,MAAM,gBAAgB,EAAE,CAAC;IACnC,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAC3D,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAMD,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC,GAChC,YAAY,CAAC,CAAC,CAAC,CAkHjB"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/agents/context.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,QAAQ,EAMT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAMjE,MAAM,WAAW,wBAAwB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACnE,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IAGtB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC;IACT,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IAGvB,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,QAAQ,EAAE,MAAM,gBAAgB,EAAE,CAAC;IACnC,OAAO,EAAE,CAAC,GAAG,EAAE,gBAAgB,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAC;CAC5D;AAMD,wBAAgB,iBAAiB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC3D,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC,GAChC,YAAY,CAAC,CAAC,CAAC,CA8GjB"}
@@ -8,7 +8,7 @@
8
8
  // buildAgentContext — assemble a full AgentContext
9
9
  // ----------------------------------------------------------------
10
10
  export function buildAgentContext(opts) {
11
- const { model, tools = [], agentName, systemPrompt, config, store, state, streamWriter, remainingSteps, onSend, getInbox, onRequest, onReply, onPublish, } = opts;
11
+ const { model, tools = [], agentName, systemPrompt, config, store, state, streamWriter, remainingSteps, onSend, getInbox, onReply, } = opts;
12
12
  // Convert ToolDefinition[] to LLMToolDef[] for model.chat/stream
13
13
  const llmTools = tools.map((t) => ({
14
14
  name: t.name,
@@ -78,9 +78,7 @@ export function buildAgentContext(opts) {
78
78
  // ---- Coordination ----
79
79
  send: onSend,
80
80
  inbox: getInbox,
81
- request: onRequest,
82
81
  reply: onReply,
83
- publish: onPublish,
84
82
  // ---- Runtime context ----
85
83
  config,
86
84
  store,
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agents/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/agents/context.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,uCAAuC;AACvC,+DAA+D;AAC/D,6DAA6D;AAC7D,oDAAoD;AACpD,+DAA+D;AAuC/D,mEAAmE;AACnE,mDAAmD;AACnD,mEAAmE;AAEnE,MAAM,UAAU,iBAAiB,CAC/B,IAAiC;IAEjC,MAAM,EACJ,KAAK,EACL,KAAK,GAAG,EAAE,EACV,SAAS,EACT,YAAY,EACZ,MAAM,EACN,KAAK,EACL,KAAK,EACL,YAAY,EACZ,cAAc,EACd,MAAM,EACN,QAAQ,EACR,OAAO,GACR,GAAG,IAAI,CAAC;IAET,iEAAiE;IACjE,MAAM,QAAQ,GAAiB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/C,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,UAAU,EAAE,CAAC,CAAC,MAAM;KACrB,CAAC,CAAC,CAAC;IAEJ,oDAAoD;IACpD,SAAS,cAAc,CAAC,QAA2B;QACjD,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YACjD,YAAY;SACb,CAAC;IACJ,CAAC;IAED,OAAO;QACL,4BAA4B;QAE5B,KAAK,CAAC,IAAI,CAAC,QAA2B;YACpC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,UAAU,SAAS,oEAAoE,CACxF,CAAC;YACJ,CAAC;YACD,OAAO,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,CAAC,CAAC,MAAM,CAAC,QAA2B;YACvC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,IAAI,KAAK,CACb,UAAU,SAAS,sEAAsE,CAC1F,CAAC;YACJ,CAAC;YACD,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,CAAC;QAChD,CAAC;QAED,KAAK,CAAC,YAAY,CAChB,KAAyE;YAEzE,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAEvD,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO;wBACL,UAAU,EAAE,IAAI,CAAC,EAAE;wBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,MAAM,EAAE,SAAS,IAAI,CAAC,IAAI,aAAa;wBACvC,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC;oBACH,uEAAuE;oBACvE,uEAAuE;oBACvE,4DAA4D;oBAC5D,MAAM,OAAO,GAAG;wBACd,MAAM;wBACN,KAAK;wBACL,KAAK,EAAE,KAAgC;wBACvC,IAAI,EAAE,CAAC,KAAa,EAAE,IAAa,EAAE,EAAE;4BACrC,IAAI,YAAY;gCAAE,YAAY,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;wBACnD,CAAC;qBACF,CAAC;oBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBACtD,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;gBAC1D,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO;wBACL,UAAU,EAAE,IAAI,CAAC,EAAE;wBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;wBACf,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC;wBACnB,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CACH,CAAC;QACJ,CAAC;QAED,yBAAyB;QAEzB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,QAAQ;QACf,KAAK,EAAE,OAAO;QAEd,4BAA4B;QAE5B,MAAM;QACN,KAAK;QACL,KAAK;QACL,YAAY;QACZ,cAAc;QACd,SAAS;KACV,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"define-agent.d.ts","sourceRoot":"","sources":["../../src/agents/define-agent.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAEhE;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrF,IAAI,EAAE,kBAAkB,GACvB,SAAS,CAAC,CAAC,CAAC,CAuHd"}
1
+ {"version":3,"file":"define-agent.d.ts","sourceRoot":"","sources":["../../src/agents/define-agent.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAIhE;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACrF,IAAI,EAAE,kBAAkB,GACvB,SAAS,CAAC,CAAC,CAAC,CAiLd"}
@@ -4,14 +4,17 @@
4
4
  // Creates an AgentNode that runs a ReAct loop automatically:
5
5
  // 1. Seed messages from state.messages
6
6
  // 2. Loop up to maxSteps:
7
- // a. Call model.chat with messages + systemPrompt + tools
8
- // b. Track token usage, break if maxTokens exceeded
9
- // c. Push assistant message
7
+ // a. Emit llm.request event, call model.chat
8
+ // b. Emit llm.response + audit, record budget usage
9
+ // c. Track token usage; push assistant message
10
10
  // d. If no toolCalls -> break (done)
11
- // e. Execute tools with manual ToolContext
11
+ // e. Execute tools (sequentially if any is parallelSafe: false)
12
+ // - emit tool.call / tool.result events and audit entries
12
13
  // f. Push tool result messages
13
14
  // 3. Return { messages }
14
15
  // ============================================================
16
+ import { _getRunContext } from "../context.js";
17
+ import { checkToolPermission } from "../guardrails/permissions.js";
15
18
  /**
16
19
  * defineAgent — create a declarative ReAct agent
17
20
  *
@@ -28,23 +31,92 @@ export function defineAgent(opts) {
28
31
  parameters: t.schema,
29
32
  }));
30
33
  const _nodeFn = async (state, config) => {
34
+ const runCtx = _getRunContext();
31
35
  // 1. Seed messages from state
32
36
  const existingMessages = (Array.isArray(state.messages)
33
37
  ? state.messages
34
38
  : []);
35
39
  const messages = [...existingMessages];
36
40
  let totalTokens = 0;
41
+ const toolMap = new Map(tools.map((t) => [t.name, t]));
42
+ // Helper: execute a single tool call with events + audit + permission check
43
+ const executeOneCall = async (call) => {
44
+ const tool = toolMap.get(call.name);
45
+ if (!tool) {
46
+ return { toolCallId: call.id, name: call.name, result: `Tool "${call.name}" not found`, isError: true };
47
+ }
48
+ // Permission check — outside try/catch so ToolPermissionError propagates as a real failure
49
+ if (runCtx?.toolPermissions) {
50
+ checkToolPermission(runCtx.toolPermissions, name, call.name);
51
+ }
52
+ runCtx?._emitEvent?.({
53
+ type: "tool.call",
54
+ agent: name,
55
+ tool: call.name,
56
+ timestamp: Date.now(),
57
+ input: call.args,
58
+ });
59
+ const toolStart = Date.now();
60
+ try {
61
+ const toolCtx = {
62
+ config: config ?? {},
63
+ store: runCtx?.store ?? null,
64
+ state: state,
65
+ emit: (event, data) => runCtx?.writer?.emit(event, data),
66
+ };
67
+ const result = await tool.execute(call.args, toolCtx);
68
+ const duration = Date.now() - toolStart;
69
+ runCtx?._emitEvent?.({ type: "tool.result", agent: name, tool: call.name, timestamp: Date.now(), duration, status: "success", output: result });
70
+ runCtx?._auditRecord?.({ timestamp: Date.now(), agent: name, action: "tool.result", data: { tool: call.name, status: "success" } });
71
+ return { toolCallId: call.id, name: call.name, result };
72
+ }
73
+ catch (err) {
74
+ const duration = Date.now() - toolStart;
75
+ runCtx?._emitEvent?.({ type: "tool.result", agent: name, tool: call.name, timestamp: Date.now(), duration, status: "error", error: String(err) });
76
+ runCtx?._auditRecord?.({ timestamp: Date.now(), agent: name, action: "tool.result", data: { tool: call.name, status: "error", error: String(err) } });
77
+ return { toolCallId: call.id, name: call.name, result: String(err), isError: true };
78
+ }
79
+ };
37
80
  // 2. ReAct loop
38
81
  for (let step = 0; step < maxSteps; step++) {
39
- // a. Call model.chat
82
+ // a. Emit llm.request then call model.chat
83
+ runCtx?._emitEvent?.({
84
+ type: "llm.request",
85
+ agent: name,
86
+ model: model.modelId,
87
+ timestamp: Date.now(),
88
+ messageCount: messages.length,
89
+ hasTools: llmTools.length > 0,
90
+ });
91
+ const llmStart = Date.now();
40
92
  const response = await model.chat({
41
93
  messages,
42
94
  tools: llmTools.length > 0 ? llmTools : undefined,
43
95
  systemPrompt,
44
96
  });
45
- // b. Track token usage
97
+ const llmDuration = Date.now() - llmStart;
98
+ // b. Emit llm.response + audit + budget
99
+ runCtx?._emitEvent?.({
100
+ type: "llm.response",
101
+ agent: name,
102
+ model: model.modelId,
103
+ timestamp: Date.now(),
104
+ duration: llmDuration,
105
+ usage: response.usage,
106
+ stopReason: response.stopReason,
107
+ hasToolCalls: (response.toolCalls?.length ?? 0) > 0,
108
+ });
109
+ runCtx?._auditRecord?.({
110
+ timestamp: Date.now(),
111
+ agent: name,
112
+ action: "llm.response",
113
+ data: { model: model.modelId, inputTokens: response.usage.inputTokens, outputTokens: response.usage.outputTokens },
114
+ });
115
+ // Record usage — throws BudgetExceededError if over budget
116
+ runCtx?._recordUsage?.(name, model.modelId, response.usage);
117
+ // c. Track token usage
46
118
  totalTokens += response.usage.inputTokens + response.usage.outputTokens;
47
- // c. Push assistant message
119
+ // d. Push assistant message
48
120
  const assistantMsg = {
49
121
  role: "assistant",
50
122
  content: response.content,
@@ -57,42 +129,23 @@ export function defineAgent(opts) {
57
129
  if (maxTokens !== undefined && totalTokens >= maxTokens) {
58
130
  break;
59
131
  }
60
- // d. If no tool calls -> done
132
+ // e. If no tool calls -> done
61
133
  if (!response.toolCalls || response.toolCalls.length === 0) {
62
134
  break;
63
135
  }
64
- // e. Execute tools with manual ToolContext
65
- const toolMap = new Map(tools.map((t) => [t.name, t]));
66
- const toolResults = await Promise.all(response.toolCalls.map(async (call) => {
67
- const tool = toolMap.get(call.name);
68
- if (!tool) {
69
- return {
70
- toolCallId: call.id,
71
- name: call.name,
72
- result: `Tool "${call.name}" not found`,
73
- isError: true,
74
- };
75
- }
76
- try {
77
- const toolCtx = {
78
- config: config ?? {},
79
- store: null,
80
- state: state,
81
- emit: () => { },
82
- };
83
- const result = await tool.execute(call.args, toolCtx);
84
- return { toolCallId: call.id, name: call.name, result };
136
+ // f. Execute tools sequentially if any has parallelSafe: false, otherwise in parallel
137
+ const hasSafetyConstraint = response.toolCalls.some((call) => toolMap.get(call.name)?.parallelSafe === false);
138
+ let toolResults;
139
+ if (hasSafetyConstraint) {
140
+ toolResults = [];
141
+ for (const call of response.toolCalls) {
142
+ toolResults.push(await executeOneCall(call));
85
143
  }
86
- catch (err) {
87
- return {
88
- toolCallId: call.id,
89
- name: call.name,
90
- result: String(err),
91
- isError: true,
92
- };
93
- }
94
- }));
95
- // f. Push tool result messages
144
+ }
145
+ else {
146
+ toolResults = await Promise.all(response.toolCalls.map((call) => executeOneCall(call)));
147
+ }
148
+ // g. Push tool result messages
96
149
  for (const tr of toolResults) {
97
150
  messages.push({
98
151
  role: "tool",
@@ -1 +1 @@
1
- {"version":3,"file":"define-agent.js","sourceRoot":"","sources":["../../src/agents/define-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"define-agent.js","sourceRoot":"","sources":["../../src/agents/define-agent.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"functional-agent.d.ts","sourceRoot":"","sources":["../../src/agents/functional-agent.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,EAAoB,MAAM,YAAY,CAAC;AAQpG,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAElF;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,sBAAsB,EAClD,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACnB,SAAS,CAAC,CAAC,CAAC,CAkHd"}
1
+ {"version":3,"file":"functional-agent.d.ts","sourceRoot":"","sources":["../../src/agents/functional-agent.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,EAAoB,MAAM,YAAY,CAAC;AAQpG,KAAK,YAAY,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;AAElF;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/E,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,sBAAsB,EAClD,EAAE,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,GACnB,SAAS,CAAC,CAAC,CAAC,CAyGd"}
@@ -69,18 +69,11 @@ export function agent(name, fnOrOpts, fn) {
69
69
  return [];
70
70
  return msgs.filter((m) => m !== null && typeof m === "object");
71
71
  },
72
- onRequest: async (_agent, _payload) => {
73
- // Request/response coordination will be fully wired in Task 12
74
- throw new Error("request() is not yet wired — see Task 12 (enhanced coordination).");
75
- },
76
72
  onReply: (msg, payload) => {
77
73
  if (msg._replyChannel) {
78
74
  msg._replyChannel(payload);
79
75
  }
80
76
  },
81
- onPublish: (_topic, _data) => {
82
- // Pub/sub coordination will be fully wired in Task 12
83
- },
84
77
  });
85
78
  // Execute the user handler
86
79
  const result = await handler(ctx);
@@ -1 +1 @@
1
- {"version":3,"file":"functional-agent.js","sourceRoot":"","sources":["../../src/agents/functional-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functional-agent.js","sourceRoot":"","sources":["../../src/agents/functional-agent.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,qDAAqD;AACrD,+DAA+D;AAC/D,8DAA8D;AAC9D,EAAE;AACF,SAAS;AACT,6CAA6C;AAC7C,+DAA+D;AAC/D,EAAE;AACF,8DAA8D;AAC9D,6DAA6D;AAC7D,+DAA+D;AAI/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,mEAAmE;AACnE,OAAO,EACL,cAAc,GACf,MAAM,eAAe,CAAC;AAIvB;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CACnB,IAAY,EACZ,QAAkD,EAClD,EAAoB;IAEpB,IAAI,OAAwB,CAAC;IAC7B,IAAI,IAAI,GAA2B,EAAE,CAAC;IAEtC,IAAI,OAAO,QAAQ,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,GAAG,QAAQ,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,QAAQ,CAAC;QAChB,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,MAAM,IAAI,KAAK,CACb,UAAU,IAAI,kEAAkE,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IAED,MAAM,EACJ,KAAK,EACL,KAAK,GAAG,EAAE,EACV,YAAY,EACZ,QAAQ,GAAG,EAAE,EACb,SAAS,GACV,GAAG,IAAI,CAAC;IAET,MAAM,OAAO,GAAG,KAAK,EAAE,KAAQ,EAAE,MAAkB,EAAuB,EAAE;QAC1E,2EAA2E;QAC3E,MAAM,eAAe,GAA+D,EAAE,CAAC;QAEvF,8EAA8E;QAC9E,MAAM,MAAM,GAAG,cAAc,EAAE,CAAC;QAEhC,MAAM,eAAe,GAAG,MAAM,IAAI,MAAM,EAAE,MAAM,IAAI,EAAE,CAAC;QACvD,MAAM,cAAc,GAAG,MAAM,EAAE,KAAK,IAAI,IAAI,CAAC;QAC7C,MAAM,eAAe,GAAG,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC;QAC/C,MAAM,kBAAkB,GAAG,MAAM;YAC/B,CAAC,CAAC,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,IAAI;YACrC,CAAC,CAAC,QAAQ,CAAC;QAEb,MAAM,GAAG,GAAG,iBAAiB,CAAI;YAC/B,KAAK;YACL,KAAK;YACL,SAAS,EAAE,IAAI;YACf,YAAY;YACZ,MAAM,EAAE,eAAe;YACvB,KAAK,EAAE,cAAc;YACrB,KAAK;YACL,YAAY,EAAE,eAAe;YAC7B,cAAc,EAAE,kBAAkB;YAElC,MAAM,EAAE,CAAC,KAAa,EAAE,OAAgB,EAAE,EAAE;gBAC1C,eAAe,CAAC,IAAI,CAAC;oBACnB,EAAE,EAAE,KAAK;oBACT,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,QAAQ,EAAE,GAAG,EAAE;gBACb,6CAA6C;gBAC7C,MAAM,IAAI,GAAI,KAAiC,CAAC,aAAa,CAAC;gBAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;oBAAE,OAAO,EAAE,CAAC;gBACpC,OAAO,IAAI,CAAC,MAAM,CAChB,CAAC,CAAmB,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,CACvC,CAAC;YAC1B,CAAC;YAED,OAAO,EAAE,CAAC,GAAqB,EAAE,OAAgB,EAAE,EAAE;gBACnD,IAAI,GAAG,CAAC,aAAa,EAAE,CAAC;oBACtB,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;SACF,CAAC,CAAC;QAEH,2BAA2B;QAC3B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QAElC,+CAA+C;QAC/C,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAE,MAAkC,CAAC,aAAa,CAAC;gBAC/E,CAAC,CAAE,MAAkC,CAAC,aAA0B;gBAChE,CAAC,CAAC,EAAE,CAAC;YACN,MAAkC,CAAC,aAAa,GAAG;gBAClD,GAAG,QAAQ;gBACX,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7B,EAAE,EAAE,GAAG,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;oBACrE,IAAI,EAAE,IAAI;oBACV,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO;QACL,IAAI;QACJ,KAAK;QACL,KAAK;QACL,YAAY;QACZ,QAAQ;QACR,SAAS;QACT,OAAO;QACP,QAAQ,EAAE,IAAI;KACf,CAAC;AACJ,CAAC"}
@@ -22,9 +22,7 @@ export interface AgentContext<S = Record<string, unknown>> {
22
22
  }>): Promise<ToolResult[]>;
23
23
  send(agent: string, payload: unknown): void;
24
24
  inbox(): SwarmMessageView[];
25
- request(agent: string, payload: unknown): Promise<unknown>;
26
25
  reply(msg: SwarmMessageView, payload: unknown): void;
27
- publish(topic: string, data: unknown): void;
28
26
  config: ONIConfig;
29
27
  store: BaseStore | null;
30
28
  state: S;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agents/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/agents/types.ts"],"names":[],"mappings":"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"}
@@ -61,12 +61,9 @@ export class PostgresCheckpointer {
61
61
  params.push(opts.before);
62
62
  }
63
63
  sql += " ORDER BY step ASC";
64
- if (opts?.limit !== undefined) {
65
- sql += ` LIMIT $${paramIdx++}`;
66
- params.push(opts.limit);
67
- }
68
64
  const { rows } = await this.pool.query(sql, params);
69
65
  let items = rows.map(r => this.deserialize(r));
66
+ // Apply filter before limit so limit counts post-filter rows (matches MemoryCheckpointer)
70
67
  if (opts?.filter) {
71
68
  items = items.filter(c => {
72
69
  if (!c.metadata)
@@ -74,6 +71,9 @@ export class PostgresCheckpointer {
74
71
  return Object.entries(opts.filter).every(([k, v]) => c.metadata[k] === v);
75
72
  });
76
73
  }
74
+ if (opts?.limit !== undefined) {
75
+ items = items.slice(0, opts.limit);
76
+ }
77
77
  return items;
78
78
  }
79
79
  async delete(threadId) {
@@ -1 +1 @@
1
- {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/checkpointers/postgres.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"postgres.js","sourceRoot":"","sources":["../../src/checkpointers/postgres.ts"],"names":[],"mappings":"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"}
@@ -61,12 +61,9 @@ export class SqliteCheckpointer {
61
61
  params.push(opts.before);
62
62
  }
63
63
  sql += " ORDER BY step ASC";
64
- if (opts?.limit !== undefined) {
65
- sql += " LIMIT ?";
66
- params.push(opts.limit);
67
- }
68
64
  let items = this.db.prepare(sql).all(...params)
69
65
  .map(r => this.deserialize(r));
66
+ // Apply filter before limit so limit counts post-filter rows (matches MemoryCheckpointer)
70
67
  if (opts?.filter) {
71
68
  items = items.filter(c => {
72
69
  if (!c.metadata)
@@ -74,6 +71,9 @@ export class SqliteCheckpointer {
74
71
  return Object.entries(opts.filter).every(([k, v]) => c.metadata[k] === v);
75
72
  });
76
73
  }
74
+ if (opts?.limit !== undefined) {
75
+ items = items.slice(0, opts.limit);
76
+ }
77
77
  return items;
78
78
  }
79
79
  async delete(threadId) {
@@ -1 +1 @@
1
- {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/checkpointers/sqlite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqlite.js","sourceRoot":"","sources":["../../src/checkpointers/sqlite.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,sCAAsC;AACtC,+DAA+D;AAC/D,uDAAuD;AACvD,EAAE;AACF,+BAA+B;AAC/B,yCAAyC;AACzC,+DAA+D;AAG/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAQtD,MAAM,OAAO,kBAAkB;IACQ;IAArC,YAAqC,EAAY;QAAZ,OAAE,GAAF,EAAE,CAAU;IAAG,CAAC;IAErD,MAAM,CAAC,KAAK,CAAC,MAAM,CAAI,MAAc;QACnC,IAAI,EAA+B,CAAC;QACpC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAA0B,CAAC,CAAC;YACrD,EAAE,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC;QAC1B,EAAE,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QAC/D,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;KAcP,CAAC,CAAC;QACH,OAAO,IAAI,kBAAkB,CAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,QAAgB;QACxB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CAAC,4EAA4E,CAAC;aACrF,GAAG,CAAC,QAAQ,CAAwC,CAAC;QACxD,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAoB;QAC5B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC;;;;KAIf,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,IAAI,IAAI,EAC5C,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,EACtD,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,EACrC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAChD,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,EAC1D,EAAE,CAAC,SAAS,CAAC,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,QAAgB,EAAE,IAA4B;QACvD,IAAI,GAAG,GAAG,iDAAiD,CAAC;QAC5D,MAAM,MAAM,GAAc,CAAC,QAAQ,CAAC,CAAC;QAErC,IAAI,IAAI,EAAE,MAAM,KAAK,SAAS,EAAE,CAAC;YAC/B,GAAG,IAAI,eAAe,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,CAAC;QAED,GAAG,IAAI,oBAAoB,CAAC;QAE5B,IAAI,KAAK,GAAI,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAA+B;aAC3E,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;QAEjC,0FAA0F;QAC1F,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;YACjB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACvB,IAAI,CAAC,CAAC,CAAC,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBAC9B,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YAC9E,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,IAAI,EAAE,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,QAAgB;QAC3B,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjF,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,IAAY;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,4DAA4D,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAwC,CAAC;QACrJ,OAAO,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAED,KAAK,KAAW,IAAI,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAE1B,WAAW,CAAC,GAA4B;QAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,CAAW,CAAC;QAC5C,MAAM,SAAS,GAAG,CAAI,KAAa,EAAE,GAAY,EAAK,EAAE;YACtD,IAAI,CAAC;gBACH,OAAO,IAAI,CAAC,KAAK,CAAC,GAAa,CAAM,CAAC;YACxC,CAAC;YAAC,MAAM,CAAC;gBACP,MAAM,IAAI,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,KAAK,wCAAwC,CAAC,CAAC;YAChH,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;QACjC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,sBAAsB,CAAC,QAAQ,EAAE,yCAAyC,CAAC,CAAC;QACxF,CAAC;QAED,OAAO;YACL,QAAQ;YACR,IAAI;YACJ,OAAO,EAAS,GAAG,CAAC,UAAU,CAAmB,IAAI,SAAS;YAC9D,KAAK,EAAU,SAAS,CAAI,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAClD,SAAS,EAAM,SAAS,CAAW,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;YACnE,YAAY,EAAG,SAAS,CAAyD,eAAe,EAAE,GAAG,CAAC,eAAe,CAAC,CAAC;YACvH,QAAQ,EAAO,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAA0B,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAC5G,aAAa,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAA6D,gBAAgB,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YACjK,SAAS;SACV,CAAC;IACJ,CAAC;CACF"}
@@ -54,7 +54,7 @@ export function parseArgs(argv) {
54
54
  }
55
55
  return { command, positional, flags };
56
56
  }
57
- const VERSION = "0.8.1";
57
+ const VERSION = "1.0.1";
58
58
  export function getVersionText() {
59
59
  return `@oni.bot/core v${VERSION}`;
60
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAI/D;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA+DtD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGhD;AAID;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GACnB,CAAC,CA2BH;AAQD;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,SAAS,CAAC,CA0BpB"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAI/D;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CA+DtD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAGhD;AAID;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzD,IAAI,EAAE,CAAC,EACP,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,GACnB,CAAC,CA2BH;AAkCD;;;;;;;;;;GAUG;AACH,wBAAsB,UAAU,CAC9B,OAAO,CAAC,EAAE,iBAAiB,GAC1B,OAAO,CAAC,SAAS,CAAC,CA0BpB"}
@@ -113,6 +113,28 @@ export function deepMerge(base, override) {
113
113
  function isPlainObject(val) {
114
114
  return val !== null && typeof val === "object" && !Array.isArray(val);
115
115
  }
116
+ // ─── Env-var Expansion ─────────────────────────────────────────────────────
117
+ /**
118
+ * Recursively expand `${VAR}` references in string values using process.env.
119
+ * Unresolved variables are left as-is (e.g. `${MISSING}` stays `${MISSING}`).
120
+ * Non-string values pass through unchanged.
121
+ */
122
+ function expandEnvVars(value) {
123
+ if (typeof value === "string") {
124
+ return value.replace(/\$\{([^}]+)\}/g, (match, varName) => process.env[varName] ?? match);
125
+ }
126
+ if (Array.isArray(value)) {
127
+ return value.map(expandEnvVars);
128
+ }
129
+ if (isPlainObject(value)) {
130
+ const result = {};
131
+ for (const [k, v] of Object.entries(value)) {
132
+ result[k] = expandEnvVars(v);
133
+ }
134
+ return result;
135
+ }
136
+ return value;
137
+ }
116
138
  // ─── Config Loading ────────────────────────────────────────────────────────
117
139
  /**
118
140
  * Load and merge ONI configuration from hierarchical paths.
@@ -168,7 +190,7 @@ async function loadSingleConfig(path) {
168
190
  const text = await readFile(path, "utf-8");
169
191
  const parsed = parseJsonc(text);
170
192
  if (isPlainObject(parsed)) {
171
- return parsed;
193
+ return expandEnvVars(parsed);
172
194
  }
173
195
  return null;
174
196
  }
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/config/loader.ts"],"names":[],"mappings":"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"}
package/dist/context.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { ONIConfig } from "./types.js";
2
2
  import type { BaseStore } from "./store/index.js";
3
+ import type { ToolPermissions } from "./tools/types.js";
3
4
  export interface StreamWriter {
4
5
  emit(name: string, data: unknown): void;
5
6
  token(token: string): void;
@@ -13,6 +14,25 @@ export interface RunContext {
13
14
  parentUpdates: Array<Partial<unknown>>;
14
15
  step: number;
15
16
  recursionLimit: number;
17
+ /** Tool permissions from guardrails config — checked by defineAgent before executing tools. */
18
+ toolPermissions?: ToolPermissions;
19
+ /** Record model token usage into the budget tracker — may throw BudgetExceededError */
20
+ _recordUsage?: (agentName: string, modelId: string, usage: {
21
+ inputTokens: number;
22
+ outputTokens: number;
23
+ }) => void;
24
+ /** Emit a lifecycle event from within a node execution */
25
+ _emitEvent?: (event: {
26
+ type: string;
27
+ [key: string]: unknown;
28
+ }) => void;
29
+ /** Record an audit entry from within a node execution */
30
+ _auditRecord?: (entry: {
31
+ timestamp: number;
32
+ agent: string;
33
+ action: string;
34
+ data: Record<string, unknown>;
35
+ }) => void;
16
36
  }
17
37
  export declare function _runWithContext<T>(ctx: RunContext, fn: () => T | Promise<T>): Promise<T>;
18
38
  export declare function _getRunContext(): RunContext | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGlD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;CACxB;AAMD,wBAAgB,eAAe,CAAC,CAAC,EAC/B,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,cAAc,IAAI,UAAU,GAAG,SAAS,CAEvD;AAID,wBAAgB,SAAS,IAAI,SAAS,CAIrC;AAED,wBAAgB,QAAQ,IAAI,SAAS,GAAG,IAAI,CAI3C;AAED,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAIrD;AAED,wBAAgB,eAAe,CAAC,CAAC,KAAK,CAAC,CAItC;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD,MAAM,WAAW,YAAY;IAC3B,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC;IACxC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,SAAS,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,YAAY,GAAG,IAAI,CAAC;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,WAAW,EAAE,OAAO,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,+FAA+F;IAC/F,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,uFAAuF;IACvF,YAAY,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAClH,0DAA0D;IAC1D,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC;IACvE,yDAAyD;IACzD,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;CACrH;AAMD,wBAAgB,eAAe,CAAC,CAAC,EAC/B,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,GACvB,OAAO,CAAC,CAAC,CAAC,CAEZ;AAED,wBAAgB,cAAc,IAAI,UAAU,GAAG,SAAS,CAEvD;AAID,wBAAgB,SAAS,IAAI,SAAS,CAIrC;AAED,wBAAgB,QAAQ,IAAI,SAAS,GAAG,IAAI,CAI3C;AAED,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAIrD;AAED,wBAAgB,eAAe,CAAC,CAAC,KAAK,CAAC,CAItC;AAED,wBAAgB,iBAAiB,IAAI,MAAM,CAI1C"}
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,sDAAsD;AACtD,+DAA+D;AAC/D,yDAAyD;AACzD,uDAAuD;AACvD,+DAA+D;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAqBrD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAc,CAAC;AAEpD,4DAA4D;AAE5D,MAAM,UAAU,eAAe,CAC7B,GAAe,EACf,EAAwB;IAExB,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED,6BAA6B;AAE7B,MAAM,UAAU,SAAS;IACvB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACnF,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAClF,OAAO,GAAG,CAAC,KAAK,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACzF,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACzF,OAAO,GAAG,CAAC,KAAU,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC3F,OAAO,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC;AACvC,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../src/context.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,sDAAsD;AACtD,+DAA+D;AAC/D,yDAAyD;AACzD,uDAAuD;AACvD,+DAA+D;AAE/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AA8BrD,MAAM,OAAO,GAAG,IAAI,iBAAiB,EAAc,CAAC;AAEpD,4DAA4D;AAE5D,MAAM,UAAU,eAAe,CAC7B,GAAe,EACf,EAAwB;IAExB,OAAO,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAED,6BAA6B;AAE7B,MAAM,UAAU,SAAS;IACvB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IACnF,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,QAAQ;IACtB,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAClF,OAAO,GAAG,CAAC,KAAK,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACzF,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,eAAe;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;IACzF,OAAO,GAAG,CAAC,KAAU,CAAC;AACxB,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC/B,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,+DAA+D,CAAC,CAAC;IAC3F,OAAO,GAAG,CAAC,cAAc,GAAG,GAAG,CAAC,IAAI,CAAC;AACvC,CAAC"}
@@ -17,6 +17,7 @@ export interface PendingRequest {
17
17
  export declare class RequestReplyBroker {
18
18
  private pending;
19
19
  private resolvers;
20
+ private timeouts;
20
21
  /**
21
22
  * Create a request from one agent to another.
22
23
  * Returns the request id, a promise that resolves with the reply,