@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/cron.cjs CHANGED
@@ -851,6 +851,11 @@ var init_atomic_write = __esm({
851
851
  warnedNfsDirs = /* @__PURE__ */ new Set();
852
852
  }
853
853
  });
854
+ function isInside(target, base) {
855
+ if (target === base) return true;
856
+ const prefix = base.endsWith(path.sep) ? base : base + path.sep;
857
+ return target.startsWith(prefix);
858
+ }
854
859
  function safePathJoin(base, ...parts) {
855
860
  if (base === "") {
856
861
  throw new Error("safePathJoin: base must be non-empty");
@@ -861,7 +866,7 @@ function safePathJoin(base, ...parts) {
861
866
  }
862
867
  const baseResolved = path.resolve(base);
863
868
  const target = path.resolve(base, ...parts);
864
- if (target !== baseResolved && !target.startsWith(baseResolved + path.sep)) {
869
+ if (!isInside(target, baseResolved)) {
865
870
  throw new PathTraversalError(parts.join("/"), target);
866
871
  }
867
872
  return target;
@@ -886,7 +891,7 @@ function assertNoSymlinkEscape(path$1, base) {
886
891
  }
887
892
  const resolved = realpathOfDeepestExisting(path$1);
888
893
  if (resolved === void 0) return;
889
- if (resolved !== baseResolved && !resolved.startsWith(baseResolved + path.sep)) {
894
+ if (!isInside(resolved, baseResolved)) {
890
895
  throw new PathTraversalError(`symlink ${path$1}`, resolved);
891
896
  }
892
897
  }
@@ -17168,9 +17173,7 @@ async function loadDriver(filePath) {
17168
17173
  }
17169
17174
  try {
17170
17175
  const mod = await (driverLoaderOverrides?.nodeSqlite?.() ?? Promise.resolve(
17171
- process.getBuiltinModule?.(
17172
- "node:sqlite"
17173
- ) ?? (() => {
17176
+ process.getBuiltinModule?.("node:sqlite") ?? (() => {
17174
17177
  throw new Error("node:sqlite built-in unavailable (Node < 22.3)");
17175
17178
  })()
17176
17179
  ));
@@ -19704,8 +19707,8 @@ async function getRegisteredAgentOrThrow(agentId) {
19704
19707
  // src/agent.ts
19705
19708
  init_errors();
19706
19709
  init_discovery();
19707
- init_agent_factory_registry();
19708
19710
  init_agent_session();
19711
+ init_agent_factory_registry();
19709
19712
  var streamObjectImport;
19710
19713
  var Agent = class _Agent {
19711
19714
  constructor() {
@@ -19997,9 +20000,7 @@ var Agent = class _Agent {
19997
20000
  reg = getRegisteredAgent(agentId);
19998
20001
  }
19999
20002
  if (reg === void 0 || reg.runtime !== "local") {
20000
- throw new UnknownAgentError(
20001
- `No local agent "${agentId}" registered \u2014 compact targets local sessions.`
20002
- );
20003
+ throw new UnknownAgentError(`No local agent "${agentId}" registered \u2014 compact targets local sessions.`);
20003
20004
  }
20004
20005
  const cwd = reg.cwd ?? process.cwd();
20005
20006
  const optModel = reg.options.model;
@@ -20009,20 +20010,16 @@ var Agent = class _Agent {
20009
20010
  const { defaultBaseDir: defaultBaseDir2, expandTilde: expandTilde2 } = await Promise.resolve().then(() => (init_session_transcript(), session_transcript_exports));
20010
20011
  const baseDir = reg.options.local?.baseDir !== void 0 ? expandTilde2(reg.options.local.baseDir) : defaultBaseDir2();
20011
20012
  const store = new FsSessionStore2({ baseDir, cwd });
20012
- return enqueueSessionWrite(
20013
- cwd,
20014
- agentId,
20015
- () => compactSessionTranscript2({
20016
- store,
20017
- loc: { cwd, agentId, model },
20018
- sessionId: agentId,
20019
- trigger: options.trigger ?? "manual",
20020
- summarize: options.summarize ?? buildDefaultSummarizer2({
20021
- agentModel: model,
20022
- ...reg.options.apiKey !== void 0 ? { apiKey: reg.options.apiKey } : {}
20023
- })
20013
+ return enqueueSessionWrite(cwd, agentId, () => compactSessionTranscript2({
20014
+ store,
20015
+ loc: { cwd, agentId, model },
20016
+ sessionId: agentId,
20017
+ trigger: options.trigger ?? "manual",
20018
+ summarize: options.summarize ?? buildDefaultSummarizer2({
20019
+ agentModel: model,
20020
+ ...reg.options.apiKey !== void 0 ? { apiKey: reg.options.apiKey } : {}
20024
20021
  })
20025
- );
20022
+ }));
20026
20023
  }
20027
20024
  /**
20028
20025
  * M51 — inject a SYNTHETIC user+assistant pair into a LOCAL session's persisted transcript WITHOUT
@@ -20039,9 +20036,7 @@ var Agent = class _Agent {
20039
20036
  reg = getRegisteredAgent(agentId);
20040
20037
  }
20041
20038
  if (reg === void 0 || reg.runtime !== "local") {
20042
- throw new UnknownAgentError(
20043
- `No local agent "${agentId}" registered \u2014 injectSessionTurn targets local sessions.`
20044
- );
20039
+ throw new UnknownAgentError(`No local agent "${agentId}" registered \u2014 injectSessionTurn targets local sessions.`);
20045
20040
  }
20046
20041
  const cwd = reg.cwd ?? process.cwd();
20047
20042
  const optModel = reg.options.model;