@shield-agent/kya 0.5.0 → 0.7.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/.mcp.json +1 -1
- package/LIMITATIONS.md +1 -0
- package/README.md +30 -3
- package/amp/settings.example.json +1 -1
- package/catalog/agent-trust-baseline-v0.json +103 -0
- package/claude/claude_desktop_config.example.json +1 -1
- package/cline/cline_mcp_settings.example.json +1 -1
- package/copilot/mcp-config.example.json +1 -1
- package/dist/certify/attest.d.ts +10 -0
- package/dist/certify/attest.d.ts.map +1 -0
- package/dist/certify/attest.js +105 -0
- package/dist/certify/attest.js.map +1 -0
- package/dist/certify/catalog.d.ts +70 -0
- package/dist/certify/catalog.d.ts.map +1 -0
- package/dist/certify/catalog.js +245 -0
- package/dist/certify/catalog.js.map +1 -0
- package/dist/certify/context.d.ts +11 -0
- package/dist/certify/context.d.ts.map +1 -0
- package/dist/certify/context.js +49 -0
- package/dist/certify/context.js.map +1 -0
- package/dist/certify/evaluate.d.ts +100 -0
- package/dist/certify/evaluate.d.ts.map +1 -0
- package/dist/certify/evaluate.js +220 -0
- package/dist/certify/evaluate.js.map +1 -0
- package/dist/certify/live.d.ts +3 -0
- package/dist/certify/live.d.ts.map +1 -0
- package/dist/certify/live.js +39 -0
- package/dist/certify/live.js.map +1 -0
- package/dist/certify/render.d.ts +6 -0
- package/dist/certify/render.d.ts.map +1 -0
- package/dist/certify/render.js +243 -0
- package/dist/certify/render.js.map +1 -0
- package/dist/cli.d.ts +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +56 -3
- package/dist/cli.js.map +1 -1
- package/dist/commands/certify.d.ts +47 -0
- package/dist/commands/certify.d.ts.map +1 -0
- package/dist/commands/certify.js +170 -0
- package/dist/commands/certify.js.map +1 -0
- package/dist/commands/connect.d.ts +1 -8
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +3 -39
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/wire-hooks.d.ts.map +1 -1
- package/dist/commands/wire-hooks.js +2 -1
- package/dist/commands/wire-hooks.js.map +1 -1
- package/dist/config.d.ts +21 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +42 -9
- package/dist/config.js.map +1 -1
- package/dist/fs-atomic.d.ts +9 -0
- package/dist/fs-atomic.d.ts.map +1 -0
- package/dist/fs-atomic.js +44 -0
- package/dist/fs-atomic.js.map +1 -0
- package/dist/index.d.ts +9 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -1
- package/dist/index.js.map +1 -1
- package/dist/receipt/enrich.d.ts +27 -0
- package/dist/receipt/enrich.d.ts.map +1 -1
- package/dist/receipt/enrich.js +59 -0
- package/dist/receipt/enrich.js.map +1 -1
- package/dist/receipt/render-receipt.d.ts +3 -1
- package/dist/receipt/render-receipt.d.ts.map +1 -1
- package/dist/receipt/render-receipt.js +45 -1
- package/dist/receipt/render-receipt.js.map +1 -1
- package/dist/sign/evidence-bundle.d.ts +59 -0
- package/dist/sign/evidence-bundle.d.ts.map +1 -0
- package/dist/sign/evidence-bundle.js +193 -0
- package/dist/sign/evidence-bundle.js.map +1 -0
- package/droid/README.md +1 -1
- package/droid/mcp.example.json +1 -1
- package/gemini/settings.example.json +1 -1
- package/grok/README.md +1 -1
- package/kilo/kilo.example.json +1 -1
- package/kimi/mcp.example.json +1 -1
- package/kiro/mcp.example.json +1 -1
- package/manifest.json +1 -1
- package/mastracode/mcp.example.json +1 -1
- package/mcp.json +1 -1
- package/openai/codex.config.example.toml +1 -1
- package/opencode/opencode.example.json +1 -1
- package/package.json +2 -1
- package/qwen/settings.example.json +1 -1
- package/server.json +2 -2
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* kya certify — Agent Trust Baseline gap report from local evidence.
|
|
3
|
+
* Evidence only: not a second PEP; never mints principals, never ALLOWs,
|
|
4
|
+
* DENYs, or blocks anything. Local-first: no network, no account, no key check.
|
|
5
|
+
*/
|
|
6
|
+
import { mkdirSync, writeFileSync } from "node:fs";
|
|
7
|
+
import { join, resolve } from "node:path";
|
|
8
|
+
import { assertNoSecrets } from "../dash/render.js";
|
|
9
|
+
import { UsageError } from "../errors.js";
|
|
10
|
+
import { flagBool, flagString } from "../parse-args.js";
|
|
11
|
+
import { loadCatalog } from "../certify/catalog.js";
|
|
12
|
+
import { assembleEvidenceContext } from "../certify/context.js";
|
|
13
|
+
import { computeOverall, countRequirements, DAY_MS, evaluateRequirement, trailStats, trailWindow, } from "../certify/evaluate.js";
|
|
14
|
+
import { formatCertifyMarkdown, renderCertifyHtml } from "../certify/render.js";
|
|
15
|
+
import { recordAttestation, } from "../certify/attest.js";
|
|
16
|
+
import { loadIdentity } from "../receipt/enrich.js";
|
|
17
|
+
import { buildEvidenceBundle, loadOrCreateEvidenceKey, } from "../sign/evidence-bundle.js";
|
|
18
|
+
export function certifyOptionsFromArgs(parsed) {
|
|
19
|
+
const windowRaw = flagString(parsed.flags, "window");
|
|
20
|
+
let windowDays = 30;
|
|
21
|
+
if (windowRaw !== undefined) {
|
|
22
|
+
if (!/^\d+$/.test(windowRaw)) {
|
|
23
|
+
throw new UsageError("--window must be an integer between 1 and 366");
|
|
24
|
+
}
|
|
25
|
+
const n = Number.parseInt(windowRaw, 10);
|
|
26
|
+
if (n < 1 || n > 366) {
|
|
27
|
+
throw new UsageError("--window must be an integer between 1 and 366");
|
|
28
|
+
}
|
|
29
|
+
windowDays = n;
|
|
30
|
+
}
|
|
31
|
+
const formatRaw = flagString(parsed.flags, "format") ?? "json,md,html";
|
|
32
|
+
const tokens = formatRaw
|
|
33
|
+
.split(",")
|
|
34
|
+
.map((s) => s.trim().toLowerCase())
|
|
35
|
+
.filter((s) => s.length > 0);
|
|
36
|
+
const invalid = tokens.filter((s) => s !== "json" && s !== "md" && s !== "html");
|
|
37
|
+
if (tokens.length === 0 || invalid.length > 0) {
|
|
38
|
+
throw new UsageError(`--format must be a comma-separated list of: json, md, html (got ${JSON.stringify(formatRaw)})`);
|
|
39
|
+
}
|
|
40
|
+
const formats = [...new Set(tokens)];
|
|
41
|
+
const failOnRaw = flagString(parsed.flags, "fail-on") ?? "gap";
|
|
42
|
+
if (failOnRaw !== "gap" && failOnRaw !== "never") {
|
|
43
|
+
throw new UsageError("--fail-on must be gap or never");
|
|
44
|
+
}
|
|
45
|
+
const attestId = flagString(parsed.flags, "attest");
|
|
46
|
+
let attest;
|
|
47
|
+
if (attestId !== undefined) {
|
|
48
|
+
const text = flagString(parsed.flags, "text");
|
|
49
|
+
if (!text)
|
|
50
|
+
throw new UsageError('--attest requires --text "…"');
|
|
51
|
+
attest = { requirementId: attestId, text };
|
|
52
|
+
}
|
|
53
|
+
return {
|
|
54
|
+
windowDays,
|
|
55
|
+
catalogPath: flagString(parsed.flags, "catalog"),
|
|
56
|
+
out: flagString(parsed.flags, "out") ?? ".kya/certify",
|
|
57
|
+
formats,
|
|
58
|
+
jsonStdout: flagBool(parsed.flags, "json-stdout"),
|
|
59
|
+
open: flagBool(parsed.flags, "open"),
|
|
60
|
+
quiet: flagBool(parsed.flags, "quiet"),
|
|
61
|
+
failOn: failOnRaw,
|
|
62
|
+
sign: flagBool(parsed.flags, "sign"),
|
|
63
|
+
...(attest ? { attest } : {}),
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
// Lives in certify/context.ts next to the assembly that consumes it;
|
|
67
|
+
// re-exported here to keep the existing import surface stable.
|
|
68
|
+
export { countReceipts } from "../certify/context.js";
|
|
69
|
+
export function runCertify(options) {
|
|
70
|
+
const catalog = loadCatalog(options.catalogPath);
|
|
71
|
+
const now = options.now ?? new Date();
|
|
72
|
+
let attestationRecorded;
|
|
73
|
+
if (options.attest) {
|
|
74
|
+
const wanted = options.attest.requirementId.trim();
|
|
75
|
+
if (!catalog.requirements.some((r) => r.id === wanted)) {
|
|
76
|
+
throw new UsageError(`unknown requirement id for --attest: ${wanted}`);
|
|
77
|
+
}
|
|
78
|
+
attestationRecorded = recordAttestation(options.cwd, wanted, options.attest.text);
|
|
79
|
+
}
|
|
80
|
+
const ctx = assembleEvidenceContext(options.cwd, options.env, now);
|
|
81
|
+
const requirements = catalog.requirements.map((r) => evaluateRequirement(r, ctx));
|
|
82
|
+
// Report-window stats/bundle filtering stays here (0.6.0): ctx.events is
|
|
83
|
+
// the full trail; per-check windows are owned by the evaluators.
|
|
84
|
+
const inWindow = trailWindow(ctx.events, options.windowDays, now);
|
|
85
|
+
const counts = countRequirements(requirements);
|
|
86
|
+
const report = {
|
|
87
|
+
format: "shield-kya-certify-report",
|
|
88
|
+
version: 1,
|
|
89
|
+
generatedAt: now.toISOString(),
|
|
90
|
+
catalog: { id: catalog.id, version: catalog.version, updated: catalog.updated },
|
|
91
|
+
window: {
|
|
92
|
+
days: options.windowDays,
|
|
93
|
+
since: new Date(now.getTime() - options.windowDays * DAY_MS).toISOString(),
|
|
94
|
+
until: now.toISOString(),
|
|
95
|
+
},
|
|
96
|
+
trail: trailStats(inWindow),
|
|
97
|
+
requirements,
|
|
98
|
+
overall: computeOverall(counts),
|
|
99
|
+
};
|
|
100
|
+
const outDir = resolve(options.cwd, options.out);
|
|
101
|
+
mkdirSync(outDir, { recursive: true });
|
|
102
|
+
let jsonPath;
|
|
103
|
+
let mdPath;
|
|
104
|
+
if (options.formats.includes("json")) {
|
|
105
|
+
jsonPath = join(outDir, "report.json");
|
|
106
|
+
const json = `${JSON.stringify(report, null, 2)}\n`;
|
|
107
|
+
assertNoSecrets(json);
|
|
108
|
+
writeFileSync(jsonPath, json, "utf8");
|
|
109
|
+
}
|
|
110
|
+
if (options.formats.includes("md")) {
|
|
111
|
+
mdPath = join(outDir, "report.md");
|
|
112
|
+
writeFileSync(mdPath, formatCertifyMarkdown(report), "utf8");
|
|
113
|
+
}
|
|
114
|
+
let htmlPath;
|
|
115
|
+
if (options.formats.includes("html")) {
|
|
116
|
+
htmlPath = join(outDir, "report.html");
|
|
117
|
+
writeFileSync(htmlPath, renderCertifyHtml(report), "utf8");
|
|
118
|
+
}
|
|
119
|
+
let bundlePath;
|
|
120
|
+
let keyFingerprint;
|
|
121
|
+
let keyCreated;
|
|
122
|
+
if (options.sign) {
|
|
123
|
+
const key = loadOrCreateEvidenceKey(options.env);
|
|
124
|
+
keyFingerprint = key.fingerprint;
|
|
125
|
+
keyCreated = key.created;
|
|
126
|
+
const identity = loadIdentity(options.cwd);
|
|
127
|
+
// baseUrl is deliberately never copied into the bundle (inert display text only).
|
|
128
|
+
const agent = identity
|
|
129
|
+
? {
|
|
130
|
+
...(identity.agentId ? { agentId: identity.agentId } : {}),
|
|
131
|
+
...(identity.agentName ? { agentName: identity.agentName } : {}),
|
|
132
|
+
...(identity.host ? { host: identity.host } : {}),
|
|
133
|
+
}
|
|
134
|
+
: undefined;
|
|
135
|
+
const bundle = buildEvidenceBundle({ report, windowEvents: inWindow, ...(agent ? { agent } : {}) }, key);
|
|
136
|
+
bundlePath = join(outDir, "evidence-bundle.json");
|
|
137
|
+
writeFileSync(bundlePath, `${JSON.stringify(bundle, null, 2)}\n`, "utf8");
|
|
138
|
+
}
|
|
139
|
+
let exitCode = 0;
|
|
140
|
+
if (options.failOn === "gap" && report.overall.result === "gap")
|
|
141
|
+
exitCode = 1;
|
|
142
|
+
return {
|
|
143
|
+
report,
|
|
144
|
+
...(jsonPath ? { jsonPath } : {}),
|
|
145
|
+
...(mdPath ? { mdPath } : {}),
|
|
146
|
+
...(htmlPath ? { htmlPath } : {}),
|
|
147
|
+
...(bundlePath ? { bundlePath } : {}),
|
|
148
|
+
...(keyFingerprint !== undefined ? { keyFingerprint } : {}),
|
|
149
|
+
...(keyCreated !== undefined ? { keyCreated } : {}),
|
|
150
|
+
...(attestationRecorded ? { attestationRecorded } : {}),
|
|
151
|
+
exitCode,
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
export function formatCertifySummary(report) {
|
|
155
|
+
const o = report.overall;
|
|
156
|
+
const lines = [
|
|
157
|
+
`certify ${report.catalog.id} v${report.catalog.version} — ${o.result.toUpperCase()}`,
|
|
158
|
+
`${o.pass} pass · ${o.gap} gap · ${o.insufficientEvidence} insufficient evidence · ${o.attested} attested`,
|
|
159
|
+
];
|
|
160
|
+
if (o.result === "gap" && o.gap === 0) {
|
|
161
|
+
lines.push(" no certifiable evidence in window — run the gate first (kya wrap / kya connect)");
|
|
162
|
+
}
|
|
163
|
+
for (const r of report.requirements.filter((x) => x.status === "gap").slice(0, 10)) {
|
|
164
|
+
lines.push(` gap ${r.id} [${r.severity}] ${r.title}`);
|
|
165
|
+
}
|
|
166
|
+
if (o.gap > 10)
|
|
167
|
+
lines.push(` … and ${o.gap - 10} more (see report)`);
|
|
168
|
+
return lines.join("\n");
|
|
169
|
+
}
|
|
170
|
+
//# sourceMappingURL=certify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"certify.js","sourceRoot":"","sources":["../../src/commands/certify.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ResolvedConfig } from "../config.js";
|
|
2
|
+
export { atomicWriteSync } from "../fs-atomic.js";
|
|
2
3
|
export type ConnectScope = "global" | "project";
|
|
3
4
|
export type ConnectStatus = "created" | "wired" | "skipped";
|
|
4
5
|
export interface HostSpec {
|
|
@@ -46,14 +47,6 @@ export interface ConnectInput {
|
|
|
46
47
|
* exists but is not a regular file is refused.
|
|
47
48
|
*/
|
|
48
49
|
export declare function writeTarget(path: string): string;
|
|
49
|
-
/**
|
|
50
|
-
* Crash-safe write: tmp file in the same directory, then rename onto the
|
|
51
|
-
* target (atomic on POSIX and win32 within one volume). A mid-write crash
|
|
52
|
-
* leaves the original config intact; the tmp file is removed best-effort.
|
|
53
|
-
* An existing target's file mode is carried over — a rename would otherwise
|
|
54
|
-
* turn a 0600 config into the umask default.
|
|
55
|
-
*/
|
|
56
|
-
export declare function atomicWriteSync(target: string, content: string): void;
|
|
57
50
|
/**
|
|
58
51
|
* Where a create should land. A dangling symlink (dotfiles target not yet
|
|
59
52
|
* materialized) resolves to its link target — relative links resolve against
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/connect.js
CHANGED
|
@@ -8,13 +8,15 @@
|
|
|
8
8
|
* resolved with realpath and must be a regular file (dotfile setups symlink
|
|
9
9
|
* ~/.claude.json & co. — writing the resolved regular file is supported).
|
|
10
10
|
*/
|
|
11
|
-
import {
|
|
11
|
+
import { existsSync, lstatSync, mkdirSync, readFileSync, readlinkSync, realpathSync, statSync, } from "node:fs";
|
|
12
12
|
import { homedir } from "node:os";
|
|
13
13
|
import { dirname, join, resolve } from "node:path";
|
|
14
14
|
import { fileURLToPath } from "node:url";
|
|
15
15
|
import { UsageError } from "../errors.js";
|
|
16
16
|
import { hostReload, hostRunning, listProcessNames, reloadMessage } from "../host-reload.js";
|
|
17
17
|
import { hookSupported, wireHook } from "./wire-hooks.js";
|
|
18
|
+
import { atomicWriteSync } from "../fs-atomic.js";
|
|
19
|
+
export { atomicWriteSync } from "../fs-atomic.js";
|
|
18
20
|
export function cliJsPath() {
|
|
19
21
|
// connect.ts → ../cli.js in dist; when running from dist/commands/connect.js
|
|
20
22
|
return fileURLToPath(new URL("../cli.js", import.meta.url));
|
|
@@ -163,44 +165,6 @@ export function writeTarget(path) {
|
|
|
163
165
|
}
|
|
164
166
|
return real;
|
|
165
167
|
}
|
|
166
|
-
/**
|
|
167
|
-
* Crash-safe write: tmp file in the same directory, then rename onto the
|
|
168
|
-
* target (atomic on POSIX and win32 within one volume). A mid-write crash
|
|
169
|
-
* leaves the original config intact; the tmp file is removed best-effort.
|
|
170
|
-
* An existing target's file mode is carried over — a rename would otherwise
|
|
171
|
-
* turn a 0600 config into the umask default.
|
|
172
|
-
*/
|
|
173
|
-
export function atomicWriteSync(target, content) {
|
|
174
|
-
const tmp = `${target}.kya-tmp-${process.pid}`;
|
|
175
|
-
try {
|
|
176
|
-
let mode;
|
|
177
|
-
try {
|
|
178
|
-
mode = statSync(target).mode;
|
|
179
|
-
}
|
|
180
|
-
catch {
|
|
181
|
-
/* new file — keep default mode */
|
|
182
|
-
}
|
|
183
|
-
writeFileSync(tmp, content, "utf8");
|
|
184
|
-
if (mode !== undefined) {
|
|
185
|
-
try {
|
|
186
|
-
chmodSync(tmp, mode);
|
|
187
|
-
}
|
|
188
|
-
catch {
|
|
189
|
-
/* win32 chmod semantics differ; POSIX correctness is what matters */
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
renameSync(tmp, target);
|
|
193
|
-
}
|
|
194
|
-
catch (err) {
|
|
195
|
-
try {
|
|
196
|
-
rmSync(tmp, { force: true });
|
|
197
|
-
}
|
|
198
|
-
catch {
|
|
199
|
-
/* best-effort cleanup */
|
|
200
|
-
}
|
|
201
|
-
throw err;
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
168
|
/**
|
|
205
169
|
* Where a create should land. A dangling symlink (dotfiles target not yet
|
|
206
170
|
* materialized) resolves to its link target — relative links resolve against
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire-hooks.d.ts","sourceRoot":"","sources":["../../src/commands/wire-hooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"wire-hooks.d.ts","sourceRoot":"","sources":["../../src/commands/wire-hooks.ts"],"names":[],"mappings":"AAYA,OAAO,EAKL,KAAK,aAAa,EACnB,MAAM,cAAc,CAAC;AAEtB,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;CAChC;AAED,eAAO,MAAM,UAAU,qCAAsC,CAAC;AAI9D,0DAA0D;AAC1D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAErD;AAID,wFAAwF;AACxF,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAIlD;AA4GD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAa1D;AAyDD,8EAA8E;AAC9E,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,cAAc,CA4B7D;AAED,4EAA4E;AAC5E,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACpC,GAAG,cAAc,EAAE,CAKnB"}
|
|
@@ -8,8 +8,9 @@
|
|
|
8
8
|
import { existsSync, readFileSync } from "node:fs";
|
|
9
9
|
import { join } from "node:path";
|
|
10
10
|
import { UsageError } from "../errors.js";
|
|
11
|
+
import { atomicWriteSync } from "../fs-atomic.js";
|
|
11
12
|
// imports from connect.ts are call-time only (shared fs/registry helpers) — safe cycle
|
|
12
|
-
import {
|
|
13
|
+
import { cliJsPath, CONNECT_REGISTRY, createTarget, writeTarget, } from "./connect.js";
|
|
13
14
|
export const HOOK_HOSTS = ["claude", "grok", "kimi"];
|
|
14
15
|
/** Whether a host has verified PreToolUse hook wiring. */
|
|
15
16
|
export function hookSupported(hostId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wire-hooks.js","sourceRoot":"","sources":["../../src/commands/wire-hooks.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,uFAAuF;AACvF,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"wire-hooks.js","sourceRoot":"","sources":["../../src/commands/wire-hooks.ts"],"names":[],"mappings":"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"}
|
package/dist/config.d.ts
CHANGED
|
@@ -4,7 +4,10 @@ export interface KyaFileConfig {
|
|
|
4
4
|
readonly host?: Host;
|
|
5
5
|
readonly agentId?: string;
|
|
6
6
|
readonly agentName?: string;
|
|
7
|
+
/** Gate mode pin: honored only when exactly "hold" or "offline". */
|
|
8
|
+
readonly gateMode?: string;
|
|
7
9
|
}
|
|
10
|
+
export type GateMode = "observe" | "hold" | "offline";
|
|
8
11
|
export interface ResolvedConfig {
|
|
9
12
|
readonly baseUrl: string;
|
|
10
13
|
readonly apiKey: string;
|
|
@@ -21,7 +24,8 @@ export interface ResolvedConfig {
|
|
|
21
24
|
readonly offline: boolean;
|
|
22
25
|
/**
|
|
23
26
|
* When false (default), REQUIRE_APPROVE is recorded only — no Hold ticket /
|
|
24
|
-
* second human prompt.
|
|
27
|
+
* second human prompt. Armed by --hold / KYA_HOLD=1 / "gateMode":"hold" in
|
|
28
|
+
* .kya/config.json (flags > env > config > observe, see resolveGateMode).
|
|
25
29
|
*/
|
|
26
30
|
readonly holdEnabled: boolean;
|
|
27
31
|
}
|
|
@@ -44,6 +48,22 @@ export declare function globalConfigDir(env?: NodeJS.ProcessEnv): string;
|
|
|
44
48
|
export declare function configFilePath(cwd: string): string;
|
|
45
49
|
export declare function readFileConfig(cwd: string): KyaFileConfig;
|
|
46
50
|
export declare function writeFileConfig(cwd: string, patch: KyaFileConfig): KyaFileConfig;
|
|
51
|
+
/**
|
|
52
|
+
* Gate mode resolution, shared by the gate itself (wrap / hook / eval via
|
|
53
|
+
* resolveConfig) and by `kya certify` — a certify "pass — gate mode is hold"
|
|
54
|
+
* is only an honest claim when both read this one resolver.
|
|
55
|
+
*
|
|
56
|
+
* Precedence: CLI flags (--offline / --hold) > env (KYA_OFFLINE / KYA_HOLD,
|
|
57
|
+
* exact "1"|"true") > "gateMode" in .kya/config.json (exact "hold"|"offline")
|
|
58
|
+
* > observe default. Flags and env win as a tier: when any flag/env gate
|
|
59
|
+
* switch is set, the config key is ignored entirely. Offline outranks hold
|
|
60
|
+
* within a tier.
|
|
61
|
+
*/
|
|
62
|
+
export declare function resolveGateMode(input: {
|
|
63
|
+
readonly cwd: string;
|
|
64
|
+
readonly env?: NodeJS.ProcessEnv;
|
|
65
|
+
readonly flags?: Readonly<Record<string, string | boolean>>;
|
|
66
|
+
}): GateMode;
|
|
47
67
|
/**
|
|
48
68
|
* Resolve runtime config from flags > env > .kya/config.json.
|
|
49
69
|
* Fail-closed: empty API key against network commands exits non-zero.
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,IAAI,GAAG,KAAK,GAAG,SAAS,CAAC;AAErC,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;IACrB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -53,6 +53,38 @@ function parseHost(raw) {
|
|
|
53
53
|
function stripTrailingSlash(url) {
|
|
54
54
|
return url.endsWith("/") ? url.slice(0, -1) : url;
|
|
55
55
|
}
|
|
56
|
+
function flagOn(v) {
|
|
57
|
+
return v === true || v === "true";
|
|
58
|
+
}
|
|
59
|
+
/** Exact truthiness for gate env switches: only "1" or "true" arm a mode. */
|
|
60
|
+
function envOn(v) {
|
|
61
|
+
return v === "1" || v === "true";
|
|
62
|
+
}
|
|
63
|
+
/** Exact-match config leg: only "hold" / "offline" are honored, anything else is observe. */
|
|
64
|
+
function fileGateMode(file) {
|
|
65
|
+
const gm = file.gateMode;
|
|
66
|
+
return gm === "hold" || gm === "offline" ? gm : undefined;
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Gate mode resolution, shared by the gate itself (wrap / hook / eval via
|
|
70
|
+
* resolveConfig) and by `kya certify` — a certify "pass — gate mode is hold"
|
|
71
|
+
* is only an honest claim when both read this one resolver.
|
|
72
|
+
*
|
|
73
|
+
* Precedence: CLI flags (--offline / --hold) > env (KYA_OFFLINE / KYA_HOLD,
|
|
74
|
+
* exact "1"|"true") > "gateMode" in .kya/config.json (exact "hold"|"offline")
|
|
75
|
+
* > observe default. Flags and env win as a tier: when any flag/env gate
|
|
76
|
+
* switch is set, the config key is ignored entirely. Offline outranks hold
|
|
77
|
+
* within a tier.
|
|
78
|
+
*/
|
|
79
|
+
export function resolveGateMode(input) {
|
|
80
|
+
const env = input.env ?? process.env;
|
|
81
|
+
const flags = input.flags ?? {};
|
|
82
|
+
if (flagOn(flags["offline"]) || envOn(env.KYA_OFFLINE))
|
|
83
|
+
return "offline";
|
|
84
|
+
if (flagOn(flags["hold"]) || envOn(env.KYA_HOLD))
|
|
85
|
+
return "hold";
|
|
86
|
+
return fileGateMode(readFileConfig(input.cwd)) ?? "observe";
|
|
87
|
+
}
|
|
56
88
|
/**
|
|
57
89
|
* Resolve runtime config from flags > env > .kya/config.json.
|
|
58
90
|
* Fail-closed: empty API key against network commands exits non-zero.
|
|
@@ -73,15 +105,16 @@ export function resolveConfig(options = {}) {
|
|
|
73
105
|
const mcpPort = Number.parseInt(str(flags["port"]) ?? env.KYA_MCP_PORT ?? String(DEFAULT_MCP_PORT), 10);
|
|
74
106
|
const tenantHint = env.KYA_TENANT_HINT;
|
|
75
107
|
const json = flags["json"] === true || flags["json"] === "true";
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
108
|
+
// Gate mode: flags > env (KYA_OFFLINE/KYA_HOLD) > "gateMode" in
|
|
109
|
+
// .kya/config.json > observe — the same precedence resolveGateMode
|
|
110
|
+
// reports, so the gate and `kya certify` can never disagree. Flags/env
|
|
111
|
+
// win as a tier: the config key applies only when no flag/env gate
|
|
112
|
+
// switch is set.
|
|
113
|
+
const flagEnvOffline = flagOn(flags["offline"]) || envOn(env.KYA_OFFLINE);
|
|
114
|
+
const flagEnvHold = flagOn(flags["hold"]) || envOn(env.KYA_HOLD);
|
|
115
|
+
const configMode = flagEnvOffline || flagEnvHold ? undefined : fileGateMode(file);
|
|
116
|
+
const offline = options.offline === true || flagEnvOffline || configMode === "offline";
|
|
117
|
+
const holdEnabled = flagEnvHold || configMode === "hold";
|
|
85
118
|
// Offline sample evaluate never hits the control plane — no API key required.
|
|
86
119
|
const requireApiKey = offline
|
|
87
120
|
? false
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Crash-safe write: tmp file in the same directory, then rename onto the
|
|
3
|
+
* target (atomic on POSIX and win32 within one volume). A mid-write crash
|
|
4
|
+
* leaves the original config intact; the tmp file is removed best-effort.
|
|
5
|
+
* An existing target's file mode is carried over — a rename would otherwise
|
|
6
|
+
* turn a 0600 config into the umask default.
|
|
7
|
+
*/
|
|
8
|
+
export declare function atomicWriteSync(target: string, content: string): void;
|
|
9
|
+
//# sourceMappingURL=fs-atomic.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-atomic.d.ts","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"AAMA;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CA0BrE"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Shared crash-safe file write, used by connect/wire-hooks host config writes
|
|
3
|
+
* and the certify attestation store.
|
|
4
|
+
*/
|
|
5
|
+
import { chmodSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
|
|
6
|
+
/**
|
|
7
|
+
* Crash-safe write: tmp file in the same directory, then rename onto the
|
|
8
|
+
* target (atomic on POSIX and win32 within one volume). A mid-write crash
|
|
9
|
+
* leaves the original config intact; the tmp file is removed best-effort.
|
|
10
|
+
* An existing target's file mode is carried over — a rename would otherwise
|
|
11
|
+
* turn a 0600 config into the umask default.
|
|
12
|
+
*/
|
|
13
|
+
export function atomicWriteSync(target, content) {
|
|
14
|
+
const tmp = `${target}.kya-tmp-${process.pid}`;
|
|
15
|
+
try {
|
|
16
|
+
let mode;
|
|
17
|
+
try {
|
|
18
|
+
mode = statSync(target).mode;
|
|
19
|
+
}
|
|
20
|
+
catch {
|
|
21
|
+
/* new file — keep default mode */
|
|
22
|
+
}
|
|
23
|
+
writeFileSync(tmp, content, "utf8");
|
|
24
|
+
if (mode !== undefined) {
|
|
25
|
+
try {
|
|
26
|
+
chmodSync(tmp, mode);
|
|
27
|
+
}
|
|
28
|
+
catch {
|
|
29
|
+
/* win32 chmod semantics differ; POSIX correctness is what matters */
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
renameSync(tmp, target);
|
|
33
|
+
}
|
|
34
|
+
catch (err) {
|
|
35
|
+
try {
|
|
36
|
+
rmSync(tmp, { force: true });
|
|
37
|
+
}
|
|
38
|
+
catch {
|
|
39
|
+
/* best-effort cleanup */
|
|
40
|
+
}
|
|
41
|
+
throw err;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=fs-atomic.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fs-atomic.js","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,MAAc,EAAE,OAAe;IAC7D,MAAM,GAAG,GAAG,GAAG,MAAM,YAAY,OAAO,CAAC,GAAG,EAAE,CAAC;IAC/C,IAAI,CAAC;QACH,IAAI,IAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,kCAAkC;QACpC,CAAC;QACD,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC;gBACH,SAAS,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,qEAAqE;YACvE,CAAC;QACH,CAAC;QACD,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,yBAAyB;QAC3B,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC"}
|