@lannguyensi/harness 0.53.0 → 0.54.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 +40 -1
- package/dist/cli/delegate/index.d.ts +15 -2
- package/dist/cli/delegate/index.js +128 -4
- package/dist/cli/delegate/index.js.map +1 -1
- package/dist/cli/doctor/bypass-without-auto-approve.js +10 -4
- package/dist/cli/doctor/bypass-without-auto-approve.js.map +1 -1
- package/dist/cli/dry-run.js +32 -1
- package/dist/cli/dry-run.js.map +1 -1
- package/dist/cli/index.js +13 -5
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/profiles.js +89 -8
- package/dist/cli/init/profiles.js.map +1 -1
- package/dist/cli/init/templates.js +163 -3
- package/dist/cli/init/templates.js.map +1 -1
- package/dist/cli/pack/hook-pre-tool-use.js +200 -95
- package/dist/cli/pack/hook-pre-tool-use.js.map +1 -1
- package/dist/cli/record/index.d.ts +8 -0
- package/dist/cli/record/index.js +55 -7
- package/dist/cli/record/index.js.map +1 -1
- package/dist/cli/validate/checks.js +61 -9
- package/dist/cli/validate/checks.js.map +1 -1
- package/dist/io/extract.d.ts +29 -0
- package/dist/io/extract.js +36 -0
- package/dist/io/extract.js.map +1 -1
- package/dist/policies/index.d.ts +1 -1
- package/dist/policies/index.js +1 -1
- package/dist/policies/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.d.ts +37 -0
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js +41 -1
- package/dist/policy-packs/builtin/understanding-before-execution/delegation-markers.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.d.ts +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/index.js.map +1 -1
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js +9 -3
- package/dist/policy-packs/builtin/understanding-before-execution/permission-mode-observations.js.map +1 -1
- package/dist/runtime/destructive-shell-floor.d.ts +19 -0
- package/dist/runtime/destructive-shell-floor.js +597 -0
- package/dist/runtime/destructive-shell-floor.js.map +1 -0
- package/dist/runtime/intercept.d.ts +10 -7
- package/dist/runtime/intercept.js +108 -9
- package/dist/runtime/intercept.js.map +1 -1
- package/dist/runtime/read-only-bash.d.ts +21 -0
- package/dist/runtime/read-only-bash.js +484 -0
- package/dist/runtime/read-only-bash.js.map +1 -1
- package/dist/runtime/risk-classifier.js +68 -13
- package/dist/runtime/risk-classifier.js.map +1 -1
- package/dist/runtime/when-eval.d.ts +18 -5
- package/dist/runtime/when-eval.js +64 -11
- package/dist/runtime/when-eval.js.map +1 -1
- package/dist/runtime/workflow-policies.d.ts +43 -1
- package/dist/runtime/workflow-policies.js +158 -1
- package/dist/runtime/workflow-policies.js.map +1 -1
- package/dist/schema/extract.d.ts +4 -0
- package/dist/schema/extract.js +64 -1
- package/dist/schema/extract.js.map +1 -1
- package/dist/schema/index.d.ts +13 -0
- package/dist/schema/policies.d.ts +19 -0
- package/dist/schema/policies.js +17 -1
- package/dist/schema/policies.js.map +1 -1
- package/package.json +1 -1
package/dist/schema/extract.d.ts
CHANGED
|
@@ -3,3 +3,7 @@ export declare const ExtractExpressionSchema: z.ZodEffects<z.ZodString, string,
|
|
|
3
3
|
export type ExtractExpression = z.infer<typeof ExtractExpressionSchema>;
|
|
4
4
|
export declare const ExtractMapSchema: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, Record<string, string>, Record<string, string>>;
|
|
5
5
|
export type ExtractMap = z.infer<typeof ExtractMapSchema>;
|
|
6
|
+
export declare const ToolArgsExtractExpressionSchema: z.ZodEffects<z.ZodString, string, string>;
|
|
7
|
+
export declare const InputMatchLiteralSchema: z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>;
|
|
8
|
+
export declare const InputMatchMapSchema: z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>, Record<string, string | number | boolean>, Record<string, string | number | boolean>>;
|
|
9
|
+
export type InputMatchMap = z.infer<typeof InputMatchMapSchema>;
|
package/dist/schema/extract.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import { ExtractGrammarError, validateExtractGrammar, } from "../io/extract.js";
|
|
2
|
+
import { ExtractGrammarError, parseExtractExpression, validateExtractGrammar, } from "../io/extract.js";
|
|
3
3
|
export const ExtractExpressionSchema = z.string().min(1).superRefine((v, ctx) => {
|
|
4
4
|
try {
|
|
5
5
|
validateExtractGrammar(v);
|
|
@@ -20,4 +20,67 @@ const VAR_NAME_RE = /^[A-Z][A-Z0-9_]*$/;
|
|
|
20
20
|
export const ExtractMapSchema = z
|
|
21
21
|
.record(ExtractExpressionSchema)
|
|
22
22
|
.refine((m) => Object.keys(m).every((k) => VAR_NAME_RE.test(k)), { message: "extract variable names must be SCREAMING_SNAKE_CASE" });
|
|
23
|
+
// ---------------------------------------------------------------------------
|
|
24
|
+
// trigger.input_match (task 2699b476)
|
|
25
|
+
// ---------------------------------------------------------------------------
|
|
26
|
+
//
|
|
27
|
+
// Same expression grammar as `trigger.extract`, but restricted to the
|
|
28
|
+
// `toolArgs.` namespace: the predicate answers "did THIS tool call carry
|
|
29
|
+
// this argument value?", and `event` / `session` / `git` are not tool
|
|
30
|
+
// arguments. Rejecting the other three namespaces here (rather than
|
|
31
|
+
// silently never matching them at runtime) is what makes a typo like
|
|
32
|
+
// `event.autoMerge` a loud `harness validate` error instead of a gate
|
|
33
|
+
// that quietly never fires.
|
|
34
|
+
//
|
|
35
|
+
// This is the same layer `bash_match` and `path_match` are declared at
|
|
36
|
+
// (`PolicyTriggerSchema`), so every consumer that parses a manifest,
|
|
37
|
+
// `harness validate`, `apply`, `doctor`, `loadManifest`, the intercept
|
|
38
|
+
// entrypoint, refuses the bad shape, not just the two report verbs.
|
|
39
|
+
export const ToolArgsExtractExpressionSchema = z
|
|
40
|
+
.string()
|
|
41
|
+
.min(1)
|
|
42
|
+
.superRefine((v, ctx) => {
|
|
43
|
+
let parsed;
|
|
44
|
+
try {
|
|
45
|
+
parsed = parseExtractExpression(v);
|
|
46
|
+
}
|
|
47
|
+
catch (err) {
|
|
48
|
+
if (err instanceof ExtractGrammarError) {
|
|
49
|
+
ctx.addIssue({
|
|
50
|
+
code: z.ZodIssueCode.custom,
|
|
51
|
+
message: err.message.replace(/^extract expression "[^"]*": /, ""),
|
|
52
|
+
});
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
throw err;
|
|
56
|
+
}
|
|
57
|
+
if (parsed.namespace !== "toolArgs") {
|
|
58
|
+
ctx.addIssue({
|
|
59
|
+
code: z.ZodIssueCode.custom,
|
|
60
|
+
message: `input_match keys must read from the toolArgs namespace ` +
|
|
61
|
+
`(the tool call's own arguments); "${v}" reads from ${parsed.namespace}`,
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
export const InputMatchLiteralSchema = z.union([z.string(), z.number(), z.boolean()]);
|
|
66
|
+
export const InputMatchMapSchema = z
|
|
67
|
+
.record(InputMatchLiteralSchema)
|
|
68
|
+
.superRefine((map, ctx) => {
|
|
69
|
+
const keys = Object.keys(map);
|
|
70
|
+
if (keys.length === 0) {
|
|
71
|
+
ctx.addIssue({
|
|
72
|
+
code: z.ZodIssueCode.custom,
|
|
73
|
+
message: "trigger.input_match must declare at least one entry; an empty map is a silent no-op",
|
|
74
|
+
});
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
for (const key of keys) {
|
|
78
|
+
const result = ToolArgsExtractExpressionSchema.safeParse(key);
|
|
79
|
+
if (result.success)
|
|
80
|
+
continue;
|
|
81
|
+
for (const issue of result.error.issues) {
|
|
82
|
+
ctx.addIssue({ code: z.ZodIssueCode.custom, path: [key], message: issue.message });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
});
|
|
23
86
|
//# sourceMappingURL=extract.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/schema/extract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE;IAC9E,IAAI,CAAC;QACH,sBAAsB,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,mBAAmB,EAAE,CAAC;YACvC,kEAAkE;YAClE,iEAAiE;YACjE,iCAAiC;YACjC,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,EAAE,EAAE,CAAC,CAAC;YACrE,GAAG,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;YAC5D,OAAO;QACT,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CAAC,CAAC;AAIH,MAAM,WAAW,GAAG,mBAAmB,CAAC;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC,uBAAuB,CAAC;KAC/B,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EACvD,EAAE,OAAO,EAAE,qDAAqD,EAAE,CACnE,CAAC"}
|
|
1
|
+
{"version":3,"file":"extract.js","sourceRoot":"","sources":["../../src/schema/extract.ts"],"names":[],"mappings":"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"}
|
package/dist/schema/index.d.ts
CHANGED
|
@@ -431,6 +431,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
431
431
|
match: z.ZodOptional<z.ZodString>;
|
|
432
432
|
path_match: z.ZodOptional<z.ZodString>;
|
|
433
433
|
bash_match: z.ZodOptional<z.ZodString>;
|
|
434
|
+
input_match: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>, Record<string, string | number | boolean>, Record<string, string | number | boolean>>>;
|
|
434
435
|
extract: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, Record<string, string>, Record<string, string>>>;
|
|
435
436
|
}, "strict", z.ZodTypeAny, {
|
|
436
437
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
@@ -438,12 +439,14 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
438
439
|
path_match?: string | undefined;
|
|
439
440
|
bash_match?: string | undefined;
|
|
440
441
|
extract?: Record<string, string> | undefined;
|
|
442
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
441
443
|
}, {
|
|
442
444
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
443
445
|
match?: string | undefined;
|
|
444
446
|
path_match?: string | undefined;
|
|
445
447
|
bash_match?: string | undefined;
|
|
446
448
|
extract?: Record<string, string> | undefined;
|
|
449
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
447
450
|
}>;
|
|
448
451
|
requires: z.ZodOptional<z.ZodObject<{
|
|
449
452
|
ledger_tag: z.ZodString;
|
|
@@ -609,6 +612,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
609
612
|
path_match?: string | undefined;
|
|
610
613
|
bash_match?: string | undefined;
|
|
611
614
|
extract?: Record<string, string> | undefined;
|
|
615
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
612
616
|
};
|
|
613
617
|
hook: string;
|
|
614
618
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -658,6 +662,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
658
662
|
path_match?: string | undefined;
|
|
659
663
|
bash_match?: string | undefined;
|
|
660
664
|
extract?: Record<string, string> | undefined;
|
|
665
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
661
666
|
};
|
|
662
667
|
hook: string;
|
|
663
668
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -707,6 +712,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
707
712
|
path_match?: string | undefined;
|
|
708
713
|
bash_match?: string | undefined;
|
|
709
714
|
extract?: Record<string, string> | undefined;
|
|
715
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
710
716
|
};
|
|
711
717
|
hook: string;
|
|
712
718
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -756,6 +762,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
756
762
|
path_match?: string | undefined;
|
|
757
763
|
bash_match?: string | undefined;
|
|
758
764
|
extract?: Record<string, string> | undefined;
|
|
765
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
759
766
|
};
|
|
760
767
|
hook: string;
|
|
761
768
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -805,6 +812,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
805
812
|
path_match?: string | undefined;
|
|
806
813
|
bash_match?: string | undefined;
|
|
807
814
|
extract?: Record<string, string> | undefined;
|
|
815
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
808
816
|
};
|
|
809
817
|
hook: string;
|
|
810
818
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -854,6 +862,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
854
862
|
path_match?: string | undefined;
|
|
855
863
|
bash_match?: string | undefined;
|
|
856
864
|
extract?: Record<string, string> | undefined;
|
|
865
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
857
866
|
};
|
|
858
867
|
hook: string;
|
|
859
868
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -2638,6 +2647,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
2638
2647
|
path_match?: string | undefined;
|
|
2639
2648
|
bash_match?: string | undefined;
|
|
2640
2649
|
extract?: Record<string, string> | undefined;
|
|
2650
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
2641
2651
|
};
|
|
2642
2652
|
hook: string;
|
|
2643
2653
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -2954,6 +2964,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
2954
2964
|
path_match?: string | undefined;
|
|
2955
2965
|
bash_match?: string | undefined;
|
|
2956
2966
|
extract?: Record<string, string> | undefined;
|
|
2967
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
2957
2968
|
};
|
|
2958
2969
|
hook: string;
|
|
2959
2970
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -3270,6 +3281,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
3270
3281
|
path_match?: string | undefined;
|
|
3271
3282
|
bash_match?: string | undefined;
|
|
3272
3283
|
extract?: Record<string, string> | undefined;
|
|
3284
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
3273
3285
|
};
|
|
3274
3286
|
hook: string;
|
|
3275
3287
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -3586,6 +3598,7 @@ export declare const ManifestSchema: z.ZodEffects<z.ZodObject<{
|
|
|
3586
3598
|
path_match?: string | undefined;
|
|
3587
3599
|
bash_match?: string | undefined;
|
|
3588
3600
|
extract?: Record<string, string> | undefined;
|
|
3601
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
3589
3602
|
};
|
|
3590
3603
|
hook: string;
|
|
3591
3604
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -4,6 +4,7 @@ export declare const PolicyTriggerSchema: z.ZodObject<{
|
|
|
4
4
|
match: z.ZodOptional<z.ZodString>;
|
|
5
5
|
path_match: z.ZodOptional<z.ZodString>;
|
|
6
6
|
bash_match: z.ZodOptional<z.ZodString>;
|
|
7
|
+
input_match: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>, Record<string, string | number | boolean>, Record<string, string | number | boolean>>>;
|
|
7
8
|
extract: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, Record<string, string>, Record<string, string>>>;
|
|
8
9
|
}, "strict", z.ZodTypeAny, {
|
|
9
10
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
@@ -11,12 +12,14 @@ export declare const PolicyTriggerSchema: z.ZodObject<{
|
|
|
11
12
|
path_match?: string | undefined;
|
|
12
13
|
bash_match?: string | undefined;
|
|
13
14
|
extract?: Record<string, string> | undefined;
|
|
15
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
14
16
|
}, {
|
|
15
17
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
16
18
|
match?: string | undefined;
|
|
17
19
|
path_match?: string | undefined;
|
|
18
20
|
bash_match?: string | undefined;
|
|
19
21
|
extract?: Record<string, string> | undefined;
|
|
22
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
20
23
|
}>;
|
|
21
24
|
export declare const PolicyEnforcementSchema: z.ZodEnum<["block", "warn", "require_approval"]>;
|
|
22
25
|
export declare const ProducerSchema: z.ZodDiscriminatedUnion<"kind", [z.ZodObject<{
|
|
@@ -111,6 +114,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
111
114
|
match: z.ZodOptional<z.ZodString>;
|
|
112
115
|
path_match: z.ZodOptional<z.ZodString>;
|
|
113
116
|
bash_match: z.ZodOptional<z.ZodString>;
|
|
117
|
+
input_match: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>, Record<string, string | number | boolean>, Record<string, string | number | boolean>>>;
|
|
114
118
|
extract: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, Record<string, string>, Record<string, string>>>;
|
|
115
119
|
}, "strict", z.ZodTypeAny, {
|
|
116
120
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
@@ -118,12 +122,14 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
118
122
|
path_match?: string | undefined;
|
|
119
123
|
bash_match?: string | undefined;
|
|
120
124
|
extract?: Record<string, string> | undefined;
|
|
125
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
121
126
|
}, {
|
|
122
127
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
123
128
|
match?: string | undefined;
|
|
124
129
|
path_match?: string | undefined;
|
|
125
130
|
bash_match?: string | undefined;
|
|
126
131
|
extract?: Record<string, string> | undefined;
|
|
132
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
127
133
|
}>;
|
|
128
134
|
requires: z.ZodOptional<z.ZodObject<{
|
|
129
135
|
ledger_tag: z.ZodString;
|
|
@@ -289,6 +295,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
289
295
|
path_match?: string | undefined;
|
|
290
296
|
bash_match?: string | undefined;
|
|
291
297
|
extract?: Record<string, string> | undefined;
|
|
298
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
292
299
|
};
|
|
293
300
|
hook: string;
|
|
294
301
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -338,6 +345,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
338
345
|
path_match?: string | undefined;
|
|
339
346
|
bash_match?: string | undefined;
|
|
340
347
|
extract?: Record<string, string> | undefined;
|
|
348
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
341
349
|
};
|
|
342
350
|
hook: string;
|
|
343
351
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -387,6 +395,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
387
395
|
path_match?: string | undefined;
|
|
388
396
|
bash_match?: string | undefined;
|
|
389
397
|
extract?: Record<string, string> | undefined;
|
|
398
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
390
399
|
};
|
|
391
400
|
hook: string;
|
|
392
401
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -436,6 +445,7 @@ export declare const PolicySchema: z.ZodEffects<z.ZodObject<{
|
|
|
436
445
|
path_match?: string | undefined;
|
|
437
446
|
bash_match?: string | undefined;
|
|
438
447
|
extract?: Record<string, string> | undefined;
|
|
448
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
439
449
|
};
|
|
440
450
|
hook: string;
|
|
441
451
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -485,6 +495,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
485
495
|
match: z.ZodOptional<z.ZodString>;
|
|
486
496
|
path_match: z.ZodOptional<z.ZodString>;
|
|
487
497
|
bash_match: z.ZodOptional<z.ZodString>;
|
|
498
|
+
input_match: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodString, z.ZodNumber, z.ZodBoolean]>>, Record<string, string | number | boolean>, Record<string, string | number | boolean>>>;
|
|
488
499
|
extract: z.ZodOptional<z.ZodEffects<z.ZodRecord<z.ZodString, z.ZodEffects<z.ZodString, string, string>>, Record<string, string>, Record<string, string>>>;
|
|
489
500
|
}, "strict", z.ZodTypeAny, {
|
|
490
501
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
@@ -492,12 +503,14 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
492
503
|
path_match?: string | undefined;
|
|
493
504
|
bash_match?: string | undefined;
|
|
494
505
|
extract?: Record<string, string> | undefined;
|
|
506
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
495
507
|
}, {
|
|
496
508
|
event: "SessionStart" | "UserPromptSubmit" | "PreToolUse" | "PostToolUse" | "Stop" | "SubagentStop" | "PreCompact";
|
|
497
509
|
match?: string | undefined;
|
|
498
510
|
path_match?: string | undefined;
|
|
499
511
|
bash_match?: string | undefined;
|
|
500
512
|
extract?: Record<string, string> | undefined;
|
|
513
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
501
514
|
}>;
|
|
502
515
|
requires: z.ZodOptional<z.ZodObject<{
|
|
503
516
|
ledger_tag: z.ZodString;
|
|
@@ -663,6 +676,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
663
676
|
path_match?: string | undefined;
|
|
664
677
|
bash_match?: string | undefined;
|
|
665
678
|
extract?: Record<string, string> | undefined;
|
|
679
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
666
680
|
};
|
|
667
681
|
hook: string;
|
|
668
682
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -712,6 +726,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
712
726
|
path_match?: string | undefined;
|
|
713
727
|
bash_match?: string | undefined;
|
|
714
728
|
extract?: Record<string, string> | undefined;
|
|
729
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
715
730
|
};
|
|
716
731
|
hook: string;
|
|
717
732
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -761,6 +776,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
761
776
|
path_match?: string | undefined;
|
|
762
777
|
bash_match?: string | undefined;
|
|
763
778
|
extract?: Record<string, string> | undefined;
|
|
779
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
764
780
|
};
|
|
765
781
|
hook: string;
|
|
766
782
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -810,6 +826,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
810
826
|
path_match?: string | undefined;
|
|
811
827
|
bash_match?: string | undefined;
|
|
812
828
|
extract?: Record<string, string> | undefined;
|
|
829
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
813
830
|
};
|
|
814
831
|
hook: string;
|
|
815
832
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -859,6 +876,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
859
876
|
path_match?: string | undefined;
|
|
860
877
|
bash_match?: string | undefined;
|
|
861
878
|
extract?: Record<string, string> | undefined;
|
|
879
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
862
880
|
};
|
|
863
881
|
hook: string;
|
|
864
882
|
enforcement: "warn" | "block" | "require_approval";
|
|
@@ -908,6 +926,7 @@ export declare const PoliciesSchema: z.ZodEffects<z.ZodArray<z.ZodEffects<z.ZodO
|
|
|
908
926
|
path_match?: string | undefined;
|
|
909
927
|
bash_match?: string | undefined;
|
|
910
928
|
extract?: Record<string, string> | undefined;
|
|
929
|
+
input_match?: Record<string, string | number | boolean> | undefined;
|
|
911
930
|
};
|
|
912
931
|
hook: string;
|
|
913
932
|
enforcement: "warn" | "block" | "require_approval";
|
package/dist/schema/policies.js
CHANGED
|
@@ -1,15 +1,31 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { MatchableEnvironmentSchema } from "./environments.js";
|
|
3
|
-
import { ExtractMapSchema } from "./extract.js";
|
|
3
|
+
import { ExtractMapSchema, InputMatchMapSchema } from "./extract.js";
|
|
4
4
|
import { HookEventSchema } from "./hooks.js";
|
|
5
5
|
import { RequiresSchema, isBuiltinVariable, referencedVariables } from "./requires.js";
|
|
6
6
|
import { RiskCategorySchema, RiskSeveritySchema } from "./risk.js";
|
|
7
|
+
// `trigger:`: the WHICH-tool-calls filter. Every declared field is
|
|
8
|
+
// ANDed: `match` on the tool name, `path_match` on the edited file path,
|
|
9
|
+
// `bash_match` on the shell command text, and `input_match` (task
|
|
10
|
+
// 2699b476) on the tool call's own arguments.
|
|
11
|
+
//
|
|
12
|
+
// `input_match` exists because the other three cannot express "this MCP
|
|
13
|
+
// verb, but only in the mode that actually does the dangerous thing".
|
|
14
|
+
// `mcp__agent-tasks__task_finish` is the motivating shape: the same verb
|
|
15
|
+
// either merges the PR (`autoMerge: true`) or just advances the task, and
|
|
16
|
+
// a name-only trigger would have to gate both or neither. Keys are
|
|
17
|
+
// `toolArgs.`-namespaced extract expressions (the SAME grammar and parser
|
|
18
|
+
// `extract` uses, `src/schema/extract.ts` + `src/io/extract.ts`), values
|
|
19
|
+
// are literals compared by strict equality; a missing path never matches.
|
|
20
|
+
// See `firstInputMatchMismatch` in `src/io/extract.ts` for the evaluator
|
|
21
|
+
// `policyMatchesEvent` and `harness policy dry-run` both call.
|
|
7
22
|
export const PolicyTriggerSchema = z
|
|
8
23
|
.object({
|
|
9
24
|
event: HookEventSchema,
|
|
10
25
|
match: z.string().min(1).optional(),
|
|
11
26
|
path_match: z.string().min(1).optional(),
|
|
12
27
|
bash_match: z.string().min(1).optional(),
|
|
28
|
+
input_match: InputMatchMapSchema.optional(),
|
|
13
29
|
extract: ExtractMapSchema.optional(),
|
|
14
30
|
})
|
|
15
31
|
.strict();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/schema/policies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"policies.js","sourceRoot":"","sources":["../../src/schema/policies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,0BAA0B,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,WAAW,CAAC;AAEnE,mEAAmE;AACnE,yEAAyE;AACzE,kEAAkE;AAClE,8CAA8C;AAC9C,EAAE;AACF,wEAAwE;AACxE,sEAAsE;AACtE,yEAAyE;AACzE,0EAA0E;AAC1E,mEAAmE;AACnE,0EAA0E;AAC1E,yEAAyE;AACzE,0EAA0E;AAC1E,yEAAyE;AACzE,+DAA+D;AAC/D,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC;KACjC,MAAM,CAAC;IACN,KAAK,EAAE,eAAe;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,WAAW,EAAE,mBAAmB,CAAC,QAAQ,EAAE;IAC3C,OAAO,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACrC,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,6DAA6D;AAC7D,2CAA2C;AAC3C,yEAAyE;AACzE,wEAAwE;AACxE,yEAAyE;AACzE,uEAAuE;AACvE,uEAAuE;AACvE,wEAAwE;AACxE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC5C,OAAO;IACP,MAAM;IACN,kBAAkB;CACnB,CAAC,CAAC;AAEH,oEAAoE;AACpE,wEAAwE;AACxE,kEAAkE;AAClE,qBAAqB;AACrB,qEAAqE;AACrE,kEAAkE;AAClE,wGAAwG;AACxG,mEAAmE;AACnE,0EAA0E;AAC1E,0DAA0D;AAC1D,EAAE;AACF,uEAAuE;AACvE,wEAAwE;AACxE,oEAAoE;AACpE,6BAA6B;AAC7B,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACzD,CAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;QACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B,CAAC;SACD,MAAM,EAAE;IACX,CAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QACvB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B,CAAC;SACD,MAAM,EAAE;IACX,CAAC;SACE,MAAM,CAAC;QACN,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QACtB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;KAC/B,CAAC;SACD,MAAM,EAAE;CACZ,CAAC,CAAC;AAEH,qEAAqE;AACrE,EAAE;AACF,oEAAoE;AACpE,8DAA8D;AAC9D,sEAAsE;AACtE,uEAAuE;AACvE,wDAAwD;AACxD,kEAAkE;AAClE,EAAE;AACF,qEAAqE;AACrE,sEAAsE;AACtE,mEAAmE;AACnE,sEAAsE;AACtE,oEAAoE;AACpE,EAAE;AACF,sEAAsE;AACtE,sEAAsE;AACtE,qEAAqE;AACrE,cAAc;AACd,8DAA8D;AAC9D,oEAAoE;AACpE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,CAAC;IACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACzB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3C,GAAG,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CACvC,CAAC;KACD,MAAM,EAAE,CAAC;AAEZ,oDAAoD;AACpD,EAAE;AACF,mEAAmE;AACnE,qEAAqE;AACrE,uEAAuE;AACvE,wEAAwE;AACxE,qEAAqE;AACrE,4DAA4D;AAC5D,EAAE;AACF,mEAAmE;AACnE,qEAAqE;AACrE,wDAAwD;AACxD,gEAAgE;AAChE,yCAAyC;AACzC,mEAAmE;AACnE,qEAAqE;AACrE,oCAAoC;AACpC,iEAAiE;AACjE,uEAAuE;AACvE,wEAAwE;AACxE,gEAAgE;AAChE,iEAAiE;AACjE,0EAA0E;AAC1E,mEAAmE;AACnE,kEAAkE;AAClE,yEAAyE;AACzE,sEAAsE;AACtE,oEAAoE;AACpE,wEAAwE;AACxE,yEAAyE;AACzE,wEAAwE;AACxE,0DAA0D;AAC1D,qEAAqE;AACrE,qEAAqE;AACrE,mEAAmE;AACnE,0EAA0E;AAC1E,yEAAyE;AACzE,iEAAiE;AACjE,sEAAsE;AACtE,uEAAuE;AACvE,uEAAuE;AACvE,yEAAyE;AACzE,mEAAmE;AACnE,yEAAyE;AACzE,yEAAyE;AACzE,+DAA+D;AAC/D,+DAA+D;AAC/D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC;KAC9B,MAAM,CAAC;IACN,wBAAwB,EAAE,kBAAkB,CAAC,QAAQ,EAAE;IACvD,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACjE,kBAAkB,EAAE,0BAA0B,CAAC,QAAQ,EAAE;IACzD,mBAAmB,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IAC3C,qCAAqC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE;CAClE,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACzB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,EAAE;YACR,OAAO,EACL,mFAAmF;SACtF,CAAC,CAAC;IACL,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,qEAAqE;AACrE,oEAAoE;AACpE,kEAAkE;AAClE,wCAAwC;AACxC,sEAAsE;AACtE,sEAAsE;AACtE,yEAAyE;AACzE,wEAAwE;AACxE,4DAA4D;AAC5D,gEAAgE;AAChE,qDAAqD;AACrD,EAAE;AACF,mEAAmE;AACnE,uEAAuE;AACvE,qEAAqE;AACrE,gEAAgE;AAChE,kEAAkE;AAClE,wEAAwE;AACxE,8DAA8D;AAC9D,mEAAmE;AACnE,oEAAoE;AACpE,uEAAuE;AACvE,yDAAyD;AACzD,EAAE;AACF,uEAAuE;AACvE,qEAAqE;AACrE,gEAAgE;AAChE,iEAAiE;AACjE,mEAAmE;AACnE,uEAAuE;AACvE,yEAAyE;AACzE,oEAAoE;AACpE,qEAAqE;AACrE,mEAAmE;AACnE,oEAAoE;AACpE,uEAAuE;AACvE,8DAA8D;AAC9D,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC;KAC1B,MAAM,CAAC;IACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9B,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,WAAW,EAAE,uBAAuB;IACpC,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACrC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACpD,EAAE,EAAE,cAAc,CAAC,QAAQ,EAAE;IAC7B,IAAI,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CAClC,CAAC;KACD,MAAM,EAAE;KACR,WAAW,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;IAC3B,IAAI,MAAM,CAAC,aAAa,KAAK,IAAI,EAAE,CAAC;QAClC,IAAI,MAAM,CAAC,WAAW,KAAK,OAAO,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,eAAe,CAAC;gBACvB,OAAO,EACL,qLAAqL;aACxL,CAAC,CAAC;QACL,CAAC;QACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YAClC,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,UAAU,CAAC;gBAClB,OAAO,EACL,4MAA4M;aAC/M,CAAC,CAAC;QACL,CAAC;QACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACnC,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,WAAW,CAAC;gBACnB,OAAO,EACL,+UAA+U;aAClV,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACzC,GAAG,CAAC,QAAQ,CAAC;YACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;YAC3B,IAAI,EAAE,CAAC,UAAU,CAAC;YAClB,OAAO,EACL,4GAA4G;SAC/G,CAAC,CAAC;IACL,CAAC;IAED,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;QACpE,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,iBAAiB,CAAC,CAAC,CAAC;gBAAE,SAAS;YACnC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrB,GAAG,CAAC,QAAQ,CAAC;oBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;oBAC3B,IAAI,EAAE,CAAC,UAAU,EAAE,YAAY,CAAC;oBAChC,OAAO,EAAE,qCAAqC,CAAC,sDAAsD;iBACtG,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,WAAW,CAAC;gBACnB,OAAO,EACL,2HAA2H;aAC9H,CAAC,CAAC;QACL,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;IAChF,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACrB,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC;gBACjB,OAAO,EAAE,0BAA0B,CAAC,CAAC,IAAI,EAAE;aAC5C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lannguyensi/harness",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.54.0",
|
|
4
4
|
"description": "Declarative control plane for agent harnesses — one YAML for grounding, tools, memory, and hooks.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"homepage": "https://github.com/LanNguyenSi/harness",
|