@agent-vm/agent-vm 0.0.64 → 0.0.65

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 (38) hide show
  1. package/dist/cli/codex-harness-auth-command.d.ts +11 -0
  2. package/dist/cli/codex-harness-auth-command.d.ts.map +1 -0
  3. package/dist/cli/codex-harness-auth-command.js +242 -0
  4. package/dist/cli/codex-harness-auth-command.js.map +1 -0
  5. package/dist/cli/commands/auth-definition.d.ts +53 -0
  6. package/dist/cli/commands/auth-definition.d.ts.map +1 -0
  7. package/dist/cli/commands/auth-definition.js +81 -0
  8. package/dist/cli/commands/auth-definition.js.map +1 -0
  9. package/dist/cli/commands/create-app.d.ts +50 -16
  10. package/dist/cli/commands/create-app.d.ts.map +1 -1
  11. package/dist/cli/commands/create-app.js +2 -2
  12. package/dist/cli/commands/create-app.js.map +1 -1
  13. package/dist/cli/manual-templates.d.ts.map +1 -1
  14. package/dist/cli/manual-templates.js +5 -2
  15. package/dist/cli/manual-templates.js.map +1 -1
  16. package/dist/cli/openclaw-auth-command.d.ts +14 -0
  17. package/dist/cli/openclaw-auth-command.d.ts.map +1 -0
  18. package/dist/cli/{auth-interactive-command.js → openclaw-auth-command.js} +8 -42
  19. package/dist/cli/openclaw-auth-command.js.map +1 -0
  20. package/dist/cli/openclaw-shell-prefix.d.ts +7 -0
  21. package/dist/cli/openclaw-shell-prefix.d.ts.map +1 -0
  22. package/dist/cli/openclaw-shell-prefix.js +15 -0
  23. package/dist/cli/openclaw-shell-prefix.js.map +1 -0
  24. package/dist/cli/ssh-commands.d.ts.map +1 -1
  25. package/dist/cli/ssh-commands.js +4 -13
  26. package/dist/cli/ssh-commands.js.map +1 -1
  27. package/dist/operations/openclaw-deployment-doctor.d.ts +7 -0
  28. package/dist/operations/openclaw-deployment-doctor.d.ts.map +1 -1
  29. package/dist/operations/openclaw-deployment-doctor.js +54 -7
  30. package/dist/operations/openclaw-deployment-doctor.js.map +1 -1
  31. package/package.json +10 -10
  32. package/dist/cli/auth-interactive-command.d.ts +0 -29
  33. package/dist/cli/auth-interactive-command.d.ts.map +0 -1
  34. package/dist/cli/auth-interactive-command.js.map +0 -1
  35. package/dist/cli/commands/auth-interactive-definition.d.ts +0 -19
  36. package/dist/cli/commands/auth-interactive-definition.d.ts.map +0 -1
  37. package/dist/cli/commands/auth-interactive-definition.js +0 -46
  38. package/dist/cli/commands/auth-interactive-definition.js.map +0 -1
@@ -0,0 +1,11 @@
1
+ import { type SystemConfig } from '../config/system-config.js';
2
+ import { type CliDependencies, type CliIo } from './agent-vm-cli-support.js';
3
+ export declare function runCodexHarnessAuthCommand(options: {
4
+ readonly agentId?: string;
5
+ readonly allAgents: boolean;
6
+ readonly dependencies: Pick<CliDependencies, 'createControllerClient' | 'createSecretResolver' | 'resolveServiceAccountToken' | 'runInteractiveProcess'>;
7
+ readonly io: CliIo;
8
+ readonly systemConfig: SystemConfig;
9
+ readonly zone: SystemConfig['zones'][number];
10
+ }): Promise<void>;
11
+ //# sourceMappingURL=codex-harness-auth-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-harness-auth-command.d.ts","sourceRoot":"","sources":["../../src/cli/codex-harness-auth-command.ts"],"names":[],"mappings":"AAEA,OAAO,EAAiB,KAAK,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC9E,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,KAAK,EAEV,MAAM,2BAA2B,CAAC;AA0NnC,wBAAsB,0BAA0B,CAAC,OAAO,EAAE;IACzD,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,IAAI,CAC1B,eAAe,EACb,wBAAwB,GACxB,sBAAsB,GACtB,4BAA4B,GAC5B,uBAAuB,CACzB,CAAC;IACF,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CAC7C,GAAG,OAAO,CAAC,IAAI,CAAC,CAyDhB"}
@@ -0,0 +1,242 @@
1
+ import { execa } from 'execa';
2
+ import { agentIdSchema } from '../config/system-config.js';
3
+ import { resolveControllerBaseUrl, } from './agent-vm-cli-support.js';
4
+ import { formatZodError } from './format-zod-error.js';
5
+ import { shellQuote, wrapWithOpenClawShellEnvironment } from './openclaw-shell-prefix.js';
6
+ import { resolveZoneAdminToken, zoneSshAccessResponseSchema, } from './ssh-commands.js';
7
+ function buildCodexHarnessAuthRemoteCommand(agentId) {
8
+ const script = [
9
+ 'set -euo pipefail',
10
+ `agent_id=${shellQuote(agentId)}`,
11
+ 'state_dir="${OPENCLAW_STATE_DIR:-/home/openclaw/.openclaw/state}"',
12
+ 'agent_dir="$state_dir/agents/$agent_id/agent"',
13
+ 'codex_home="$agent_dir/codex-home"',
14
+ 'auth_json="$codex_home/auth.json"',
15
+ 'mkdir -p "$agent_dir" "$codex_home"',
16
+ 'if ! chmod 700 "$agent_dir" "$codex_home"; then',
17
+ ' echo "WARNING: could not chmod 700 $agent_dir and $codex_home; auth.json contains a refresh token." >&2',
18
+ 'fi',
19
+ 'codex_binary="$(command -v codex || true)"',
20
+ 'if [ -z "$codex_binary" ]; then',
21
+ ' codex_js="$({',
22
+ ' if command -v pnpm >/dev/null 2>&1; then pnpm root -g 2>/dev/null || true; fi',
23
+ ' if command -v npm >/dev/null 2>&1; then npm root -g 2>/dev/null || true; fi',
24
+ ' printf "%s\\n" /usr/local/lib/node_modules',
25
+ ' } | while IFS= read -r search_root; do',
26
+ ' [ -n "$search_root" ] || continue',
27
+ ' [ -d "$search_root" ] || continue',
28
+ ' find "$search_root" -path \'*/node_modules/@openai/codex/bin/codex.js\' -type f -print -quit',
29
+ ' done)"',
30
+ ' if [ -z "$codex_js" ]; then',
31
+ ' echo "Could not locate the Codex CLI binary in PATH or pnpm global install paths." >&2',
32
+ ' echo "Install @openai/codex in the OpenClaw gateway image, or add it to the gateway overlay extraOpenClawPackages before running auth codex-harness." >&2',
33
+ ' exit 127',
34
+ ' fi',
35
+ ' codex_binary="node $codex_js"',
36
+ 'fi',
37
+ 'echo "Starting native Codex CLI login for agent: $agent_id"',
38
+ 'echo "CODEX_HOME=$codex_home"',
39
+ 'if [ "${codex_binary#node }" != "$codex_binary" ]; then',
40
+ ' codex_js="${codex_binary#node }"',
41
+ ' CODEX_HOME="$codex_home" node "$codex_js" login --device-auth',
42
+ 'else',
43
+ ' CODEX_HOME="$codex_home" "$codex_binary" login --device-auth',
44
+ 'fi',
45
+ 'if [ ! -f "$auth_json" ]; then',
46
+ ' echo "Codex login did not create auth.json at $auth_json." >&2',
47
+ ' exit 1',
48
+ 'fi',
49
+ 'auth_mtime="$(stat -c "%y" "$auth_json" 2>/dev/null || true)"',
50
+ 'if [ -z "$auth_mtime" ]; then',
51
+ ' auth_mtime="$(date -r "$auth_json" "+%Y-%m-%dT%H:%M:%S%z" 2>/dev/null || true)"',
52
+ 'fi',
53
+ 'if [ -z "$auth_mtime" ]; then',
54
+ ' echo "WARNING: could not stat auth.json mtime at $auth_json." >&2',
55
+ ' auth_mtime="unknown"',
56
+ 'fi',
57
+ 'profile_file="$agent_dir/auth-profiles.json"',
58
+ 'profile_count="unknown"',
59
+ 'if command -v node >/dev/null 2>&1; then',
60
+ ' profile_count="$(node - "$profile_file" <<\'NODE\'',
61
+ 'const fs = require("node:fs");',
62
+ 'const profileFile = process.argv[2];',
63
+ 'try {',
64
+ ' if (!fs.existsSync(profileFile)) {',
65
+ ' console.log("0");',
66
+ ' process.exit(0);',
67
+ ' }',
68
+ ' const parsed = JSON.parse(fs.readFileSync(profileFile, "utf8"));',
69
+ ' const profiles = Object.values(parsed.profiles ?? {});',
70
+ ' console.log(profiles.filter((profile) => profile && typeof profile === "object" && profile.provider === "openai-codex").length);',
71
+ '} catch (error) {',
72
+ ' console.error(`WARNING: Could not read OpenClaw auth profile count from ${profileFile}: ${error instanceof Error ? error.message : String(error)}`);',
73
+ ' console.log("unknown");',
74
+ '}',
75
+ 'NODE',
76
+ ' )"',
77
+ 'else',
78
+ ' echo "WARNING: node is unavailable; skipping OpenClaw auth profile count." >&2',
79
+ 'fi',
80
+ 'echo "Codex auth post-check:"',
81
+ 'echo " auth.json: present"',
82
+ 'echo " auth.json mtime: $auth_mtime"',
83
+ 'echo " openai-codex profiles: $profile_count"',
84
+ 'legacy_main="$state_dir/agents/main/agent/auth-profiles.json"',
85
+ 'if [ -f "$legacy_main" ]; then',
86
+ ' echo "WARNING: $legacy_main exists. If main is not an intentionally configured agent/global auth profile, it may shadow per-agent OpenClaw auth profiles." >&2',
87
+ 'fi',
88
+ 'if [ -d "$state_dir/agents" ]; then',
89
+ ' if command -v node >/dev/null 2>&1; then',
90
+ ' if ! node - "$auth_json" "$state_dir/agents" <<\'NODE\'',
91
+ 'const fs = require("node:fs");',
92
+ 'const path = require("node:path");',
93
+ 'const currentAuthPath = process.argv[2];',
94
+ 'const agentsDir = process.argv[3];',
95
+ 'function warning(message) {',
96
+ ' console.error(`WARNING: ${message}`);',
97
+ '}',
98
+ 'function readRefreshToken(authPath) {',
99
+ ' try {',
100
+ ' const parsed = JSON.parse(fs.readFileSync(authPath, "utf8"));',
101
+ ' return typeof parsed.refresh_token === "string" && parsed.refresh_token.trim() ? parsed.refresh_token : undefined;',
102
+ ' } catch (error) {',
103
+ ' warning(`could not read Codex auth token metadata from ${authPath}: ${error instanceof Error ? error.message : String(error)}`);',
104
+ ' return undefined;',
105
+ ' }',
106
+ '}',
107
+ 'function findAuthFiles(rootDir) {',
108
+ ' const matches = [];',
109
+ ' const pending = [rootDir];',
110
+ ' while (pending.length > 0) {',
111
+ ' const currentDir = pending.pop();',
112
+ ' if (!currentDir) {',
113
+ ' continue;',
114
+ ' }',
115
+ ' for (const entry of fs.readdirSync(currentDir, { withFileTypes: true })) {',
116
+ ' const entryPath = path.join(currentDir, entry.name);',
117
+ ' if (entry.isDirectory()) {',
118
+ ' pending.push(entryPath);',
119
+ ' continue;',
120
+ ' }',
121
+ ' if (entry.isFile() && entryPath.split(path.sep).slice(-3).join("/") === "agent/codex-home/auth.json") {',
122
+ ' matches.push(entryPath);',
123
+ ' }',
124
+ ' }',
125
+ ' }',
126
+ ' return matches;',
127
+ '}',
128
+ 'let currentAuthBytes;',
129
+ 'try {',
130
+ ' currentAuthBytes = fs.readFileSync(currentAuthPath);',
131
+ '} catch (error) {',
132
+ ' warning(`could not compare current Codex auth bytes from ${currentAuthPath}: ${error instanceof Error ? error.message : String(error)}`);',
133
+ ' currentAuthBytes = undefined;',
134
+ '}',
135
+ 'const currentRefreshToken = readRefreshToken(currentAuthPath);',
136
+ 'for (const otherAuthPath of findAuthFiles(agentsDir)) {',
137
+ ' if (otherAuthPath === currentAuthPath) {',
138
+ ' continue;',
139
+ ' }',
140
+ ' let byteIdentical = false;',
141
+ ' try {',
142
+ ' byteIdentical = Boolean(currentAuthBytes?.equals(fs.readFileSync(otherAuthPath)));',
143
+ ' } catch (error) {',
144
+ ' warning(`could not compare Codex auth bytes between ${currentAuthPath} and ${otherAuthPath}: ${error instanceof Error ? error.message : String(error)}`);',
145
+ ' byteIdentical = false;',
146
+ ' }',
147
+ ' const otherRefreshToken = readRefreshToken(otherAuthPath);',
148
+ ' if (currentRefreshToken && otherRefreshToken === currentRefreshToken) {',
149
+ ' console.error(`WARNING: ${currentAuthPath} and ${otherAuthPath} share a Codex refresh token; shared refresh tokens rotate badly across agents.`);',
150
+ ' } else if (byteIdentical) {',
151
+ ' console.error(`WARNING: ${currentAuthPath} is byte-identical to ${otherAuthPath}; shared Codex refresh tokens rotate badly across agents.`);',
152
+ ' }',
153
+ '}',
154
+ 'NODE',
155
+ ' then',
156
+ ' echo "WARNING: shared-refresh-token diagnostic failed." >&2',
157
+ ' fi',
158
+ ' else',
159
+ ' while IFS= read -r other_auth; do',
160
+ ' if [ "$other_auth" != "$auth_json" ] && cmp -s "$auth_json" "$other_auth"; then',
161
+ ' echo "WARNING: $auth_json is byte-identical to $other_auth; shared Codex refresh tokens rotate badly across agents." >&2',
162
+ ' fi',
163
+ ' done < <(find "$state_dir/agents" -path \'*/agent/codex-home/auth.json\' -type f 2>/dev/null)',
164
+ ' fi',
165
+ 'fi',
166
+ ].join('\n');
167
+ return wrapWithOpenClawShellEnvironment(script);
168
+ }
169
+ function buildSshArguments(sshResponse, remoteCommand) {
170
+ if (!sshResponse.host || !sshResponse.port) {
171
+ throw new Error('Controller returned incomplete SSH access details.');
172
+ }
173
+ return [
174
+ '-t',
175
+ '-o',
176
+ 'StrictHostKeyChecking=no',
177
+ '-o',
178
+ 'UserKnownHostsFile=/dev/null',
179
+ ...(sshResponse.identityFile ? ['-i', sshResponse.identityFile] : []),
180
+ '-p',
181
+ String(sshResponse.port),
182
+ `${sshResponse.user ?? 'root'}@${sshResponse.host}`,
183
+ remoteCommand,
184
+ ];
185
+ }
186
+ function resolveTargetAgentIds(options) {
187
+ if (options.agentId && options.allAgents) {
188
+ throw new Error('Use either --agent or --all-agents, not both.');
189
+ }
190
+ if (options.agentId) {
191
+ return [agentIdSchema.parse(options.agentId)];
192
+ }
193
+ if (!options.allAgents) {
194
+ throw new Error('auth codex-harness requires --agent <agentId> or --all-agents.');
195
+ }
196
+ const agentIds = (options.zone.agents ?? []).map((agent) => agent.id);
197
+ if (agentIds.length === 0) {
198
+ throw new Error(`Zone '${options.zone.id}' has no configured agents; use --agent <agentId> for a one-off login.`);
199
+ }
200
+ return agentIds;
201
+ }
202
+ export async function runCodexHarnessAuthCommand(options) {
203
+ if (options.zone.gateway.type !== 'openclaw') {
204
+ throw new Error(`auth codex-harness requires an OpenClaw zone, got '${options.zone.gateway.type}'.`);
205
+ }
206
+ const agentIds = resolveTargetAgentIds({
207
+ agentId: options.agentId,
208
+ allAgents: options.allAgents,
209
+ zone: options.zone,
210
+ });
211
+ const controllerClient = options.dependencies.createControllerClient({
212
+ baseUrl: resolveControllerBaseUrl(options.systemConfig),
213
+ });
214
+ const adminToken = await resolveZoneAdminToken({
215
+ dependencies: options.dependencies,
216
+ systemConfig: options.systemConfig,
217
+ zone: options.zone,
218
+ });
219
+ const parsedSshResponse = zoneSshAccessResponseSchema.safeParse(await controllerClient.enableZoneSsh(options.zone.id, {
220
+ ...(adminToken ? { adminToken } : {}),
221
+ secretEnv: 'default',
222
+ }));
223
+ if (!parsedSshResponse.success) {
224
+ throw new Error(formatZodError('Controller returned an invalid SSH response:', parsedSshResponse.error), { cause: parsedSshResponse.error });
225
+ }
226
+ const sshResponse = parsedSshResponse.data;
227
+ const runInteractiveProcess = options.dependencies.runInteractiveProcess ??
228
+ (async (command, arguments_) => {
229
+ await execa(command, arguments_, { stdio: 'inherit' });
230
+ });
231
+ for (const agentId of agentIds) {
232
+ options.io.stdout.write(`Opening native Codex login for zone '${options.zone.id}' agent '${agentId}'.\n`);
233
+ try {
234
+ // oxlint-disable-next-line no-await-in-loop -- device-auth flows are intentionally interactive and must run one agent at a time
235
+ await runInteractiveProcess('ssh', buildSshArguments(sshResponse, buildCodexHarnessAuthRemoteCommand(agentId)));
236
+ }
237
+ catch (error) {
238
+ throw new Error(`Codex login failed for zone '${options.zone.id}' agent '${agentId}': ${error instanceof Error ? error.message : String(error)}`, { cause: error });
239
+ }
240
+ }
241
+ }
242
+ //# sourceMappingURL=codex-harness-auth-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"codex-harness-auth-command.js","sourceRoot":"","sources":["../../src/cli/codex-harness-auth-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ import { type CliDependencies, type CliIo } from '../agent-vm-cli-support.js';
2
+ export declare function createAuthSubcommands(io: CliIo, dependencies: CliDependencies): Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
3
+ parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
4
+ command: "openclaw";
5
+ args: {
6
+ config: string | undefined;
7
+ deviceCode: boolean;
8
+ provider: string;
9
+ setDefault: boolean;
10
+ zone: string | undefined;
11
+ };
12
+ } | {
13
+ command: "codex-harness";
14
+ args: {
15
+ agent: string | undefined;
16
+ allAgents: boolean;
17
+ config: string | undefined;
18
+ zone: string | undefined;
19
+ };
20
+ }>>;
21
+ } & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
22
+ command: "openclaw";
23
+ args: {
24
+ config: string | undefined;
25
+ deviceCode: boolean;
26
+ provider: string;
27
+ setDefault: boolean;
28
+ zone: string | undefined;
29
+ };
30
+ } | {
31
+ command: "codex-harness";
32
+ args: {
33
+ agent: string | undefined;
34
+ allAgents: boolean;
35
+ config: string | undefined;
36
+ zone: string | undefined;
37
+ };
38
+ }, {
39
+ command: "openclaw";
40
+ value: Promise<void>;
41
+ } | {
42
+ command: "codex-harness";
43
+ value: Promise<void>;
44
+ }> & {
45
+ run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
46
+ command: "openclaw";
47
+ value: Promise<void>;
48
+ } | {
49
+ command: "codex-harness";
50
+ value: Promise<void>;
51
+ }>>;
52
+ };
53
+ //# sourceMappingURL=auth-definition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-definition.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth-definition.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,KAAK,EAAe,MAAM,4BAA4B,CAAC;AAS3F,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyE7E"}
@@ -0,0 +1,81 @@
1
+ // oxlint-disable typescript-eslint/explicit-function-return-type
2
+ import { command, flag, option, optional, positional, string, subcommands } from 'cmd-ts';
3
+ import { loadGatewayLifecycle } from '../../gateway/gateway-lifecycle-loader.js';
4
+ import { requireZone } from '../agent-vm-cli-support.js';
5
+ import { runCodexHarnessAuthCommand } from '../codex-harness-auth-command.js';
6
+ import { runOpenClawAuthCommand } from '../openclaw-auth-command.js';
7
+ import { createConfigOption, createZoneOption, loadSystemConfigFromOption, } from './command-definition-support.js';
8
+ export function createAuthSubcommands(io, dependencies) {
9
+ return subcommands({
10
+ name: 'auth',
11
+ description: 'Manage gateway auth.',
12
+ cmds: {
13
+ openclaw: command({
14
+ name: 'openclaw',
15
+ description: 'Run OpenClaw-managed provider auth for a gateway zone.',
16
+ args: {
17
+ config: createConfigOption(),
18
+ deviceCode: flag({
19
+ long: 'device-code',
20
+ description: 'Use the provider device-code flow instead of browser callback auth.',
21
+ }),
22
+ provider: positional({
23
+ displayName: 'provider',
24
+ type: string,
25
+ description: 'Provider name (for example: openai).',
26
+ }),
27
+ setDefault: flag({
28
+ long: 'set-default',
29
+ description: 'Set the provider as the default model auth target after login.',
30
+ }),
31
+ zone: createZoneOption(),
32
+ },
33
+ handler: async ({ config, deviceCode, provider, setDefault, zone }) => {
34
+ const systemConfig = await loadSystemConfigFromOption(config, dependencies);
35
+ const selectedZone = requireZone(systemConfig, zone);
36
+ const lifecycle = loadGatewayLifecycle(selectedZone.gateway.type);
37
+ await runOpenClawAuthCommand({
38
+ authConfig: lifecycle.authConfig,
39
+ dependencies,
40
+ deviceCode,
41
+ io,
42
+ provider,
43
+ setDefault,
44
+ systemConfig,
45
+ zoneId: selectedZone.id,
46
+ });
47
+ },
48
+ }),
49
+ 'codex-harness': command({
50
+ name: 'codex-harness',
51
+ description: 'Run native Codex CLI device auth for one or all OpenClaw agents.',
52
+ args: {
53
+ agent: option({
54
+ type: optional(string),
55
+ long: 'agent',
56
+ description: 'OpenClaw agent id whose isolated CODEX_HOME should receive auth.',
57
+ }),
58
+ allAgents: flag({
59
+ long: 'all-agents',
60
+ description: 'Run native Codex CLI device auth once for every configured zone agent.',
61
+ }),
62
+ config: createConfigOption(),
63
+ zone: createZoneOption(),
64
+ },
65
+ handler: async ({ agent, allAgents, config, zone }) => {
66
+ const systemConfig = await loadSystemConfigFromOption(config, dependencies);
67
+ const selectedZone = requireZone(systemConfig, zone);
68
+ await runCodexHarnessAuthCommand({
69
+ ...(agent ? { agentId: agent } : {}),
70
+ allAgents,
71
+ dependencies,
72
+ io,
73
+ systemConfig,
74
+ zone: selectedZone,
75
+ });
76
+ },
77
+ }),
78
+ },
79
+ });
80
+ }
81
+ //# sourceMappingURL=auth-definition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth-definition.js","sourceRoot":"","sources":["../../../src/cli/commands/auth-definition.ts"],"names":[],"mappings":"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"}
@@ -170,13 +170,24 @@ export declare function createAgentVmApp(io: CliIo, dependencies: CliDependencie
170
170
  force: boolean;
171
171
  };
172
172
  } | {
173
- command: "auth-interactive";
173
+ command: "auth";
174
174
  args: {
175
- config: string | undefined;
176
- deviceCode: boolean;
177
- provider: string;
178
- setDefault: boolean;
179
- zone: string | undefined;
175
+ command: "openclaw";
176
+ args: {
177
+ config: string | undefined;
178
+ deviceCode: boolean;
179
+ provider: string;
180
+ setDefault: boolean;
181
+ zone: string | undefined;
182
+ };
183
+ } | {
184
+ command: "codex-harness";
185
+ args: {
186
+ agent: string | undefined;
187
+ allAgents: boolean;
188
+ config: string | undefined;
189
+ zone: string | undefined;
190
+ };
180
191
  };
181
192
  } | {
182
193
  command: "backup";
@@ -410,13 +421,24 @@ export declare function createAgentVmApp(io: CliIo, dependencies: CliDependencie
410
421
  force: boolean;
411
422
  };
412
423
  } | {
413
- command: "auth-interactive";
424
+ command: "auth";
414
425
  args: {
415
- config: string | undefined;
416
- deviceCode: boolean;
417
- provider: string;
418
- setDefault: boolean;
419
- zone: string | undefined;
426
+ command: "openclaw";
427
+ args: {
428
+ config: string | undefined;
429
+ deviceCode: boolean;
430
+ provider: string;
431
+ setDefault: boolean;
432
+ zone: string | undefined;
433
+ };
434
+ } | {
435
+ command: "codex-harness";
436
+ args: {
437
+ agent: string | undefined;
438
+ allAgents: boolean;
439
+ config: string | undefined;
440
+ zone: string | undefined;
441
+ };
420
442
  };
421
443
  } | {
422
444
  command: "backup";
@@ -570,8 +592,14 @@ export declare function createAgentVmApp(io: CliIo, dependencies: CliDependencie
570
592
  command: "build";
571
593
  value: Promise<void>;
572
594
  } | {
573
- command: "auth-interactive";
574
- value: Promise<void>;
595
+ command: "auth";
596
+ value: {
597
+ command: "openclaw";
598
+ value: Promise<void>;
599
+ } | {
600
+ command: "codex-harness";
601
+ value: Promise<void>;
602
+ };
575
603
  } | {
576
604
  command: "backup";
577
605
  value: {
@@ -700,8 +728,14 @@ export declare function createAgentVmApp(io: CliIo, dependencies: CliDependencie
700
728
  command: "build";
701
729
  value: Promise<void>;
702
730
  } | {
703
- command: "auth-interactive";
704
- value: Promise<void>;
731
+ command: "auth";
732
+ value: {
733
+ command: "openclaw";
734
+ value: Promise<void>;
735
+ } | {
736
+ command: "codex-harness";
737
+ value: Promise<void>;
738
+ };
705
739
  } | {
706
740
  command: "backup";
707
741
  value: {
@@ -1 +1 @@
1
- {"version":3,"file":"create-app.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/create-app.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAgBzE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB5F"}
1
+ {"version":3,"file":"create-app.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/create-app.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAgBzE,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsB5F"}
@@ -1,6 +1,6 @@
1
1
  // oxlint-disable typescript-eslint/explicit-function-return-type
2
2
  import { subcommands } from 'cmd-ts';
3
- import { createAuthInteractiveCommand } from './auth-interactive-definition.js';
3
+ import { createAuthSubcommands } from './auth-definition.js';
4
4
  import { createBackupSubcommands } from './backup-definition.js';
5
5
  import { createBuildCommand } from './build-definition.js';
6
6
  import { createCacheSubcommands } from './cache-definition.js';
@@ -31,7 +31,7 @@ export function createAgentVmApp(io, dependencies, cliVersion) {
31
31
  config: createConfigSubcommands(io, dependencies),
32
32
  paths: createPathsSubcommands(io, dependencies),
33
33
  backup: createBackupSubcommands(io, dependencies),
34
- 'auth-interactive': createAuthInteractiveCommand(io, dependencies),
34
+ auth: createAuthSubcommands(io, dependencies),
35
35
  controller: createControllerSubcommands(io, dependencies),
36
36
  'zone-git': createZoneGitSubcommands(io, dependencies),
37
37
  },
@@ -1 +1 @@
1
- {"version":3,"file":"create-app.js","sourceRoot":"","sources":["../../../src/cli/commands/create-app.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,EAAE,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,UAAU,gBAAgB,CAAC,EAAS,EAAE,YAA6B,EAAE,UAAkB;IAC5F,OAAO,WAAW,CAAC;QAClB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,6DAA6D;QAC1E,IAAI,EAAE;YACL,IAAI,EAAE,iBAAiB,CAAC,EAAE,EAAE,YAAY,CAAC;YACzC,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,OAAO,EAAE,wBAAwB,CAAC,EAAE,EAAE,YAAY,CAAC;YACnD,SAAS,EAAE,0BAA0B,CAAC,EAAE,EAAE,YAAY,CAAC;YACvD,KAAK,EAAE,kBAAkB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC3C,QAAQ,EAAE,qBAAqB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC7C,KAAK,EAAE,sBAAsB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC/C,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,KAAK,EAAE,sBAAsB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC/C,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,kBAAkB,EAAE,4BAA4B,CAAC,EAAE,EAAE,YAAY,CAAC;YAClE,UAAU,EAAE,2BAA2B,CAAC,EAAE,EAAE,YAAY,CAAC;YACzD,UAAU,EAAE,wBAAwB,CAAC,EAAE,EAAE,YAAY,CAAC;SACtD;KACD,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"create-app.js","sourceRoot":"","sources":["../../../src/cli/commands/create-app.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAGrC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAEpE,MAAM,UAAU,gBAAgB,CAAC,EAAS,EAAE,YAA6B,EAAE,UAAkB;IAC5F,OAAO,WAAW,CAAC;QAClB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,UAAU;QACnB,WAAW,EAAE,6DAA6D;QAC1E,IAAI,EAAE;YACL,IAAI,EAAE,iBAAiB,CAAC,EAAE,EAAE,YAAY,CAAC;YACzC,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,OAAO,EAAE,wBAAwB,CAAC,EAAE,EAAE,YAAY,CAAC;YACnD,SAAS,EAAE,0BAA0B,CAAC,EAAE,EAAE,YAAY,CAAC;YACvD,KAAK,EAAE,kBAAkB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC3C,QAAQ,EAAE,qBAAqB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,MAAM,EAAE,mBAAmB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC7C,KAAK,EAAE,sBAAsB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC/C,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,KAAK,EAAE,sBAAsB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC/C,MAAM,EAAE,uBAAuB,CAAC,EAAE,EAAE,YAAY,CAAC;YACjD,IAAI,EAAE,qBAAqB,CAAC,EAAE,EAAE,YAAY,CAAC;YAC7C,UAAU,EAAE,2BAA2B,CAAC,EAAE,EAAE,YAAY,CAAC;YACzD,UAAU,EAAE,wBAAwB,CAAC,EAAE,EAAE,YAAY,CAAC;SACtD;KACD,CAAC,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"manual-templates.d.ts","sourceRoot":"","sources":["../../src/cli/manual-templates.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,uDAAuD,CAAC;AAE5F,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC9B;AAWD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAsBjF;AAED,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,qBAAqB,GAC5B,SAAS,kBAAkB,EAAE,CAoV/B"}
1
+ {"version":3,"file":"manual-templates.d.ts","sourceRoot":"","sources":["../../src/cli/manual-templates.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,uDAAuD,CAAC;AAE5F,MAAM,WAAW,qBAAqB;IACrC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CAClC;AAED,MAAM,WAAW,kBAAkB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC9B;AAWD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,qBAAqB,GAAG,MAAM,CAsBjF;AAED,wBAAgB,wBAAwB,CACvC,OAAO,EAAE,qBAAqB,GAC5B,SAAS,kBAAkB,EAAE,CAuV/B"}
@@ -200,7 +200,9 @@ Do not bake secrets into Dockerfiles or images.
200
200
  Each zone can protect controller-mediated SSH with adminAccess. For 1Password-backed configs, create op://agent-vm/<zoneId>-ssh-access/token.
201
201
  Use agent-vm controller ssh --zone <zoneId> for a gateway admin shell with runtime environment and gateway secrets loaded.
202
202
  Controller SSH opens an interactive shell only. Do not use it as a one-shot command runner, and do not try to print raw SSH commands from the CLI.
203
- For auth flows, prefer agent-vm auth-interactive <provider> --zone <zoneId>.
203
+ For OpenClaw provider auth flows, prefer agent-vm auth openclaw <provider> --zone <zoneId>.
204
+ For native Codex harness auth, use agent-vm auth codex-harness --zone <zoneId> --agent <agentId>.
205
+ Managed OpenClaw gateway base images include the native Codex CLI so codex-harness auth can run inside the gateway VM. If a deployment overrides the base image, install @openai/codex in that image before running codex-harness auth.
204
206
  Tool VMs and agent sandboxes do not receive gateway SSH secrets.
205
207
  `),
206
208
  },
@@ -279,7 +281,8 @@ When gateway.zoneGit is configured:
279
281
  content: generatedPage('Per-Agent Setup', `
280
282
  A single OpenClaw gateway can host multiple agents. Use scope=agent when each agent should have a stable work mount and reusable Tool VM lease identity.
281
283
 
282
- Per-agent auth isolation works by writing auth profiles through gateway.authProfilesByAgent and first-boot files through agentSandboxSeeds. Seeds target paths relative to the agent sandbox's /work backing directory and do not overwrite existing files.
284
+ Per-agent auth isolation works by using agent-vm auth codex-harness for native Codex CLI auth, gateway.authProfilesByAgent for OpenClaw auth profiles, and first-boot files through agentSandboxSeeds. Seeds target paths relative to the agent sandbox's /work backing directory and do not overwrite existing files.
285
+ agent-vm auth codex-harness --all-agents runs one device-auth session per agent listed in the zone's system config. Use --agent <agentId> for a one-off login outside that configured list.
283
286
 
284
287
  OpenClaw tool allowlists are a policy layer. They do not remove binaries from the Tool VM image if a broad shell tool can still run them.
285
288
 
@@ -1 +1 @@
1
- {"version":3,"file":"manual-templates.js","sourceRoot":"","sources":["../../src/cli/manual-templates.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,oDAAoD,CAAC;AAY5F,SAAS,aAAa,CAAC,KAAa,EAAE,IAAY;IACjD,OAAO,QAAQ,uBAAuB;;IAEnC,KAAK;;EAEP,IAAI,CAAC,IAAI,EAAE;CACZ,CAAC;AACF,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAA8B;IACxE,OAAO,aAAa,CACnB,oBAAoB,EACpB;;;;mBAIiB,OAAO,CAAC,gBAAgB;kBACzB,OAAO,CAAC,aAAa;;;;;;;;;;;;CAYtC,CACC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACvC,OAA8B;IAE9B,OAAO;QACN;YACC,YAAY,EAAE,uBAAuB;YACrC,OAAO,EAAE,aAAa,CACrB,4BAA4B,EAC5B;;;;;;;;;;;;;;;;;;CAkBH,CACG;SACD;QACD;YACC,YAAY,EAAE,uBAAuB;YACrC,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;EACF,OAAO,CAAC,gBAAgB;;;;;;;;;;;;;;;;;CAiBzB,CACG;SACD;QACD;YACC,YAAY,EAAE,iCAAiC;YAC/C,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;;;;;;;;;;;;;;;;;;;;CAoBH,CACG;SACD;QACD;YACC,YAAY,EAAE,sBAAsB;YACpC,OAAO,EAAE,aAAa,CACrB,yBAAyB,EACzB;;;;;;;;;;;;;;;;;CAiBH,CACG;SACD;QACD;YACC,YAAY,EAAE,yBAAyB;YACvC,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;;;;;;;;CAQH,CACG;SACD;QACD;YACC,YAAY,EAAE,kCAAkC;YAChD,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;;;;;;;;;;;;;;;;;;;EAuBF,CACE;SACD;QACD;YACC,YAAY,EAAE,2BAA2B;YACzC,OAAO,EAAE,aAAa,CACrB,YAAY,EACZ;;;;;;;;;;;;;;;;;;;;CAoBH,CACG;SACD;QACD;YACC,YAAY,EAAE,6BAA6B;YAC3C,OAAO,EAAE,aAAa,CACrB,sBAAsB,EACtB;;;;CAIH,CACG;SACD;QACD;YACC,YAAY,EAAE,wBAAwB;YACtC,OAAO,EAAE,aAAa,CACrB,0BAA0B,EAC1B;0BACsB,OAAO,CAAC,gBAAgB;;;;;;;;;;CAUjD,CACG;SACD;QACD;YACC,YAAY,EAAE,4BAA4B;YAC1C,OAAO,EAAE,aAAa,CACrB,2BAA2B,EAC3B;;;;;;;;;;;;;;;;;CAiBH,CACG;SACD;QACD;YACC,YAAY,EAAE,yBAAyB;YACvC,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;6BAKyB,OAAO,CAAC,gBAAgB;;;;;;;;;;;;;;;CAepD,CACG;SACD;QACD;YACC,YAAY,EAAE,8BAA8B;YAC5C,OAAO,EAAE,aAAa,CACrB,eAAe,EACf;;;;;;;;;;;;;;;;;;;;;CAqBH,CACG;SACD;QACD;YACC,YAAY,EAAE,gCAAgC;YAC9C,OAAO,EAAE,aAAa,CACrB,iBAAiB,EACjB;;;;;;;;;;;;;;CAcH,CACG;SACD;QACD;YACC,YAAY,EAAE,kCAAkC;YAChD,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;+BAK2B,OAAO,CAAC,gBAAgB;;;;;CAKtD,CACG;SACD;QACD;YACC,YAAY,EAAE,gCAAgC;YAC9C,OAAO,EAAE,aAAa,CACrB,iBAAiB,EACjB;;;;;;;;;;;CAWH,CACG;SACD;KACD,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"manual-templates.js","sourceRoot":"","sources":["../../src/cli/manual-templates.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,uBAAuB,GAAG,oDAAoD,CAAC;AAY5F,SAAS,aAAa,CAAC,KAAa,EAAE,IAAY;IACjD,OAAO,QAAQ,uBAAuB;;IAEnC,KAAK;;EAEP,IAAI,CAAC,IAAI,EAAE;CACZ,CAAC;AACF,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,OAA8B;IACxE,OAAO,aAAa,CACnB,oBAAoB,EACpB;;;;mBAIiB,OAAO,CAAC,gBAAgB;kBACzB,OAAO,CAAC,aAAa;;;;;;;;;;;;CAYtC,CACC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,wBAAwB,CACvC,OAA8B;IAE9B,OAAO;QACN;YACC,YAAY,EAAE,uBAAuB;YACrC,OAAO,EAAE,aAAa,CACrB,4BAA4B,EAC5B;;;;;;;;;;;;;;;;;;CAkBH,CACG;SACD;QACD;YACC,YAAY,EAAE,uBAAuB;YACrC,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;EACF,OAAO,CAAC,gBAAgB;;;;;;;;;;;;;;;;;CAiBzB,CACG;SACD;QACD;YACC,YAAY,EAAE,iCAAiC;YAC/C,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;;;;;;;;;;;;;;;;;;;;CAoBH,CACG;SACD;QACD;YACC,YAAY,EAAE,sBAAsB;YACpC,OAAO,EAAE,aAAa,CACrB,yBAAyB,EACzB;;;;;;;;;;;;;;;;;CAiBH,CACG;SACD;QACD;YACC,YAAY,EAAE,yBAAyB;YACvC,OAAO,EAAE,aAAa,CACrB,kBAAkB,EAClB;;;;;;;;CAQH,CACG;SACD;QACD;YACC,YAAY,EAAE,kCAAkC;YAChD,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;;;;;;;;;;;;;;;;;;;EAuBF,CACE;SACD;QACD;YACC,YAAY,EAAE,2BAA2B;YACzC,OAAO,EAAE,aAAa,CACrB,YAAY,EACZ;;;;;;;;;;;;;;;;;;;;CAoBH,CACG;SACD;QACD;YACC,YAAY,EAAE,6BAA6B;YAC3C,OAAO,EAAE,aAAa,CACrB,sBAAsB,EACtB;;;;CAIH,CACG;SACD;QACD;YACC,YAAY,EAAE,wBAAwB;YACtC,OAAO,EAAE,aAAa,CACrB,0BAA0B,EAC1B;0BACsB,OAAO,CAAC,gBAAgB;;;;;;;;;;;;CAYjD,CACG;SACD;QACD;YACC,YAAY,EAAE,4BAA4B;YAC1C,OAAO,EAAE,aAAa,CACrB,2BAA2B,EAC3B;;;;;;;;;;;;;;;;;CAiBH,CACG;SACD;QACD;YACC,YAAY,EAAE,yBAAyB;YACvC,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;6BAKyB,OAAO,CAAC,gBAAgB;;;;;;;;;;;;;;;CAepD,CACG;SACD;QACD;YACC,YAAY,EAAE,8BAA8B;YAC5C,OAAO,EAAE,aAAa,CACrB,eAAe,EACf;;;;;;;;;;;;;;;;;;;;;CAqBH,CACG;SACD;QACD;YACC,YAAY,EAAE,gCAAgC;YAC9C,OAAO,EAAE,aAAa,CACrB,iBAAiB,EACjB;;;;;;;;;;;;;;;CAeH,CACG;SACD;QACD;YACC,YAAY,EAAE,kCAAkC;YAChD,OAAO,EAAE,aAAa,CACrB,mBAAmB,EACnB;;;;;+BAK2B,OAAO,CAAC,gBAAgB;;;;;CAKtD,CACG;SACD;QACD;YACC,YAAY,EAAE,gCAAgC;YAC9C,OAAO,EAAE,aAAa,CACrB,iBAAiB,EACjB;;;;;;;;;;;CAWH,CACG;SACD;KACD,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { GatewayAuthConfig } from '@agent-vm/gateway-interface';
2
+ import type { SystemConfig } from '../config/system-config.js';
3
+ import { type CliDependencies, type CliIo } from './agent-vm-cli-support.js';
4
+ export declare function runOpenClawAuthCommand(options: {
5
+ readonly authConfig: GatewayAuthConfig | undefined;
6
+ readonly dependencies: Pick<CliDependencies, 'createControllerClient' | 'createSecretResolver' | 'resolveServiceAccountToken' | 'runInteractiveProcess'>;
7
+ readonly deviceCode?: boolean;
8
+ readonly io: CliIo;
9
+ readonly provider: string;
10
+ readonly systemConfig: SystemConfig;
11
+ readonly setDefault?: boolean;
12
+ readonly zoneId: string;
13
+ }): Promise<void>;
14
+ //# sourceMappingURL=openclaw-auth-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-auth-command.d.ts","sourceRoot":"","sources":["../../src/cli/openclaw-auth-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,KAAK,EAGV,MAAM,2BAA2B,CAAC;AAKnC,wBAAsB,sBAAsB,CAAC,OAAO,EAAE;IACrD,QAAQ,CAAC,UAAU,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,YAAY,EAAE,IAAI,CAC1B,eAAe,EACb,wBAAwB,GACxB,sBAAsB,GACtB,4BAA4B,GAC5B,uBAAuB,CACzB,CAAC;IACF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyEhB"}
@@ -1,46 +1,12 @@
1
1
  import { execa } from 'execa';
2
2
  import { requireZone, resolveControllerBaseUrl, } from './agent-vm-cli-support.js';
3
- import { resolveZoneAdminToken, zoneSshAccessResponseSchema, } from './ssh-commands.js';
4
- const openClawShellEnvFilePath = '/etc/profile.d/openclaw-env.sh';
5
- function shellQuote(value) {
6
- return `'${value.replace(/'/gu, `'\\''`)}'`;
7
- }
8
- function wrapWithOpenClawShellEnvironment(command) {
9
- return `bash -lc ${shellQuote(`source ${openClawShellEnvFilePath} && ${command}`)}`;
10
- }
11
- export async function listAuthProviders(options) {
12
- if (!options.sshAccess.host || !options.sshAccess.port) {
13
- throw new Error('Cannot list auth providers: controller returned incomplete SSH access.');
3
+ import { formatZodError } from './format-zod-error.js';
4
+ import { wrapWithOpenClawShellEnvironment } from './openclaw-shell-prefix.js';
5
+ import { resolveZoneAdminToken, zoneSshAccessResponseSchema } from './ssh-commands.js';
6
+ export async function runOpenClawAuthCommand(options) {
7
+ if (options.provider === 'openai-codex') {
8
+ throw new Error(`Refusing to run OpenClaw provider login for 'openai-codex'. Use 'agent-vm auth codex-harness --zone ${options.zoneId} --agent <agentId>' for native Codex CLI auth, or use provider 'openai' for OpenClaw-managed auth.`);
14
9
  }
15
- const runCommand = options.runCommand ??
16
- (async (command, arguments_) => {
17
- const result = await execa(command, arguments_, { reject: false });
18
- return {
19
- exitCode: result.exitCode ?? 0,
20
- stderr: result.stderr,
21
- stdout: result.stdout,
22
- };
23
- });
24
- const commandResult = await runCommand('ssh', [
25
- '-o',
26
- 'StrictHostKeyChecking=no',
27
- '-o',
28
- 'UserKnownHostsFile=/dev/null',
29
- ...(options.sshAccess.identityFile ? ['-i', options.sshAccess.identityFile] : []),
30
- '-p',
31
- String(options.sshAccess.port),
32
- `${options.sshAccess.user ?? 'root'}@${options.sshAccess.host}`,
33
- wrapWithOpenClawShellEnvironment(options.listProvidersCommand),
34
- ]);
35
- if (commandResult.exitCode !== 0) {
36
- throw new Error(`Failed to list auth providers: ${commandResult.stderr || `ssh exited with ${commandResult.exitCode}`}`);
37
- }
38
- return commandResult.stdout
39
- .split('\n')
40
- .map((line) => line.trim())
41
- .filter((line) => line.length > 0);
42
- }
43
- export async function runAuthInteractiveCommand(options) {
44
10
  if (!options.authConfig) {
45
11
  throw new Error(`Zone '${options.zoneId}' does not support interactive auth.`);
46
12
  }
@@ -58,7 +24,7 @@ export async function runAuthInteractiveCommand(options) {
58
24
  secretEnv: 'default',
59
25
  }));
60
26
  if (!parsedSshResponse.success) {
61
- throw new Error('Controller returned an invalid SSH response.');
27
+ throw new Error(formatZodError('Controller returned an invalid SSH response:', parsedSshResponse.error), { cause: parsedSshResponse.error });
62
28
  }
63
29
  const sshResponse = parsedSshResponse.data;
64
30
  if (!sshResponse.host || !sshResponse.port) {
@@ -92,4 +58,4 @@ export async function runAuthInteractiveCommand(options) {
92
58
  throw new Error(`Auth failed for ${options.provider} in zone '${options.zoneId}': ${error instanceof Error ? error.message : String(error)}`, { cause: error });
93
59
  }
94
60
  }
95
- //# sourceMappingURL=auth-interactive-command.js.map
61
+ //# sourceMappingURL=openclaw-auth-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-auth-command.js","sourceRoot":"","sources":["../../src/cli/openclaw-auth-command.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const openClawShellEnvFilePath = "/etc/profile.d/openclaw-env.sh";
2
+ export declare const openClawRuntimeSecretsEnvFilePath = "/run/openclaw/secrets.env";
3
+ export declare function shellQuote(value: string): string;
4
+ export declare function wrapWithOpenClawShellEnvironment(command: string): string;
5
+ export declare function buildOpenClawSecretShellPrefix(): string;
6
+ export declare function wrapWithOpenClawSecretShellEnvironment(command: string): string;
7
+ //# sourceMappingURL=openclaw-shell-prefix.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-shell-prefix.d.ts","sourceRoot":"","sources":["../../src/cli/openclaw-shell-prefix.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB,mCAAmC,CAAC;AACzE,eAAO,MAAM,iCAAiC,8BAA8B,CAAC;AAE7E,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,8BAA8B,IAAI,MAAM,CAEvD;AAED,wBAAgB,sCAAsC,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAE9E"}
@@ -0,0 +1,15 @@
1
+ export const openClawShellEnvFilePath = '/etc/profile.d/openclaw-env.sh';
2
+ export const openClawRuntimeSecretsEnvFilePath = '/run/openclaw/secrets.env';
3
+ export function shellQuote(value) {
4
+ return `'${value.replace(/'/gu, `'\\''`)}'`;
5
+ }
6
+ export function wrapWithOpenClawShellEnvironment(command) {
7
+ return `bash -lc ${shellQuote(`source ${openClawShellEnvFilePath} && ${command}`)}`;
8
+ }
9
+ export function buildOpenClawSecretShellPrefix() {
10
+ return `source ${openClawShellEnvFilePath} && set -a && . ${openClawRuntimeSecretsEnvFilePath} && set +a && `;
11
+ }
12
+ export function wrapWithOpenClawSecretShellEnvironment(command) {
13
+ return `bash -lc ${shellQuote(`${buildOpenClawSecretShellPrefix()}${command}`)}`;
14
+ }
15
+ //# sourceMappingURL=openclaw-shell-prefix.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openclaw-shell-prefix.js","sourceRoot":"","sources":["../../src/cli/openclaw-shell-prefix.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,wBAAwB,GAAG,gCAAgC,CAAC;AACzE,MAAM,CAAC,MAAM,iCAAiC,GAAG,2BAA2B,CAAC;AAE7E,MAAM,UAAU,UAAU,CAAC,KAAa;IACvC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,gCAAgC,CAAC,OAAe;IAC/D,OAAO,YAAY,UAAU,CAAC,UAAU,wBAAwB,OAAO,OAAO,EAAE,CAAC,EAAE,CAAC;AACrF,CAAC;AAED,MAAM,UAAU,8BAA8B;IAC7C,OAAO,UAAU,wBAAwB,mBAAmB,iCAAiC,gBAAgB,CAAC;AAC/G,CAAC;AAED,MAAM,UAAU,sCAAsC,CAAC,OAAe;IACrE,OAAO,YAAY,UAAU,CAAC,GAAG,8BAA8B,EAAE,GAAG,OAAO,EAAE,CAAC,EAAE,CAAC;AAClF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ssh-commands.d.ts","sourceRoot":"","sources":["../../src/cli/ssh-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,KAAK,EAKV,MAAM,2BAA2B,CAAC;AAEnC,UAAU,oBAAoB;IAC7B,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;CACpC;AAED,eAAO,MAAM,2BAA2B;;;;;;;iBASzB,CAAC;AAEhB,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAiBhF,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACpD,QAAQ,CAAC,YAAY,EAAE,IAAI,CAC1B,eAAe,EACf,sBAAsB,GAAG,4BAA4B,CACrD,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CAC7C,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB9B;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqEhF"}
1
+ {"version":3,"file":"ssh-commands.d.ts","sourceRoot":"","sources":["../../src/cli/ssh-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,KAAK,EAKV,MAAM,2BAA2B,CAAC;AAInC,UAAU,oBAAoB;IAC7B,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;IACvC,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;CACpC;AAED,eAAO,MAAM,2BAA2B;;;;;;;iBASzB,CAAC;AAEhB,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACpD,QAAQ,CAAC,YAAY,EAAE,IAAI,CAC1B,eAAe,EACf,sBAAsB,GAAG,4BAA4B,CACrD,CAAC;IACF,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;CAC7C,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAgB9B;AAED,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwEhF"}
@@ -1,6 +1,8 @@
1
1
  import { execa } from 'execa';
2
2
  import { z } from 'zod';
3
3
  import { createResolverFromSystemConfig, readZoneFlag, requireZone, resolveControllerBaseUrl, } from './agent-vm-cli-support.js';
4
+ import { formatZodError } from './format-zod-error.js';
5
+ import { wrapWithOpenClawSecretShellEnvironment } from './openclaw-shell-prefix.js';
4
6
  export const zoneSshAccessResponseSchema = z
5
7
  .object({
6
8
  command: z.string().min(1).optional(),
@@ -11,17 +13,6 @@ export const zoneSshAccessResponseSchema = z
11
13
  user: z.string().min(1).optional(),
12
14
  })
13
15
  .passthrough();
14
- const openClawShellEnvFilePath = '/etc/profile.d/openclaw-env.sh';
15
- const openClawRuntimeSecretsEnvFilePath = '/run/openclaw/secrets.env';
16
- function buildInteractiveSecretShellPrefix() {
17
- return `source ${openClawShellEnvFilePath} && set -a && . ${openClawRuntimeSecretsEnvFilePath} && set +a && `;
18
- }
19
- function shellQuote(value) {
20
- return `'${value.replace(/'/gu, `'\\''`)}'`;
21
- }
22
- function buildInteractiveSecretShellCommand() {
23
- return `bash -lc ${shellQuote(`${buildInteractiveSecretShellPrefix()}exec bash -l`)}`;
24
- }
25
16
  export async function resolveZoneAdminToken(options) {
26
17
  const adminAccess = options.zone.adminAccess ?? { mode: 'none' };
27
18
  if (adminAccess.mode === 'none') {
@@ -55,7 +46,7 @@ export async function runSshCommand(options) {
55
46
  secretEnv: 'with-secrets',
56
47
  }));
57
48
  if (!parsedSshResponse.success) {
58
- throw new Error('Controller returned an invalid SSH response.');
49
+ throw new Error(formatZodError('Controller returned an invalid SSH response:', parsedSshResponse.error), { cause: parsedSshResponse.error });
59
50
  }
60
51
  const sshResponse = parsedSshResponse.data;
61
52
  if (!sshResponse.host || !sshResponse.port) {
@@ -75,7 +66,7 @@ export async function runSshCommand(options) {
75
66
  '-p',
76
67
  String(sshResponse.port),
77
68
  `${sshResponse.user ?? 'root'}@${sshResponse.host}`,
78
- buildInteractiveSecretShellCommand(),
69
+ wrapWithOpenClawSecretShellEnvironment('exec bash -l'),
79
70
  ];
80
71
  const runInteractiveProcess = options.dependencies.runInteractiveProcess ??
81
72
  (async (command, arguments_) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ssh-commands.js","sourceRoot":"","sources":["../../src/cli/ssh-commands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ssh-commands.js","sourceRoot":"","sources":["../../src/cli/ssh-commands.ts"],"names":[],"mappings":"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"}
@@ -6,8 +6,15 @@ interface PortalServerExpectation {
6
6
  readonly host: string;
7
7
  readonly port: number;
8
8
  }
9
+ interface CodexHarnessAuthReadError {
10
+ readonly agentId: string;
11
+ readonly message: string;
12
+ readonly path: string;
13
+ }
9
14
  export interface OpenClawDeploymentDoctorTarget {
10
15
  readonly configuredAuthProfileAgentIds?: readonly string[];
16
+ readonly configuredCodexHarnessAuthAgentIds?: readonly string[];
17
+ readonly codexHarnessAuthReadErrors?: readonly CodexHarnessAuthReadError[];
11
18
  readonly config: OpenClawDeploymentConfig;
12
19
  readonly configPath?: string | undefined;
13
20
  readonly configReadError?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"openclaw-deployment-doctor.d.ts","sourceRoot":"","sources":["../../src/operations/openclaw-deployment-doctor.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAIN,KAAK,wBAAwB,EAC7B,KAAK,mCAAmC,EACxC,MAAM,uCAAuC,CAAC;AAS/C,UAAU,uBAAuB;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAQD,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,6BAA6B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3D,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,mCAAmC,CAAC,QAAQ,CAAC,CAAC;CAC/D;AAsMD,wBAAgB,mCAAmC,CAClD,OAAO,EAAE,SAAS,8BAA8B,EAAE,GAChD,SAAS,WAAW,EAAE,CA+DxB;AA4BD,wBAAsB,qCAAqC,CAC1D,YAAY,EAAE,kBAAkB,GAC9B,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CA0CjC"}
1
+ {"version":3,"file":"openclaw-deployment-doctor.d.ts","sourceRoot":"","sources":["../../src/operations/openclaw-deployment-doctor.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAIN,KAAK,wBAAwB,EAC7B,KAAK,mCAAmC,EACxC,MAAM,uCAAuC,CAAC;AAS/C,UAAU,uBAAuB;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAED,UAAU,yBAAyB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACtB;AAaD,MAAM,WAAW,8BAA8B;IAC9C,QAAQ,CAAC,6BAA6B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC3D,QAAQ,CAAC,kCAAkC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChE,QAAQ,CAAC,0BAA0B,CAAC,EAAE,SAAS,yBAAyB,EAAE,CAAC;IAC3E,QAAQ,CAAC,MAAM,EAAE,wBAAwB,CAAC;IAC1C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,QAAQ,CAAC,YAAY,CAAC,EAAE,uBAAuB,CAAC;IAChD,QAAQ,CAAC,MAAM,EAAE,mCAAmC,CAAC,QAAQ,CAAC,CAAC;CAC/D;AA0ND,wBAAgB,mCAAmC,CAClD,OAAO,EAAE,SAAS,8BAA8B,EAAE,GAChD,SAAS,WAAW,EAAE,CAgExB;AAiED,wBAAsB,qCAAqC,CAC1D,YAAY,EAAE,kBAAkB,GAC9B,OAAO,CAAC,SAAS,WAAW,EAAE,CAAC,CAoDjC"}
@@ -1,3 +1,4 @@
1
+ import { access } from 'node:fs/promises';
1
2
  import { join } from 'node:path';
2
3
  import { loadMcpPortalConfig } from '@agent-vm/config-contracts';
3
4
  import { materializedPortalToolNames, portalServerNameForAgent, } from '@agent-vm/openclaw-mcp-portal-plugin';
@@ -120,17 +121,29 @@ function hasValidPortalEndpointTopology(config, agentId, portalServer) {
120
121
  }
121
122
  function buildAgentAuthProfileChecks(target) {
122
123
  const configuredAuthProfileAgentIds = new Set(target.configuredAuthProfileAgentIds ?? []);
124
+ const configuredCodexHarnessAuthAgentIds = new Set(target.configuredCodexHarnessAuthAgentIds ?? []);
123
125
  return collectOpenClawCodexAgentIds(target.config).map((agentId) => {
124
126
  const hasAuthProfile = configuredAuthProfileAgentIds.has(agentId);
127
+ const hasCodexHarnessAuth = configuredCodexHarnessAuthAgentIds.has(agentId);
128
+ const hasAuthMaterial = hasAuthProfile || hasCodexHarnessAuth;
125
129
  return {
126
130
  name: `openclaw-agent-auth-profile-${target.zoneId}-${agentId}`,
127
- ok: hasAuthProfile,
131
+ ok: hasAuthMaterial,
128
132
  hint: hasAuthProfile
129
- ? `auth profile configured for agent ${agentId}`
130
- : `Configure gateway.authProfilesByAgent.${agentId} or run OpenClaw auth onboarding for agent ${agentId}.`,
133
+ ? `OpenClaw auth profile configured for agent ${agentId}`
134
+ : hasCodexHarnessAuth
135
+ ? `Codex harness auth.json present for agent ${agentId}`
136
+ : `Run agent-vm auth codex-harness --zone ${target.zoneId} --agent ${agentId} or configure gateway.authProfilesByAgent.${agentId}.`,
131
137
  };
132
138
  });
133
139
  }
140
+ function buildCodexHarnessAuthReadErrorChecks(target) {
141
+ return (target.codexHarnessAuthReadErrors ?? []).map((readError) => ({
142
+ name: `openclaw-codex-harness-auth-readable-${target.zoneId}-${readError.agentId}`,
143
+ ok: false,
144
+ hint: `Cannot read Codex harness auth.json at ${readError.path}: ${readError.message}`,
145
+ }));
146
+ }
134
147
  function buildRequirementChecks(target) {
135
148
  const requirementTarget = target.configReadError === undefined
136
149
  ? {
@@ -205,6 +218,7 @@ export function buildOpenClawDeploymentDoctorChecks(targets) {
205
218
  ? 'plugins.slots.memory=memory-core'
206
219
  : 'Set plugins.slots.memory to "memory-core" when memory-core is enabled.',
207
220
  },
221
+ ...buildCodexHarnessAuthReadErrorChecks(target),
208
222
  ...buildAgentAuthProfileChecks(target),
209
223
  ];
210
224
  });
@@ -228,30 +242,63 @@ async function loadPortalServerExpectation(zone) {
228
242
  return undefined;
229
243
  }
230
244
  }
245
+ async function collectCodexHarnessAuthAgentIds(zone, config) {
246
+ const agentIds = [];
247
+ const readErrors = [];
248
+ for (const agentId of collectOpenClawCodexAgentIds(config)) {
249
+ const authJsonPath = join(zone.gateway.stateDir, 'agents', agentId, 'agent', 'codex-home', 'auth.json');
250
+ try {
251
+ // Auth contents are secret; doctor only checks file presence.
252
+ // oxlint-disable-next-line no-await-in-loop -- each agent maps to a separate auth path
253
+ await access(authJsonPath);
254
+ agentIds.push(agentId);
255
+ }
256
+ catch (error) {
257
+ const errorCode = isObjectRecord(error) && typeof error.code === 'string' ? error.code : undefined;
258
+ if (errorCode === 'ENOENT' || errorCode === 'ENOTDIR') {
259
+ // Missing auth.json is reported by buildAgentAuthProfileChecks.
260
+ continue;
261
+ }
262
+ readErrors.push({
263
+ agentId,
264
+ message: error instanceof Error ? error.message : String(error),
265
+ path: authJsonPath,
266
+ });
267
+ }
268
+ }
269
+ return { agentIds, readErrors };
270
+ }
231
271
  export async function collectOpenClawDeploymentDoctorChecks(systemConfig) {
232
272
  const openClawZones = systemConfig.zones.filter(isOpenClawSystemZone);
233
273
  const configuredAuthProfileAgentIdsByZone = new Map(openClawZones.map((zone) => [zone.id, Object.keys(zone.gateway.authProfilesByAgent ?? {})]));
234
274
  const portalServerByZone = new Map((await Promise.all(openClawZones.map(async (zone) => [zone.id, await loadPortalServerExpectation(zone)]))).filter((entry) => entry[1] !== undefined));
235
275
  const targets = await collectOpenClawDeploymentRequirementTargets(systemConfig);
236
- const doctorTargets = [];
237
- for (const target of targets) {
276
+ const doctorTargets = await Promise.all(targets.map(async (target) => {
277
+ const zone = openClawZones.find((candidate) => candidate.id === target.zoneId);
278
+ const codexHarnessAuthScan = target.kind === 'readable' && zone
279
+ ? await collectCodexHarnessAuthAgentIds(zone, target.config)
280
+ : { agentIds: [], readErrors: [] };
238
281
  const baseTarget = target.kind === 'readable'
239
282
  ? {
240
283
  config: target.config,
284
+ codexHarnessAuthReadErrors: codexHarnessAuthScan.readErrors,
285
+ configuredCodexHarnessAuthAgentIds: codexHarnessAuthScan.agentIds,
241
286
  configuredAuthProfileAgentIds: configuredAuthProfileAgentIdsByZone.get(target.zoneId) ?? [],
242
287
  configPath: target.configPath,
243
288
  zoneId: target.zoneId,
244
289
  }
245
290
  : {
246
291
  config: {},
292
+ codexHarnessAuthReadErrors: codexHarnessAuthScan.readErrors,
293
+ configuredCodexHarnessAuthAgentIds: codexHarnessAuthScan.agentIds,
247
294
  configuredAuthProfileAgentIds: configuredAuthProfileAgentIdsByZone.get(target.zoneId) ?? [],
248
295
  configPath: target.configPath,
249
296
  configReadError: target.configReadError,
250
297
  zoneId: target.zoneId,
251
298
  };
252
299
  const portalServer = portalServerByZone.get(target.zoneId);
253
- doctorTargets.push(portalServer === undefined ? baseTarget : { ...baseTarget, portalServer });
254
- }
300
+ return portalServer === undefined ? baseTarget : Object.assign(baseTarget, { portalServer });
301
+ }));
255
302
  return buildOpenClawDeploymentDoctorChecks(doctorTargets);
256
303
  }
257
304
  //# sourceMappingURL=openclaw-deployment-doctor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openclaw-deployment-doctor.js","sourceRoot":"","sources":["../../src/operations/openclaw-deployment-doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openclaw-deployment-doctor.js","sourceRoot":"","sources":["../../src/operations/openclaw-deployment-doctor.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agent-vm/agent-vm",
3
- "version": "0.0.64",
3
+ "version": "0.0.65",
4
4
  "description": "Controller CLI and HTTP server for sandboxed VM coding agents.",
5
5
  "homepage": "https://github.com/ShravanSunder/agent-vm#readme",
6
6
  "bugs": {
@@ -40,15 +40,15 @@
40
40
  "jsonc-parser": "^3.3.1",
41
41
  "tasuku": "^2.3.0",
42
42
  "zod": "^4.4.3",
43
- "@agent-vm/agent-vm-worker": "0.0.64",
44
- "@agent-vm/config-contracts": "0.0.64",
45
- "@agent-vm/mcp-portal": "0.0.64",
46
- "@agent-vm/gondolin-adapter": "0.0.64",
47
- "@agent-vm/openclaw-agent-vm-plugin": "0.0.64",
48
- "@agent-vm/gateway-interface": "0.0.64",
49
- "@agent-vm/openclaw-gateway": "0.0.64",
50
- "@agent-vm/openclaw-mcp-portal-plugin": "0.0.64",
51
- "@agent-vm/worker-gateway": "0.0.64"
43
+ "@agent-vm/agent-vm-worker": "0.0.65",
44
+ "@agent-vm/gateway-interface": "0.0.65",
45
+ "@agent-vm/config-contracts": "0.0.65",
46
+ "@agent-vm/openclaw-agent-vm-plugin": "0.0.65",
47
+ "@agent-vm/gondolin-adapter": "0.0.65",
48
+ "@agent-vm/openclaw-mcp-portal-plugin": "0.0.65",
49
+ "@agent-vm/openclaw-gateway": "0.0.65",
50
+ "@agent-vm/worker-gateway": "0.0.65",
51
+ "@agent-vm/mcp-portal": "0.0.65"
52
52
  },
53
53
  "scripts": {
54
54
  "build": "rm -rf dist && tsc -p tsconfig.build.json",
@@ -1,29 +0,0 @@
1
- import type { GatewayAuthConfig } from '@agent-vm/gateway-interface';
2
- import type { SystemConfig } from '../config/system-config.js';
3
- import { type CliDependencies, type CliIo } from './agent-vm-cli-support.js';
4
- import { type ZoneSshAccessResponse } from './ssh-commands.js';
5
- export declare function listAuthProviders(options: {
6
- readonly listProvidersCommand: string;
7
- readonly runCommand?: (command: string, arguments_: readonly string[]) => Promise<{
8
- readonly exitCode: number;
9
- readonly stderr: string;
10
- readonly stdout: string;
11
- }>;
12
- readonly sshAccess: ZoneSshAccessResponse;
13
- }): Promise<readonly string[]>;
14
- export declare function runAuthInteractiveCommand(options: {
15
- readonly authConfig: GatewayAuthConfig | undefined;
16
- readonly dependencies: Pick<CliDependencies, 'createControllerClient' | 'createSecretResolver' | 'resolveServiceAccountToken' | 'runCommand' | 'runInteractiveProcess'>;
17
- readonly deviceCode?: boolean;
18
- readonly io: CliIo;
19
- readonly provider: string;
20
- readonly runCommand?: (command: string, arguments_: readonly string[]) => Promise<{
21
- readonly exitCode: number;
22
- readonly stderr: string;
23
- readonly stdout: string;
24
- }>;
25
- readonly systemConfig: SystemConfig;
26
- readonly setDefault?: boolean;
27
- readonly zoneId: string;
28
- }): Promise<void>;
29
- //# sourceMappingURL=auth-interactive-command.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-interactive-command.d.ts","sourceRoot":"","sources":["../../src/cli/auth-interactive-command.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EACN,KAAK,eAAe,EACpB,KAAK,KAAK,EAGV,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAGN,KAAK,qBAAqB,EAC1B,MAAM,mBAAmB,CAAC;AAY3B,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAChD,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,UAAU,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,KACzB,OAAO,CAAC;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9F,QAAQ,CAAC,SAAS,EAAE,qBAAqB,CAAC;CAC1C,GAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAAC,CAuC7B;AAED,wBAAsB,yBAAyB,CAAC,OAAO,EAAE;IACxD,QAAQ,CAAC,UAAU,EAAE,iBAAiB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,YAAY,EAAE,IAAI,CAC1B,eAAe,EACb,wBAAwB,GACxB,sBAAsB,GACtB,4BAA4B,GAC5B,YAAY,GACZ,uBAAuB,CACzB,CAAC;IACF,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,UAAU,CAAC,EAAE,CACrB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,SAAS,MAAM,EAAE,KACzB,OAAO,CAAC;QAAE,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9F,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiEhB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-interactive-command.js","sourceRoot":"","sources":["../../src/cli/auth-interactive-command.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { type CliDependencies, type CliIo } from '../agent-vm-cli-support.js';
2
- export declare function createAuthInteractiveCommand(io: CliIo, dependencies: CliDependencies): Partial<import("cmd-ts/dist/cjs/argparser.js").Register> & {
3
- parse(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<{
4
- config: string | undefined;
5
- deviceCode: boolean;
6
- provider: string;
7
- setDefault: boolean;
8
- zone: string | undefined;
9
- }>>;
10
- } & import("cmd-ts/dist/cjs/helpdoc.js").PrintHelp & import("cmd-ts/dist/cjs/helpdoc.js").ProvidesHelp & import("cmd-ts/dist/cjs/helpdoc.js").Named & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned> & import("cmd-ts/dist/cjs/argparser.js").Register & import("cmd-ts/dist/cjs/runner.js").Handling<{
11
- config: string | undefined;
12
- deviceCode: boolean;
13
- provider: string;
14
- setDefault: boolean;
15
- zone: string | undefined;
16
- }, Promise<void>> & {
17
- run(context: import("cmd-ts/dist/cjs/argparser.js").ParseContext): Promise<import("cmd-ts/dist/cjs/argparser.js").ParsingResult<Promise<void>>>;
18
- } & Partial<import("cmd-ts/dist/cjs/helpdoc.js").Versioned & import("cmd-ts/dist/cjs/helpdoc.js").Descriptive & import("cmd-ts/dist/cjs/helpdoc.js").Aliased>;
19
- //# sourceMappingURL=auth-interactive-definition.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-interactive-definition.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/auth-interactive-definition.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,KAAK,EAAe,MAAM,4BAA4B,CAAC;AAQ3F,wBAAgB,4BAA4B,CAAC,EAAE,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe;;;;;;;;;;;;;;;;8JAuCpF"}
@@ -1,46 +0,0 @@
1
- // oxlint-disable typescript-eslint/explicit-function-return-type
2
- import { command, flag, positional, string } from 'cmd-ts';
3
- import { loadGatewayLifecycle } from '../../gateway/gateway-lifecycle-loader.js';
4
- import { requireZone } from '../agent-vm-cli-support.js';
5
- import { runAuthInteractiveCommand } from '../auth-interactive-command.js';
6
- import { createConfigOption, createZoneOption, loadSystemConfigFromOption, } from './command-definition-support.js';
7
- export function createAuthInteractiveCommand(io, dependencies) {
8
- return command({
9
- name: 'auth-interactive',
10
- description: 'Run interactive auth for a gateway zone.',
11
- args: {
12
- config: createConfigOption(),
13
- deviceCode: flag({
14
- long: 'device-code',
15
- description: 'Use the provider device-code flow instead of browser callback auth.',
16
- }),
17
- provider: positional({
18
- displayName: 'provider',
19
- type: string,
20
- description: 'Provider name (for example: codex).',
21
- }),
22
- setDefault: flag({
23
- long: 'set-default',
24
- description: 'Set the provider as the default model auth target after login.',
25
- }),
26
- zone: createZoneOption(),
27
- },
28
- handler: async ({ config, deviceCode, provider, setDefault, zone }) => {
29
- const systemConfig = await loadSystemConfigFromOption(config, dependencies);
30
- const selectedZone = requireZone(systemConfig, zone);
31
- const lifecycle = loadGatewayLifecycle(selectedZone.gateway.type);
32
- await runAuthInteractiveCommand({
33
- authConfig: lifecycle.authConfig,
34
- dependencies,
35
- deviceCode,
36
- io,
37
- provider,
38
- setDefault,
39
- systemConfig,
40
- zoneId: selectedZone.id,
41
- ...(dependencies.runCommand ? { runCommand: dependencies.runCommand } : {}),
42
- });
43
- },
44
- });
45
- }
46
- //# sourceMappingURL=auth-interactive-definition.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-interactive-definition.js","sourceRoot":"","sources":["../../../src/cli/commands/auth-interactive-definition.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAE3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAoC,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC3F,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EACN,kBAAkB,EAClB,gBAAgB,EAChB,0BAA0B,GAC1B,MAAM,iCAAiC,CAAC;AAEzC,MAAM,UAAU,4BAA4B,CAAC,EAAS,EAAE,YAA6B;IACpF,OAAO,OAAO,CAAC;QACd,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,0CAA0C;QACvD,IAAI,EAAE;YACL,MAAM,EAAE,kBAAkB,EAAE;YAC5B,UAAU,EAAE,IAAI,CAAC;gBAChB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,qEAAqE;aAClF,CAAC;YACF,QAAQ,EAAE,UAAU,CAAC;gBACpB,WAAW,EAAE,UAAU;gBACvB,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,qCAAqC;aAClD,CAAC;YACF,UAAU,EAAE,IAAI,CAAC;gBAChB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,gEAAgE;aAC7E,CAAC;YACF,IAAI,EAAE,gBAAgB,EAAE;SACxB;QACD,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,EAAE,EAAE;YACrE,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC5E,MAAM,YAAY,GAAG,WAAW,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,oBAAoB,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAElE,MAAM,yBAAyB,CAAC;gBAC/B,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,YAAY;gBACZ,UAAU;gBACV,EAAE;gBACF,QAAQ;gBACR,UAAU;gBACV,YAAY;gBACZ,MAAM,EAAE,YAAY,CAAC,EAAE;gBACvB,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3E,CAAC,CAAC;QACJ,CAAC;KACD,CAAC,CAAC;AACJ,CAAC"}