@embassys/ambassador 0.2.9 → 0.2.10

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 (53) hide show
  1. package/README.md +17 -7
  2. package/dist/agent-capabilities.d.ts +6 -0
  3. package/dist/agent-capabilities.js +61 -1
  4. package/dist/agent-capabilities.js.map +1 -1
  5. package/dist/ambassador-options.d.ts +4 -0
  6. package/dist/ambassador-options.js +7 -1
  7. package/dist/ambassador-options.js.map +1 -1
  8. package/dist/central-enrollment.js +1 -5
  9. package/dist/central-enrollment.js.map +1 -1
  10. package/dist/cli.js +17 -2
  11. package/dist/cli.js.map +1 -1
  12. package/dist/credential-store.d.ts +4 -4
  13. package/dist/credential-store.js +6 -98
  14. package/dist/credential-store.js.map +1 -1
  15. package/dist/delivery-profile.d.ts +10 -7
  16. package/dist/delivery-profile.js +62 -44
  17. package/dist/delivery-profile.js.map +1 -1
  18. package/dist/direct-delivery.d.ts +3 -1
  19. package/dist/direct-delivery.js +114 -12
  20. package/dist/direct-delivery.js.map +1 -1
  21. package/dist/gateway-application.d.ts +4 -0
  22. package/dist/gateway-application.js +14 -6
  23. package/dist/gateway-application.js.map +1 -1
  24. package/dist/gateway-paths.d.ts +2 -0
  25. package/dist/gateway-paths.js +2 -0
  26. package/dist/gateway-paths.js.map +1 -1
  27. package/dist/guided-registration.d.ts +2 -1
  28. package/dist/guided-registration.js +15 -7
  29. package/dist/guided-registration.js.map +1 -1
  30. package/dist/process-lock.js +1 -0
  31. package/dist/process-lock.js.map +1 -1
  32. package/dist/sqlite-artifact.d.ts +9 -1
  33. package/dist/sqlite-artifact.js +23 -8
  34. package/dist/sqlite-artifact.js.map +1 -1
  35. package/dist/webhook-secret-store.d.ts +16 -0
  36. package/dist/webhook-secret-store.js +49 -0
  37. package/dist/webhook-secret-store.js.map +1 -0
  38. package/dist/windows-access-control.d.ts +6 -0
  39. package/dist/windows-access-control.js +161 -0
  40. package/dist/windows-access-control.js.map +1 -0
  41. package/docs/development-reset.md +27 -0
  42. package/docs/getting-started-claude.md +3 -3
  43. package/docs/getting-started-codex.md +3 -3
  44. package/docs/getting-started-gemini.md +1 -1
  45. package/docs/getting-started-hermes.md +78 -26
  46. package/docs/getting-started-openclaw.md +92 -31
  47. package/docs/live-qualification.md +73 -2
  48. package/integrations/openclaw-ambassador/index.mjs +171 -0
  49. package/integrations/openclaw-ambassador/openclaw.plugin.json +73 -0
  50. package/integrations/openclaw-ambassador/package.json +11 -0
  51. package/integrations/openclaw-ambassador/receiver.d.mts +43 -0
  52. package/integrations/openclaw-ambassador/receiver.mjs +164 -0
  53. package/package.json +3 -1
package/README.md CHANGED
@@ -17,8 +17,9 @@ npx --yes @embassys/ambassador@latest start
17
17
  - OpenClaw and Hermes users choose **direct** (the default) or **webhook**.
18
18
  Codex, Claude Code, and Gemini CLI proceed directly without a delivery
19
19
  question.
20
- - Webhook users set a receiver secret in Ambassador's environment before
21
- startup and give the agent only the variable name during registration.
20
+ - Webhook users run `ambassador webhook-secret`, copy the displayed value into
21
+ Hermes or OpenClaw's owner-only secret store, and give the agent only the
22
+ receiver URL during registration.
22
23
 
23
24
  Direct delivery supports OpenClaw, Hermes, Codex, Claude Code, and Gemini CLI.
24
25
  Webhook delivery supports OpenClaw and Hermes. Unknown or incomplete profiles
@@ -51,14 +52,22 @@ configuration or credentials.
51
52
 
52
53
  ## Implementation status
53
54
 
54
- The REST, DPoP, delivery, and zero-configuration startup paths are implemented.
55
- Live-central qualification has passed with real Codex and with Hermes Agent
56
- 0.20.5 in both delivery modes. Ambassador 0.2.8 includes that Hermes direct
57
- profile. Four other profile/mode cases remain open under the disclosed release
58
- exception in
55
+ The REST, DPoP, delivery, internal webhook-secret, and zero-configuration
56
+ startup paths are implemented. Live-central qualification has passed with
57
+ real Codex and with Hermes Agent 0.20.5 and OpenClaw 2026.8.2 in both delivery
58
+ modes. Ambassador matches exact known client and ACP agent names while treating
59
+ reported versions as observations. Claude Code direct and Gemini CLI direct
60
+ remain open under the disclosed release exception in
59
61
  [ADR 0015](docs/adr/0015-npm-distribution.md); outstanding work remains in the
60
62
  [implementation plan](docs/implementation-plan.md).
61
63
 
64
+ Published Ambassador releases through 0.2.9 have no Windows support claim.
65
+ Current repository code is qualified under
66
+ [ADR 0040](docs/adr/0040-windows-qualification.md): the
67
+ native state, packed-package, and mock delivery lanes pass, while individual
68
+ agent and mode claims still require exact real-agent Windows evidence and a
69
+ future package publication requires separate approval.
70
+
62
71
  ## Development
63
72
 
64
73
  Use Node.js 24 and the pnpm version recorded in `package.json`.
@@ -85,6 +94,7 @@ agents and webhook delivery for OpenClaw and Hermes.
85
94
  - [Gemini CLI setup](docs/getting-started-gemini.md)
86
95
  - [Hermes setup](docs/getting-started-hermes.md)
87
96
  - [OpenClaw setup](docs/getting-started-openclaw.md)
97
+ - [Reset local test state](docs/development-reset.md)
88
98
  - [Central service follow-ups](docs/central-follow-ups.md)
89
99
 
90
100
  ## License
@@ -4,6 +4,11 @@ export interface AgentClientInfo {
4
4
  readonly name: string;
5
5
  readonly version: string;
6
6
  }
7
+ export interface WindowsNodePackageEntrypoint {
8
+ readonly packageName: string;
9
+ readonly binName: string;
10
+ readonly entrypoint: string;
11
+ }
7
12
  export interface DirectAgentCapability {
8
13
  readonly command: string;
9
14
  readonly args: readonly string[];
@@ -12,6 +17,7 @@ export interface DirectAgentCapability {
12
17
  };
13
18
  readonly mcp: McpConfigurationBehavior;
14
19
  readonly environment: readonly string[];
20
+ readonly windowsNodePackage?: WindowsNodePackageEntrypoint;
15
21
  }
16
22
  export interface AgentCapability {
17
23
  readonly kind: string;
@@ -14,19 +14,30 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
14
14
  agentInfo: { name: "openclaw-acp" },
15
15
  mcp: "provider_config",
16
16
  environment: [
17
+ "APPDATA",
17
18
  "HOME",
18
19
  "LANG",
19
20
  "LC_ALL",
21
+ "LOCALAPPDATA",
20
22
  "NODE_EXTRA_CA_CERTS",
21
23
  "PATH",
22
24
  "SSL_CERT_DIR",
23
25
  "SSL_CERT_FILE",
26
+ "SystemRoot",
27
+ "TEMP",
28
+ "TMP",
24
29
  "TMPDIR",
25
30
  "USERPROFILE",
31
+ "WINDIR",
26
32
  "XDG_CONFIG_HOME",
27
33
  "XDG_DATA_HOME",
28
34
  "XDG_STATE_HOME",
29
35
  ],
36
+ windowsNodePackage: {
37
+ packageName: "openclaw",
38
+ binName: "openclaw",
39
+ entrypoint: "openclaw.mjs",
40
+ },
30
41
  },
31
42
  qualificationCases: ["openclaw-webhook", "openclaw-direct"],
32
43
  },
@@ -42,14 +53,20 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
42
53
  agentInfo: { name: "hermes-agent" },
43
54
  mcp: "session",
44
55
  environment: [
56
+ "APPDATA",
45
57
  "HOME",
46
58
  "LANG",
47
59
  "LC_ALL",
60
+ "LOCALAPPDATA",
48
61
  "PATH",
49
62
  "SSL_CERT_DIR",
50
63
  "SSL_CERT_FILE",
64
+ "SystemRoot",
65
+ "TEMP",
66
+ "TMP",
51
67
  "TMPDIR",
52
68
  "USERPROFILE",
69
+ "WINDIR",
53
70
  "XDG_CACHE_HOME",
54
71
  "XDG_CONFIG_HOME",
55
72
  "XDG_DATA_HOME",
@@ -70,22 +87,33 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
70
87
  agentInfo: { name: "@agentclientprotocol/codex-acp" },
71
88
  mcp: "session",
72
89
  environment: [
90
+ "APPDATA",
73
91
  "CODEX_API_KEY",
74
92
  "HOME",
75
93
  "LANG",
76
94
  "LC_ALL",
95
+ "LOCALAPPDATA",
77
96
  "NODE_EXTRA_CA_CERTS",
78
97
  "OPENAI_API_KEY",
79
98
  "PATH",
80
99
  "SSL_CERT_DIR",
81
100
  "SSL_CERT_FILE",
101
+ "SystemRoot",
102
+ "TEMP",
103
+ "TMP",
82
104
  "TMPDIR",
83
105
  "USERPROFILE",
106
+ "WINDIR",
84
107
  "XDG_CONFIG_HOME",
85
108
  "XDG_DATA_HOME",
86
109
  "XDG_RUNTIME_DIR",
87
110
  "XDG_STATE_HOME",
88
111
  ],
112
+ windowsNodePackage: {
113
+ packageName: "@agentclientprotocol/codex-acp",
114
+ binName: "codex-acp",
115
+ entrypoint: "dist/index.js",
116
+ },
89
117
  },
90
118
  qualificationCases: ["codex-direct"],
91
119
  },
@@ -101,22 +129,33 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
101
129
  agentInfo: { name: "@agentclientprotocol/claude-agent-acp" },
102
130
  mcp: "session",
103
131
  environment: [
132
+ "APPDATA",
104
133
  "ANTHROPIC_API_KEY",
105
134
  "ANTHROPIC_AUTH_TOKEN",
106
135
  "CLAUDE_CODE_OAUTH_TOKEN",
107
136
  "HOME",
108
137
  "LANG",
109
138
  "LC_ALL",
139
+ "LOCALAPPDATA",
110
140
  "NODE_EXTRA_CA_CERTS",
111
141
  "PATH",
112
142
  "SSL_CERT_DIR",
113
143
  "SSL_CERT_FILE",
144
+ "SystemRoot",
145
+ "TEMP",
146
+ "TMP",
114
147
  "TMPDIR",
115
148
  "USERPROFILE",
149
+ "WINDIR",
116
150
  "XDG_CONFIG_HOME",
117
151
  "XDG_DATA_HOME",
118
152
  "XDG_STATE_HOME",
119
153
  ],
154
+ windowsNodePackage: {
155
+ packageName: "@agentclientprotocol/claude-agent-acp",
156
+ binName: "claude-agent-acp",
157
+ entrypoint: "dist/index.js",
158
+ },
120
159
  },
121
160
  qualificationCases: ["claude-direct"],
122
161
  },
@@ -132,6 +171,7 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
132
171
  agentInfo: { name: "gemini-cli" },
133
172
  mcp: "session",
134
173
  environment: [
174
+ "APPDATA",
135
175
  "GEMINI_API_KEY",
136
176
  "GOOGLE_API_KEY",
137
177
  "GOOGLE_CLOUD_LOCATION",
@@ -140,16 +180,26 @@ export const PRODUCTION_AGENT_CAPABILITIES = [
140
180
  "HOME",
141
181
  "LANG",
142
182
  "LC_ALL",
183
+ "LOCALAPPDATA",
143
184
  "NODE_EXTRA_CA_CERTS",
144
185
  "PATH",
145
186
  "SSL_CERT_DIR",
146
187
  "SSL_CERT_FILE",
188
+ "SystemRoot",
189
+ "TEMP",
190
+ "TMP",
147
191
  "TMPDIR",
148
192
  "USERPROFILE",
193
+ "WINDIR",
149
194
  "XDG_CONFIG_HOME",
150
195
  "XDG_DATA_HOME",
151
196
  "XDG_STATE_HOME",
152
197
  ],
198
+ windowsNodePackage: {
199
+ packageName: "@google/gemini-cli",
200
+ binName: "gemini",
201
+ entrypoint: "bundle/gemini.js",
202
+ },
153
203
  },
154
204
  qualificationCases: ["gemini-direct"],
155
205
  },
@@ -158,6 +208,15 @@ function unique(values) {
158
208
  return new Set(values).size === values.length;
159
209
  }
160
210
  function completeDirect(value) {
211
+ const windowsNodePackage = value?.windowsNodePackage;
212
+ const completeWindowsNodePackage = windowsNodePackage === undefined ||
213
+ (BOUNDED_METADATA.test(windowsNodePackage.packageName) &&
214
+ windowsNodePackage.binName === value?.command &&
215
+ BOUNDED_METADATA.test(windowsNodePackage.entrypoint) &&
216
+ !windowsNodePackage.entrypoint.includes("\\") &&
217
+ windowsNodePackage.entrypoint
218
+ .split("/")
219
+ .every((segment) => segment.length > 0 && segment !== "." && segment !== ".."));
161
220
  return (value !== undefined &&
162
221
  BOUNDED_METADATA.test(value.command) &&
163
222
  value.args.length <= 16 &&
@@ -166,7 +225,8 @@ function completeDirect(value) {
166
225
  (value.mcp === "provider_config" || value.mcp === "session") &&
167
226
  value.environment.length <= 32 &&
168
227
  value.environment.every((name) => ENVIRONMENT_NAME.test(name)) &&
169
- unique(value.environment));
228
+ unique(value.environment) &&
229
+ completeWindowsNodePackage);
170
230
  }
171
231
  export function isCompleteAgentCapability(value) {
172
232
  if (!KIND.test(value.kind) ||
@@ -1 +1 @@
1
- {"version":3,"file":"agent-capabilities.js","sourceRoot":"","sources":["../src/agent-capabilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-capabilities.js","sourceRoot":"","sources":["../src/agent-capabilities.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,8 @@ export declare class AmbassadorOptionsError extends Error {
3
3
  constructor();
4
4
  }
5
5
  export type AmbassadorStartOptions = Record<string, never>;
6
+ export type AmbassadorCommand = {
7
+ readonly command: "start" | "webhook-secret";
8
+ };
9
+ export declare function parseAmbassadorCommand(args: readonly string[]): AmbassadorCommand;
6
10
  export declare function parseAmbassadorStartOptions(args: readonly string[]): AmbassadorStartOptions;
@@ -5,8 +5,14 @@ export class AmbassadorOptionsError extends Error {
5
5
  this.name = "AmbassadorOptionsError";
6
6
  }
7
7
  }
8
+ export function parseAmbassadorCommand(args) {
9
+ if (args.length !== 1 || (args[0] !== "start" && args[0] !== "webhook-secret")) {
10
+ throw new AmbassadorOptionsError();
11
+ }
12
+ return { command: args[0] };
13
+ }
8
14
  export function parseAmbassadorStartOptions(args) {
9
- if (args.length !== 1 || args[0] !== "start")
15
+ if (parseAmbassadorCommand(args).command !== "start")
10
16
  throw new AmbassadorOptionsError();
11
17
  return {};
12
18
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ambassador-options.js","sourceRoot":"","sources":["../src/ambassador-options.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IACtC,QAAQ,GAAG,CAAC,CAAC;IAEtB;QACE,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAID,MAAM,UAAU,2BAA2B,CAAC,IAAuB;IACjE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO;QAAE,MAAM,IAAI,sBAAsB,EAAE,CAAC;IACjF,OAAO,EAAE,CAAC;AACZ,CAAC"}
1
+ {"version":3,"file":"ambassador-options.js","sourceRoot":"","sources":["../src/ambassador-options.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,sBAAuB,SAAQ,KAAK;IACtC,QAAQ,GAAG,CAAC,CAAC;IAEtB;QACE,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,wBAAwB,CAAC;IACvC,CAAC;CACF;AAMD,MAAM,UAAU,sBAAsB,CAAC,IAAuB;IAC5D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,CAAC,EAAE,CAAC;QAC/E,MAAM,IAAI,sBAAsB,EAAE,CAAC;IACrC,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,IAAuB;IACjE,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO;QAAE,MAAM,IAAI,sBAAsB,EAAE,CAAC;IACzF,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -37,12 +37,8 @@ export const REST_BOOTSTRAP_TOOLS = [
37
37
  properties: {
38
38
  mode: { const: "webhook" },
39
39
  url: { type: "string", minLength: 1, maxLength: 2_048 },
40
- secret_env: {
41
- type: "string",
42
- pattern: "^[A-Za-z_][A-Za-z0-9_]*$",
43
- },
44
40
  },
45
- required: ["mode", "url", "secret_env"],
41
+ required: ["mode"],
46
42
  additionalProperties: false,
47
43
  },
48
44
  ],
@@ -1 +1 @@
1
- {"version":3,"file":"central-enrollment.js","sourceRoot":"","sources":["../src/central-enrollment.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"central-enrollment.js","sourceRoot":"","sources":["../src/central-enrollment.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -3,11 +3,12 @@ import { realpathSync } from "node:fs";
3
3
  import { homedir } from "node:os";
4
4
  import { join, resolve } from "node:path";
5
5
  import { fileURLToPath } from "node:url";
6
- import { AmbassadorOptionsError, parseAmbassadorStartOptions } from "./ambassador-options.js";
6
+ import { AmbassadorOptionsError, parseAmbassadorCommand } from "./ambassador-options.js";
7
7
  import { GatewayError } from "./errors.js";
8
8
  import { openGatewayApplication, } from "./gateway-application.js";
9
9
  import { defaultGatewayPaths, pathsForStateDirectory } from "./gateway-paths.js";
10
10
  import { ProcessLock } from "./process-lock.js";
11
+ import { EncryptedFileWebhookSecretStore } from "./webhook-secret-store.js";
11
12
  function processSignal() {
12
13
  const controller = new AbortController();
13
14
  const abort = () => controller.abort();
@@ -30,8 +31,9 @@ function homeDirectory(environment) {
30
31
  return environment.HOME || environment.USERPROFILE || homedir();
31
32
  }
32
33
  export async function runCli(args, context) {
34
+ let command;
33
35
  try {
34
- parseAmbassadorStartOptions(args);
36
+ command = parseAmbassadorCommand(args);
35
37
  }
36
38
  catch (error) {
37
39
  context.io.stderr.write(`${error instanceof AmbassadorOptionsError ? error.message : "Invalid command or arguments"}\n`);
@@ -40,6 +42,17 @@ export async function runCli(args, context) {
40
42
  const paths = context.testOverrides === undefined
41
43
  ? defaultGatewayPaths(process.platform, context.env, homeDirectory(context.env))
42
44
  : pathsForStateDirectory(context.testOverrides.stateRoot, join);
45
+ if (command.command === "webhook-secret") {
46
+ try {
47
+ const store = new EncryptedFileWebhookSecretStore(paths.webhookSecretPath, paths.webhookSecretKeyPath);
48
+ context.io.stdout.write(`${await store.createOrLoad()}\n`);
49
+ return 0;
50
+ }
51
+ catch {
52
+ context.io.stderr.write("Ambassador webhook secret failed\n");
53
+ return 7;
54
+ }
55
+ }
43
56
  let lock;
44
57
  let application;
45
58
  const ownedSignal = context.signal === undefined ? processSignal() : undefined;
@@ -52,6 +65,8 @@ export async function runCli(args, context) {
52
65
  journalPath: paths.journalPath,
53
66
  credentialPath: paths.credentialPath,
54
67
  credentialKeyPath: paths.credentialKeyPath,
68
+ webhookSecretPath: paths.webhookSecretPath,
69
+ webhookSecretKeyPath: paths.webhookSecretKeyPath,
55
70
  profilePath: paths.profilePath,
56
71
  workingDirectory: context.cwd,
57
72
  environment: context.env,
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,14 @@
1
+ import { type WindowsAccessControl, type WindowsArtifactKind } from "./windows-access-control.js";
1
2
  export interface CredentialStore {
2
3
  load(): Promise<string | undefined>;
3
4
  save(credential: string): Promise<void>;
4
5
  }
5
- export type CredentialArtifactKind = "directory" | "file";
6
- export interface WindowsCredentialAccessControl {
7
- secure(path: string, kind: CredentialArtifactKind): Promise<void>;
8
- }
6
+ export type CredentialArtifactKind = WindowsArtifactKind;
7
+ export type WindowsCredentialAccessControl = WindowsAccessControl;
9
8
  export interface EncryptedFileCredentialStoreOptions {
10
9
  readonly platform?: NodeJS.Platform;
11
10
  readonly windowsAccessControl?: WindowsCredentialAccessControl;
11
+ readonly validatePlaintext?: (plaintext: string) => void;
12
12
  }
13
13
  export declare class EncryptedFileCredentialStore implements CredentialStore {
14
14
  #private;
@@ -1,10 +1,10 @@
1
- import { execFile } from "node:child_process";
2
1
  import { createCipheriv, createDecipheriv, randomBytes, scrypt } from "node:crypto";
3
2
  import { constants } from "node:fs";
4
3
  import { link, lstat, mkdir, open, rename, unlink } from "node:fs/promises";
5
4
  import { dirname, resolve } from "node:path";
6
5
  import { TextDecoder } from "node:util";
7
6
  import { parseCentralCredential } from "./central-credential.js";
7
+ import { secureWindowsArtifact, } from "./windows-access-control.js";
8
8
  const FILE_FORMAT = 1;
9
9
  const SCRYPT_N = 131_072;
10
10
  const SCRYPT_R = 8;
@@ -17,7 +17,6 @@ const TAG_BYTES = 16;
17
17
  const MAX_PLAINTEXT_BYTES = 8_192;
18
18
  const MAX_FILE_BYTES = 16_384;
19
19
  const STATE_KEY_BYTES = 24;
20
- const SYSTEM_SID = "S-1-5-18";
21
20
  const BASE64 = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/u;
22
21
  const ENVELOPE_KEYS = [
23
22
  "cipher",
@@ -103,102 +102,9 @@ function deriveKey(stateKey, salt) {
103
102
  scrypt(stateKey, salt, KEY_BYTES, { N: SCRYPT_N, r: SCRYPT_R, p: SCRYPT_P, maxmem: SCRYPT_MAXMEM }, (error, key) => (error === null ? resolveKey(key) : reject(error)));
104
103
  });
105
104
  }
106
- function assertSid(value) {
107
- if (!/^S-1-(?:0|[1-9][0-9]*)(?:-(?:0|[1-9][0-9]*)){1,15}$/u.test(value)) {
108
- throw new Error("Current Windows identity is unavailable");
109
- }
110
- const components = value.split("-").slice(2);
111
- const authority = components.shift();
112
- if (authority === undefined || BigInt(authority) > 281474976710655n) {
113
- throw new Error("Current Windows identity is unavailable");
114
- }
115
- if (components.some((component) => BigInt(component) > 4294967295n)) {
116
- throw new Error("Current Windows identity is unavailable");
117
- }
118
- return value;
119
- }
120
- function runExecutable(file, arguments_) {
121
- return new Promise((resolveOutput, reject) => {
122
- execFile(file, arguments_, { encoding: "utf8", maxBuffer: 32 * 1024, windowsHide: true }, (error, stdout, stderr) => {
123
- if (error !== null || stderr.length !== 0) {
124
- reject(new Error("Windows credential access control failed"));
125
- return;
126
- }
127
- resolveOutput(stdout);
128
- });
129
- });
130
- }
131
- const WINDOWS_ACL_SCRIPT = `
132
- $ErrorActionPreference = 'Stop'
133
- if ($args.Count -ne 3) { exit 41 }
134
- $target = $args[0]
135
- $userSid = $args[1]
136
- $kind = $args[2]
137
- $item = Get-Item -LiteralPath $target -Force
138
- if (($kind -eq 'directory') -ne $item.PSIsContainer) { exit 42 }
139
- if ($kind -ne 'directory' -and $kind -ne 'file') { exit 43 }
140
- $security = if ($kind -eq 'directory') {
141
- New-Object System.Security.AccessControl.DirectorySecurity
142
- } else {
143
- New-Object System.Security.AccessControl.FileSecurity
144
- }
145
- $security.SetAccessRuleProtection($true, $false)
146
- $inheritance = if ($kind -eq 'directory') {
147
- [System.Security.AccessControl.InheritanceFlags]'ContainerInherit,ObjectInherit'
148
- } else {
149
- [System.Security.AccessControl.InheritanceFlags]::None
150
- }
151
- $expected = @($userSid, '${SYSTEM_SID}') | Select-Object -Unique
152
- foreach ($sid in $expected) {
153
- $identity = New-Object System.Security.Principal.SecurityIdentifier($sid)
154
- $rule = New-Object System.Security.AccessControl.FileSystemAccessRule(
155
- $identity,
156
- [System.Security.AccessControl.FileSystemRights]::FullControl,
157
- $inheritance,
158
- [System.Security.AccessControl.PropagationFlags]::None,
159
- [System.Security.AccessControl.AccessControlType]::Allow
160
- )
161
- [void]$security.AddAccessRule($rule)
162
- }
163
- Set-Acl -LiteralPath $target -AclObject $security
164
- $actual = Get-Acl -LiteralPath $target
165
- if (-not $actual.AreAccessRulesProtected) { exit 44 }
166
- $rules = @($actual.GetAccessRules($true, $true, [System.Security.Principal.SecurityIdentifier]))
167
- if ($rules.Count -ne $expected.Count) { exit 45 }
168
- foreach ($rule in $rules) {
169
- if ($expected -notcontains $rule.IdentityReference.Value) { exit 46 }
170
- if ($rule.IsInherited) { exit 47 }
171
- if ($rule.AccessControlType -ne [System.Security.AccessControl.AccessControlType]::Allow) { exit 48 }
172
- if ([int]$rule.FileSystemRights -ne [int][System.Security.AccessControl.FileSystemRights]::FullControl) { exit 49 }
173
- if ($rule.InheritanceFlags -ne $inheritance) { exit 50 }
174
- if ($rule.PropagationFlags -ne [System.Security.AccessControl.PropagationFlags]::None) { exit 51 }
175
- }
176
- [Console]::Out.Write('A2A_ACL_OK')
177
- `;
178
105
  class BuiltInWindowsCredentialAccessControl {
179
- #userSid;
180
106
  async secure(path, kind) {
181
- this.#userSid ??= this.#readUserSid();
182
- const sid = await this.#userSid;
183
- const output = await runExecutable("powershell.exe", [
184
- "-NoLogo",
185
- "-NoProfile",
186
- "-NonInteractive",
187
- "-Command",
188
- WINDOWS_ACL_SCRIPT,
189
- path,
190
- sid,
191
- kind,
192
- ]);
193
- if (output !== "A2A_ACL_OK")
194
- throw new Error("Windows credential access control failed");
195
- }
196
- async #readUserSid() {
197
- const output = await runExecutable("whoami.exe", ["/user", "/fo", "csv", "/nh"]);
198
- const match = /^(?:"(?:[^"]|"")*"),"([^"]+)"\r?\n?$/u.exec(output);
199
- if (match?.[1] === undefined)
200
- throw new Error("Current Windows identity is unavailable");
201
- return assertSid(match[1]);
107
+ await secureWindowsArtifact(path, kind);
202
108
  }
203
109
  }
204
110
  export class EncryptedFileCredentialStore {
@@ -208,6 +114,7 @@ export class EncryptedFileCredentialStore {
208
114
  #credentialScope;
209
115
  #platform;
210
116
  #windowsAccessControl;
117
+ #validatePlaintext;
211
118
  constructor(path, keyPath, credentialScope, options = {}) {
212
119
  if (typeof credentialScope !== "string" || credentialScope.length < 1) {
213
120
  throw new Error("The credential scope is invalid");
@@ -219,6 +126,7 @@ export class EncryptedFileCredentialStore {
219
126
  throw new Error("The credential key path is invalid");
220
127
  }
221
128
  this.#credentialScope = credentialScope;
129
+ this.#validatePlaintext = options.validatePlaintext ?? parseCentralCredential;
222
130
  this.#platform = options.platform ?? process.platform;
223
131
  if (this.#platform === "win32") {
224
132
  this.#windowsAccessControl =
@@ -253,7 +161,7 @@ export class EncryptedFileCredentialStore {
253
161
  Buffer.byteLength(plaintext, "utf8") > MAX_PLAINTEXT_BYTES) {
254
162
  throw new Error("The central credential is invalid");
255
163
  }
256
- parseCentralCredential(plaintext);
164
+ this.#validatePlaintext(plaintext);
257
165
  if (savingPaths.has(this.#path))
258
166
  throw credentialExists();
259
167
  savingPaths.add(this.#path);
@@ -391,7 +299,7 @@ export class EncryptedFileCredentialStore {
391
299
  decipher.setAuthTag(envelope.tag);
392
300
  decoded = Buffer.concat([decipher.update(envelope.ciphertext), decipher.final()]);
393
301
  const plaintext = new TextDecoder("utf-8", { fatal: true }).decode(decoded);
394
- parseCentralCredential(plaintext);
302
+ this.#validatePlaintext(plaintext);
395
303
  return plaintext;
396
304
  }
397
305
  catch {