@theokit/agents 8.2.0 → 8.4.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/dist/hooks.d.ts CHANGED
@@ -156,6 +156,24 @@ interface BuildHookHandlersOptions {
156
156
  * gate applies.
157
157
  */
158
158
  readonly fingerprint?: (identity: HookIdentity) => string;
159
+ /**
160
+ * Called when a `pre_tool_call` hook VETOES a call, so a surface can say so.
161
+ *
162
+ * The signal has to travel from here. A veto blocks the call and hands the model a message to
163
+ * self-correct with, and on the wire that is deliberately indistinguishable from an ordinary tool
164
+ * result — the SDK documents it. So a surface cannot recognise a veto by watching the stream; this
165
+ * is the only point that knows one happened.
166
+ *
167
+ * Without it, a consumer that shows "a hook blocked this" had to keep its own copy of this entire
168
+ * builder to fire one notification.
169
+ *
170
+ * Optional, and NOT a security default: the veto blocks either way. This decides only whether
171
+ * anybody is shown it — a headless surface has nobody to tell.
172
+ */
173
+ readonly onVeto?: (veto: {
174
+ readonly tool: string;
175
+ readonly reason: string;
176
+ }) => void;
159
177
  }
160
178
  /**
161
179
  * Compile specs into the `HookHandlers` the seam already accepts.
package/dist/hooks.js CHANGED
@@ -149,6 +149,10 @@ function parseHookSpecs(input) {
149
149
  }
150
150
  __name(parseHookSpecs, "parseHookSpecs");
151
151
  var IGNORE_WARNING = /* @__PURE__ */ __name(() => void 0, "IGNORE_WARNING");
152
+ var WIRED_EVENTS = /* @__PURE__ */ new Set([
153
+ "pre_tool_call",
154
+ "post_tool_call"
155
+ ]);
152
156
  function buildHookHandlers(specs, options) {
153
157
  const warn = options.onWarn ?? IGNORE_WARNING;
154
158
  if (!options.trusted) {
@@ -166,6 +170,13 @@ function buildHookHandlers(specs, options) {
166
170
  return approved;
167
171
  });
168
172
  if (runnable.length === 0) return {};
173
+ for (const spec of runnable) {
174
+ if (!WIRED_EVENTS.has(spec.event)) {
175
+ warn(`hook declared on "${spec.event}" will NOT fire: this engine wires ${[
176
+ ...WIRED_EVENTS
177
+ ].join(" and ")} only. The event is accepted by the schema and the approval is real \u2014 the handler does not exist yet.`);
178
+ }
179
+ }
169
180
  const handlers = {};
170
181
  const chainBudgetMs = Math.max(...runnable.map((spec) => spec.timeout_ms)) * CHAIN_BUDGET_MULTIPLIER;
171
182
  const preHooks = runnable.filter((spec) => spec.event === "pre_tool_call");
@@ -174,9 +185,14 @@ function buildHookHandlers(specs, options) {
174
185
  const started = Date.now();
175
186
  for (const spec of preHooks) {
176
187
  if (Date.now() - started > chainBudgetMs) {
188
+ const message = "hook chain exceeded its time budget";
189
+ options.onVeto?.({
190
+ tool: ctx.name,
191
+ reason: message
192
+ });
177
193
  return {
178
194
  block: true,
179
- message: "hook chain exceeded its time budget"
195
+ message
180
196
  };
181
197
  }
182
198
  if (!matches(spec, ctx.name)) continue;
@@ -193,9 +209,14 @@ function buildHookHandlers(specs, options) {
193
209
  }
194
210
  });
195
211
  if (result.exitCode !== 0) {
212
+ const message = fenceHookOutput(result.stdout || result.stderr || `hook exited ${String(result.exitCode)}`);
213
+ options.onVeto?.({
214
+ tool: ctx.name,
215
+ reason: message
216
+ });
196
217
  return {
197
218
  block: true,
198
- message: fenceHookOutput(result.stdout || result.stderr || `hook exited ${String(result.exitCode)}`)
219
+ message
199
220
  };
200
221
  }
201
222
  }
package/dist/hooks.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/hooks/hook-spec.ts","../src/hooks/hook-fingerprint.ts","../src/hooks/hook-runner.ts"],"mappings":"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","names":["randomBytes","TheokitAgentError","z","createHash","FIELD_SEPARATOR","hookFingerprint","identity","canonical","command","event","matcher","String","timeoutMs","join","createHash","update","digest","spawn","MAX_OUTPUT_BYTES","DRAIN_BUDGET_MS","CHAIN_BUDGET_MULTIPLIER","runHookCommand","input","Promise","resolve","child","spawn","command","cwd","shell","detached","env","stdio","stdout","stderr","truncated","timedOut","settled","capture","current","chunk","length","next","toString","slice","on","settle","exitCode","clearTimeout","timer","drainTimer","setTimeout","killGroup","pid","timeoutMs","undefined","code","stdin","end","process","kill","HOOK_EVENTS","DEFAULT_HOOK_TIMEOUT_MS","DEFAULT_CONTINUATION_BUDGET","hookSpecSchema","z","object","event","enum","command","string","min","refine","value","test","message","matcher","optional","timeout_ms","number","int","positive","default","strict","HookSpecError","TheokitAgentError","name","code","isRetryable","parseHookSpecs","input","parsed","array","safeParse","success","error","issues","map","issue","path","join","data","IGNORE_WARNING","undefined","buildHookHandlers","specs","options","warn","onWarn","trusted","length","String","fingerprintOf","fingerprint","hookFingerprint","runnable","filter","spec","approved","has","identityOf","handlers","chainBudgetMs","Math","max","CHAIN_BUDGET_MULTIPLIER","preHooks","pre_tool_call","ctx","started","Date","now","block","matches","result","runHookCommand","cwd","timeoutMs","stdin","JSON","stringify","tool","args","env","exitCode","fenceHookOutput","stdout","stderr","postHooks","post_tool_call","truncated","toolName","RegExp","output","nonce","randomBytes","toString","open","close","escaped","replaceAll","replace"]}
1
+ {"version":3,"sources":["../src/hooks/hook-spec.ts","../src/hooks/hook-fingerprint.ts","../src/hooks/hook-runner.ts"],"mappings":"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","names":["randomBytes","TheokitAgentError","z","createHash","FIELD_SEPARATOR","hookFingerprint","identity","canonical","command","event","matcher","String","timeoutMs","join","createHash","update","digest","spawn","MAX_OUTPUT_BYTES","DRAIN_BUDGET_MS","CHAIN_BUDGET_MULTIPLIER","runHookCommand","input","Promise","resolve","child","spawn","command","cwd","shell","detached","env","stdio","stdout","stderr","truncated","timedOut","settled","capture","current","chunk","length","next","toString","slice","on","settle","exitCode","clearTimeout","timer","drainTimer","setTimeout","killGroup","pid","timeoutMs","undefined","code","stdin","end","process","kill","HOOK_EVENTS","DEFAULT_HOOK_TIMEOUT_MS","DEFAULT_CONTINUATION_BUDGET","hookSpecSchema","z","object","event","enum","command","string","min","refine","value","test","message","matcher","optional","timeout_ms","number","int","positive","default","strict","HookSpecError","TheokitAgentError","name","code","isRetryable","parseHookSpecs","input","parsed","array","safeParse","success","error","issues","map","issue","path","join","data","IGNORE_WARNING","undefined","WIRED_EVENTS","Set","buildHookHandlers","specs","options","warn","onWarn","trusted","length","String","fingerprintOf","fingerprint","hookFingerprint","runnable","filter","spec","approved","has","identityOf","handlers","chainBudgetMs","Math","max","CHAIN_BUDGET_MULTIPLIER","preHooks","pre_tool_call","ctx","started","Date","now","onVeto","tool","reason","block","matches","result","runHookCommand","cwd","timeoutMs","stdin","JSON","stringify","args","env","exitCode","fenceHookOutput","stdout","stderr","postHooks","post_tool_call","truncated","toolName","RegExp","output","nonce","randomBytes","toString","open","close","escaped","replaceAll","replace"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theokit/agents",
3
- "version": "8.2.0",
3
+ "version": "8.4.0",
4
4
  "description": "AI agents as first-class citizens of the TheoKit pipeline. The fluent agent()/tool() builders compile to SDK Agent.create() (M31 builder-only authoring API).",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",