@agentick/core 0.4.0 → 0.6.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 (98) hide show
  1. package/README.md +39 -12
  2. package/dist/.tsbuildinfo.build +1 -1
  3. package/dist/agentick-instance.d.ts.map +1 -1
  4. package/dist/agentick-instance.js +2 -1
  5. package/dist/agentick-instance.js.map +1 -1
  6. package/dist/app/session.d.ts +5 -0
  7. package/dist/app/session.d.ts.map +1 -1
  8. package/dist/app/session.js +205 -106
  9. package/dist/app/session.js.map +1 -1
  10. package/dist/app/types.d.ts +20 -4
  11. package/dist/app/types.d.ts.map +1 -1
  12. package/dist/com/object-model.d.ts +12 -0
  13. package/dist/com/object-model.d.ts.map +1 -1
  14. package/dist/com/object-model.js +35 -3
  15. package/dist/com/object-model.js.map +1 -1
  16. package/dist/compiler/collector.d.ts.map +1 -1
  17. package/dist/compiler/collector.js +15 -5
  18. package/dist/compiler/collector.js.map +1 -1
  19. package/dist/compiler/fiber-compiler.d.ts +2 -0
  20. package/dist/compiler/fiber-compiler.d.ts.map +1 -1
  21. package/dist/compiler/fiber-compiler.js +29 -1
  22. package/dist/compiler/fiber-compiler.js.map +1 -1
  23. package/dist/compiler/index.d.ts +1 -1
  24. package/dist/compiler/index.d.ts.map +1 -1
  25. package/dist/compiler/index.js.map +1 -1
  26. package/dist/compiler/structure-renderer.d.ts.map +1 -1
  27. package/dist/compiler/structure-renderer.js +4 -15
  28. package/dist/compiler/structure-renderer.js.map +1 -1
  29. package/dist/compiler/types.d.ts +2 -10
  30. package/dist/compiler/types.d.ts.map +1 -1
  31. package/dist/compiler/types.js.map +1 -1
  32. package/dist/engine/tool-executor.d.ts +6 -1
  33. package/dist/engine/tool-executor.d.ts.map +1 -1
  34. package/dist/engine/tool-executor.js +16 -1
  35. package/dist/engine/tool-executor.js.map +1 -1
  36. package/dist/hooks/index.d.ts +2 -2
  37. package/dist/hooks/index.d.ts.map +1 -1
  38. package/dist/hooks/index.js +2 -2
  39. package/dist/hooks/index.js.map +1 -1
  40. package/dist/hooks/knob.d.ts +12 -0
  41. package/dist/hooks/knob.d.ts.map +1 -1
  42. package/dist/hooks/knob.js +32 -2
  43. package/dist/hooks/knob.js.map +1 -1
  44. package/dist/hooks/knobs-component.d.ts +1 -0
  45. package/dist/hooks/knobs-component.d.ts.map +1 -1
  46. package/dist/hooks/knobs-component.js +5 -1
  47. package/dist/hooks/knobs-component.js.map +1 -1
  48. package/dist/hooks/lifecycle.d.ts +34 -43
  49. package/dist/hooks/lifecycle.d.ts.map +1 -1
  50. package/dist/hooks/lifecycle.js +46 -43
  51. package/dist/hooks/lifecycle.js.map +1 -1
  52. package/dist/hooks/runtime-context.d.ts +18 -8
  53. package/dist/hooks/runtime-context.d.ts.map +1 -1
  54. package/dist/hooks/runtime-context.js +39 -9
  55. package/dist/hooks/runtime-context.js.map +1 -1
  56. package/dist/hooks/types.d.ts +55 -14
  57. package/dist/hooks/types.d.ts.map +1 -1
  58. package/dist/hooks/types.js.map +1 -1
  59. package/dist/index.d.ts +2 -2
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +1 -1
  62. package/dist/index.js.map +1 -1
  63. package/dist/jsx/components/timeline.d.ts.map +1 -1
  64. package/dist/jsx/components/timeline.js +5 -10
  65. package/dist/jsx/components/timeline.js.map +1 -1
  66. package/dist/jsx/jsx-runtime.d.ts +6 -0
  67. package/dist/jsx/jsx-runtime.d.ts.map +1 -1
  68. package/dist/jsx/jsx-runtime.js.map +1 -1
  69. package/dist/model/adapter-helpers.d.ts +0 -4
  70. package/dist/model/adapter-helpers.d.ts.map +1 -1
  71. package/dist/model/adapter-helpers.js +0 -9
  72. package/dist/model/adapter-helpers.js.map +1 -1
  73. package/dist/model/stream-accumulator.d.ts +4 -0
  74. package/dist/model/stream-accumulator.d.ts.map +1 -1
  75. package/dist/model/stream-accumulator.js +59 -0
  76. package/dist/model/stream-accumulator.js.map +1 -1
  77. package/dist/testing/compile-agent.d.ts +4 -3
  78. package/dist/testing/compile-agent.d.ts.map +1 -1
  79. package/dist/testing/compile-agent.js +2 -2
  80. package/dist/testing/compile-agent.js.map +1 -1
  81. package/dist/testing/mocks.d.ts +10 -0
  82. package/dist/testing/mocks.d.ts.map +1 -1
  83. package/dist/testing/mocks.js +30 -0
  84. package/dist/testing/mocks.js.map +1 -1
  85. package/dist/testing/render-agent.d.ts.map +1 -1
  86. package/dist/testing/render-agent.js +3 -11
  87. package/dist/testing/render-agent.js.map +1 -1
  88. package/dist/testing/test-runner.d.ts +7 -7
  89. package/dist/testing/test-runner.js +8 -8
  90. package/dist/tool/tool.d.ts +31 -1
  91. package/dist/tool/tool.d.ts.map +1 -1
  92. package/dist/tool/tool.js +53 -6
  93. package/dist/tool/tool.js.map +1 -1
  94. package/dist/utils/token-estimate.d.ts +4 -3
  95. package/dist/utils/token-estimate.d.ts.map +1 -1
  96. package/dist/utils/token-estimate.js +16 -15
  97. package/dist/utils/token-estimate.js.map +1 -1
  98. package/package.json +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"agentick-instance.d.ts","sourceRoot":"","sources":["../src/agentick-instance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EACL,KAAK,UAAU,EACf,KAAK,iBAAiB,EAEtB,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,GAAG,EACH,QAAQ,EACR,UAAU,EAGV,sBAAsB,EACtB,iBAAiB,EAGlB,MAAM,aAAa,CAAC;AAGrB;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;CACvD;AAqfD;;;GAGG;AACH,KAAK,UAAU,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClD,OAAO,EAAE;IAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,EAC9E,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAChB,sBAAsB,CAAC;AAE5B;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,kBAAkB;IACzD,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,kBAAkB,CAAC,CAAoB;IAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE1C;;OAEG;gBACS,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;KAAE;IA+B/D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,GAAG,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI;IAM1D;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE;IAsBrD;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,iBAAiB,IAAI,iBAAiB,GAAG,SAAS,CAErD;IAED;;OAEG;IACH,IAAI,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,EAE5D;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,OAAO,GAAE,6BAAkC,GAAG,gBAAgB;IAerE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,OAAO,GAAE,UAAe,GACvB,GAAG,CAAC,CAAC,CAAC;CAKV;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,QAAQ,kBAAyB,CAAC;AAE/C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,GAjDV,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aAC9B,iBAAiB,CAAC,CAAC,CAAC,YACtB,UAAU,KAClB,GAAG,CAAC,CAAC,CA8CgD,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,GAAG,6BAA8B,CAAC"}
1
+ {"version":3,"file":"agentick-instance.d.ts","sourceRoot":"","sources":["../src/agentick-instance.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EACL,KAAK,UAAU,EACf,KAAK,iBAAiB,EAEtB,KAAK,SAAS,EACf,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EACV,GAAG,EACH,QAAQ,EACR,UAAU,EAGV,sBAAsB,EACtB,iBAAiB,EAGlB,MAAM,aAAa,CAAC;AAGrB;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,iDAAiD;IACjD,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE,CAAC;CACvD;AAufD;;;GAGG;AACH,KAAK,UAAU,GAAG,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClD,OAAO,EAAE;IAAE,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAA;CAAE,EAC9E,KAAK,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,KAChB,sBAAsB,CAAC;AAE5B;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,kBAAkB;IACzD,OAAO,CAAC,kBAAkB,CAA0C;IACpE,OAAO,CAAC,kBAAkB,CAAC,CAAoB;IAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAqCG;IACH,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;IAE1C;;OAEG;gBACS,OAAO,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,iBAAiB,CAAA;KAAE;IA+B/D;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,GAAG,CAAC,GAAG,EAAE,aAAa,EAAE,GAAG,UAAU,EAAE,UAAU,EAAE,GAAG,IAAI;IAM1D;;;;;;;;;;OAUG;IACH,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,EAAE;IAsBrD;;;OAGG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,IAAI,iBAAiB,IAAI,iBAAiB,GAAG,SAAS,CAErD;IAED;;OAEG;IACH,IAAI,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,SAAS,EAE5D;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,MAAM,CAAC,OAAO,GAAE,6BAAkC,GAAG,gBAAgB;IAerE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACH,SAAS,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACzC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,EAC/B,OAAO,GAAE,UAAe,GACvB,GAAG,CAAC,CAAC,CAAC;CAKV;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,QAAQ,kBAAyB,CAAC;AAE/C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,SAAS,GAjDV,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,aAC9B,iBAAiB,CAAC,CAAC,CAAC,YACtB,UAAU,KAClB,GAAG,CAAC,CAAC,CA8CgD,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,GAAG,6BAA8B,CAAC"}
@@ -274,7 +274,7 @@ class AppImpl {
274
274
  name: "app:run",
275
275
  handleFactory: false,
276
276
  }, async (input) => {
277
- const { props = {}, messages = [], history = [], maxTicks, signal, devTools, recording, } = input;
277
+ const { props = {}, messages = [], history = [], maxTicks, signal, devTools, recording, tools, } = input;
278
278
  const sessionOptions = {
279
279
  devTools: devTools ?? this.options.devTools,
280
280
  recording,
@@ -282,6 +282,7 @@ class AppImpl {
282
282
  const executionOptions = {
283
283
  maxTicks,
284
284
  signal,
285
+ executionTools: tools,
285
286
  };
286
287
  const session = this.createSession(undefined, sessionOptions);
287
288
  // Seed timeline from history if provided
@@ -1 +1 @@
1
- {"version":3,"file":"agentick-instance.js","sourceRoot":"","sources":["../src/agentick-instance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agentick-instance.js","sourceRoot":"","sources":["../src/agentick-instance.ts"],"names":[],"mappings":"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"}
@@ -200,6 +200,11 @@ export declare class SessionImpl<P = Record<string, unknown>> extends EventEmitt
200
200
  * Compile a single tick.
201
201
  */
202
202
  private compileTick;
203
+ /**
204
+ * Merge tools from multiple sources, deduplicating by name.
205
+ * Later sources take priority (last-in wins).
206
+ */
207
+ private mergeTools;
203
208
  /**
204
209
  * Execute tools and emit results.
205
210
  */
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/app/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/app/session.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ import { jsx } from "../jsx/jsx-runtime";
24
24
  import { devToolsEmitter, forwardToDevTools, FrameworkChannels, getEffectiveModelInfo, getContextUtilization, } from "@agentick/shared";
25
25
  import { computeTokenSummary } from "../utils/token-estimate";
26
26
  import React from "react";
27
+ // ════════════════════════════════════════════════════════════════════════════
28
+ const log = Logger.for("Session");
27
29
  /**
28
30
  * Get session context from the current ALS context.
29
31
  */
@@ -44,6 +46,17 @@ function ensureMessageId(message) {
44
46
  return message;
45
47
  return { ...message, id: randomUUID() };
46
48
  }
49
+ function tryDisplaySummary(tool, input) {
50
+ if (!tool?.metadata?.displaySummary)
51
+ return undefined;
52
+ try {
53
+ return tool.metadata.displaySummary(input);
54
+ }
55
+ catch (err) {
56
+ log.warn({ error: err, tool: tool.metadata.name }, "displaySummary threw");
57
+ return undefined;
58
+ }
59
+ }
47
60
  /**
48
61
  * Session implementation.
49
62
  *
@@ -271,7 +284,7 @@ export class SessionImpl extends EventEmitter {
271
284
  if (this.isTerminal) {
272
285
  throw new Error(this.terminalError);
273
286
  }
274
- const { messages = [], props, metadata, maxTicks, signal } = input;
287
+ const { messages = [], props, metadata, maxTicks, signal, tools: executionTools } = input;
275
288
  // Apply metadata to messages
276
289
  const allMessages = messages.map((m) => (metadata ? { ...m, metadata } : m));
277
290
  // Update props if provided
@@ -311,6 +324,8 @@ export class SessionImpl extends EventEmitter {
311
324
  executionOptions.maxTicks = maxTicks;
312
325
  if (signal)
313
326
  executionOptions.signal = signal;
327
+ if (executionTools?.length)
328
+ executionOptions.executionTools = executionTools;
314
329
  // If already running, return the existing handle (concurrent send idempotency)
315
330
  if (this._status === "running" && this._currentHandle) {
316
331
  this.addExecutionSignal(signal);
@@ -1342,6 +1357,8 @@ export class SessionImpl extends EventEmitter {
1342
1357
  executionId,
1343
1358
  timestamp: timestamp(),
1344
1359
  });
1360
+ const executionStartTimelineIndex = this._timeline.length;
1361
+ let executionError;
1345
1362
  try {
1346
1363
  // Tick loop
1347
1364
  let shouldContinue = true;
@@ -1357,7 +1374,7 @@ export class SessionImpl extends EventEmitter {
1357
1374
  timestamp: timestamp(),
1358
1375
  });
1359
1376
  // Phase 1: Compile
1360
- const compiled = await this.compileTick(rootElement);
1377
+ const compiled = await this.compileTick(rootElement, options?.executionTools ?? []);
1361
1378
  // Emit compiled context to DevTools
1362
1379
  // Extract system text from COMTimelineEntry[]
1363
1380
  const systemText = compiled.formatted?.system
@@ -1419,10 +1436,16 @@ export class SessionImpl extends EventEmitter {
1419
1436
  if (signal.aborted) {
1420
1437
  throw new AbortError("Execution aborted", signal.reason);
1421
1438
  }
1422
- let modelInput = compiled.modelInput ?? compiled.formatted;
1423
- // Apply execution runner transformation
1424
- if (this.appOptions.runner?.prepareModelInput) {
1425
- modelInput = await this.appOptions.runner.prepareModelInput(modelInput, (compiled.tools ?? []));
1439
+ // Start with compiled COMInput — the rich semantic structure
1440
+ let formatted = compiled.formatted;
1441
+ // Apply execution runner transformation (operates on COMInput, before model flattening)
1442
+ if (this.appOptions.runner?.transformCompiled) {
1443
+ formatted = await this.appOptions.runner.transformCompiled(formatted, (compiled.tools ?? []));
1444
+ }
1445
+ // Convert COMInput → ModelInput via adapter's fromEngineState
1446
+ let modelInput = formatted;
1447
+ if (model?.fromEngineState) {
1448
+ modelInput = await model.fromEngineState(formatted);
1426
1449
  }
1427
1450
  const modelStartTime = Date.now();
1428
1451
  // Emit model request to DevTools
@@ -1540,12 +1563,15 @@ export class SessionImpl extends EventEmitter {
1540
1563
  toolStartTime = Date.now();
1541
1564
  for (const call of response.toolCalls) {
1542
1565
  const toolCallTimestamp = timestamp();
1566
+ const toolDef = compiled.tools?.find((t) => t.metadata?.name === call.name);
1567
+ const summary = tryDisplaySummary(toolDef, call.input);
1543
1568
  this.emitEvent({
1544
1569
  type: "tool_call",
1545
1570
  callId: call.id,
1546
1571
  blockIndex: 0,
1547
1572
  name: call.name,
1548
1573
  input: call.input,
1574
+ summary,
1549
1575
  startedAt: toolCallTimestamp,
1550
1576
  completedAt: toolCallTimestamp,
1551
1577
  });
@@ -1563,9 +1589,11 @@ export class SessionImpl extends EventEmitter {
1563
1589
  tickText = textContent.text;
1564
1590
  }
1565
1591
  }
1566
- // Build TickResult with data and control methods
1592
+ // Build TickResult with data and control methods.
1593
+ // shouldContinue is initialized from ingestResult so callbacks see the framework default.
1567
1594
  const tickResult = {
1568
1595
  tick: currentTick,
1596
+ shouldContinue: ingestResult.shouldContinue,
1569
1597
  text: tickText,
1570
1598
  content: modelOutput?.message?.content ?? [],
1571
1599
  toolCalls: response.toolCalls ?? [],
@@ -1590,8 +1618,9 @@ export class SessionImpl extends EventEmitter {
1590
1618
  }
1591
1619
  },
1592
1620
  };
1593
- // Run useTickEnd/useContinuation callbacks
1594
- // These can call tickResult.stop() or tickResult.continue() to influence continuation
1621
+ // Run useTickEnd/useContinuation callbacks.
1622
+ // storeRunTickEndCallbacks chains shouldContinue through each callback
1623
+ // via _resolveCurrentShouldContinue, so each sees the accumulated decision.
1595
1624
  const tickEndState = {
1596
1625
  tick: currentTick,
1597
1626
  current: this._currentOutput,
@@ -1600,11 +1629,11 @@ export class SessionImpl extends EventEmitter {
1600
1629
  stop: () => { }, // No-op at tick end - use tickResult.stop() instead
1601
1630
  };
1602
1631
  await this.compiler?.notifyTickEnd(tickEndState, tickResult);
1603
- // Resolve final tick control using COM's priority-based system
1604
- // This considers: explicit stop/continue requests from callbacks > default behavior
1605
- const defaultStatus = ingestResult.shouldContinue ? "continue" : "completed";
1606
- const tickDecision = this.ctx?._resolveTickControl(defaultStatus, ingestResult.stopReason) ?? { status: defaultStatus };
1607
- shouldContinue = tickDecision.status === "continue";
1632
+ // Final decision comes from tickResult.shouldContinue (already resolved
1633
+ // incrementally through callbacks). Fall back to _resolveTickControl for
1634
+ // any remaining requests not consumed by chaining (shouldn't happen, but safe).
1635
+ const remainingDecision = this.ctx?._resolveTickControl(tickResult.shouldContinue ? "continue" : "completed", ingestResult.stopReason) ?? { status: tickResult.shouldContinue ? "continue" : "completed" };
1636
+ shouldContinue = remainingDecision.status === "continue";
1608
1637
  // Get actual model ID: prefer response model, then metadata.model, then metadata.id
1609
1638
  const actualModelId = modelOutput?.model || model?.metadata?.model || model?.metadata?.id || "unknown";
1610
1639
  this.emitEvent({
@@ -1657,18 +1686,35 @@ export class SessionImpl extends EventEmitter {
1657
1686
  timestamp: timestamp(),
1658
1687
  });
1659
1688
  }
1689
+ catch (e) {
1690
+ executionError = e instanceof Error ? e : new Error(String(e));
1691
+ throw e;
1692
+ }
1660
1693
  finally {
1661
1694
  this._executionComplete = true;
1662
1695
  // Ensure queued messages are cleared even on error/abort paths
1663
1696
  // (normal path already clears at tick_end, this is a safety net)
1664
1697
  this.ctx?.clearQueuedMessages();
1698
+ // Notify execution end (runs useOnExecutionEnd callbacks)
1699
+ // Fires before snapshot — state changes here are persisted clean
1700
+ try {
1701
+ await this.compiler?.notifyExecutionEnd();
1702
+ }
1703
+ catch {
1704
+ // Ignore execution end errors (same pattern as notifyComplete)
1705
+ }
1665
1706
  this.emitEvent({
1666
1707
  type: "execution_end",
1667
1708
  executionId,
1668
1709
  stopReason,
1669
1710
  aborted: this._isAborted,
1711
+ // Include error details for non-abort failures (abort is intentional, not an error)
1712
+ error: executionError && !this._isAborted
1713
+ ? { message: executionError.message, name: executionError.name }
1714
+ : undefined,
1670
1715
  usage,
1671
1716
  output: output ?? null,
1717
+ newTimelineEntries: this._timeline.slice(executionStartTimelineIndex),
1672
1718
  timestamp: timestamp(),
1673
1719
  });
1674
1720
  // Auto-persist snapshot after successful execution (fire-and-forget, skip on abort)
@@ -1702,13 +1748,18 @@ export class SessionImpl extends EventEmitter {
1702
1748
  });
1703
1749
  }
1704
1750
  }
1705
- // Clear execution ID after emitting execution_end
1751
+ // Clear per-execution state
1706
1752
  this._currentExecutionId = null;
1707
1753
  for (const resolve of this._eventResolvers) {
1708
1754
  resolve({ value: undefined, done: true });
1709
1755
  }
1710
1756
  this._eventResolvers = [];
1711
1757
  this._status = "idle";
1758
+ // Auto-resume if messages were queued during execution
1759
+ if (this._queuedMessages.length > 0) {
1760
+ const tickProps = (this._lastProps ?? {});
1761
+ void this.render(tickProps);
1762
+ }
1712
1763
  }
1713
1764
  return {
1714
1765
  response: responseText,
@@ -1759,12 +1810,7 @@ export class SessionImpl extends EventEmitter {
1759
1810
  this.ctx.setSpawnCallback((agent, input) => this.spawn(agent, input));
1760
1811
  this.structureRenderer = new StructureRenderer(this.ctx);
1761
1812
  this.structureRenderer.setDefaultRenderer(new MarkdownRenderer());
1762
- // Register tools from appOptions
1763
- if (this.appOptions.tools) {
1764
- for (const tool of this.appOptions.tools) {
1765
- this.ctx.addTool(tool);
1766
- }
1767
- }
1813
+ // Tools are registered in compileTick() after merging all sources
1768
1814
  // Notify compiler that compilation is starting
1769
1815
  await this.compiler.notifyStart();
1770
1816
  // Apply snapshot-for-resolve if set (restore from store)
@@ -1840,7 +1886,7 @@ export class SessionImpl extends EventEmitter {
1840
1886
  /**
1841
1887
  * Compile a single tick.
1842
1888
  */
1843
- async compileTick(rootElement) {
1889
+ async compileTick(rootElement, executionTools = []) {
1844
1890
  if (!this.ctx || !this.compiler || !this.structureRenderer) {
1845
1891
  throw new Error("Compilation infrastructure not initialized");
1846
1892
  }
@@ -1851,12 +1897,7 @@ export class SessionImpl extends EventEmitter {
1851
1897
  // - JSX compilation produces CompiledStructure with NEW entries
1852
1898
  // - formatInput merges previousTimeline + new entries
1853
1899
  // - No imperative accumulation during render
1854
- // Re-register tools
1855
- if (this.appOptions.tools) {
1856
- for (const tool of this.appOptions.tools) {
1857
- this.ctx.addTool(tool);
1858
- }
1859
- }
1900
+ // Tools are NOT registered here — they're merged after compilation (see below)
1860
1901
  // Get queued messages for TickState - these are NEW messages for this tick
1861
1902
  const queuedMessages = this.ctx.getQueuedMessages();
1862
1903
  this.log.debug({ queuedCount: queuedMessages.length }, "Queued messages available for TickState");
@@ -1905,113 +1946,169 @@ export class SessionImpl extends EventEmitter {
1905
1946
  // Exit tick mode - any pending reconciliations will now flush
1906
1947
  this.scheduler?.exitTick();
1907
1948
  }
1908
- // Apply compiled structure (sections, tools, metadata - but NOT timeline entries)
1949
+ // Apply compiled structure (sections, ephemeral, metadata NOT tools or timeline)
1909
1950
  await this.structureRenderer.apply(compiled);
1951
+ // Merge tools from all sources (lowest → highest priority):
1952
+ // 1. App-level tools (appOptions.tools)
1953
+ // 2. Session-level tools (sessionOptions.tools)
1954
+ // 3. Per-execution tools (SendInput.tools)
1955
+ // 4. JSX-reconciled tools (compiled.tools) — highest priority
1956
+ const mergedTools = this.mergeTools(this.appOptions.tools ?? [], this.sessionOptions.tools ?? [], executionTools, compiled.tools);
1957
+ // Register merged tools on COM (awaits schema conversion → ToolDefinition for model)
1958
+ await Promise.all(mergedTools.map((tool) => this.ctx.addTool(tool)));
1910
1959
  // Format input - compiled structure IS the complete projection
1911
1960
  // JSX components render history as <Message>, so compiled.timelineEntries is complete
1912
1961
  const formatted = await this.structureRenderer.formatInput(this.ctx.toInput());
1913
1962
  // Track estimated context tokens for contextInfo
1914
1963
  this._estimatedContextTokens = formatted.totalTokens;
1915
- // Get model from COM if not in options
1916
- const model = this.ctx.getModel?.();
1917
- let modelInput;
1918
- if (model?.fromEngineState) {
1919
- modelInput = await model.fromEngineState(formatted);
1920
- }
1921
- // Get tools
1922
- const tools = this.ctx.getTools?.() ?? [];
1964
+ // Get model from COM (set by <Model> components), fall back to appOptions
1965
+ const model = this.ctx.getModel?.() ?? this.appOptions.model;
1923
1966
  // Check for stop
1924
1967
  const stopReason = tickState.stopReason;
1925
1968
  return {
1926
1969
  formatted,
1927
1970
  model,
1928
- modelInput,
1929
- tools: tools,
1971
+ tools: mergedTools,
1930
1972
  shouldStop: !!stopReason,
1931
1973
  stopReason,
1932
1974
  rawCompiled: compiled,
1933
1975
  };
1934
1976
  }
1977
+ /**
1978
+ * Merge tools from multiple sources, deduplicating by name.
1979
+ * Later sources take priority (last-in wins).
1980
+ */
1981
+ mergeTools(...sources) {
1982
+ const sourceLabels = ["app", "session", "execution", "JSX"];
1983
+ const byName = new Map();
1984
+ for (let i = 0; i < sources.length; i++) {
1985
+ for (const tool of sources[i]) {
1986
+ const name = tool.metadata.name;
1987
+ if (byName.has(name)) {
1988
+ this.log.debug({ tool: name, source: sourceLabels[i] }, "Tool collision: %s source overrides previous", sourceLabels[i]);
1989
+ }
1990
+ byName.set(name, tool);
1991
+ }
1992
+ }
1993
+ return Array.from(byName.values());
1994
+ }
1935
1995
  /**
1936
1996
  * Execute tools and emit results.
1937
1997
  */
1938
1998
  async executeTools(executor, toolCalls, configTools, outputs, currentTick, timestamp) {
1939
1999
  const results = [];
1940
2000
  const executableTools = configTools.filter((t) => "run" in t);
1941
- for (const call of toolCalls) {
1942
- const startedAt = timestamp();
1943
- // Check if OUTPUT tool
1944
- const tool = executableTools.find((t) => t.metadata?.name === call.name);
1945
- const isOutputTool = tool && tool.metadata?.type === "output";
1946
- if (isOutputTool) {
1947
- outputs[call.name] = call.input;
1948
- const completedAt = timestamp();
2001
+ // Subscribe to tool_confirmation channel to forward responses to the coordinator
2002
+ const confirmationChannel = this.channel("tool_confirmation");
2003
+ const coordinator = executor.getConfirmationCoordinator();
2004
+ const unsubscribe = confirmationChannel.subscribe((event) => {
2005
+ if (event.type === "response" && event.id) {
2006
+ const payload = event.payload;
2007
+ if (payload) {
2008
+ coordinator.resolveConfirmation(event.id, payload.approved, payload.always ?? false);
2009
+ }
2010
+ }
2011
+ });
2012
+ // Confirmation callbacks for stream event emission
2013
+ const confirmationCallbacks = {
2014
+ onConfirmationRequired: async (call, message, metadata) => {
1949
2015
  this.emitEvent({
1950
- type: "tool_result",
2016
+ type: "tool_confirmation_required",
1951
2017
  callId: call.id,
1952
2018
  name: call.name,
1953
- result: call.input,
1954
- isError: false,
1955
- executedBy: "engine",
1956
- startedAt,
1957
- completedAt,
2019
+ input: call.input,
2020
+ message,
2021
+ metadata,
1958
2022
  });
1959
- continue;
1960
- }
1961
- // Execute tool (optionally wrapped by execution runner)
1962
- try {
1963
- const runner = this.appOptions.runner;
1964
- let toolResult;
1965
- if (runner?.executeToolCall) {
1966
- toolResult = await runner.executeToolCall(call, tool, async () => {
1967
- const r = await executor.processToolWithConfirmation(call, this.ctx, executableTools);
1968
- return r.result;
1969
- });
1970
- }
1971
- else {
1972
- const r = await executor.processToolWithConfirmation(call, this.ctx, executableTools);
1973
- toolResult = r.result;
1974
- }
1975
- results.push(toolResult);
1976
- const completedAt = timestamp();
1977
- this.emitEvent({
1978
- type: "tool_result",
1979
- callId: toolResult.toolUseId,
1980
- name: toolResult.name,
1981
- result: toolResult,
1982
- isError: !toolResult.success,
1983
- executedBy: "engine",
1984
- startedAt,
1985
- completedAt,
1986
- });
1987
- }
1988
- catch (error) {
1989
- const errorResult = {
1990
- id: randomUUID(),
1991
- toolUseId: call.id,
1992
- name: call.name,
1993
- success: false,
1994
- content: [
1995
- {
1996
- type: "text",
1997
- text: `Tool execution failed: ${error instanceof Error ? error.message : String(error)}`,
1998
- },
1999
- ],
2000
- };
2001
- results.push(errorResult);
2002
- const completedAt = timestamp();
2023
+ },
2024
+ onConfirmationResult: async (confirmation, call) => {
2003
2025
  this.emitEvent({
2004
- type: "tool_result",
2026
+ type: "tool_confirmation_result",
2005
2027
  callId: call.id,
2006
- name: call.name,
2007
- result: errorResult,
2008
- isError: true,
2009
- executedBy: "engine",
2010
- startedAt,
2011
- completedAt,
2028
+ confirmed: confirmation.confirmed,
2029
+ always: confirmation.always,
2012
2030
  });
2031
+ },
2032
+ };
2033
+ try {
2034
+ for (const call of toolCalls) {
2035
+ const startedAt = timestamp();
2036
+ // Check if OUTPUT tool
2037
+ const tool = executableTools.find((t) => t.metadata?.name === call.name);
2038
+ const isOutputTool = tool && tool.metadata?.type === "output";
2039
+ if (isOutputTool) {
2040
+ outputs[call.name] = call.input;
2041
+ const completedAt = timestamp();
2042
+ this.emitEvent({
2043
+ type: "tool_result",
2044
+ callId: call.id,
2045
+ name: call.name,
2046
+ result: call.input,
2047
+ isError: false,
2048
+ executedBy: "engine",
2049
+ startedAt,
2050
+ completedAt,
2051
+ });
2052
+ continue;
2053
+ }
2054
+ // Execute tool (optionally wrapped by execution runner)
2055
+ try {
2056
+ const runner = this.appOptions.runner;
2057
+ let toolResult;
2058
+ if (runner?.executeToolCall) {
2059
+ toolResult = await runner.executeToolCall(call, tool, async () => {
2060
+ const r = await executor.processToolWithConfirmation(call, this.ctx, executableTools, confirmationCallbacks);
2061
+ return r.result;
2062
+ });
2063
+ }
2064
+ else {
2065
+ const r = await executor.processToolWithConfirmation(call, this.ctx, executableTools, confirmationCallbacks);
2066
+ toolResult = r.result;
2067
+ }
2068
+ results.push(toolResult);
2069
+ const completedAt = timestamp();
2070
+ this.emitEvent({
2071
+ type: "tool_result",
2072
+ callId: toolResult.toolUseId,
2073
+ name: toolResult.name,
2074
+ result: toolResult,
2075
+ isError: !toolResult.success,
2076
+ executedBy: "engine",
2077
+ startedAt,
2078
+ completedAt,
2079
+ });
2080
+ }
2081
+ catch (error) {
2082
+ const errorResult = {
2083
+ id: randomUUID(),
2084
+ toolUseId: call.id,
2085
+ name: call.name,
2086
+ success: false,
2087
+ content: [
2088
+ {
2089
+ type: "text",
2090
+ text: `Tool execution failed: ${error instanceof Error ? error.message : String(error)}`,
2091
+ },
2092
+ ],
2093
+ };
2094
+ results.push(errorResult);
2095
+ const completedAt = timestamp();
2096
+ this.emitEvent({
2097
+ type: "tool_result",
2098
+ callId: call.id,
2099
+ name: call.name,
2100
+ result: errorResult,
2101
+ isError: true,
2102
+ executedBy: "engine",
2103
+ startedAt,
2104
+ completedAt,
2105
+ });
2106
+ }
2013
2107
  }
2014
2108
  }
2109
+ finally {
2110
+ unsubscribe();
2111
+ }
2015
2112
  return results;
2016
2113
  }
2017
2114
  /**
@@ -2114,11 +2211,13 @@ export class SessionImpl extends EventEmitter {
2114
2211
  this.log.debug({ removed, remaining: this._timeline.length }, "Timeline trimmed (maxTimelineEntries)");
2115
2212
  }
2116
2213
  this._currentOutput = current;
2117
- // Resolve tick control
2214
+ // Resolve tick control: continue if tool calls pending OR messages queued
2118
2215
  const shouldStop = response.shouldStop || false;
2119
2216
  const stopReason = response.stopReason?.reason;
2217
+ const hasToolCalls = (response.toolCalls?.length ?? 0) > 0;
2218
+ const hasPendingMessages = (this.ctx?.getQueuedMessages().length ?? 0) > 0 || this._queuedMessages.length > 0;
2120
2219
  return {
2121
- shouldContinue: !shouldStop && (response.toolCalls?.length > 0 || false),
2220
+ shouldContinue: !shouldStop && (hasToolCalls || hasPendingMessages),
2122
2221
  stopReason,
2123
2222
  timeline: current.timeline,
2124
2223
  };