@theokit/sdk 3.2.3 → 3.3.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.
- package/CHANGELOG.md +6 -0
- package/dist/a2a/index.cjs +7 -1
- package/dist/a2a/index.cjs.map +1 -1
- package/dist/a2a/index.js +7 -1
- package/dist/a2a/index.js.map +1 -1
- package/dist/{cron-DuhVPer6.d.ts → cron-BxoLC-XX.d.cts} +15 -1
- package/dist/{cron-4u1UdmgC.d.cts → cron-DFta_5kE.d.ts} +15 -1
- package/dist/cron.cjs +7 -1
- package/dist/cron.cjs.map +1 -1
- package/dist/cron.d.cts +2 -2
- package/dist/cron.d.ts +2 -2
- package/dist/cron.js +7 -1
- package/dist/cron.js.map +1 -1
- package/dist/{errors-_fPS0X80.d.ts → errors-CFEt27lI.d.ts} +1 -1
- package/dist/{errors-jxK4yfp5.d.cts → errors-CIDoPGa7.d.cts} +1 -1
- package/dist/errors.d.cts +2 -2
- package/dist/eval.cjs +7 -1
- package/dist/eval.cjs.map +1 -1
- package/dist/eval.js +7 -1
- package/dist/eval.js.map +1 -1
- package/dist/index.cjs +15 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +7 -93
- package/dist/index.d.ts +7 -93
- package/dist/index.js +15 -5
- package/dist/index.js.map +1 -1
- package/dist/internal/plugins/types.d.cts +7 -0
- package/dist/internal/plugins/types.d.ts +7 -0
- package/dist/permission-engine.d.ts +4 -3
- package/dist/{run-CrHz9BAP.d.cts → run-CL5Rw6a5.d.cts} +98 -1
- package/dist/{run-CrHz9BAP.d.ts → run-CL5Rw6a5.d.ts} +98 -1
- package/dist/types/agent.d.ts +7 -0
- package/dist/types/run.d.ts +10 -0
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -9016,7 +9016,9 @@ async function vetoFromPluginPreHook(inputs, call, callId, events) {
|
|
|
9016
9016
|
name: call.name,
|
|
9017
9017
|
args: call.input,
|
|
9018
9018
|
agentId: inputs.agentId,
|
|
9019
|
-
runId: inputs.runId
|
|
9019
|
+
runId: inputs.runId,
|
|
9020
|
+
// SE1 — thread the run's permission mode so a PermissionPlugin gates per-run.
|
|
9021
|
+
...inputs.permissionMode !== void 0 ? { permissionMode: inputs.permissionMode } : {}
|
|
9020
9022
|
});
|
|
9021
9023
|
if (pluginVeto === void 0) return void 0;
|
|
9022
9024
|
emitRunEvent(inputs.runEventSink, {
|
|
@@ -13441,6 +13443,10 @@ function buildLoopInputs(options, runId, userText) {
|
|
|
13441
13443
|
...options.onDelta !== void 0 ? { onDelta: options.onDelta } : {},
|
|
13442
13444
|
...options.sendOptions.toolChoice !== void 0 ? { toolChoice: options.sendOptions.toolChoice } : {},
|
|
13443
13445
|
...options.sendOptions.activeTools !== void 0 ? { activeTools: options.sendOptions.activeTools } : {},
|
|
13446
|
+
// SE1 — resolve the run's permission mode: per-send wins over creation-time.
|
|
13447
|
+
...(options.sendOptions.permissionMode ?? options.agentOptions.permissionMode) !== void 0 ? {
|
|
13448
|
+
permissionMode: options.sendOptions.permissionMode ?? options.agentOptions.permissionMode
|
|
13449
|
+
} : {},
|
|
13444
13450
|
...options.priorMessages !== void 0 ? { priorMessages: options.priorMessages } : {},
|
|
13445
13451
|
...options.memoryTools !== void 0 && options.memoryTools.length > 0 ? { memoryTools: options.memoryTools } : {},
|
|
13446
13452
|
...buildCustomToolsInput(
|
|
@@ -22846,13 +22852,17 @@ function applyMode(verdict, mode, explicit) {
|
|
|
22846
22852
|
return verdict;
|
|
22847
22853
|
// allow stays allow
|
|
22848
22854
|
case "bypass":
|
|
22855
|
+
case "bypassPermissions":
|
|
22849
22856
|
return "allow";
|
|
22850
22857
|
}
|
|
22851
22858
|
}
|
|
22852
22859
|
function argMatches(matcher, value) {
|
|
22853
22860
|
if (typeof matcher === "function") return matcher(value);
|
|
22854
22861
|
if (value === void 0) return false;
|
|
22855
|
-
if (matcher instanceof RegExp)
|
|
22862
|
+
if (matcher instanceof RegExp) {
|
|
22863
|
+
matcher.lastIndex = 0;
|
|
22864
|
+
return matcher.test(String(value));
|
|
22865
|
+
}
|
|
22856
22866
|
return matcher === value;
|
|
22857
22867
|
}
|
|
22858
22868
|
var PermissionEngine = class {
|
|
@@ -22896,19 +22906,19 @@ async function resolveAsk(opts, name, args, mode) {
|
|
|
22896
22906
|
} catch {
|
|
22897
22907
|
return { block: true, message: `permission gate error (fail-closed): ${name}` };
|
|
22898
22908
|
}
|
|
22899
|
-
return decision
|
|
22909
|
+
return decision?.behavior === "allow" ? void 0 : { block: true, message: decision?.message ?? `denied: ${name}` };
|
|
22900
22910
|
}
|
|
22901
22911
|
return opts.onAsk ? opts.onAsk(name) : { block: true, message: `requires approval: ${name}` };
|
|
22902
22912
|
}
|
|
22903
22913
|
function createPermissionPlugin(engine, opts = {}) {
|
|
22904
|
-
const mode = opts.mode ?? "default";
|
|
22905
22914
|
return definePlugin({
|
|
22906
22915
|
name: opts.name ?? "permission-engine",
|
|
22907
22916
|
version: "1.0.0",
|
|
22908
22917
|
kind: "general",
|
|
22909
22918
|
register(ctx) {
|
|
22910
22919
|
ctx.on("pre_tool_call", async (rawCtx) => {
|
|
22911
|
-
const { name, args } = rawCtx;
|
|
22920
|
+
const { name, args, permissionMode } = rawCtx;
|
|
22921
|
+
const mode = permissionMode ?? opts.mode ?? "default";
|
|
22912
22922
|
const action = engine.evaluate(name, args, mode);
|
|
22913
22923
|
if (action === "deny") {
|
|
22914
22924
|
return { block: true, message: `denied by permission engine: ${name}` };
|