@namzu/sdk 26.1.0 → 27.1.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 +105 -0
- package/dist/compaction/manager.d.ts +22 -0
- package/dist/compaction/manager.d.ts.map +1 -1
- package/dist/compaction/manager.js +31 -3
- package/dist/compaction/manager.js.map +1 -1
- package/dist/connector/mcp/adapter.d.ts +37 -1
- package/dist/connector/mcp/adapter.d.ts.map +1 -1
- package/dist/connector/mcp/adapter.js +55 -2
- package/dist/connector/mcp/adapter.js.map +1 -1
- package/dist/connector/mcp/prompt-adapter.d.ts +10 -4
- package/dist/connector/mcp/prompt-adapter.d.ts.map +1 -1
- package/dist/connector/mcp/prompt-adapter.js +10 -4
- package/dist/connector/mcp/prompt-adapter.js.map +1 -1
- package/dist/eval/experiment.d.ts +0 -6
- package/dist/eval/experiment.d.ts.map +1 -1
- package/dist/eval/experiment.js +28 -0
- package/dist/eval/experiment.js.map +1 -1
- package/dist/eval/index.d.ts +2 -0
- package/dist/eval/index.d.ts.map +1 -1
- package/dist/eval/index.js +1 -0
- package/dist/eval/index.js.map +1 -1
- package/dist/eval/types.d.ts +17 -0
- package/dist/eval/types.d.ts.map +1 -1
- package/dist/eval/uncertainty.d.ts +64 -0
- package/dist/eval/uncertainty.d.ts.map +1 -0
- package/dist/eval/uncertainty.js +92 -0
- package/dist/eval/uncertainty.js.map +1 -0
- package/dist/public-runtime.d.ts +3 -1
- package/dist/public-runtime.d.ts.map +1 -1
- package/dist/public-runtime.js +6 -1
- package/dist/public-runtime.js.map +1 -1
- package/dist/registry/tool/execute.d.ts +1 -0
- package/dist/registry/tool/execute.d.ts.map +1 -1
- package/dist/registry/tool/execute.js +33 -2
- package/dist/registry/tool/execute.js.map +1 -1
- package/dist/registry/tool/screen.d.ts +33 -0
- package/dist/registry/tool/screen.d.ts.map +1 -0
- package/dist/registry/tool/screen.js +102 -0
- package/dist/registry/tool/screen.js.map +1 -0
- package/dist/runtime/query/guardrail-presets.d.ts +30 -1
- package/dist/runtime/query/guardrail-presets.d.ts.map +1 -1
- package/dist/runtime/query/guardrail-presets.js +48 -0
- package/dist/runtime/query/guardrail-presets.js.map +1 -1
- package/dist/tools/trusted-read-only.d.ts +42 -0
- package/dist/tools/trusted-read-only.d.ts.map +1 -0
- package/dist/tools/trusted-read-only.js +51 -0
- package/dist/tools/trusted-read-only.js.map +1 -0
- package/dist/tools/untrusted-envelope.d.ts +22 -2
- package/dist/tools/untrusted-envelope.d.ts.map +1 -1
- package/dist/tools/untrusted-envelope.js +22 -2
- package/dist/tools/untrusted-envelope.js.map +1 -1
- package/dist/types/guardrail/index.d.ts +73 -0
- package/dist/types/guardrail/index.d.ts.map +1 -1
- package/dist/types/tool/index.d.ts +39 -0
- package/dist/types/tool/index.d.ts.map +1 -1
- package/dist/types/tool/index.js.map +1 -1
- package/dist/verification/rules.d.ts.map +1 -1
- package/dist/verification/rules.js +5 -1
- package/dist/verification/rules.js.map +1 -1
- package/package.json +1 -1
- package/src/compaction/manager.ts +39 -3
- package/src/connector/mcp/adapter.ts +62 -1
- package/src/connector/mcp/prompt-adapter.ts +10 -4
- package/src/eval/experiment.ts +30 -0
- package/src/eval/index.ts +2 -0
- package/src/eval/types.ts +17 -0
- package/src/eval/uncertainty.ts +124 -0
- package/src/public-runtime.ts +6 -0
- package/src/registry/tool/execute.ts +39 -2
- package/src/registry/tool/screen.ts +131 -0
- package/src/runtime/query/guardrail-presets.ts +50 -0
- package/src/tools/trusted-read-only.ts +52 -0
- package/src/tools/untrusted-envelope.ts +22 -2
- package/src/types/guardrail/index.ts +71 -0
- package/src/types/tool/index.ts +45 -0
- package/src/verification/rules.ts +5 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"execute.js","sourceRoot":"","sources":["../../../src/registry/tool/execute.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ToolResultGuardrailContext, ToolResultGuardrailSpec } from '../../types/guardrail/index.js';
|
|
2
|
+
import type { ToolResult } from '../../types/tool/index.js';
|
|
3
|
+
import type { Logger } from '../../utils/logger.js';
|
|
4
|
+
/**
|
|
5
|
+
* A tool result was refused terminally.
|
|
6
|
+
*
|
|
7
|
+
* Thrown rather than returned because the caller's failure path turns every
|
|
8
|
+
* exception into an ordinary tool failure the model then reads and works
|
|
9
|
+
* around — which is exactly what a terminal refusal must not become. The
|
|
10
|
+
* distinct type is what lets that path re-throw this one and convert the
|
|
11
|
+
* rest. A `halt` reported as a failed tool call would be a `refuse` with
|
|
12
|
+
* extra steps.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ToolResultHalted extends Error {
|
|
15
|
+
readonly guardrail: string;
|
|
16
|
+
constructor(guardrail: string, reason: string);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Screen a tool's result before anything downstream reads it.
|
|
20
|
+
*
|
|
21
|
+
* Runs every guardrail in order and stops at the first refusal. Rewrites
|
|
22
|
+
* compose — each guardrail sees what the previous one produced — matching
|
|
23
|
+
* the output-guardrail path, so a redaction chain behaves the same at both
|
|
24
|
+
* boundaries.
|
|
25
|
+
*
|
|
26
|
+
* Returns the result to use. A refusal comes back as a failed `ToolResult`
|
|
27
|
+
* carrying the reason, because that is the shape the model already knows
|
|
28
|
+
* how to read: it is the same thing a tool that could not do its job
|
|
29
|
+
* returns, and the alternative — a blank result — tells the model the tool
|
|
30
|
+
* found nothing, which is a different claim and a false one.
|
|
31
|
+
*/
|
|
32
|
+
export declare function screenToolResult(guardrails: readonly ToolResultGuardrailSpec[] | undefined, result: ToolResult, ctx: Omit<ToolResultGuardrailContext, 'output' | 'success'>, log: Logger): Promise<ToolResult>;
|
|
33
|
+
//# sourceMappingURL=screen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../src/registry/tool/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,0BAA0B,EAC1B,uBAAuB,EAEvB,MAAM,gCAAgC,CAAA;AACvC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAA;AAE3D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAA;AAEnD;;;;;;;;;GASG;AACH,qBAAa,gBAAiB,SAAQ,KAAK;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;gBAEd,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CAK7C;AAmCD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,gBAAgB,CACrC,UAAU,EAAE,SAAS,uBAAuB,EAAE,GAAG,SAAS,EAC1D,MAAM,EAAE,UAAU,EAClB,GAAG,EAAE,IAAI,CAAC,0BAA0B,EAAE,QAAQ,GAAG,SAAS,CAAC,EAC3D,GAAG,EAAE,MAAM,GACT,OAAO,CAAC,UAAU,CAAC,CAiDrB"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { toErrorMessage } from '../../utils/error.js';
|
|
2
|
+
/**
|
|
3
|
+
* A tool result was refused terminally.
|
|
4
|
+
*
|
|
5
|
+
* Thrown rather than returned because the caller's failure path turns every
|
|
6
|
+
* exception into an ordinary tool failure the model then reads and works
|
|
7
|
+
* around — which is exactly what a terminal refusal must not become. The
|
|
8
|
+
* distinct type is what lets that path re-throw this one and convert the
|
|
9
|
+
* rest. A `halt` reported as a failed tool call would be a `refuse` with
|
|
10
|
+
* extra steps.
|
|
11
|
+
*/
|
|
12
|
+
export class ToolResultHalted extends Error {
|
|
13
|
+
guardrail;
|
|
14
|
+
constructor(guardrail, reason) {
|
|
15
|
+
super(`Tool result halted by guardrail "${guardrail}": ${reason}`);
|
|
16
|
+
this.name = 'ToolResultHalted';
|
|
17
|
+
this.guardrail = guardrail;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
function nameOf(spec, index) {
|
|
21
|
+
return spec.name ?? `tool-result-guardrail[${index}]`;
|
|
22
|
+
}
|
|
23
|
+
function normalize(spec) {
|
|
24
|
+
return typeof spec === 'function' ? { check: spec } : spec;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* A guardrail that throws FAILS CLOSED, as the run-level ones do.
|
|
28
|
+
*
|
|
29
|
+
* `refuse` rather than `halt` for the same reason the tool boundary has a
|
|
30
|
+
* recoverable refusal at all: a broken screen means this result's safety is
|
|
31
|
+
* unknown, not that the run is unsalvageable. The model is told and can
|
|
32
|
+
* choose differently.
|
|
33
|
+
*/
|
|
34
|
+
async function safely(run, name, log) {
|
|
35
|
+
try {
|
|
36
|
+
return await run();
|
|
37
|
+
}
|
|
38
|
+
catch (err) {
|
|
39
|
+
const reason = `guardrail "${name}" threw: ${toErrorMessage(err)}`;
|
|
40
|
+
log.error('Tool-result guardrail threw — failing closed', {
|
|
41
|
+
guardrail: name,
|
|
42
|
+
error: toErrorMessage(err),
|
|
43
|
+
});
|
|
44
|
+
return { action: 'refuse', reason };
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Screen a tool's result before anything downstream reads it.
|
|
49
|
+
*
|
|
50
|
+
* Runs every guardrail in order and stops at the first refusal. Rewrites
|
|
51
|
+
* compose — each guardrail sees what the previous one produced — matching
|
|
52
|
+
* the output-guardrail path, so a redaction chain behaves the same at both
|
|
53
|
+
* boundaries.
|
|
54
|
+
*
|
|
55
|
+
* Returns the result to use. A refusal comes back as a failed `ToolResult`
|
|
56
|
+
* carrying the reason, because that is the shape the model already knows
|
|
57
|
+
* how to read: it is the same thing a tool that could not do its job
|
|
58
|
+
* returns, and the alternative — a blank result — tells the model the tool
|
|
59
|
+
* found nothing, which is a different claim and a false one.
|
|
60
|
+
*/
|
|
61
|
+
export async function screenToolResult(guardrails, result, ctx, log) {
|
|
62
|
+
if (!guardrails || guardrails.length === 0)
|
|
63
|
+
return result;
|
|
64
|
+
let current = result.output;
|
|
65
|
+
let rewritten = false;
|
|
66
|
+
for (const [index, spec] of guardrails.entries()) {
|
|
67
|
+
const { name, check } = normalize(spec);
|
|
68
|
+
const label = nameOf({ name }, index);
|
|
69
|
+
const verdict = await safely(() => check({ ...ctx, output: current, success: result.success }), label, log);
|
|
70
|
+
if (verdict.action === 'halt') {
|
|
71
|
+
log.error('Tool-result guardrail halted the run', {
|
|
72
|
+
tool: ctx.toolName,
|
|
73
|
+
guardrail: label,
|
|
74
|
+
reason: verdict.reason,
|
|
75
|
+
});
|
|
76
|
+
throw new ToolResultHalted(label, verdict.reason);
|
|
77
|
+
}
|
|
78
|
+
if (verdict.action === 'refuse') {
|
|
79
|
+
log.warn('Tool-result guardrail refused the result', {
|
|
80
|
+
tool: ctx.toolName,
|
|
81
|
+
guardrail: label,
|
|
82
|
+
reason: verdict.reason,
|
|
83
|
+
});
|
|
84
|
+
return {
|
|
85
|
+
success: false,
|
|
86
|
+
output: '',
|
|
87
|
+
error: `Tool "${ctx.toolName}" produced a result that was refused by guardrail "${label}": ${verdict.reason}`,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
if (verdict.action === 'rewrite') {
|
|
91
|
+
log.info('Tool-result guardrail rewrote the result', {
|
|
92
|
+
tool: ctx.toolName,
|
|
93
|
+
guardrail: label,
|
|
94
|
+
reason: verdict.reason,
|
|
95
|
+
});
|
|
96
|
+
current = verdict.output;
|
|
97
|
+
rewritten = true;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return rewritten ? { ...result, output: current } : result;
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=screen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen.js","sourceRoot":"","sources":["../../../src/registry/tool/screen.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { GuardrailVerdict, NamedGuardrail, OutputGuardrail } from '../../types/guardrail/index.js';
|
|
1
|
+
import type { GuardrailVerdict, NamedGuardrail, OutputGuardrail, ToolResultGuardrail } from '../../types/guardrail/index.js';
|
|
2
2
|
export interface SecretRedactionOptions {
|
|
3
3
|
/**
|
|
4
4
|
* `redact` replaces each match with a placeholder and lets the answer
|
|
@@ -27,10 +27,39 @@ export declare function secretRedactionGuardrail(options?: SecretRedactionOption
|
|
|
27
27
|
* Input-side because it is cheapest there — nothing has been spent — and
|
|
28
28
|
* because the same text reaching the model is the thing you are trying to
|
|
29
29
|
* prevent.
|
|
30
|
+
*
|
|
31
|
+
* It cannot see an INDIRECT injection, and that is not a limitation of the
|
|
32
|
+
* patterns: an injection carried in a web page or a connected server's
|
|
33
|
+
* answer never appears in the run's input at all. See
|
|
34
|
+
* {@link toolResultInjectionGuardrail}, which is the same list at the other
|
|
35
|
+
* boundary.
|
|
30
36
|
*/
|
|
31
37
|
export declare function promptInjectionGuardrail(): NamedGuardrail<(ctx: {
|
|
32
38
|
messages: readonly {
|
|
33
39
|
readonly content: unknown;
|
|
34
40
|
}[];
|
|
35
41
|
}) => GuardrailVerdict>;
|
|
42
|
+
/**
|
|
43
|
+
* Flag likely instruction-override attempts in what a TOOL returned.
|
|
44
|
+
*
|
|
45
|
+
* The case the input-side screen structurally cannot reach. An indirect
|
|
46
|
+
* injection arrives in a fetched page or a connected server's answer, so it
|
|
47
|
+
* is never in the run's input — by the time it matters the run is
|
|
48
|
+
* legitimate and the payload is riding on a result the model asked for.
|
|
49
|
+
*
|
|
50
|
+
* `refuse`, not `halt`: a hostile result is a reason to abandon that call,
|
|
51
|
+
* not the run. The model is told the answer was refused and can choose
|
|
52
|
+
* something else, which is the behaviour that keeps the control switched on
|
|
53
|
+
* — a screen that ends a run on a false positive gets removed, and then it
|
|
54
|
+
* protects nothing.
|
|
55
|
+
*
|
|
56
|
+
* **Detection is partial and this says so rather than implying coverage.**
|
|
57
|
+
* The pattern list is shared with the input-side screen, so the same caveat
|
|
58
|
+
* holds: an injection phrased as ordinary prose, or written in a language
|
|
59
|
+
* the list does not cover, passes. Pattern-matching and delimiting both
|
|
60
|
+
* measure poorly against an attacker who adapts. This raises the cost of
|
|
61
|
+
* the lazy attack; it is not a boundary, and nothing here should be
|
|
62
|
+
* described as one.
|
|
63
|
+
*/
|
|
64
|
+
export declare function toolResultInjectionGuardrail(): NamedGuardrail<ToolResultGuardrail>;
|
|
36
65
|
//# sourceMappingURL=guardrail-presets.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrail-presets.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/guardrail-presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,MAAM,gCAAgC,CAAA;AAqBvC,MAAM,WAAW,sBAAsB;IACtC;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IACrC,qDAAqD;IACrD,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;CACjF;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACvC,OAAO,GAAE,sBAA2B,GAClC,cAAc,CAAC,eAAe,CAAC,CA4BjC;AAmBD
|
|
1
|
+
{"version":3,"file":"guardrail-presets.d.ts","sourceRoot":"","sources":["../../../src/runtime/query/guardrail-presets.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,mBAAmB,EAEnB,MAAM,gCAAgC,CAAA;AAqBvC,MAAM,WAAW,sBAAsB;IACtC;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAA;IACrC,qDAAqD;IACrD,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;CACjF;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACvC,OAAO,GAAE,sBAA2B,GAClC,cAAc,CAAC,eAAe,CAAC,CA4BjC;AAmBD;;;;;;;;;;;;GAYG;AACH,wBAAgB,wBAAwB,IAAI,cAAc,CACzD,CAAC,GAAG,EAAE;IAAE,QAAQ,EAAE,SAAS;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,EAAE,CAAA;CAAE,KAAK,gBAAgB,CACjF,CAkBA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,4BAA4B,IAAI,cAAc,CAAC,mBAAmB,CAAC,CAkBlF"}
|
|
@@ -73,6 +73,12 @@ const INJECTION_PATTERNS = [
|
|
|
73
73
|
* Input-side because it is cheapest there — nothing has been spent — and
|
|
74
74
|
* because the same text reaching the model is the thing you are trying to
|
|
75
75
|
* prevent.
|
|
76
|
+
*
|
|
77
|
+
* It cannot see an INDIRECT injection, and that is not a limitation of the
|
|
78
|
+
* patterns: an injection carried in a web page or a connected server's
|
|
79
|
+
* answer never appears in the run's input at all. See
|
|
80
|
+
* {@link toolResultInjectionGuardrail}, which is the same list at the other
|
|
81
|
+
* boundary.
|
|
76
82
|
*/
|
|
77
83
|
export function promptInjectionGuardrail() {
|
|
78
84
|
return {
|
|
@@ -93,4 +99,46 @@ export function promptInjectionGuardrail() {
|
|
|
93
99
|
},
|
|
94
100
|
};
|
|
95
101
|
}
|
|
102
|
+
/**
|
|
103
|
+
* Flag likely instruction-override attempts in what a TOOL returned.
|
|
104
|
+
*
|
|
105
|
+
* The case the input-side screen structurally cannot reach. An indirect
|
|
106
|
+
* injection arrives in a fetched page or a connected server's answer, so it
|
|
107
|
+
* is never in the run's input — by the time it matters the run is
|
|
108
|
+
* legitimate and the payload is riding on a result the model asked for.
|
|
109
|
+
*
|
|
110
|
+
* `refuse`, not `halt`: a hostile result is a reason to abandon that call,
|
|
111
|
+
* not the run. The model is told the answer was refused and can choose
|
|
112
|
+
* something else, which is the behaviour that keeps the control switched on
|
|
113
|
+
* — a screen that ends a run on a false positive gets removed, and then it
|
|
114
|
+
* protects nothing.
|
|
115
|
+
*
|
|
116
|
+
* **Detection is partial and this says so rather than implying coverage.**
|
|
117
|
+
* The pattern list is shared with the input-side screen, so the same caveat
|
|
118
|
+
* holds: an injection phrased as ordinary prose, or written in a language
|
|
119
|
+
* the list does not cover, passes. Pattern-matching and delimiting both
|
|
120
|
+
* measure poorly against an attacker who adapts. This raises the cost of
|
|
121
|
+
* the lazy attack; it is not a boundary, and nothing here should be
|
|
122
|
+
* described as one.
|
|
123
|
+
*/
|
|
124
|
+
export function toolResultInjectionGuardrail() {
|
|
125
|
+
return {
|
|
126
|
+
name: 'tool-result-injection',
|
|
127
|
+
check: ({ output, provenance }) => {
|
|
128
|
+
for (const pattern of INJECTION_PATTERNS) {
|
|
129
|
+
if (!pattern.test(output))
|
|
130
|
+
continue;
|
|
131
|
+
// Naming the source is most of what the model needs in order
|
|
132
|
+
// to act. "A result was refused" is not something it can route
|
|
133
|
+
// around; "the answer from weather-co was refused" is.
|
|
134
|
+
const source = provenance ? `the connected server "${provenance.server}"` : 'this tool';
|
|
135
|
+
return {
|
|
136
|
+
action: 'refuse',
|
|
137
|
+
reason: `the result from ${source} matched a known instruction-override pattern`,
|
|
138
|
+
};
|
|
139
|
+
}
|
|
140
|
+
return { action: 'pass' };
|
|
141
|
+
},
|
|
142
|
+
};
|
|
143
|
+
}
|
|
96
144
|
//# sourceMappingURL=guardrail-presets.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"guardrail-presets.js","sourceRoot":"","sources":["../../../src/runtime/query/guardrail-presets.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"guardrail-presets.js","sourceRoot":"","sources":["../../../src/runtime/query/guardrail-presets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { ToolDefinition } from '../types/tool/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* May this tool's read-only claim settle a gate on its own?
|
|
4
|
+
*
|
|
5
|
+
* A connected server declares whether its own tools are read-only, and
|
|
6
|
+
* that declaration decided whether a call was approved without asking. The
|
|
7
|
+
* thing being gated supplied the input to the gate.
|
|
8
|
+
*
|
|
9
|
+
* The wire itself calls these fields HINTS. Three separate consumers read
|
|
10
|
+
* them as facts, so a server setting `readOnlyHint: true` and
|
|
11
|
+
* `destructiveHint: false` controlled the whole predicate for its own
|
|
12
|
+
* tools — the kernel's `allow_read_only` rule, the operator prompt
|
|
13
|
+
* exemption, and the plan-mode pass.
|
|
14
|
+
*
|
|
15
|
+
* The estate floor this repository inherits already decided this: least
|
|
16
|
+
* privilege, default deny, and — on tool results and fetched content —
|
|
17
|
+
* data is not instructions, and untrusted content cannot escalate
|
|
18
|
+
* capabilities. A server's declaration about its own tools is untrusted
|
|
19
|
+
* content by that definition. This is that rule applied, not a new policy.
|
|
20
|
+
*
|
|
21
|
+
* **The asymmetry is the design.** A self-declaration may RAISE the
|
|
22
|
+
* requirement and never LOWER it:
|
|
23
|
+
*
|
|
24
|
+
* - `destructiveHint: true` from a server is believed. A server
|
|
25
|
+
* volunteering that its tool is dangerous moves toward caution, and
|
|
26
|
+
* disbelieving it buys nothing.
|
|
27
|
+
* - `readOnlyHint: true` from a server does not, on its own, settle a
|
|
28
|
+
* call as allowed or skip a prompt. That is the untrusted party
|
|
29
|
+
* opening its own gate.
|
|
30
|
+
*
|
|
31
|
+
* Trust for the second case comes from the operator, per server, and is
|
|
32
|
+
* recorded on the tool as `provenance.readOnlyHintTrusted`. Never a global
|
|
33
|
+
* switch: one flag meaning "trust annotations" hands every connected
|
|
34
|
+
* server the same reach, which is the hole restated.
|
|
35
|
+
*
|
|
36
|
+
* `isReadOnly` itself is left reporting faithfully what the server said.
|
|
37
|
+
* Provenance and policy are different questions, and collapsing them would
|
|
38
|
+
* corrupt the outbound re-export and the prompt's own destructive label in
|
|
39
|
+
* order to fix a gate.
|
|
40
|
+
*/
|
|
41
|
+
export declare function isTrustedReadOnly(tool: ToolDefinition | undefined, input: unknown): boolean;
|
|
42
|
+
//# sourceMappingURL=trusted-read-only.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-read-only.d.ts","sourceRoot":"","sources":["../../src/tools/trusted-read-only.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAE5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,cAAc,GAAG,SAAS,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAU3F"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* May this tool's read-only claim settle a gate on its own?
|
|
3
|
+
*
|
|
4
|
+
* A connected server declares whether its own tools are read-only, and
|
|
5
|
+
* that declaration decided whether a call was approved without asking. The
|
|
6
|
+
* thing being gated supplied the input to the gate.
|
|
7
|
+
*
|
|
8
|
+
* The wire itself calls these fields HINTS. Three separate consumers read
|
|
9
|
+
* them as facts, so a server setting `readOnlyHint: true` and
|
|
10
|
+
* `destructiveHint: false` controlled the whole predicate for its own
|
|
11
|
+
* tools — the kernel's `allow_read_only` rule, the operator prompt
|
|
12
|
+
* exemption, and the plan-mode pass.
|
|
13
|
+
*
|
|
14
|
+
* The estate floor this repository inherits already decided this: least
|
|
15
|
+
* privilege, default deny, and — on tool results and fetched content —
|
|
16
|
+
* data is not instructions, and untrusted content cannot escalate
|
|
17
|
+
* capabilities. A server's declaration about its own tools is untrusted
|
|
18
|
+
* content by that definition. This is that rule applied, not a new policy.
|
|
19
|
+
*
|
|
20
|
+
* **The asymmetry is the design.** A self-declaration may RAISE the
|
|
21
|
+
* requirement and never LOWER it:
|
|
22
|
+
*
|
|
23
|
+
* - `destructiveHint: true` from a server is believed. A server
|
|
24
|
+
* volunteering that its tool is dangerous moves toward caution, and
|
|
25
|
+
* disbelieving it buys nothing.
|
|
26
|
+
* - `readOnlyHint: true` from a server does not, on its own, settle a
|
|
27
|
+
* call as allowed or skip a prompt. That is the untrusted party
|
|
28
|
+
* opening its own gate.
|
|
29
|
+
*
|
|
30
|
+
* Trust for the second case comes from the operator, per server, and is
|
|
31
|
+
* recorded on the tool as `provenance.readOnlyHintTrusted`. Never a global
|
|
32
|
+
* switch: one flag meaning "trust annotations" hands every connected
|
|
33
|
+
* server the same reach, which is the hole restated.
|
|
34
|
+
*
|
|
35
|
+
* `isReadOnly` itself is left reporting faithfully what the server said.
|
|
36
|
+
* Provenance and policy are different questions, and collapsing them would
|
|
37
|
+
* corrupt the outbound re-export and the prompt's own destructive label in
|
|
38
|
+
* order to fix a gate.
|
|
39
|
+
*/
|
|
40
|
+
export function isTrustedReadOnly(tool, input) {
|
|
41
|
+
if (!tool?.isReadOnly)
|
|
42
|
+
return false;
|
|
43
|
+
// No provenance means the tool is host-defined: it came from this
|
|
44
|
+
// process, from code the operator installed, and there is no untrusted
|
|
45
|
+
// party in the chain. Requiring an opt-in for a builtin would break
|
|
46
|
+
// every read-only exemption for no gain in trust.
|
|
47
|
+
if (tool.provenance && !tool.provenance.readOnlyHintTrusted)
|
|
48
|
+
return false;
|
|
49
|
+
return tool.isReadOnly(input);
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=trusted-read-only.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"trusted-read-only.js","sourceRoot":"","sources":["../../src/tools/trusted-read-only.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAgC,EAAE,KAAc;IACjF,IAAI,CAAC,IAAI,EAAE,UAAU;QAAE,OAAO,KAAK,CAAA;IAEnC,kEAAkE;IAClE,uEAAuE;IACvE,oEAAoE;IACpE,kDAAkD;IAClD,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,mBAAmB;QAAE,OAAO,KAAK,CAAA;IAEzE,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;AAC9B,CAAC"}
|
|
@@ -2,12 +2,32 @@
|
|
|
2
2
|
* Framing for content the agent did not author and must not obey.
|
|
3
3
|
*
|
|
4
4
|
* An unlabelled block of text in a tool result reads exactly like the agent's
|
|
5
|
-
* own instructions.
|
|
6
|
-
* not filtering — it is saying plainly whose words these are and that they are
|
|
5
|
+
* own instructions. This says plainly whose words these are and that they are
|
|
7
6
|
* material rather than direction. That is the floor this estate already
|
|
8
7
|
* states: data is not instructions, and a tool result cannot escalate what an
|
|
9
8
|
* agent may do.
|
|
10
9
|
*
|
|
10
|
+
* **It marks provenance. It refuses nothing, and it does not stop an
|
|
11
|
+
* attacker who is trying.** This paragraph used to claim the framing was
|
|
12
|
+
* "the mitigation that survives contact with a real model", and that is
|
|
13
|
+
* measurably wrong. Nasr et al., "The Attacker Moves Second"
|
|
14
|
+
* (arXiv:2510.09023), broke twelve published defences at above 90% attack
|
|
15
|
+
* success once the attacker adapts; the majority had originally reported
|
|
16
|
+
* near-zero success. Delimiting specifically goes from as low as 1% under
|
|
17
|
+
* a static benchmark to above 95% under adaptive attack.
|
|
18
|
+
*
|
|
19
|
+
* So read every number for a prompt-level defence as static unless it says
|
|
20
|
+
* otherwise, and treat this envelope as raising cost rather than as a
|
|
21
|
+
* boundary. What survives an adapting attacker in the same literature is
|
|
22
|
+
* architectural: AgentDojo (arXiv:2406.13352) found tool isolation and
|
|
23
|
+
* tool filtering the effective mitigations, and this repository's real
|
|
24
|
+
* boundaries are of that kind — the permission gate, the sandbox, the
|
|
25
|
+
* egress proxy deciding by resolved address.
|
|
26
|
+
*
|
|
27
|
+
* The two details below still matter. They are what stops the framing
|
|
28
|
+
* being trivially removable by the content itself, which is a lower bar
|
|
29
|
+
* than stopping an attacker and worth clearing anyway.
|
|
30
|
+
*
|
|
11
31
|
* Two details make the difference between a boundary and a decoration, and
|
|
12
32
|
* both were missing from this repo's first envelope:
|
|
13
33
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"untrusted-envelope.d.ts","sourceRoot":"","sources":["../../src/tools/untrusted-envelope.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"untrusted-envelope.d.ts","sourceRoot":"","sources":["../../src/tools/untrusted-envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAIH;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEnE;AAMD,MAAM,WAAW,iBAAiB;IACjC,gEAAgE;IAChE,IAAI,EAAE,MAAM,CAAA;IACZ,mEAAmE;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACnC,kEAAkE;IAClE,UAAU,EAAE,MAAM,CAAA;CAClB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAqBlF"}
|
|
@@ -2,12 +2,32 @@
|
|
|
2
2
|
* Framing for content the agent did not author and must not obey.
|
|
3
3
|
*
|
|
4
4
|
* An unlabelled block of text in a tool result reads exactly like the agent's
|
|
5
|
-
* own instructions.
|
|
6
|
-
* not filtering — it is saying plainly whose words these are and that they are
|
|
5
|
+
* own instructions. This says plainly whose words these are and that they are
|
|
7
6
|
* material rather than direction. That is the floor this estate already
|
|
8
7
|
* states: data is not instructions, and a tool result cannot escalate what an
|
|
9
8
|
* agent may do.
|
|
10
9
|
*
|
|
10
|
+
* **It marks provenance. It refuses nothing, and it does not stop an
|
|
11
|
+
* attacker who is trying.** This paragraph used to claim the framing was
|
|
12
|
+
* "the mitigation that survives contact with a real model", and that is
|
|
13
|
+
* measurably wrong. Nasr et al., "The Attacker Moves Second"
|
|
14
|
+
* (arXiv:2510.09023), broke twelve published defences at above 90% attack
|
|
15
|
+
* success once the attacker adapts; the majority had originally reported
|
|
16
|
+
* near-zero success. Delimiting specifically goes from as low as 1% under
|
|
17
|
+
* a static benchmark to above 95% under adaptive attack.
|
|
18
|
+
*
|
|
19
|
+
* So read every number for a prompt-level defence as static unless it says
|
|
20
|
+
* otherwise, and treat this envelope as raising cost rather than as a
|
|
21
|
+
* boundary. What survives an adapting attacker in the same literature is
|
|
22
|
+
* architectural: AgentDojo (arXiv:2406.13352) found tool isolation and
|
|
23
|
+
* tool filtering the effective mitigations, and this repository's real
|
|
24
|
+
* boundaries are of that kind — the permission gate, the sandbox, the
|
|
25
|
+
* egress proxy deciding by resolved address.
|
|
26
|
+
*
|
|
27
|
+
* The two details below still matter. They are what stops the framing
|
|
28
|
+
* being trivially removable by the content itself, which is a lower bar
|
|
29
|
+
* than stopping an attacker and worth clearing anyway.
|
|
30
|
+
*
|
|
11
31
|
* Two details make the difference between a boundary and a decoration, and
|
|
12
32
|
* both were missing from this repo's first envelope:
|
|
13
33
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"untrusted-envelope.js","sourceRoot":"","sources":["../../src/tools/untrusted-envelope.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"untrusted-envelope.js","sourceRoot":"","sources":["../../src/tools/untrusted-envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,MAAM,aAAa,GAAG,mBAAmB,CAAA;AAEzC;;;;;;;;;GASG;AACH,MAAM,UAAU,2BAA2B,CAAC,OAAe;IAC1D,OAAO,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,iBAAiB,CAAC,CAAA;AACzD,CAAC;AAED,SAAS,eAAe,CAAC,KAAa;IACrC,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;AAClF,CAAC;AAWD;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAAC,QAA2B,EAAE,OAAe;IACzE,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;SAC1D,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,KAAK,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC;SAC5D,IAAI,CAAC,EAAE,CAAC,CAAA;IAEV,OAAO;QACN,0BAA0B,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,UAAU,GAAG;QACzE,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,oEAAoE;QACpE,oEAAoE;QACpE,oEAAoE;QACpE,qEAAqE;QACrE,+BAA+B;QAC/B,2BAA2B,CAAC,QAAQ,CAAC,UAAU,CAAC;QAChD,wFAAwF;QACxF,EAAE;QACF,2BAA2B,CAAC,OAAO,CAAC;QACpC,oBAAoB;KACpB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AACb,CAAC"}
|