@agent-vm/agent-vm 0.0.64 → 0.0.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/codex-harness-auth-command.d.ts +11 -0
- package/dist/cli/codex-harness-auth-command.d.ts.map +1 -0
- package/dist/cli/codex-harness-auth-command.js +242 -0
- package/dist/cli/codex-harness-auth-command.js.map +1 -0
- package/dist/cli/commands/auth-definition.d.ts +53 -0
- package/dist/cli/commands/auth-definition.d.ts.map +1 -0
- package/dist/cli/commands/auth-definition.js +81 -0
- package/dist/cli/commands/auth-definition.js.map +1 -0
- package/dist/cli/commands/create-app.d.ts +50 -16
- package/dist/cli/commands/create-app.d.ts.map +1 -1
- package/dist/cli/commands/create-app.js +2 -2
- package/dist/cli/commands/create-app.js.map +1 -1
- package/dist/cli/manual-templates.d.ts.map +1 -1
- package/dist/cli/manual-templates.js +5 -2
- package/dist/cli/manual-templates.js.map +1 -1
- package/dist/cli/openclaw-auth-command.d.ts +14 -0
- package/dist/cli/openclaw-auth-command.d.ts.map +1 -0
- package/dist/cli/{auth-interactive-command.js → openclaw-auth-command.js} +8 -42
- package/dist/cli/openclaw-auth-command.js.map +1 -0
- package/dist/cli/openclaw-shell-prefix.d.ts +7 -0
- package/dist/cli/openclaw-shell-prefix.d.ts.map +1 -0
- package/dist/cli/openclaw-shell-prefix.js +15 -0
- package/dist/cli/openclaw-shell-prefix.js.map +1 -0
- package/dist/cli/ssh-commands.d.ts.map +1 -1
- package/dist/cli/ssh-commands.js +4 -13
- package/dist/cli/ssh-commands.js.map +1 -1
- package/dist/operations/openclaw-deployment-doctor.d.ts +7 -0
- package/dist/operations/openclaw-deployment-doctor.d.ts.map +1 -1
- package/dist/operations/openclaw-deployment-doctor.js +54 -7
- package/dist/operations/openclaw-deployment-doctor.js.map +1 -1
- package/package.json +10 -10
- package/dist/cli/auth-interactive-command.d.ts +0 -29
- package/dist/cli/auth-interactive-command.d.ts.map +0 -1
- package/dist/cli/auth-interactive-command.js.map +0 -1
- package/dist/cli/commands/auth-interactive-definition.d.ts +0 -19
- package/dist/cli/commands/auth-interactive-definition.d.ts.map +0 -1
- package/dist/cli/commands/auth-interactive-definition.js +0 -46
- 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
|
|
173
|
+
command: "auth";
|
|
174
174
|
args: {
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
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
|
|
424
|
+
command: "auth";
|
|
414
425
|
args: {
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
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
|
|
574
|
-
value:
|
|
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
|
|
704
|
-
value:
|
|
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
|
|
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 {
|
|
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
|
-
|
|
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,
|
|
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,
|
|
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
|
|
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
|
|
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
|
|
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 {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
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-
|
|
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;
|
|
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"}
|
package/dist/cli/ssh-commands.js
CHANGED
|
@@ -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
|
-
|
|
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":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAGN,8BAA8B,EAC9B,YAAY,EACZ,WAAW,EACX,wBAAwB,GACxB,MAAM,2BAA2B,CAAC;
|
|
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":"
|
|
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:
|
|
131
|
+
ok: hasAuthMaterial,
|
|
128
132
|
hint: hasAuthProfile
|
|
129
|
-
? `auth profile configured for agent ${agentId}`
|
|
130
|
-
:
|
|
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
|
-
|
|
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
|
-
|
|
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.
|
|
3
|
+
"version": "0.0.66",
|
|
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.
|
|
44
|
-
"@agent-vm/
|
|
45
|
-
"@agent-vm/
|
|
46
|
-
"@agent-vm/
|
|
47
|
-
"@agent-vm/openclaw-
|
|
48
|
-
"@agent-vm/gateway-interface": "0.0.
|
|
49
|
-
"@agent-vm/
|
|
50
|
-
"@agent-vm/openclaw-
|
|
51
|
-
"@agent-vm/worker-gateway": "0.0.
|
|
43
|
+
"@agent-vm/agent-vm-worker": "0.0.66",
|
|
44
|
+
"@agent-vm/openclaw-agent-vm-plugin": "0.0.66",
|
|
45
|
+
"@agent-vm/config-contracts": "0.0.66",
|
|
46
|
+
"@agent-vm/mcp-portal": "0.0.66",
|
|
47
|
+
"@agent-vm/openclaw-mcp-portal-plugin": "0.0.66",
|
|
48
|
+
"@agent-vm/gateway-interface": "0.0.66",
|
|
49
|
+
"@agent-vm/gondolin-adapter": "0.0.66",
|
|
50
|
+
"@agent-vm/openclaw-gateway": "0.0.66",
|
|
51
|
+
"@agent-vm/worker-gateway": "0.0.66"
|
|
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"}
|