@shield-agent/kya 0.32.6 → 0.32.9

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.
Files changed (86) hide show
  1. package/.cursor-plugin/plugin.json +2 -2
  2. package/.mcp.json +1 -1
  3. package/README.md +67 -13
  4. package/amp/settings.example.json +1 -1
  5. package/claude/claude_desktop_config.example.json +1 -1
  6. package/cline/cline_mcp_settings.example.json +1 -1
  7. package/copilot/mcp-config.example.json +1 -1
  8. package/dist/cli.d.ts.map +1 -1
  9. package/dist/cli.js +101 -38
  10. package/dist/cli.js.map +1 -1
  11. package/dist/client.d.ts +2 -0
  12. package/dist/client.d.ts.map +1 -1
  13. package/dist/client.js +1 -1
  14. package/dist/client.js.map +1 -1
  15. package/dist/commands/eval-tool.js +1 -1
  16. package/dist/commands/eval-tool.js.map +1 -1
  17. package/dist/commands/hook.d.ts.map +1 -1
  18. package/dist/commands/hook.js +21 -6
  19. package/dist/commands/hook.js.map +1 -1
  20. package/dist/commands/login.d.ts +34 -0
  21. package/dist/commands/login.d.ts.map +1 -0
  22. package/dist/commands/login.js +74 -0
  23. package/dist/commands/login.js.map +1 -0
  24. package/dist/config.d.ts +2 -0
  25. package/dist/config.d.ts.map +1 -1
  26. package/dist/config.js.map +1 -1
  27. package/dist/cta.d.ts +23 -0
  28. package/dist/cta.d.ts.map +1 -0
  29. package/dist/cta.js +86 -0
  30. package/dist/cta.js.map +1 -0
  31. package/dist/fs-atomic.d.ts +6 -0
  32. package/dist/fs-atomic.d.ts.map +1 -1
  33. package/dist/fs-atomic.js +14 -3
  34. package/dist/fs-atomic.js.map +1 -1
  35. package/dist/login/credentials.d.ts +17 -0
  36. package/dist/login/credentials.d.ts.map +1 -0
  37. package/dist/login/credentials.js +64 -0
  38. package/dist/login/credentials.js.map +1 -0
  39. package/dist/login/device-flow.d.ts +44 -0
  40. package/dist/login/device-flow.d.ts.map +1 -0
  41. package/dist/login/device-flow.js +205 -0
  42. package/dist/login/device-flow.js.map +1 -0
  43. package/dist/mcp/protocol.js +1 -1
  44. package/dist/mcp/protocol.js.map +1 -1
  45. package/dist/never-list-input.d.ts +56 -0
  46. package/dist/never-list-input.d.ts.map +1 -0
  47. package/dist/never-list-input.js +1222 -0
  48. package/dist/never-list-input.js.map +1 -0
  49. package/dist/offline-evaluate.d.ts +17 -5
  50. package/dist/offline-evaluate.d.ts.map +1 -1
  51. package/dist/offline-evaluate.js +67 -9
  52. package/dist/offline-evaluate.js.map +1 -1
  53. package/dist/otel.d.ts +8 -2
  54. package/dist/otel.d.ts.map +1 -1
  55. package/dist/otel.js +32 -16
  56. package/dist/otel.js.map +1 -1
  57. package/dist/receipt/embeddings.d.ts +5 -1
  58. package/dist/receipt/embeddings.d.ts.map +1 -1
  59. package/dist/receipt/embeddings.js +71 -8
  60. package/dist/receipt/embeddings.js.map +1 -1
  61. package/dist/receipt/render-receipt.d.ts.map +1 -1
  62. package/dist/receipt/render-receipt.js +8 -2
  63. package/dist/receipt/render-receipt.js.map +1 -1
  64. package/dist/star-cta.d.ts +2 -2
  65. package/dist/star-cta.d.ts.map +1 -1
  66. package/dist/star-cta.js +1 -1
  67. package/dist/star-cta.js.map +1 -1
  68. package/dist/trail.d.ts +4 -0
  69. package/dist/trail.d.ts.map +1 -1
  70. package/dist/trail.js +14 -0
  71. package/dist/trail.js.map +1 -1
  72. package/droid/README.md +1 -1
  73. package/droid/mcp.example.json +1 -1
  74. package/gemini/settings.example.json +1 -1
  75. package/grok/README.md +1 -1
  76. package/kilo/kilo.example.json +1 -1
  77. package/kimi/mcp.example.json +1 -1
  78. package/kiro/mcp.example.json +1 -1
  79. package/manifest.json +1 -1
  80. package/mastracode/mcp.example.json +1 -1
  81. package/mcp.json +1 -1
  82. package/openai/codex.config.example.toml +1 -1
  83. package/opencode/opencode.example.json +1 -1
  84. package/package.json +2 -5
  85. package/qwen/settings.example.json +1 -1
  86. package/server.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"fs-atomic.d.ts","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CA0ChG;AAED,uGAAuG;AACvG,qBAAa,gBAAiB,SAAQ,QAAQ;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,UAAQ,GAAG,MAAM,CA8ClF;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAE/E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAStF;AAuBD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG9E"}
1
+ {"version":3,"file":"fs-atomic.d.ts","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAEvC;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,IAAI,GAAG,IAAI,CAEhG;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE3E;AAkDD,uGAAuG;AACvG,qBAAa,gBAAiB,SAAQ,QAAQ;gBAChC,OAAO,EAAE,MAAM;CAI5B;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,UAAQ,GAAG,MAAM,CA8ClF;AAED,6FAA6F;AAC7F,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAE/E;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAStF;AAuBD;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG5D;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAG9E"}
package/dist/fs-atomic.js CHANGED
@@ -19,11 +19,22 @@ import { KyaError } from "./errors.js";
19
19
  * config into the umask default.
20
20
  */
21
21
  export function atomicWriteSync(target, content, beforeRename) {
22
+ writeAtomic(target, content, { beforeRename });
23
+ }
24
+ /**
25
+ * Same crash-safe write, but the file is always mode 0600 (owner read and write only), both
26
+ * when created and when it already existed. Used for hosted credentials. The mode is set at
27
+ * create (open flag) and again with fchmod on the fd, so there is no window with a wider mode.
28
+ */
29
+ export function atomicWriteSecretSync(target, content) {
30
+ writeAtomic(target, content, { forceMode: 0o600 });
31
+ }
32
+ function writeAtomic(target, content, opts) {
22
33
  const tmp = `${target}.kya-tmp-${randomBytes(16).toString("hex")}`;
23
- let mode;
34
+ let mode = opts.forceMode;
24
35
  try {
25
36
  const st = lstatSync(target);
26
- if (st.isFile())
37
+ if (st.isFile() && mode === undefined)
27
38
  mode = st.mode & 0o7777;
28
39
  }
29
40
  catch {
@@ -45,7 +56,7 @@ export function atomicWriteSync(target, content, beforeRename) {
45
56
  writeSync(fd, content, null, "utf8");
46
57
  closeSync(fd);
47
58
  fd = undefined;
48
- beforeRename?.();
59
+ opts.beforeRename?.();
49
60
  renameSync(tmp, target);
50
61
  }
51
62
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"fs-atomic.js","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fs-atomic.js","sourceRoot":"","sources":["../src/fs-atomic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export interface HostedCredentials {
2
+ /** Validated origin of the hosted console, no path, query or fragment. */
3
+ readonly baseUrl: string;
4
+ /** The hosted API key. Never print it. */
5
+ readonly apiKey: string;
6
+ /** Display prefix only (safe to print). */
7
+ readonly keyPrefix: string;
8
+ readonly createdAt: string;
9
+ }
10
+ export declare function credentialsPath(env?: NodeJS.ProcessEnv): string;
11
+ /** The saved credentials, or undefined when missing, unreadable or malformed. Never throws. */
12
+ export declare function readCredentials(env?: NodeJS.ProcessEnv): HostedCredentials | undefined;
13
+ /** Write the credentials with mode 0600. Throws on I/O failure; the caller reports it. */
14
+ export declare function writeCredentials(creds: HostedCredentials, env?: NodeJS.ProcessEnv): string;
15
+ /** Delete the local file. Returns whether a file was removed. Never throws. */
16
+ export declare function deleteCredentials(env?: NodeJS.ProcessEnv): boolean;
17
+ //# sourceMappingURL=credentials.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/login/credentials.ts"],"names":[],"mappings":"AAaA,MAAM,WAAW,iBAAiB;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,0CAA0C;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,2CAA2C;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAID,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAE5E;AAED,+FAA+F;AAC/F,wBAAgB,eAAe,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,iBAAiB,GAAG,SAAS,CAkBnG;AAED,0FAA0F;AAC1F,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,iBAAiB,EAAE,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,MAAM,CAKvG;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAS/E"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Hosted login credentials for `kya login`: one JSON file in the user-level KYA dir
3
+ * (`<KYA_HOME|home>/.kya/hosted-credentials.json`), mode 0600, written crash-safe.
4
+ *
5
+ * The file holds a full-workspace hosted API key (no narrower scope exists yet). It is never printed, never sent to telemetry
6
+ * and never read by the hosted hook path (that path uses its own --plane-config file).
7
+ */
8
+ import { existsSync, lstatSync, mkdirSync, readFileSync, rmSync } from "node:fs";
9
+ import { join } from "node:path";
10
+ import { globalConfigDir } from "../config.js";
11
+ import { atomicWriteSecretSync } from "../fs-atomic.js";
12
+ import { validateConsoleUrl } from "./device-flow.js";
13
+ const KEY_RE = /^[\x21-\x7e]{8,512}$/;
14
+ export function credentialsPath(env = process.env) {
15
+ return join(globalConfigDir(env), "hosted-credentials.json");
16
+ }
17
+ /** The saved credentials, or undefined when missing, unreadable or malformed. Never throws. */
18
+ export function readCredentials(env = process.env) {
19
+ try {
20
+ const raw = JSON.parse(readFileSync(credentialsPath(env), "utf8"));
21
+ if (typeof raw.baseUrl === "string" &&
22
+ typeof raw.apiKey === "string" &&
23
+ KEY_RE.test(raw.apiKey) &&
24
+ typeof raw.keyPrefix === "string" &&
25
+ typeof raw.createdAt === "string") {
26
+ // Re-validated on every read: a file edited to point at a remote http host (or anything else) is not used.
27
+ validateConsoleUrl(raw.baseUrl);
28
+ return { baseUrl: raw.baseUrl, apiKey: raw.apiKey, keyPrefix: raw.keyPrefix, createdAt: raw.createdAt };
29
+ }
30
+ }
31
+ catch {
32
+ /* missing or corrupt */
33
+ }
34
+ return undefined;
35
+ }
36
+ /** Write the credentials with mode 0600. Throws on I/O failure; the caller reports it. */
37
+ export function writeCredentials(creds, env = process.env) {
38
+ const path = credentialsPath(env);
39
+ mkdirSync(globalConfigDir(env), { recursive: true });
40
+ atomicWriteSecretSync(path, `${JSON.stringify(creds, null, 2)}\n`);
41
+ return path;
42
+ }
43
+ /** Delete the local file. Returns whether a file was removed. Never throws. */
44
+ export function deleteCredentials(env = process.env) {
45
+ const path = credentialsPath(env);
46
+ try {
47
+ if (!existsSync(path) && !isLink(path))
48
+ return false;
49
+ rmSync(path, { force: true });
50
+ return true;
51
+ }
52
+ catch {
53
+ return false;
54
+ }
55
+ }
56
+ function isLink(path) {
57
+ try {
58
+ return lstatSync(path).isSymbolicLink();
59
+ }
60
+ catch {
61
+ return false;
62
+ }
63
+ }
64
+ //# sourceMappingURL=credentials.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/login/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAYtD,MAAM,MAAM,GAAG,sBAAsB,CAAC;AAEtC,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,yBAAyB,CAAC,CAAC;AAC/D,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAA+B,CAAC;QACjG,IACE,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAC/B,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;YAC9B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YACvB,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ;YACjC,OAAO,GAAG,CAAC,SAAS,KAAK,QAAQ,EACjC,CAAC;YACD,2GAA2G;YAC3G,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAChC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,CAAC;QAC1G,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,wBAAwB;IAC1B,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,0FAA0F;AAC1F,MAAM,UAAU,gBAAgB,CAAC,KAAwB,EAAE,MAAyB,OAAO,CAAC,GAAG;IAC7F,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAClC,SAAS,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,qBAAqB,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACnE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,iBAAiB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACpE,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACrD,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,IAAY;IAC1B,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,cAAc,EAAE,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
@@ -0,0 +1,44 @@
1
+ export type LoginErrorCode = "LOGIN_UNAVAILABLE" | "LOGIN_NETWORK" | "LOGIN_WRONG_STATE" | "LOGIN_EXPIRED" | "LOGIN_DENIED" | "LOGIN_CAP_REACHED" | "LOGIN_RATE_LIMITED" | "LOGIN_BAD_URL";
2
+ /** A login failure. `message` is fixed text chosen here, never server output or key material. */
3
+ export declare class LoginError extends Error {
4
+ readonly code: LoginErrorCode;
5
+ constructor(code: LoginErrorCode, message: string);
6
+ }
7
+ export interface DeviceCode {
8
+ readonly deviceCode: string;
9
+ readonly userCode: string;
10
+ readonly verificationUri: string;
11
+ readonly expiresInSec: number;
12
+ readonly intervalSec: number;
13
+ }
14
+ export interface IssuedToken {
15
+ readonly apiKey: string;
16
+ readonly keyPrefix: string;
17
+ }
18
+ export interface DeviceFlowDeps {
19
+ readonly clientVersion: string;
20
+ readonly fetch?: typeof fetch;
21
+ /** Injected in tests so slow_down and expiry run without real waits. */
22
+ readonly sleep?: (ms: number) => Promise<void>;
23
+ readonly now?: () => number;
24
+ /** Per-request timeout. A slower answer counts as a transient failure. */
25
+ readonly requestTimeoutMs?: number;
26
+ }
27
+ export declare const DEVICE_CODE_PATH = "/api/v1/kya/device/code";
28
+ export declare const DEVICE_TOKEN_PATH = "/api/v1/kya/device/token";
29
+ /** Consecutive transient failures (network, timeout, 5xx) before the login gives up. */
30
+ export declare const MAX_TRANSIENT_FAILURES = 3;
31
+ /**
32
+ * Validate the console origin. https only, or loopback http (tests and local dev).
33
+ * No credentials, query or fragment. Returns the parsed URL (origin only is used).
34
+ */
35
+ export declare function validateConsoleUrl(raw: string): URL;
36
+ /** Step 1: ask the server for a device and user code. */
37
+ export declare function requestDeviceCode(base: URL, deps: DeviceFlowDeps): Promise<DeviceCode>;
38
+ /**
39
+ * Step 2: poll until the user approves, denies or the code expires.
40
+ * Transient failures (network, timeout, 5xx) are retried up to MAX_TRANSIENT_FAILURES in a row.
41
+ * An unknown answer aborts at once. Only a validated token is returned.
42
+ */
43
+ export declare function pollForToken(base: URL, code: DeviceCode, deps: DeviceFlowDeps): Promise<IssuedToken>;
44
+ //# sourceMappingURL=device-flow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-flow.d.ts","sourceRoot":"","sources":["../../src/login/device-flow.ts"],"names":[],"mappings":"AAaA,MAAM,MAAM,cAAc,GACtB,mBAAmB,GACnB,eAAe,GACf,mBAAmB,GACnB,eAAe,GACf,cAAc,GACd,mBAAmB,GACnB,oBAAoB,GACpB,eAAe,CAAC;AAEpB,iGAAiG;AACjG,qBAAa,UAAW,SAAQ,KAAK;IAEjC,QAAQ,CAAC,IAAI,EAAE,cAAc;gBAApB,IAAI,EAAE,cAAc,EAC7B,OAAO,EAAE,MAAM;CAKlB;AAED,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;IAC9B,wEAAwE;IACxE,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;IAC5B,0EAA0E;IAC1E,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,eAAO,MAAM,gBAAgB,4BAA4B,CAAC;AAC1D,eAAO,MAAM,iBAAiB,6BAA6B,CAAC;AAI5D,wFAAwF;AACxF,eAAO,MAAM,sBAAsB,IAAI,CAAC;AAMxC;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAiBnD;AAmCD,yDAAyD;AACzD,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,UAAU,CAAC,CAiD5F;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,CA8D1G"}
@@ -0,0 +1,205 @@
1
+ /**
2
+ * OAuth 2.0 device authorization grant (RFC 8628) against the hosted console, for `kya login`.
3
+ *
4
+ * Endpoints (hosted side: web device-login controller, behind a feature flag):
5
+ * POST {base}/api/v1/kya/device/code {"client":"kya-cli","version":"x"} -> device_code, user_code, ...
6
+ * POST {base}/api/v1/kya/device/token {"device_code":"..."} -> 200 access_token | 400 error
7
+ * A 404 on either route means the feature is off on that server.
8
+ *
9
+ * Fails closed for login itself: any unknown answer aborts with a LoginError and nothing is stored.
10
+ * Nothing here runs in the OSS hook or evaluate path.
11
+ */
12
+ import { isLoopbackUrl } from "../config.js";
13
+ /** A login failure. `message` is fixed text chosen here, never server output or key material. */
14
+ export class LoginError extends Error {
15
+ code;
16
+ constructor(code, message) {
17
+ super(message);
18
+ this.code = code;
19
+ this.name = "LoginError";
20
+ }
21
+ }
22
+ export const DEVICE_CODE_PATH = "/api/v1/kya/device/code";
23
+ export const DEVICE_TOKEN_PATH = "/api/v1/kya/device/token";
24
+ /** RFC 8628 section 3.5: slow_down adds 5 seconds to the polling interval. */
25
+ const SLOW_DOWN_STEP_SEC = 5;
26
+ const MAX_INTERVAL_SEC = 60;
27
+ /** Consecutive transient failures (network, timeout, 5xx) before the login gives up. */
28
+ export const MAX_TRANSIENT_FAILURES = 3;
29
+ const DEFAULT_TIMEOUT_MS = 10_000;
30
+ const DEVICE_CODE_RE = /^[\x21-\x7e]{16,512}$/;
31
+ const USER_CODE_RE = /^[A-Za-z0-9-]{4,32}$/;
32
+ const KEY_RE = /^[\x21-\x7e]{8,512}$/;
33
+ /**
34
+ * Validate the console origin. https only, or loopback http (tests and local dev).
35
+ * No credentials, query or fragment. Returns the parsed URL (origin only is used).
36
+ */
37
+ export function validateConsoleUrl(raw) {
38
+ const bad = (why) => {
39
+ throw new LoginError("LOGIN_BAD_URL", `hosted console URL ${why}`);
40
+ };
41
+ if (!raw || /[^\x21-\x7e]/.test(raw))
42
+ bad("must be a non-empty ASCII URL");
43
+ let url;
44
+ try {
45
+ url = new URL(raw);
46
+ }
47
+ catch {
48
+ return bad("is not a valid URL");
49
+ }
50
+ if (url.username || url.password)
51
+ bad("must not carry credentials");
52
+ if (url.search || url.hash)
53
+ bad("must not carry a query or fragment");
54
+ if (url.protocol !== "https:" && !(url.protocol === "http:" && isLoopbackUrl(raw))) {
55
+ bad("must be https (http is allowed for loopback only)");
56
+ }
57
+ return url;
58
+ }
59
+ function isObject(v) {
60
+ return typeof v === "object" && v !== null && !Array.isArray(v);
61
+ }
62
+ /** One JSON POST. Returns the status and parsed body (undefined when not JSON). Throws on network or timeout. */
63
+ async function postJson(url, body, deps) {
64
+ const doFetch = deps.fetch ?? fetch;
65
+ const controller = new AbortController();
66
+ const timer = setTimeout(() => controller.abort(), deps.requestTimeoutMs ?? DEFAULT_TIMEOUT_MS);
67
+ try {
68
+ const res = await doFetch(url, {
69
+ method: "POST",
70
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
71
+ body: JSON.stringify(body),
72
+ signal: controller.signal,
73
+ redirect: "error",
74
+ });
75
+ let json;
76
+ try {
77
+ json = await res.json();
78
+ }
79
+ catch {
80
+ json = undefined;
81
+ }
82
+ return { status: res.status, json };
83
+ }
84
+ finally {
85
+ clearTimeout(timer);
86
+ }
87
+ }
88
+ /** Step 1: ask the server for a device and user code. */
89
+ export async function requestDeviceCode(base, deps) {
90
+ let res;
91
+ try {
92
+ res = await postJson(new URL(DEVICE_CODE_PATH, base).toString(), { client: "kya-cli", version: deps.clientVersion }, deps);
93
+ }
94
+ catch {
95
+ throw new LoginError("LOGIN_NETWORK", "could not reach the hosted console; nothing was saved");
96
+ }
97
+ if (res.status === 404) {
98
+ throw new LoginError("LOGIN_UNAVAILABLE", "hosted login is not available on this server; nothing was saved");
99
+ }
100
+ if (res.status === 429) {
101
+ throw new LoginError("LOGIN_RATE_LIMITED", "too many login starts from this network; wait a minute, then run kya login again");
102
+ }
103
+ if (res.status !== 200 || !isObject(res.json)) {
104
+ throw new LoginError("LOGIN_WRONG_STATE", "the hosted console sent an unexpected answer; nothing was saved");
105
+ }
106
+ const o = res.json;
107
+ const deviceCode = typeof o.device_code === "string" ? o.device_code : "";
108
+ const userCode = typeof o.user_code === "string" ? o.user_code : "";
109
+ const uri = typeof o.verification_uri === "string" ? o.verification_uri : "";
110
+ const expires = typeof o.expires_in === "number" && Number.isInteger(o.expires_in) ? o.expires_in : 0;
111
+ const interval = o.interval === undefined ? 5 : typeof o.interval === "number" && Number.isInteger(o.interval) ? o.interval : 0;
112
+ let verification;
113
+ try {
114
+ verification = new URL(uri);
115
+ }
116
+ catch {
117
+ verification = undefined;
118
+ }
119
+ // The verification page must live on the same origin the user chose: never open a foreign page.
120
+ const sameOrigin = verification !== undefined && verification.origin === base.origin;
121
+ if (!DEVICE_CODE_RE.test(deviceCode) ||
122
+ !USER_CODE_RE.test(userCode) ||
123
+ !sameOrigin ||
124
+ expires < 1 ||
125
+ expires > 3600 ||
126
+ interval < 1 ||
127
+ interval > MAX_INTERVAL_SEC) {
128
+ throw new LoginError("LOGIN_WRONG_STATE", "the hosted console sent an unexpected answer; nothing was saved");
129
+ }
130
+ return {
131
+ deviceCode,
132
+ userCode,
133
+ verificationUri: verification.toString(),
134
+ expiresInSec: expires,
135
+ intervalSec: interval,
136
+ };
137
+ }
138
+ /**
139
+ * Step 2: poll until the user approves, denies or the code expires.
140
+ * Transient failures (network, timeout, 5xx) are retried up to MAX_TRANSIENT_FAILURES in a row.
141
+ * An unknown answer aborts at once. Only a validated token is returned.
142
+ */
143
+ export async function pollForToken(base, code, deps) {
144
+ const now = deps.now ?? Date.now;
145
+ const sleep = deps.sleep ?? ((ms) => new Promise((r) => setTimeout(r, ms)));
146
+ const deadline = now() + code.expiresInSec * 1000;
147
+ const tokenUrl = new URL(DEVICE_TOKEN_PATH, base).toString();
148
+ let interval = code.intervalSec;
149
+ let transient = 0;
150
+ const expired = () => new LoginError("LOGIN_EXPIRED", "the code expired before it was approved; nothing was saved");
151
+ for (;;) {
152
+ if (now() >= deadline)
153
+ throw expired();
154
+ await sleep(interval * 1000);
155
+ if (now() >= deadline)
156
+ throw expired();
157
+ let res;
158
+ try {
159
+ res = await postJson(tokenUrl, { device_code: code.deviceCode }, deps);
160
+ }
161
+ catch {
162
+ if (++transient >= MAX_TRANSIENT_FAILURES) {
163
+ throw new LoginError("LOGIN_NETWORK", "lost the hosted console while waiting; nothing was saved");
164
+ }
165
+ continue;
166
+ }
167
+ if (res.status === 404) {
168
+ throw new LoginError("LOGIN_UNAVAILABLE", "hosted login is not available on this server; nothing was saved");
169
+ }
170
+ if (res.status >= 500) {
171
+ if (++transient >= MAX_TRANSIENT_FAILURES) {
172
+ throw new LoginError("LOGIN_NETWORK", "lost the hosted console while waiting; nothing was saved");
173
+ }
174
+ continue;
175
+ }
176
+ transient = 0;
177
+ if (res.status === 200) {
178
+ const o = isObject(res.json) ? res.json : {};
179
+ const apiKey = typeof o.access_token === "string" ? o.access_token : "";
180
+ if (!KEY_RE.test(apiKey)) {
181
+ throw new LoginError("LOGIN_WRONG_STATE", "the hosted console sent an unexpected answer; nothing was saved");
182
+ }
183
+ const keyPrefix = typeof o.key_prefix === "string" && o.key_prefix ? o.key_prefix : apiKey.slice(0, 12);
184
+ return { apiKey, keyPrefix };
185
+ }
186
+ const error = isObject(res.json) && typeof res.json.error === "string" ? res.json.error : "";
187
+ if (res.status === 429 || error === "slow_down") {
188
+ interval = Math.min(MAX_INTERVAL_SEC, interval + SLOW_DOWN_STEP_SEC);
189
+ continue;
190
+ }
191
+ if (error === "authorization_pending")
192
+ continue;
193
+ if (error === "expired_token")
194
+ throw expired();
195
+ if (error === "access_denied") {
196
+ throw new LoginError("LOGIN_DENIED", "the request was denied in the hosted console; nothing was saved");
197
+ }
198
+ if (error === "api_key.cap_reached") {
199
+ // Approved on the console, but the workspace is at its key cap. The request stays approved on the server.
200
+ throw new LoginError("LOGIN_CAP_REACHED", "this workspace has the maximum number of API keys; revoke an unused key in the console, then run kya login again");
201
+ }
202
+ throw new LoginError("LOGIN_WRONG_STATE", "the hosted console sent an unexpected answer; nothing was saved");
203
+ }
204
+ }
205
+ //# sourceMappingURL=device-flow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"device-flow.js","sourceRoot":"","sources":["../../src/login/device-flow.ts"],"names":[],"mappings":"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"}
@@ -187,7 +187,7 @@ async function callPolicyEvaluate(a, ctx) {
187
187
  if (ctx.offline) {
188
188
  // Same local evaluator as `kya eval-tool --offline` - a verdict, never a
189
189
  // network error, so the wired (keyless) path still lands on the trail.
190
- response = evaluateOffline(request, host);
190
+ response = evaluateOffline(request, host, argsObj);
191
191
  }
192
192
  else {
193
193
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/mcp/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/mcp/protocol.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * A field longer than this is scanned as two windows: its first and its last
3
+ * MAX_SCAN_CHARS. Text in the middle of a longer field is not scanned (documented limit).
4
+ */
5
+ export declare const MAX_SCAN_CHARS = 65536;
6
+ interface Segment {
7
+ readonly tokens: readonly string[];
8
+ readonly pipeIn: boolean;
9
+ /** Candidate command words, in order. The last one is the real command (shells skipped). */
10
+ readonly cmds: readonly Cmd[];
11
+ /** The same candidates with shells kept (for pipes and `bash -c`), computed on first use. */
12
+ kept?: readonly Cmd[];
13
+ }
14
+ interface Shell {
15
+ readonly raw: string;
16
+ readonly segments: readonly Segment[];
17
+ readonly home: string | undefined;
18
+ }
19
+ /** A command word and the tokens after it. Copied once, when the segment is built. */
20
+ declare class Cmd {
21
+ readonly name: string;
22
+ readonly raw: string;
23
+ private readonly tokens;
24
+ private readonly start;
25
+ private cached;
26
+ /** `raw` is the word as written (a download substitution is checked on it). */
27
+ constructor(name: string, raw: string, tokens: readonly string[], start: number);
28
+ /** Arguments, copied on first use: most candidate words are never asked for them. */
29
+ get args(): readonly string[];
30
+ }
31
+ export interface NeverListInputRule {
32
+ /** Stable id. Shown in the deny reason and listed in docs/guides/kya-never-list.md. */
33
+ readonly id: string;
34
+ /** Group a to e, as in the owner's list. */
35
+ readonly group: "a" | "b" | "c" | "d" | "e";
36
+ /** Checks a shell command. Only shell-like tools reach it. */
37
+ readonly shell?: (sh: Shell) => boolean;
38
+ /** Checks a file path. Only tools that are not write-like reach it. */
39
+ readonly file?: (path: string, home: string | undefined) => boolean;
40
+ }
41
+ /**
42
+ * THE rule table. One row per rule, one comment per row. The owner approved this list
43
+ * on 2026-10-29, with no changes. Changes to a row need owner approval. Matching is by
44
+ * parsed command word and exact target, never by substring alone, so
45
+ * `~/proj/node_modules`, `/tmp/x` and `.env.example` stay allowed.
46
+ */
47
+ export declare const NEVER_LIST_INPUT_RULES: readonly NeverListInputRule[];
48
+ /**
49
+ * First matching input rule for this tool call, or undefined (allow). The caller
50
+ * denies with reasonCode NEVER_EVENT. Never throws: any error is an undefined result.
51
+ */
52
+ export declare function neverListInputMatch(toolId: string, toolInput: unknown, home?: string | undefined): {
53
+ readonly rule: string;
54
+ } | undefined;
55
+ export {};
56
+ //# sourceMappingURL=never-list-input.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"never-list-input.d.ts","sourceRoot":"","sources":["../src/never-list-input.ts"],"names":[],"mappings":"AAgBA;;;GAGG;AACH,eAAO,MAAM,cAAc,QAAQ,CAAC;AAapC,UAAU,OAAO;IACf,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,4FAA4F;IAC5F,QAAQ,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,CAAC;IAC9B,6FAA6F;IAC7F,IAAI,CAAC,EAAE,SAAS,GAAG,EAAE,CAAC;CACvB;AAOD,UAAU,KAAK;IACb,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,SAAS,OAAO,EAAE,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED,sFAAsF;AACtF,cAAM,GAAG;IAGK,QAAQ,CAAC,IAAI,EAAE,MAAM;IAAE,QAAQ,CAAC,GAAG,EAAE,MAAM;IAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;IAAqB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAF3H,OAAO,CAAC,MAAM,CAAgC;IAC9C,+EAA+E;gBAC1D,IAAI,EAAE,MAAM,EAAW,GAAG,EAAE,MAAM,EAAmB,MAAM,EAAE,SAAS,MAAM,EAAE,EAAmB,KAAK,EAAE,MAAM;IACnI,qFAAqF;IACrF,IAAI,IAAI,IAAI,SAAS,MAAM,EAAE,CAE5B;CACF;AAED,MAAM,WAAW,kBAAkB;IACjC,uFAAuF;IACvF,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;IAC5C,8DAA8D;IAC9D,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,KAAK,OAAO,CAAC;IACxC,uEAAuE;IACvE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,OAAO,CAAC;CACrE;AA06BD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,kBAAkB,EAyB/D,CAAC;AAgFF;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,OAAO,EAClB,IAAI,GAAE,MAAM,GAAG,SAAsB,GACpC;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,SAAS,CAmBvC"}