@theokit/sdk 4.39.3 → 4.40.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 (60) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/dist/{agent-ZCZa7YQv.d.ts → agent-BzZwYFiw.d.ts} +1 -1
  3. package/dist/{agent-D7bRK9Kg.d.cts → agent-DxEL4fHh.d.cts} +1 -1
  4. package/dist/{agent-CJPUQ6BT.js → agent-MSR3DHO4.js} +5 -5
  5. package/dist/{agent-CJPUQ6BT.js.map → agent-MSR3DHO4.js.map} +1 -1
  6. package/dist/{agent-IKDNM7OA.cjs → agent-OOXJJD6A.cjs} +6 -6
  7. package/dist/{agent-IKDNM7OA.cjs.map → agent-OOXJJD6A.cjs.map} +1 -1
  8. package/dist/{chunk-PP3ZKVZZ.js → chunk-2UBBO2MD.js} +3 -3
  9. package/dist/{chunk-PP3ZKVZZ.js.map → chunk-2UBBO2MD.js.map} +1 -1
  10. package/dist/{chunk-RTDT2UMT.js → chunk-5VKUZ26Q.js} +22 -7
  11. package/dist/chunk-5VKUZ26Q.js.map +1 -0
  12. package/dist/{chunk-IIBQBMIS.cjs → chunk-6AE4QTSF.cjs} +5 -5
  13. package/dist/{chunk-IIBQBMIS.cjs.map → chunk-6AE4QTSF.cjs.map} +1 -1
  14. package/dist/{chunk-GKZY34TD.cjs → chunk-BVGJXMSB.cjs} +20 -10
  15. package/dist/chunk-BVGJXMSB.cjs.map +1 -0
  16. package/dist/{chunk-MWVLE5RY.cjs → chunk-WMWZAJMJ.cjs} +5 -5
  17. package/dist/{chunk-MWVLE5RY.cjs.map → chunk-WMWZAJMJ.cjs.map} +1 -1
  18. package/dist/{chunk-7WXT5M6P.js → chunk-XRKFWV7K.js} +3 -3
  19. package/dist/{chunk-7WXT5M6P.js.map → chunk-XRKFWV7K.js.map} +1 -1
  20. package/dist/{chunk-JWRMBFSP.js → chunk-ZRQZOJ3N.js} +16 -6
  21. package/dist/chunk-ZRQZOJ3N.js.map +1 -0
  22. package/dist/{chunk-JERO4TP6.cjs → chunk-ZVQJHY4Y.cjs} +22 -7
  23. package/dist/chunk-ZVQJHY4Y.cjs.map +1 -0
  24. package/dist/{cron-D-DVjGQe.d.cts → cron-BGR0HOz9.d.cts} +2 -2
  25. package/dist/{cron-Bx7tzm5R.d.ts → cron-CDAIWCrL.d.ts} +2 -2
  26. package/dist/cron.cjs +5 -5
  27. package/dist/cron.d.cts +3 -3
  28. package/dist/cron.d.ts +3 -3
  29. package/dist/cron.js +4 -4
  30. package/dist/{errors-DjBQ4Tn8.d.ts → errors-DxQe4_Qy.d.ts} +1 -1
  31. package/dist/{errors-DMY-gLSK.d.cts → errors-L1bxHHO0.d.cts} +1 -1
  32. package/dist/errors.d.cts +2 -2
  33. package/dist/errors.d.ts +2 -2
  34. package/dist/eval.cjs +8 -8
  35. package/dist/eval.js +4 -4
  36. package/dist/fs-session-store-I6GUIFRO.js +10 -0
  37. package/dist/{fs-session-store-YPZIOLJM.js.map → fs-session-store-I6GUIFRO.js.map} +1 -1
  38. package/dist/{fs-session-store-V32XJ63Z.cjs → fs-session-store-KRZZIG3O.cjs} +5 -5
  39. package/dist/{fs-session-store-V32XJ63Z.cjs.map → fs-session-store-KRZZIG3O.cjs.map} +1 -1
  40. package/dist/index.cjs +20 -20
  41. package/dist/index.d.cts +8 -8
  42. package/dist/index.d.ts +8 -8
  43. package/dist/index.js +6 -6
  44. package/dist/internal/persistence/index.cjs +6 -6
  45. package/dist/internal/persistence/index.js +1 -1
  46. package/dist/persistence.cjs +6 -6
  47. package/dist/persistence.js +1 -1
  48. package/dist/{run-i2-fUohR.d.ts → run-XXnwwGOT.d.cts} +15 -0
  49. package/dist/{run-i2-fUohR.d.cts → run-XXnwwGOT.d.ts} +15 -0
  50. package/dist/server/errors-envelope.d.cts +3 -3
  51. package/dist/server/errors-envelope.d.ts +3 -3
  52. package/dist/subagents-loader.d.cts +2 -2
  53. package/dist/subagents-loader.d.ts +2 -2
  54. package/dist/types/run.d.ts +15 -0
  55. package/package.json +1 -1
  56. package/dist/chunk-GKZY34TD.cjs.map +0 -1
  57. package/dist/chunk-JERO4TP6.cjs.map +0 -1
  58. package/dist/chunk-JWRMBFSP.js.map +0 -1
  59. package/dist/chunk-RTDT2UMT.js.map +0 -1
  60. package/dist/fs-session-store-YPZIOLJM.js +0 -10
package/dist/index.js CHANGED
@@ -6,15 +6,15 @@ import './chunk-4HKAZRTC.js';
6
6
  import { Workflow, agentStep } from './chunk-WJOLIPEM.js';
7
7
  import './chunk-NHXPQN44.js';
8
8
  import './chunk-CAH3G4IS.js';
9
- export { Cron } from './chunk-PP3ZKVZZ.js';
10
- import { MEMORY_EMBEDDING_ADAPTERS, resolveApiKey, DEFAULT_AGENTIC_MODEL_ID, Agent } from './chunk-JWRMBFSP.js';
11
- export { Agent, AgentBuilder, Tool, ToolError, UsageAccumulator, computeCost, getPricingEntry } from './chunk-JWRMBFSP.js';
9
+ export { Cron } from './chunk-2UBBO2MD.js';
10
+ import { MEMORY_EMBEDDING_ADAPTERS, resolveApiKey, DEFAULT_AGENTIC_MODEL_ID, Agent } from './chunk-ZRQZOJ3N.js';
11
+ export { Agent, AgentBuilder, Tool, ToolError, UsageAccumulator, computeCost, getPricingEntry } from './chunk-ZRQZOJ3N.js';
12
12
  import './chunk-2SFBB54R.js';
13
13
  import { configure, submit, list, get, cancel, subscribe } from './chunk-UIPTINIF.js';
14
14
  export { emitRunEvent } from './chunk-UIPTINIF.js';
15
15
  import './chunk-K2BQQ445.js';
16
16
  import './chunk-ONVIALVV.js';
17
- import './chunk-7WXT5M6P.js';
17
+ import './chunk-XRKFWV7K.js';
18
18
  import { discoverProviderPlugins, shouldUseFixtureMode, isFixtureApiKey, httpRequest, mapOllamaTransportError, readErrorResponseBody, mapOllamaHttpError } from './chunk-X627TO3A.js';
19
19
  import './chunk-MI3OKONE.js';
20
20
  import './chunk-5KOW3GLE.js';
@@ -36,7 +36,7 @@ import './chunk-XKGOIGTJ.js';
36
36
  import './chunk-F4SQTWVR.js';
37
37
  import './chunk-LWVKI75U.js';
38
38
  import './chunk-EYUZZXHZ.js';
39
- import './chunk-RTDT2UMT.js';
39
+ import './chunk-5VKUZ26Q.js';
40
40
  import './chunk-VTDQRUAJ.js';
41
41
  import { withCwdMutex } from './chunk-2XLKLVVR.js';
42
42
  export { withCwdMutex } from './chunk-2XLKLVVR.js';
@@ -1603,7 +1603,7 @@ function ehAgenteConstruido(m) {
1603
1603
  return typeof m.send === "function";
1604
1604
  }
1605
1605
  async function materializar(def, indice) {
1606
- const { Agent: Agent2 } = await import('./agent-CJPUQ6BT.js');
1606
+ const { Agent: Agent2 } = await import('./agent-MSR3DHO4.js');
1607
1607
  return Agent2.create({
1608
1608
  // `AgentDefinition.model` admits the sentinel `'inherit'`, which is not a model id. Inheriting
1609
1609
  // here means "declare nothing and let the default apply" — forwarding the literal would create
@@ -2,7 +2,7 @@
2
2
 
3
3
  var chunkPNVDQL5Y_cjs = require('../../chunk-PNVDQL5Y.cjs');
4
4
  var chunkFMDZZRYE_cjs = require('../../chunk-FMDZZRYE.cjs');
5
- var chunkJERO4TP6_cjs = require('../../chunk-JERO4TP6.cjs');
5
+ var chunkZVQJHY4Y_cjs = require('../../chunk-ZVQJHY4Y.cjs');
6
6
  var chunk4H2QARXM_cjs = require('../../chunk-4H2QARXM.cjs');
7
7
  var chunkYLQQX5W2_cjs = require('../../chunk-YLQQX5W2.cjs');
8
8
  var chunk33B2BSME_cjs = require('../../chunk-33B2BSME.cjs');
@@ -65,23 +65,23 @@ Object.defineProperty(exports, "writeVersionedJson", {
65
65
  });
66
66
  Object.defineProperty(exports, "JsonlParseError", {
67
67
  enumerable: true,
68
- get: function () { return chunkJERO4TP6_cjs.JsonlParseError; }
68
+ get: function () { return chunkZVQJHY4Y_cjs.JsonlParseError; }
69
69
  });
70
70
  Object.defineProperty(exports, "appendJsonl", {
71
71
  enumerable: true,
72
- get: function () { return chunkJERO4TP6_cjs.appendJsonl; }
72
+ get: function () { return chunkZVQJHY4Y_cjs.appendJsonl; }
73
73
  });
74
74
  Object.defineProperty(exports, "loadJsonl", {
75
75
  enumerable: true,
76
- get: function () { return chunkJERO4TP6_cjs.loadJsonl; }
76
+ get: function () { return chunkZVQJHY4Y_cjs.loadJsonl; }
77
77
  });
78
78
  Object.defineProperty(exports, "readJsonlIds", {
79
79
  enumerable: true,
80
- get: function () { return chunkJERO4TP6_cjs.readJsonlIds; }
80
+ get: function () { return chunkZVQJHY4Y_cjs.readJsonlIds; }
81
81
  });
82
82
  Object.defineProperty(exports, "withFileLock", {
83
83
  enumerable: true,
84
- get: function () { return chunkJERO4TP6_cjs.withFileLock; }
84
+ get: function () { return chunkZVQJHY4Y_cjs.withFileLock; }
85
85
  });
86
86
  Object.defineProperty(exports, "applyWalWithFallback", {
87
87
  enumerable: true,
@@ -1,6 +1,6 @@
1
1
  export { PersistenceSchema } from '../../chunk-CAH3G4IS.js';
2
2
  export { displayTheokitHome, getProfilesRoot, getTheokitHome, migrateSchema, readVersionedJson, writeVersionedJson } from '../../chunk-RMCHJZNZ.js';
3
- export { JsonlParseError, appendJsonl, loadJsonl, readJsonlIds, withFileLock } from '../../chunk-RTDT2UMT.js';
3
+ export { JsonlParseError, appendJsonl, loadJsonl, readJsonlIds, withFileLock } from '../../chunk-5VKUZ26Q.js';
4
4
  export { applyWalWithFallback, containsCjk, isCorruptionError, openSqliteResilient, sanitizeFts5Query } from '../../chunk-VTDQRUAJ.js';
5
5
  export { withCwdMutex } from '../../chunk-2XLKLVVR.js';
6
6
  export { atomicWriteJson, atomicWriteText, replaceFileAtomic } from '../../chunk-5XPKYDK7.js';
@@ -3,7 +3,7 @@
3
3
  var chunkPNVDQL5Y_cjs = require('./chunk-PNVDQL5Y.cjs');
4
4
  var chunk4E3HLSYE_cjs = require('./chunk-4E3HLSYE.cjs');
5
5
  var chunkNJVV5OAV_cjs = require('./chunk-NJVV5OAV.cjs');
6
- var chunkJERO4TP6_cjs = require('./chunk-JERO4TP6.cjs');
6
+ var chunkZVQJHY4Y_cjs = require('./chunk-ZVQJHY4Y.cjs');
7
7
  var chunk4H2QARXM_cjs = require('./chunk-4H2QARXM.cjs');
8
8
  var chunkYLQQX5W2_cjs = require('./chunk-YLQQX5W2.cjs');
9
9
  var chunk33B2BSME_cjs = require('./chunk-33B2BSME.cjs');
@@ -107,23 +107,23 @@ Object.defineProperty(exports, "transcriptRoot", {
107
107
  });
108
108
  Object.defineProperty(exports, "JsonlParseError", {
109
109
  enumerable: true,
110
- get: function () { return chunkJERO4TP6_cjs.JsonlParseError; }
110
+ get: function () { return chunkZVQJHY4Y_cjs.JsonlParseError; }
111
111
  });
112
112
  Object.defineProperty(exports, "appendJsonl", {
113
113
  enumerable: true,
114
- get: function () { return chunkJERO4TP6_cjs.appendJsonl; }
114
+ get: function () { return chunkZVQJHY4Y_cjs.appendJsonl; }
115
115
  });
116
116
  Object.defineProperty(exports, "loadJsonl", {
117
117
  enumerable: true,
118
- get: function () { return chunkJERO4TP6_cjs.loadJsonl; }
118
+ get: function () { return chunkZVQJHY4Y_cjs.loadJsonl; }
119
119
  });
120
120
  Object.defineProperty(exports, "readJsonlIds", {
121
121
  enumerable: true,
122
- get: function () { return chunkJERO4TP6_cjs.readJsonlIds; }
122
+ get: function () { return chunkZVQJHY4Y_cjs.readJsonlIds; }
123
123
  });
124
124
  Object.defineProperty(exports, "withFileLock", {
125
125
  enumerable: true,
126
- get: function () { return chunkJERO4TP6_cjs.withFileLock; }
126
+ get: function () { return chunkZVQJHY4Y_cjs.withFileLock; }
127
127
  });
128
128
  Object.defineProperty(exports, "applyWalWithFallback", {
129
129
  enumerable: true,
@@ -1,7 +1,7 @@
1
1
  export { PersistenceSchema } from './chunk-CAH3G4IS.js';
2
2
  export { SessionBusyError, acquireSessionWriter, sessionHasWriter } from './chunk-LWVKI75U.js';
3
3
  export { encodeProjectDir, transcriptPath, transcriptRoot } from './chunk-EYUZZXHZ.js';
4
- export { JsonlParseError, appendJsonl, loadJsonl, readJsonlIds, withFileLock } from './chunk-RTDT2UMT.js';
4
+ export { JsonlParseError, appendJsonl, loadJsonl, readJsonlIds, withFileLock } from './chunk-5VKUZ26Q.js';
5
5
  export { applyWalWithFallback, isCorruptionError, openSqliteResilient, sanitizeFts5Query } from './chunk-VTDQRUAJ.js';
6
6
  export { withCwdMutex } from './chunk-2XLKLVVR.js';
7
7
  export { atomicWriteJson, atomicWriteText, replaceFileAtomic } from './chunk-5XPKYDK7.js';
@@ -1573,6 +1573,21 @@ interface CompletionCheckResult {
1573
1573
  type RunTimelineEvent = {
1574
1574
  kind: "message";
1575
1575
  message: SDKMessage;
1576
+ /**
1577
+ * theokit#140 - `true` when this message's TEXT content already crossed the timeline as
1578
+ * `kind: "delta"` events. Absent when the question does not apply (no text to duplicate).
1579
+ *
1580
+ * Unifying the source fixed ordering and the `callId` namespace; it did NOT stop the same
1581
+ * text arriving twice, because the run's event log carries the complete assistant message and
1582
+ * the deltas are additional. Without this field a consumer has to infer the relation by
1583
+ * COMPARING TEXT - which is where the `callId`-namespace and timestamp-fallback bugs came
1584
+ * from. The SDK emitted the deltas and emits the message from the same scope, so it knows the
1585
+ * answer as a fact; stating it replaces the inference with a boolean.
1586
+ *
1587
+ * Marked rather than suppressed: the message also carries tool calls and metadata, so
1588
+ * dropping it would trade a duplicate for a hole. Optional, so no existing consumer breaks.
1589
+ */
1590
+ textAlreadyStreamed?: boolean;
1576
1591
  } | {
1577
1592
  kind: "delta";
1578
1593
  update: InteractionUpdate;
@@ -1573,6 +1573,21 @@ interface CompletionCheckResult {
1573
1573
  type RunTimelineEvent = {
1574
1574
  kind: "message";
1575
1575
  message: SDKMessage;
1576
+ /**
1577
+ * theokit#140 - `true` when this message's TEXT content already crossed the timeline as
1578
+ * `kind: "delta"` events. Absent when the question does not apply (no text to duplicate).
1579
+ *
1580
+ * Unifying the source fixed ordering and the `callId` namespace; it did NOT stop the same
1581
+ * text arriving twice, because the run's event log carries the complete assistant message and
1582
+ * the deltas are additional. Without this field a consumer has to infer the relation by
1583
+ * COMPARING TEXT - which is where the `callId`-namespace and timestamp-fallback bugs came
1584
+ * from. The SDK emitted the deltas and emits the message from the same scope, so it knows the
1585
+ * answer as a fact; stating it replaces the inference with a boolean.
1586
+ *
1587
+ * Marked rather than suppressed: the message also carries tool calls and metadata, so
1588
+ * dropping it would trade a duplicate for a hole. Optional, so no existing consumer breaks.
1589
+ */
1590
+ textAlreadyStreamed?: boolean;
1576
1591
  } | {
1577
1592
  kind: "delta";
1578
1593
  update: InteractionUpdate;
@@ -1,6 +1,6 @@
1
- import { T as TheokitAgentError } from '../errors-DMY-gLSK.cjs';
2
- export { M as MemoryAdapterError } from '../errors-DMY-gLSK.cjs';
3
- import '../run-i2-fUohR.cjs';
1
+ import { T as TheokitAgentError } from '../errors-L1bxHHO0.cjs';
2
+ export { M as MemoryAdapterError } from '../errors-L1bxHHO0.cjs';
3
+ import '../run-XXnwwGOT.cjs';
4
4
  import 'zod';
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
- import { T as TheokitAgentError } from '../errors-DjBQ4Tn8.js';
2
- export { M as MemoryAdapterError } from '../errors-DjBQ4Tn8.js';
3
- import '../run-i2-fUohR.js';
1
+ import { T as TheokitAgentError } from '../errors-DxQe4_Qy.js';
2
+ export { M as MemoryAdapterError } from '../errors-DxQe4_Qy.js';
3
+ import '../run-XXnwwGOT.js';
4
4
  import 'zod';
5
5
 
6
6
  /**
@@ -1,5 +1,5 @@
1
- import { a as AgentDefinition } from './agent-D7bRK9Kg.cjs';
2
- import './run-i2-fUohR.cjs';
1
+ import { a as AgentDefinition } from './agent-DxEL4fHh.cjs';
2
+ import './run-XXnwwGOT.cjs';
3
3
  import 'zod';
4
4
 
5
5
  /**
@@ -1,5 +1,5 @@
1
- import { a as AgentDefinition } from './agent-ZCZa7YQv.js';
2
- import './run-i2-fUohR.js';
1
+ import { a as AgentDefinition } from './agent-BzZwYFiw.js';
2
+ import './run-XXnwwGOT.js';
3
3
  import 'zod';
4
4
 
5
5
  /**
@@ -533,6 +533,21 @@ export interface CompletionCheckResult {
533
533
  export type RunTimelineEvent = {
534
534
  kind: "message";
535
535
  message: SDKMessage;
536
+ /**
537
+ * theokit#140 - `true` when this message's TEXT content already crossed the timeline as
538
+ * `kind: "delta"` events. Absent when the question does not apply (no text to duplicate).
539
+ *
540
+ * Unifying the source fixed ordering and the `callId` namespace; it did NOT stop the same
541
+ * text arriving twice, because the run's event log carries the complete assistant message and
542
+ * the deltas are additional. Without this field a consumer has to infer the relation by
543
+ * COMPARING TEXT - which is where the `callId`-namespace and timestamp-fallback bugs came
544
+ * from. The SDK emitted the deltas and emits the message from the same scope, so it knows the
545
+ * answer as a fact; stating it replaces the inference with a boolean.
546
+ *
547
+ * Marked rather than suppressed: the message also carries tool calls and metadata, so
548
+ * dropping it would trade a duplicate for a hole. Optional, so no existing consumer breaks.
549
+ */
550
+ textAlreadyStreamed?: boolean;
536
551
  } | {
537
552
  kind: "delta";
538
553
  update: import("./updates.js").InteractionUpdate;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theokit/sdk",
3
- "version": "4.39.3",
3
+ "version": "4.40.0",
4
4
  "description": "TypeScript SDK for the Theo agent harness — same surface, local or cloud.",
5
5
  "license": "Apache-2.0",
6
6
  "homepage": "https://github.com/usetheodev/theokit-sdk#readme",