@theokit/sdk 4.19.2 → 4.19.4

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 (40) hide show
  1. package/dist/cron.cjs +20 -25
  2. package/dist/cron.cjs.map +1 -1
  3. package/dist/cron.js +21 -26
  4. package/dist/cron.js.map +1 -1
  5. package/dist/eval.cjs +20 -25
  6. package/dist/eval.cjs.map +1 -1
  7. package/dist/eval.js +21 -26
  8. package/dist/eval.js.map +1 -1
  9. package/dist/filesystem/index.cjs +7 -2
  10. package/dist/filesystem/index.cjs.map +1 -1
  11. package/dist/filesystem/index.js +7 -2
  12. package/dist/filesystem/index.js.map +1 -1
  13. package/dist/index.cjs +20 -25
  14. package/dist/index.cjs.map +1 -1
  15. package/dist/index.js +20 -25
  16. package/dist/index.js.map +1 -1
  17. package/dist/internal/persistence/index.cjs +1 -3
  18. package/dist/internal/persistence/index.cjs.map +1 -1
  19. package/dist/internal/persistence/index.js +1 -3
  20. package/dist/internal/persistence/index.js.map +1 -1
  21. package/dist/internal/security/index.cjs +7 -2
  22. package/dist/internal/security/index.cjs.map +1 -1
  23. package/dist/internal/security/index.js +8 -3
  24. package/dist/internal/security/index.js.map +1 -1
  25. package/dist/path-safety.cjs +7 -2
  26. package/dist/path-safety.cjs.map +1 -1
  27. package/dist/path-safety.js +8 -3
  28. package/dist/path-safety.js.map +1 -1
  29. package/dist/persistence.cjs +1 -3
  30. package/dist/persistence.cjs.map +1 -1
  31. package/dist/persistence.js +1 -3
  32. package/dist/persistence.js.map +1 -1
  33. package/dist/provider-catalog.json +469 -144
  34. package/dist/skills.cjs +7 -2
  35. package/dist/skills.cjs.map +1 -1
  36. package/dist/skills.js +7 -2
  37. package/dist/skills.js.map +1 -1
  38. package/dist/workflow.cjs.map +1 -1
  39. package/dist/workflow.js.map +1 -1
  40. package/package.json +13 -12
package/dist/eval.cjs CHANGED
@@ -850,6 +850,11 @@ var init_atomic_write = __esm({
850
850
  warnedNfsDirs = /* @__PURE__ */ new Set();
851
851
  }
852
852
  });
853
+ function isInside(target, base) {
854
+ if (target === base) return true;
855
+ const prefix = base.endsWith(path.sep) ? base : base + path.sep;
856
+ return target.startsWith(prefix);
857
+ }
853
858
  function safePathJoin(base, ...parts) {
854
859
  if (base === "") {
855
860
  throw new Error("safePathJoin: base must be non-empty");
@@ -860,7 +865,7 @@ function safePathJoin(base, ...parts) {
860
865
  }
861
866
  const baseResolved = path.resolve(base);
862
867
  const target = path.resolve(base, ...parts);
863
- if (target !== baseResolved && !target.startsWith(baseResolved + path.sep)) {
868
+ if (!isInside(target, baseResolved)) {
864
869
  throw new PathTraversalError(parts.join("/"), target);
865
870
  }
866
871
  return target;
@@ -885,7 +890,7 @@ function assertNoSymlinkEscape(path$1, base) {
885
890
  }
886
891
  const resolved = realpathOfDeepestExisting(path$1);
887
892
  if (resolved === void 0) return;
888
- if (resolved !== baseResolved && !resolved.startsWith(baseResolved + path.sep)) {
893
+ if (!isInside(resolved, baseResolved)) {
889
894
  throw new PathTraversalError(`symlink ${path$1}`, resolved);
890
895
  }
891
896
  }
@@ -17163,9 +17168,7 @@ async function loadDriver(filePath) {
17163
17168
  }
17164
17169
  try {
17165
17170
  const mod = await (driverLoaderOverrides?.nodeSqlite?.() ?? Promise.resolve(
17166
- process.getBuiltinModule?.(
17167
- "node:sqlite"
17168
- ) ?? (() => {
17171
+ process.getBuiltinModule?.("node:sqlite") ?? (() => {
17169
17172
  throw new Error("node:sqlite built-in unavailable (Node < 22.3)");
17170
17173
  })()
17171
17174
  ));
@@ -19699,8 +19702,8 @@ async function getRegisteredAgentOrThrow(agentId) {
19699
19702
  // src/agent.ts
19700
19703
  init_errors();
19701
19704
  init_discovery();
19702
- init_agent_factory_registry();
19703
19705
  init_agent_session();
19706
+ init_agent_factory_registry();
19704
19707
  var streamObjectImport;
19705
19708
  var Agent = class _Agent {
19706
19709
  constructor() {
@@ -19992,9 +19995,7 @@ var Agent = class _Agent {
19992
19995
  reg = getRegisteredAgent(agentId);
19993
19996
  }
19994
19997
  if (reg === void 0 || reg.runtime !== "local") {
19995
- throw new UnknownAgentError(
19996
- `No local agent "${agentId}" registered \u2014 compact targets local sessions.`
19997
- );
19998
+ throw new UnknownAgentError(`No local agent "${agentId}" registered \u2014 compact targets local sessions.`);
19998
19999
  }
19999
20000
  const cwd = reg.cwd ?? process.cwd();
20000
20001
  const optModel = reg.options.model;
@@ -20004,20 +20005,16 @@ var Agent = class _Agent {
20004
20005
  const { defaultBaseDir: defaultBaseDir2, expandTilde: expandTilde2 } = await Promise.resolve().then(() => (init_session_transcript(), session_transcript_exports));
20005
20006
  const baseDir = reg.options.local?.baseDir !== void 0 ? expandTilde2(reg.options.local.baseDir) : defaultBaseDir2();
20006
20007
  const store = new FsSessionStore2({ baseDir, cwd });
20007
- return enqueueSessionWrite(
20008
- cwd,
20009
- agentId,
20010
- () => compactSessionTranscript2({
20011
- store,
20012
- loc: { cwd, agentId, model },
20013
- sessionId: agentId,
20014
- trigger: options.trigger ?? "manual",
20015
- summarize: options.summarize ?? buildDefaultSummarizer2({
20016
- agentModel: model,
20017
- ...reg.options.apiKey !== void 0 ? { apiKey: reg.options.apiKey } : {}
20018
- })
20008
+ return enqueueSessionWrite(cwd, agentId, () => compactSessionTranscript2({
20009
+ store,
20010
+ loc: { cwd, agentId, model },
20011
+ sessionId: agentId,
20012
+ trigger: options.trigger ?? "manual",
20013
+ summarize: options.summarize ?? buildDefaultSummarizer2({
20014
+ agentModel: model,
20015
+ ...reg.options.apiKey !== void 0 ? { apiKey: reg.options.apiKey } : {}
20019
20016
  })
20020
- );
20017
+ }));
20021
20018
  }
20022
20019
  /**
20023
20020
  * M51 — inject a SYNTHETIC user+assistant pair into a LOCAL session's persisted transcript WITHOUT
@@ -20034,9 +20031,7 @@ var Agent = class _Agent {
20034
20031
  reg = getRegisteredAgent(agentId);
20035
20032
  }
20036
20033
  if (reg === void 0 || reg.runtime !== "local") {
20037
- throw new UnknownAgentError(
20038
- `No local agent "${agentId}" registered \u2014 injectSessionTurn targets local sessions.`
20039
- );
20034
+ throw new UnknownAgentError(`No local agent "${agentId}" registered \u2014 injectSessionTurn targets local sessions.`);
20040
20035
  }
20041
20036
  const cwd = reg.cwd ?? process.cwd();
20042
20037
  const optModel = reg.options.model;