@aeolus-fleet/trierarch 0.33.0 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -4
- package/dist/adapters/claude-code-setup.d.ts +11 -0
- package/dist/adapters/claude-code-setup.js +60 -0
- package/dist/adapters/claude-code-setup.js.map +1 -1
- package/dist/adapters/claude-code.d.ts +21 -18
- package/dist/adapters/claude-code.js +46 -36
- package/dist/adapters/claude-code.js.map +1 -1
- package/dist/adapters/codex-setup.d.ts +2 -0
- package/dist/adapters/codex-setup.js +6 -0
- package/dist/adapters/codex-setup.js.map +1 -1
- package/dist/adapters/codex.d.ts +2 -0
- package/dist/adapters/codex.js +31 -3
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/container.d.ts +36 -15
- package/dist/adapters/container.js +72 -93
- package/dist/adapters/container.js.map +1 -1
- package/dist/adapters/copilot-detector.d.ts +13 -0
- package/dist/adapters/copilot-detector.js +62 -0
- package/dist/adapters/copilot-detector.js.map +1 -0
- package/dist/adapters/copilot.d.ts +79 -0
- package/dist/adapters/copilot.js +187 -0
- package/dist/adapters/copilot.js.map +1 -0
- package/dist/adapters/detectors.js +6 -0
- package/dist/adapters/detectors.js.map +1 -1
- package/dist/adapters/files.d.ts +16 -0
- package/dist/adapters/files.js +5 -0
- package/dist/adapters/files.js.map +1 -1
- package/dist/adapters/harnesses.d.ts +3 -2
- package/dist/adapters/harnesses.js +21 -9
- package/dist/adapters/harnesses.js.map +1 -1
- package/dist/adapters/hold-runtime.d.ts +19 -5
- package/dist/adapters/hold-runtime.js +23 -10
- package/dist/adapters/hold-runtime.js.map +1 -1
- package/dist/adapters/hold.d.ts +12 -0
- package/dist/adapters/hold.js +66 -31
- package/dist/adapters/hold.js.map +1 -1
- package/dist/adapters/json-state.js +4 -0
- package/dist/adapters/json-state.js.map +1 -1
- package/dist/adapters/key-files.d.ts +16 -0
- package/dist/adapters/key-files.js +28 -0
- package/dist/adapters/key-files.js.map +1 -0
- package/dist/adapters/key-states.d.ts +21 -0
- package/dist/adapters/key-states.js +43 -0
- package/dist/adapters/key-states.js.map +1 -0
- package/dist/adapters/model-logins.d.ts +21 -0
- package/dist/adapters/model-logins.js +48 -0
- package/dist/adapters/model-logins.js.map +1 -0
- package/dist/adapters/model-proxy.d.ts +32 -0
- package/dist/adapters/model-proxy.js +171 -0
- package/dist/adapters/model-proxy.js.map +1 -0
- package/dist/adapters/paths.d.ts +4 -0
- package/dist/adapters/paths.js +2 -0
- package/dist/adapters/paths.js.map +1 -1
- package/dist/adapters/plugin.d.ts +11 -8
- package/dist/adapters/plugin.js +47 -13
- package/dist/adapters/plugin.js.map +1 -1
- package/dist/adapters/proxy-runtime.d.ts +31 -0
- package/dist/adapters/proxy-runtime.js +100 -0
- package/dist/adapters/proxy-runtime.js.map +1 -0
- package/dist/adapters/proxy-tokens.d.ts +25 -0
- package/dist/adapters/proxy-tokens.js +67 -0
- package/dist/adapters/proxy-tokens.js.map +1 -0
- package/dist/adapters/runtime-adapters.d.ts +11 -6
- package/dist/adapters/runtime-adapters.js +25 -11
- package/dist/adapters/runtime-adapters.js.map +1 -1
- package/dist/adapters/service.d.ts +1 -1
- package/dist/adapters/service.js +2 -2
- package/dist/adapters/service.js.map +1 -1
- package/dist/adapters/trust.d.ts +2 -1
- package/dist/adapters/trust.js +4 -1
- package/dist/adapters/trust.js.map +1 -1
- package/dist/adapters/vendor-answers.d.ts +6 -0
- package/dist/adapters/vendor-answers.js +38 -0
- package/dist/adapters/vendor-answers.js.map +1 -0
- package/dist/adapters/vendor-key-check.d.ts +23 -0
- package/dist/adapters/vendor-key-check.js +36 -0
- package/dist/adapters/vendor-key-check.js.map +1 -0
- package/dist/bin/aeolus-trierarch.js +7 -2
- package/dist/bin/aeolus-trierarch.js.map +1 -1
- package/dist/cli/add.d.ts +2 -2
- package/dist/cli/config-check.js +1 -1
- package/dist/cli/config-check.js.map +1 -1
- package/dist/cli/hold.js +20 -6
- package/dist/cli/hold.js.map +1 -1
- package/dist/cli/login.d.ts +72 -0
- package/dist/cli/login.js +114 -0
- package/dist/cli/login.js.map +1 -0
- package/dist/cli/main.js +85 -5
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/proxy.d.ts +2 -0
- package/dist/cli/proxy.js +58 -0
- package/dist/cli/proxy.js.map +1 -0
- package/dist/cli/run.js +30 -4
- package/dist/cli/run.js.map +1 -1
- package/dist/cli/upgrade.d.ts +2 -2
- package/dist/cli/upgrade.js +2 -2
- package/dist/core/argo-reports.d.ts +10 -0
- package/dist/core/argo-reports.js +17 -0
- package/dist/core/argo-reports.js.map +1 -1
- package/dist/core/check-session-runtime.js +3 -1
- package/dist/core/check-session-runtime.js.map +1 -1
- package/dist/core/check-settings.d.ts +2 -0
- package/dist/core/check-settings.js +6 -1
- package/dist/core/check-settings.js.map +1 -1
- package/dist/core/entry.d.ts +12 -0
- package/dist/core/entry.js.map +1 -1
- package/dist/core/login.d.ts +28 -0
- package/dist/core/login.js +14 -0
- package/dist/core/login.js.map +1 -0
- package/dist/core/ports.d.ts +33 -1
- package/dist/core/reconciler.d.ts +5 -0
- package/dist/core/reconciler.js +12 -7
- package/dist/core/reconciler.js.map +1 -1
- package/dist/core/report-self.js +9 -3
- package/dist/core/report-self.js.map +1 -1
- package/dist/core/run-pass.d.ts +6 -1
- package/dist/core/run-pass.js +81 -13
- package/dist/core/run-pass.js.map +1 -1
- package/package.json +1 -2
- package/dist/adapters/claude-code-screen.d.ts +0 -1
- package/dist/adapters/claude-code-screen.js +0 -22
- package/dist/adapters/claude-code-screen.js.map +0 -1
- package/dist/adapters/held-command.d.ts +0 -13
- package/dist/adapters/held-command.js +0 -16
- package/dist/adapters/held-command.js.map +0 -1
- package/dist/adapters/launch-screen.d.ts +0 -14
- package/dist/adapters/launch-screen.js +0 -5
- package/dist/adapters/launch-screen.js.map +0 -1
- package/dist/adapters/stop-turn.d.ts +0 -13
- package/dist/adapters/stop-turn.js +0 -26
- package/dist/adapters/stop-turn.js.map +0 -1
- package/dist/adapters/tmux.d.ts +0 -13
- package/dist/adapters/tmux.js +0 -33
- package/dist/adapters/tmux.js.map +0 -1
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import type { Readable } from 'node:stream';
|
|
2
|
+
import { type RunningFile } from '../adapters/files.js';
|
|
3
|
+
import type { KeyFiles } from '../adapters/key-files.js';
|
|
4
|
+
import { type PluginHarness } from '../adapters/plugin.js';
|
|
5
|
+
import type { Service } from '../adapters/service.js';
|
|
6
|
+
import type { KeyCheck } from '../adapters/vendor-key-check.js';
|
|
7
|
+
import type { KeyStateAt, Login as SessionLogin } from '../core/login.js';
|
|
8
|
+
/**
|
|
9
|
+
* `aeolus-trierarch login` (api keys K11): keeps a harness's API key on this
|
|
10
|
+
* computer, chooses which login each harness and ship runs on, and says them.
|
|
11
|
+
* A key comes in on stdin, never a flag, so it stays out of the shell history
|
|
12
|
+
* (#445); it is written only once its vendor takes it, and never said back
|
|
13
|
+
* (K7). The logins go in the configuration (K5), every other key of it kept as
|
|
14
|
+
* written. Every change restarts the service, as `add` does; sessions keep
|
|
15
|
+
* running, each on the login it started with (K3).
|
|
16
|
+
*/
|
|
17
|
+
export type LoginRequest = {
|
|
18
|
+
readonly kind: 'show';
|
|
19
|
+
} | {
|
|
20
|
+
readonly kind: 'apiKey';
|
|
21
|
+
readonly harness: PluginHarness;
|
|
22
|
+
} | {
|
|
23
|
+
readonly kind: 'removeKey';
|
|
24
|
+
readonly harness: PluginHarness;
|
|
25
|
+
} | {
|
|
26
|
+
readonly kind: 'check';
|
|
27
|
+
readonly harness: PluginHarness;
|
|
28
|
+
} | {
|
|
29
|
+
readonly kind: 'setDefault';
|
|
30
|
+
readonly harness: PluginHarness;
|
|
31
|
+
readonly login: SessionLogin;
|
|
32
|
+
} | {
|
|
33
|
+
readonly kind: 'setShip';
|
|
34
|
+
readonly shipName: string;
|
|
35
|
+
readonly login: SessionLogin | 'default';
|
|
36
|
+
};
|
|
37
|
+
/** The key's state as login knows it: a key is written only once its vendor took it (K8). */
|
|
38
|
+
export type KeyState = 'none' | 'ready';
|
|
39
|
+
export interface HarnessLogin {
|
|
40
|
+
readonly harness: PluginHarness;
|
|
41
|
+
/** A harness with no default in the configuration runs on its subscription (K5). */
|
|
42
|
+
readonly default: SessionLogin;
|
|
43
|
+
readonly key: KeyState;
|
|
44
|
+
}
|
|
45
|
+
/** A ship the configuration names, on its own login. */
|
|
46
|
+
export interface ShipLogin {
|
|
47
|
+
readonly shipName: string;
|
|
48
|
+
readonly login: SessionLogin;
|
|
49
|
+
}
|
|
50
|
+
export interface LoginReport {
|
|
51
|
+
readonly harnesses: readonly HarnessLogin[];
|
|
52
|
+
readonly ships: readonly ShipLogin[];
|
|
53
|
+
readonly said: readonly string[];
|
|
54
|
+
}
|
|
55
|
+
export interface Login {
|
|
56
|
+
readonly request: LoginRequest;
|
|
57
|
+
/** The configuration's file. */
|
|
58
|
+
readonly config: string;
|
|
59
|
+
readonly keys: KeyFiles;
|
|
60
|
+
/** The key, as the operator types it at a terminal or pipes it in. */
|
|
61
|
+
readonly readKey: () => Promise<string>;
|
|
62
|
+
readonly check: (harness: PluginHarness, key: string) => Promise<KeyCheck>;
|
|
63
|
+
readonly service: Pick<Service, 'status' | 'restart'>;
|
|
64
|
+
readonly running: () => Promise<RunningFile | undefined>;
|
|
65
|
+
/** Waits between reads of running.json; a test passes one that does not wait. */
|
|
66
|
+
readonly sleep?: (ms: number) => Promise<void>;
|
|
67
|
+
/** Has the model proxy check the harness's key at once (K10): its state after; none when the proxy does not run. */
|
|
68
|
+
readonly checkNow: (harness: PluginHarness) => Promise<KeyStateAt | undefined>;
|
|
69
|
+
}
|
|
70
|
+
export declare function login(at: Login): Promise<LoginReport>;
|
|
71
|
+
/** A key piped in: all of the input, without its line end. */
|
|
72
|
+
export declare function readKeyFrom(input: Readable): Promise<string>;
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import { readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
import { loadConfiguration, TrierarchFileError } from '../adapters/files.js';
|
|
4
|
+
import { PLUGIN_HARNESSES } from '../adapters/plugin.js';
|
|
5
|
+
import { NOT_SAID_YET, startNewProcess } from './new-process.js';
|
|
6
|
+
const HARNESS_NAMES = { 'claude-code': 'Claude Code', codex: 'Codex' };
|
|
7
|
+
const LOGIN_NAMES = { apiKey: 'API key', subscription: 'Subscription' };
|
|
8
|
+
const LOGIN_WIDTH = Math.max(...Object.values(LOGIN_NAMES).map((name) => name.length));
|
|
9
|
+
/** The configuration as written: its logins read, every other key kept as it is. */
|
|
10
|
+
const rawSchema = z.object({ logins: z.object({ default: z.record(z.string(), z.string()).optional(), ships: z.record(z.string(), z.string()).optional() }).optional() }).loose();
|
|
11
|
+
export async function login(at) {
|
|
12
|
+
const said = await change(at);
|
|
13
|
+
// Before init there is no configuration: every harness then runs on its subscription.
|
|
14
|
+
const logins = (await loadConfiguration(at.config).catch(() => undefined))?.logins ?? {};
|
|
15
|
+
const harnesses = await Promise.all(PLUGIN_HARNESSES.map(async (harness) => ({ harness, default: logins.default?.[harness] ?? 'subscription', key: (await at.keys.has(harness)) ? 'ready' : 'none' })));
|
|
16
|
+
const ships = Object.entries(logins.ships ?? {})
|
|
17
|
+
.map(([shipName, shipLogin]) => ({ shipName, login: shipLogin }))
|
|
18
|
+
.sort((left, right) => left.shipName.localeCompare(right.shipName));
|
|
19
|
+
if (at.request.kind === 'show') {
|
|
20
|
+
const width = Math.max(...Object.values(HARNESS_NAMES).map((name) => name.length), ...ships.map((ship) => ship.shipName.length));
|
|
21
|
+
const lines = [
|
|
22
|
+
...harnesses.map((harness) => `${HARNESS_NAMES[harness.harness].padEnd(width)} default ${LOGIN_NAMES[harness.default].padEnd(LOGIN_WIDTH)} ${harness.key === 'ready' ? 'API key ready' : 'no API key'}`),
|
|
23
|
+
...ships.map((ship) => `${ship.shipName.padEnd(width)} ${LOGIN_NAMES[ship.login]}`),
|
|
24
|
+
];
|
|
25
|
+
return { harnesses, ships, said: lines };
|
|
26
|
+
}
|
|
27
|
+
return { harnesses, ships, said };
|
|
28
|
+
}
|
|
29
|
+
/** Writes the logins into the configuration, every other key kept; answers whether that changed them. */
|
|
30
|
+
async function writeLogins(config, next) {
|
|
31
|
+
// Checked as the trierarch reads it, so a broken configuration is said, never written over.
|
|
32
|
+
await loadConfiguration(config);
|
|
33
|
+
const raw = rawSchema.parse(JSON.parse(await readFile(config, 'utf8')));
|
|
34
|
+
const logins = next(raw.logins);
|
|
35
|
+
if (JSON.stringify(logins) === JSON.stringify(raw.logins ?? {})) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
await writeFile(config, `${JSON.stringify({ ...raw, logins }, null, 2)}\n`);
|
|
39
|
+
return true;
|
|
40
|
+
}
|
|
41
|
+
/** What the request changes and what it says of it; nothing for show. */
|
|
42
|
+
async function change(at) {
|
|
43
|
+
const { request, keys } = at;
|
|
44
|
+
switch (request.kind) {
|
|
45
|
+
case 'show':
|
|
46
|
+
return [];
|
|
47
|
+
case 'apiKey': {
|
|
48
|
+
const key = (await at.readKey()).trim();
|
|
49
|
+
if (key === '') {
|
|
50
|
+
throw new TrierarchFileError('No API key came in: pipe it in, or type it when asked.');
|
|
51
|
+
}
|
|
52
|
+
const checked = await at.check(request.harness, key);
|
|
53
|
+
if (checked.kind !== 'taken') {
|
|
54
|
+
throw new TrierarchFileError(`${checked.cause}. Nothing was written.`);
|
|
55
|
+
}
|
|
56
|
+
await keys.write(request.harness, key);
|
|
57
|
+
return [`The vendor took the API key for ${HARNESS_NAMES[request.harness]}; it is kept on this computer only.`, ...(await restart(at))];
|
|
58
|
+
}
|
|
59
|
+
case 'removeKey':
|
|
60
|
+
if (!(await keys.remove(request.harness))) {
|
|
61
|
+
return [`${HARNESS_NAMES[request.harness]} holds no API key: nothing to remove.`];
|
|
62
|
+
}
|
|
63
|
+
return [`Removed the API key for ${HARNESS_NAMES[request.harness]}.`, ...(await restart(at))];
|
|
64
|
+
case 'check': {
|
|
65
|
+
const name = HARNESS_NAMES[request.harness];
|
|
66
|
+
const key = await at.checkNow(request.harness);
|
|
67
|
+
if (key === undefined) {
|
|
68
|
+
throw new TrierarchFileError('The model proxy does not run: it runs while the service does and a harness holds a key (aeolus-trierarch start).');
|
|
69
|
+
}
|
|
70
|
+
switch (key.state) {
|
|
71
|
+
case 'ready':
|
|
72
|
+
return [`${name}'s API key is ready: its waiting ships start within a pass.`];
|
|
73
|
+
case 'outOfCredit':
|
|
74
|
+
return [`${name}'s API key is still out of credit since ${key.at ?? ''}. The proxy checks it again every 15 minutes.`];
|
|
75
|
+
case 'refused':
|
|
76
|
+
return [`${name}'s API key was refused by its vendor: give it a new one with aeolus-trierarch login ${request.harness} --api-key.`];
|
|
77
|
+
case 'none':
|
|
78
|
+
return [`${name} holds no API key: aeolus-trierarch login ${request.harness} --api-key.`];
|
|
79
|
+
}
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
case 'setDefault': {
|
|
83
|
+
const name = HARNESS_NAMES[request.harness];
|
|
84
|
+
const label = LOGIN_NAMES[request.login];
|
|
85
|
+
const isChanged = await writeLogins(at.config, (logins = {}) => ({ ...logins, default: { ...logins.default, [request.harness]: request.login } }));
|
|
86
|
+
return isChanged ? [`${name} runs on ${label} by default, from each session's next start.`, ...(await restart(at))] : [`${name} runs on ${label} by default already.`];
|
|
87
|
+
}
|
|
88
|
+
case 'setShip': {
|
|
89
|
+
const { shipName } = request;
|
|
90
|
+
const label = request.login === 'default' ? "its harness's default" : LOGIN_NAMES[request.login];
|
|
91
|
+
const isChanged = await writeLogins(at.config, (logins = {}) => {
|
|
92
|
+
const others = Object.fromEntries(Object.entries(logins.ships ?? {}).filter(([name]) => name !== shipName));
|
|
93
|
+
return { ...logins, ships: request.login === 'default' ? others : { ...others, [shipName]: request.login } };
|
|
94
|
+
});
|
|
95
|
+
return isChanged ? [`${shipName} runs on ${label} from its next start.`, ...(await restart(at))] : [`${shipName} runs on ${label} already.`];
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
async function restart(at) {
|
|
100
|
+
if (!(await at.service.status()).isInstalled) {
|
|
101
|
+
return ['The service is not installed: run aeolus-trierarch install to run it.'];
|
|
102
|
+
}
|
|
103
|
+
const { hasSaidVersion } = await startNewProcess({ start: () => at.service.restart(), service: at.service, running: at.running, ...(at.sleep !== undefined && { sleep: at.sleep }) });
|
|
104
|
+
return ['The trierarch restarted; its sessions kept running.', ...(hasSaidVersion ? [] : [NOT_SAID_YET])];
|
|
105
|
+
}
|
|
106
|
+
/** A key piped in: all of the input, without its line end. */
|
|
107
|
+
export async function readKeyFrom(input) {
|
|
108
|
+
const chunks = [];
|
|
109
|
+
for await (const chunk of input) {
|
|
110
|
+
chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(String(chunk)));
|
|
111
|
+
}
|
|
112
|
+
return Buffer.concat(chunks).toString('utf8').trim();
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=login.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"login.js","sourceRoot":"","sources":["../../src/cli/login.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGvD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAoB,MAAM,sBAAsB,CAAC;AAE/F,OAAO,EAAE,gBAAgB,EAAsB,MAAM,uBAAuB,CAAC;AAI7E,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AA0DjE,MAAM,aAAa,GAA4C,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;AAChH,MAAM,WAAW,GAA2C,EAAE,MAAM,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAChH,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAEvF,oFAAoF;AACpF,MAAM,SAAS,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;AAElL,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,EAAS;IACnC,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9B,sFAAsF;IACtF,MAAM,MAAM,GAAW,CAAC,MAAM,iBAAiB,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,IAAI,EAAE,CAAC;IACjG,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAyB,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,cAAc,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/N,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;SAC7C,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;SAChE,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;IACtE,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC/B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QACjI,MAAM,KAAK,GAAG;YACZ,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC;YAC1M,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;SACrF,CAAC;QACF,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACpC,CAAC;AAED,yGAAyG;AACzG,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,IAAuG;IAChJ,4FAA4F;IAC5F,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAChC,MAAM,GAAG,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IACxE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAChC,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAChE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,MAAM,SAAS,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC5E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,yEAAyE;AACzE,KAAK,UAAU,MAAM,CAAC,EAAS;IAC7B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC;IAC7B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM;YACT,OAAO,EAAE,CAAC;QACZ,KAAK,QAAQ,CAAC,CAAC,CAAC;YACd,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,GAAG,KAAK,EAAE,EAAE,CAAC;gBACf,MAAM,IAAI,kBAAkB,CAAC,wDAAwD,CAAC,CAAC;YACzF,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACrD,IAAI,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC7B,MAAM,IAAI,kBAAkB,CAAC,GAAG,OAAO,CAAC,KAAK,wBAAwB,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,CAAC,mCAAmC,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,qCAAqC,EAAE,GAAG,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1I,CAAC;QACD,KAAK,WAAW;YACd,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;gBAC1C,OAAO,CAAC,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,uCAAuC,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,CAAC,2BAA2B,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAChG,KAAK,OAAO,CAAC,CAAC,CAAC;YACb,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC/C,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;gBACtB,MAAM,IAAI,kBAAkB,CAAC,kHAAkH,CAAC,CAAC;YACnJ,CAAC;YACD,QAAQ,GAAG,CAAC,KAAK,EAAE,CAAC;gBAClB,KAAK,OAAO;oBACV,OAAO,CAAC,GAAG,IAAI,6DAA6D,CAAC,CAAC;gBAChF,KAAK,aAAa;oBAChB,OAAO,CAAC,GAAG,IAAI,2CAA2C,GAAG,CAAC,EAAE,IAAI,EAAE,+CAA+C,CAAC,CAAC;gBACzH,KAAK,SAAS;oBACZ,OAAO,CAAC,GAAG,IAAI,uFAAuF,OAAO,CAAC,OAAO,aAAa,CAAC,CAAC;gBACtI,KAAK,MAAM;oBACT,OAAO,CAAC,GAAG,IAAI,6CAA6C,OAAO,CAAC,OAAO,aAAa,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM;QACR,CAAC;QACD,KAAK,YAAY,CAAC,CAAC,CAAC;YAClB,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACzC,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACnJ,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,YAAY,KAAK,8CAA8C,EAAE,GAAG,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,YAAY,KAAK,sBAAsB,CAAC,CAAC;QACzK,CAAC;QACD,KAAK,SAAS,CAAC,CAAC,CAAC;YACf,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;YAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACjG,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,MAAM,GAAG,EAAE,EAAE,EAAE;gBAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC;gBAC5G,OAAO,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;YAC/G,CAAC,CAAC,CAAC;YACH,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,YAAY,KAAK,uBAAuB,EAAE,GAAG,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,QAAQ,YAAY,KAAK,WAAW,CAAC,CAAC;QAC/I,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,OAAO,CAAC,EAAS;IAC9B,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7C,OAAO,CAAC,uEAAuE,CAAC,CAAC;IACnF,CAAC;IACD,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IACtL,OAAO,CAAC,qDAAqD,EAAE,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;AAC5G,CAAC;AAED,8DAA8D;AAC9D,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,KAAe;IAC/C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3E,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AACvD,CAAC"}
|
package/dist/cli/main.js
CHANGED
|
@@ -3,6 +3,7 @@ import { access } from 'node:fs/promises';
|
|
|
3
3
|
import { homedir } from 'node:os';
|
|
4
4
|
import { join } from 'node:path';
|
|
5
5
|
import { fileURLToPath } from 'node:url';
|
|
6
|
+
import { z } from 'zod';
|
|
6
7
|
import { cappedLogStream, isWritingTo } from '../adapters/capped-log.js';
|
|
7
8
|
import { createClaudeCodeSetup } from '../adapters/claude-code-setup.js';
|
|
8
9
|
import { createCodexSetup } from '../adapters/codex-setup.js';
|
|
@@ -11,6 +12,7 @@ import { createDetectedFile } from '../adapters/detected-file.js';
|
|
|
11
12
|
import { createDetectors } from '../adapters/detectors.js';
|
|
12
13
|
import { loadConfiguration, readCrewFile, readRunningFile, removeRemoteControl, TrierarchFileError } from '../adapters/files.js';
|
|
13
14
|
import { createJsonState } from '../adapters/json-state.js';
|
|
15
|
+
import { createKeyFiles } from '../adapters/key-files.js';
|
|
14
16
|
import { createLogger, readLogLine, renderLogLine } from '../adapters/log.js';
|
|
15
17
|
import { createStyle, isColourTerminal } from '../adapters/style.js';
|
|
16
18
|
import { trierarchPaths } from '../adapters/paths.js';
|
|
@@ -19,8 +21,11 @@ import { createPluginUpdate } from '../adapters/plugin-update.js';
|
|
|
19
21
|
import { createRestFleet } from '../adapters/rest-fleet.js';
|
|
20
22
|
import { runCommand, streamCommand } from '../adapters/run-command.js';
|
|
21
23
|
import { createService, serviceEnvironment } from '../adapters/service.js';
|
|
22
|
-
import { hostSessions } from '../adapters/runtime-adapters.js';
|
|
24
|
+
import { hostSessions, modelProxy } from '../adapters/runtime-adapters.js';
|
|
25
|
+
import { checkKey } from '../adapters/vendor-key-check.js';
|
|
26
|
+
import { CHECK_PATH } from '../adapters/model-proxy.js';
|
|
23
27
|
import { runningVersion } from '../adapters/version.js';
|
|
28
|
+
import { KEY_STATES } from '../core/login.js';
|
|
24
29
|
import { createDetectHarnesses } from '../core/detect-harnesses.js';
|
|
25
30
|
import { createUninstall } from '../core/uninstall.js';
|
|
26
31
|
import { configCheck } from './config-check.js';
|
|
@@ -28,6 +33,7 @@ import { detectOptions } from './detect.js';
|
|
|
28
33
|
import { addPlace } from './add.js';
|
|
29
34
|
import { initTrierarch } from './init.js';
|
|
30
35
|
import { describeList, inspectList } from './list.js';
|
|
36
|
+
import { login, readKeyFrom } from './login.js';
|
|
31
37
|
import { createServiceLog } from './logs.js';
|
|
32
38
|
import { createTerminalPrompter } from './prompter.js';
|
|
33
39
|
import { runTrierarch } from './run.js';
|
|
@@ -45,6 +51,12 @@ export const USAGE = [
|
|
|
45
51
|
' add folder <name> <path> add a folder to crew a ship in as it is, the same way',
|
|
46
52
|
' config check check the configuration and give the effective flags per harness',
|
|
47
53
|
' detect detect again what each configured harness offers (models, effort) and keep it beside the configuration',
|
|
54
|
+
' login each harness\'s login and whether it holds an API key',
|
|
55
|
+
' login <harness> --api-key read an API key for claude-code or codex from stdin (not shown as typed), check it with the vendor and keep it on this computer only, then restart the service; sessions keep running',
|
|
56
|
+
' login <harness> --remove-key remove the API key for that harness, then restart the service',
|
|
57
|
+
' login <harness> --check check an API key out of credit at once, as the model proxy does every 15 minutes',
|
|
58
|
+
' login <harness> --default api-key|subscription the login that harness\'s sessions run on, from each one\'s next start, then restart the service',
|
|
59
|
+
' login --ship <name> api-key|subscription|default the login that ship runs on, or its harness\'s default again, from its next start, then restart the service',
|
|
48
60
|
'',
|
|
49
61
|
'Look:',
|
|
50
62
|
' status the version, the aeolus-fleet plugin per harness, the repositories, the service, the fleet and its own lease, caps in use, entries by state, kept worktrees and orphans',
|
|
@@ -62,10 +74,10 @@ export const USAGE = [
|
|
|
62
74
|
'',
|
|
63
75
|
'--json answers JSON, for a ship to read.',
|
|
64
76
|
].join('\n');
|
|
65
|
-
const VALUE_FLAGS = new Set(['--config', '--fleet-url', '--ship-id', '--plugin-ship-id', '--secret', '--lines']);
|
|
77
|
+
const VALUE_FLAGS = new Set(['--config', '--fleet-url', '--ship-id', '--plugin-ship-id', '--secret', '--lines', '--default', '--ship']);
|
|
66
78
|
/** Set for the installed version's upgrade that runs the plugin step of an upgrade (#725), which restarts the service itself (#829); older versions ignore it. */
|
|
67
79
|
const PLUGIN_STEP_VARIABLE = 'AEOLUS_TRIERARCH_PLUGIN_STEP';
|
|
68
|
-
const SWITCHES = new Set(['--json', '--yes', '--follow', '--no-load', '--version']);
|
|
80
|
+
const SWITCHES = new Set(['--json', '--yes', '--follow', '--no-load', '--version', '--api-key', '--remove-key', '--check']);
|
|
69
81
|
const DEFAULT_LINES = 50;
|
|
70
82
|
const FOLLOW_INTERVAL_MS = 500;
|
|
71
83
|
/** The command words, flag values and switches of a command line; undefined for a flag it does not know. */
|
|
@@ -100,6 +112,44 @@ function parse(argv) {
|
|
|
100
112
|
function summaryOf(said, style) {
|
|
101
113
|
return [`\n${style.tone('strong', 'Summary')}`, ...said.map((line) => ` ${line}`)].join('\n');
|
|
102
114
|
}
|
|
115
|
+
/** A key's state as the model proxy answers a check. */
|
|
116
|
+
const keyStateAtSchema = z.object({ state: z.enum(KEY_STATES), at: z.string().optional() });
|
|
117
|
+
/** The login a command line names: api-key or subscription, and default where it may clear one. */
|
|
118
|
+
const LOGIN_WORDS = { 'api-key': 'apiKey', subscription: 'subscription', default: 'default' };
|
|
119
|
+
/** What a login command line asks: show with nothing more, a ship's login with --ship, else a key to read or remove or a default for the harness it names. */
|
|
120
|
+
function loginRequest(word, at) {
|
|
121
|
+
const isApiKey = at.switches.has('--api-key');
|
|
122
|
+
const isRemoveKey = at.switches.has('--remove-key');
|
|
123
|
+
const isCheck = at.switches.has('--check');
|
|
124
|
+
const shipName = at.values.get('--ship');
|
|
125
|
+
const defaultWord = at.values.get('--default');
|
|
126
|
+
if (shipName !== undefined) {
|
|
127
|
+
const login = LOGIN_WORDS[word ?? ''];
|
|
128
|
+
if (login === undefined) {
|
|
129
|
+
throw new TrierarchFileError('A ship\'s login is api-key, subscription or default: aeolus-trierarch login --ship build-docs api-key');
|
|
130
|
+
}
|
|
131
|
+
return { kind: 'setShip', shipName, login };
|
|
132
|
+
}
|
|
133
|
+
if (word === undefined && !isApiKey && !isRemoveKey && !isCheck && defaultWord === undefined) {
|
|
134
|
+
return { kind: 'show' };
|
|
135
|
+
}
|
|
136
|
+
if (word === 'copilot') {
|
|
137
|
+
// Copilot signs in with the machine's own login (CC6): it has no API key, default or check to set.
|
|
138
|
+
throw new TrierarchFileError("Copilot signs in with this computer's own login (copilot login), never an API key: the trierarch keeps no Copilot key and runs every Copilot session on that login");
|
|
139
|
+
}
|
|
140
|
+
const harness = PLUGIN_HARNESSES.find((name) => name === word);
|
|
141
|
+
if (harness === undefined || [isApiKey, isRemoveKey, isCheck, defaultWord !== undefined].filter(Boolean).length !== 1) {
|
|
142
|
+
throw new TrierarchFileError(`login takes ${PLUGIN_HARNESSES.join(' or ')}: aeolus-trierarch login claude-code --api-key`);
|
|
143
|
+
}
|
|
144
|
+
if (defaultWord !== undefined) {
|
|
145
|
+
const login = LOGIN_WORDS[defaultWord];
|
|
146
|
+
if (login === undefined || login === 'default') {
|
|
147
|
+
throw new TrierarchFileError(`A login is api-key or subscription: aeolus-trierarch login ${harness} --default api-key`);
|
|
148
|
+
}
|
|
149
|
+
return { kind: 'setDefault', harness, login };
|
|
150
|
+
}
|
|
151
|
+
return { kind: isApiKey ? 'apiKey' : isCheck ? 'check' : 'removeKey', harness };
|
|
152
|
+
}
|
|
103
153
|
/** Runs one command line of `aeolus-trierarch`. */
|
|
104
154
|
export async function main(argv, machine) {
|
|
105
155
|
const { env, platform } = machine;
|
|
@@ -208,6 +258,36 @@ export async function main(argv, machine) {
|
|
|
208
258
|
const { text, ...data } = await configCheck(paths, { files: { claudeCode: claudeCodeSetup() }, host: createContainerHost({ modelTokenFile: paths.modelToken }) });
|
|
209
259
|
return { data, text };
|
|
210
260
|
},
|
|
261
|
+
login: async () => {
|
|
262
|
+
const report = await login({
|
|
263
|
+
request: loginRequest(words[1], { switches, values }),
|
|
264
|
+
config: paths.config,
|
|
265
|
+
keys: createKeyFiles(paths.keys),
|
|
266
|
+
readKey: async () => {
|
|
267
|
+
if (!process.stdin.isTTY) {
|
|
268
|
+
return readKeyFrom(process.stdin);
|
|
269
|
+
}
|
|
270
|
+
// Asked on stderr, so stdout holds the answer alone.
|
|
271
|
+
const prompter = createTerminalPrompter({ input: process.stdin, output: process.stderr, style: createStyle({ isColour: isColourTerminal(env, process.stderr.isTTY) }) });
|
|
272
|
+
try {
|
|
273
|
+
return await prompter.secret('API key (not shown):');
|
|
274
|
+
}
|
|
275
|
+
finally {
|
|
276
|
+
prompter.close();
|
|
277
|
+
}
|
|
278
|
+
},
|
|
279
|
+
check: (harness, key) => checkKey({ harness, key }),
|
|
280
|
+
checkNow: async (harness) => {
|
|
281
|
+
const url = await modelProxy({ paths, version: runningVersion() }).url();
|
|
282
|
+
const answer = url === undefined ? undefined : await fetch(`${url}${CHECK_PATH}${harness}`, { method: 'POST' }).catch(() => undefined);
|
|
283
|
+
const key = keyStateAtSchema.safeParse(answer?.ok === true ? await answer.json().catch(() => undefined) : undefined);
|
|
284
|
+
return key.success ? key.data : undefined;
|
|
285
|
+
},
|
|
286
|
+
service: serviceAt(),
|
|
287
|
+
running: () => readRunningFile(paths.running),
|
|
288
|
+
});
|
|
289
|
+
return { data: report, text: report.said.join('\n') };
|
|
290
|
+
},
|
|
211
291
|
detect: async () => {
|
|
212
292
|
const { text, ...data } = await detectOptions({ configuration: await loadConfiguration(paths.config), detect: detectAt() });
|
|
213
293
|
return { data, text };
|
|
@@ -315,8 +395,8 @@ export async function main(argv, machine) {
|
|
|
315
395
|
return { data: { stopped: true }, text: 'aeolus-trierarch stopped.' };
|
|
316
396
|
},
|
|
317
397
|
};
|
|
318
|
-
// upgrade takes a word after it, the version; add takes three, the kind, the name and the path.
|
|
319
|
-
const command = words[0] === 'upgrade' && words.length <= 2 ? commands
|
|
398
|
+
// upgrade takes a word after it, the version; add takes three, the kind, the name and the path; login one, the harness.
|
|
399
|
+
const command = (words[0] === 'upgrade' || words[0] === 'login') && words.length <= 2 ? commands[words[0]] : words[0] === 'add' && words.length === 4 ? commands.add : commands[words.join(' ')];
|
|
320
400
|
if (command === undefined) {
|
|
321
401
|
return { output: USAGE, code: 2 };
|
|
322
402
|
}
|
package/dist/cli/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/cli/main.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { mkdir, readFile, writeFile } from 'node:fs/promises';
|
|
2
|
+
import { createServer } from 'node:http';
|
|
3
|
+
import { CHECK_INTERVAL_MS, createModelProxy } from '../adapters/model-proxy.js';
|
|
4
|
+
import { keyStatesFileOf, proxyFilesOf } from '../adapters/proxy-runtime.js';
|
|
5
|
+
import { runningVersion } from '../adapters/version.js';
|
|
6
|
+
/**
|
|
7
|
+
* `aeolus-trierarch proxy --folder <folder> --sessions <folder> --keys <folder>`:
|
|
8
|
+
* the model proxy (headless H16), as the trierarch starts it, never a person.
|
|
9
|
+
* It listens on loopback, on the port it listened on before when it can, so a
|
|
10
|
+
* running session reaches it where it did; it writes its port and pid in its
|
|
11
|
+
* folder, checks each key out of credit every 15 minutes, and ends on SIGTERM.
|
|
12
|
+
*/
|
|
13
|
+
const LOOPBACK = '127.0.0.1';
|
|
14
|
+
function listen(server, port) {
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
server.once('error', reject);
|
|
17
|
+
server.listen(port, LOOPBACK, () => {
|
|
18
|
+
server.off('error', reject);
|
|
19
|
+
const address = server.address();
|
|
20
|
+
resolve(typeof address === 'object' && address !== null ? address.port : port);
|
|
21
|
+
});
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
/** Runs the proxy with the words after `proxy`; answers its exit code, or 2 for words it cannot take. */
|
|
25
|
+
export async function proxyCommand(words) {
|
|
26
|
+
const valueOf = (name) => (words.includes(name) ? words[words.indexOf(name) + 1] : undefined);
|
|
27
|
+
const folder = valueOf('--folder');
|
|
28
|
+
const sessions = valueOf('--sessions');
|
|
29
|
+
const keys = valueOf('--keys');
|
|
30
|
+
if (folder === undefined || sessions === undefined || keys === undefined) {
|
|
31
|
+
process.stderr.write('Usage: aeolus-trierarch proxy --folder <folder> --sessions <folder> --keys <folder>\n');
|
|
32
|
+
return 2;
|
|
33
|
+
}
|
|
34
|
+
const files = proxyFilesOf(folder);
|
|
35
|
+
await mkdir(folder, { recursive: true, mode: 0o700 });
|
|
36
|
+
const proxy = createModelProxy({ sessions, keys, keyStates: keyStatesFileOf(folder), version: runningVersion() });
|
|
37
|
+
const server = createServer(proxy.handle);
|
|
38
|
+
const before = Number(await readFile(files.port, 'utf8').catch(() => '0'));
|
|
39
|
+
// The port it had may be taken by now: then any free one, and sessions started from now reach it there.
|
|
40
|
+
const port = await listen(server, Number.isInteger(before) ? before : 0).catch(() => listen(server, 0));
|
|
41
|
+
await writeFile(files.port, String(port));
|
|
42
|
+
await writeFile(files.pid, String(process.pid));
|
|
43
|
+
// A key out of credit is checked every 15 minutes (api keys K10); a check that fails is tried again at the next.
|
|
44
|
+
const checks = setInterval(() => {
|
|
45
|
+
proxy.checkOutOfCredit().catch(() => undefined);
|
|
46
|
+
}, CHECK_INTERVAL_MS);
|
|
47
|
+
await new Promise((resolve) => {
|
|
48
|
+
process.once('SIGTERM', () => {
|
|
49
|
+
clearInterval(checks);
|
|
50
|
+
server.closeAllConnections();
|
|
51
|
+
server.close(() => {
|
|
52
|
+
resolve();
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
return 0;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=proxy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proxy.js","sourceRoot":"","sources":["../../src/cli/proxy.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/run.js
CHANGED
|
@@ -16,11 +16,17 @@ import { adapterFlagsOf, createHarnesses, riskyFlagsOf } from '../adapters/harne
|
|
|
16
16
|
import { createFolderProcesses } from '../adapters/folder-processes.js';
|
|
17
17
|
import { createGitCheckouts } from '../adapters/git-checkouts.js';
|
|
18
18
|
import { createJsonState } from '../adapters/json-state.js';
|
|
19
|
+
import { createKeyFiles } from '../adapters/key-files.js';
|
|
20
|
+
import { createModelLogins } from '../adapters/model-logins.js';
|
|
21
|
+
import { createKeyStates } from '../adapters/key-states.js';
|
|
22
|
+
import { keyStatesFileOf } from '../adapters/proxy-runtime.js';
|
|
23
|
+
import { claudeCodeKeyInReach } from '../adapters/claude-code.js';
|
|
19
24
|
import { createMachine } from '../adapters/machine.js';
|
|
20
25
|
import { shipHome } from '../adapters/paths.js';
|
|
21
26
|
import { runCommand } from '../adapters/run-command.js';
|
|
22
27
|
import { createRestFleet } from '../adapters/rest-fleet.js';
|
|
23
|
-
import { runtimeAdaptersOf } from '../adapters/runtime-adapters.js';
|
|
28
|
+
import { modelProxy, runtimeAdaptersOf } from '../adapters/runtime-adapters.js';
|
|
29
|
+
import { PLUGIN_HARNESSES } from '../adapters/plugin.js';
|
|
24
30
|
import { createCallerCheck } from '../adapters/caller-check.js';
|
|
25
31
|
import { createShipSockets } from '../adapters/ship-sockets.js';
|
|
26
32
|
import { sessionsLaunch } from '../adapters/hold-runtime.js';
|
|
@@ -99,8 +105,14 @@ export async function runTrierarch(input) {
|
|
|
99
105
|
let offered = { configuration, detected };
|
|
100
106
|
const version = runningVersion();
|
|
101
107
|
const clones = trustedClonesOf({ configured, held: trustedRepositories, root: paths.repositories });
|
|
102
|
-
const { sessions, workspace, shipHomes } = runtimeAdaptersOf({ configuration, paths, version, launch: sessionsLaunch({ platform: process.platform, env }), managedSettings, clones });
|
|
103
|
-
|
|
108
|
+
const { sessions, workspace, shipHomes, modelProxyUrlOf } = runtimeAdaptersOf({ configuration, paths, version, launch: sessionsLaunch({ platform: process.platform, env }), managedSettings, clones });
|
|
109
|
+
// The model proxy runs while any harness holds an API key (headless H16); a pass starts it again when it is gone.
|
|
110
|
+
const keys = createKeyFiles(paths.keys);
|
|
111
|
+
const proxy = modelProxy({ paths, version, launch: sessionsLaunch({ platform: process.platform, env }) });
|
|
112
|
+
const { harnesses, plugins } = await createHarnesses({ configuration, homeDirectory, env, managedSettings, detected: () => offered.detected, sessions, proxyUrl: async () => {
|
|
113
|
+
const url = await proxy.url();
|
|
114
|
+
return url === undefined ? undefined : modelProxyUrlOf(url);
|
|
115
|
+
}, ...(shipHomes !== undefined && { shipHomes }) });
|
|
104
116
|
const state = createJsonState(paths.state);
|
|
105
117
|
const trust = createTrust({ configuration, homeDirectory, env, managedSettings });
|
|
106
118
|
const clock = { now: () => new Date() };
|
|
@@ -139,7 +151,14 @@ export async function runTrierarch(input) {
|
|
|
139
151
|
},
|
|
140
152
|
refreshCheckouts: (shipId) => checkouts.refresh(shipId),
|
|
141
153
|
});
|
|
142
|
-
const
|
|
154
|
+
const claudeCodeSetup = createClaudeCodeSetup({ homeDirectory, managedSettings, ...(env.CLAUDE_CONFIG_DIR !== undefined && { configDirectory: env.CLAUDE_CONFIG_DIR }) });
|
|
155
|
+
const modelLogins = createModelLogins({
|
|
156
|
+
keyStates: createKeyStates({ keys: paths.keys, file: keyStatesFileOf(paths.proxy) }),
|
|
157
|
+
// The harness as launch reads it, so the guard sees the flags the session would start with (K6).
|
|
158
|
+
claudeCode: { keyInReach: ({ options, folder }) => claudeCodeKeyInReach(claudeCodeSetup, { harness: configuration.harnesses['claude-code'] ?? { flags: [], options: {} }, options, ...(folder !== undefined && { folder }) }) },
|
|
159
|
+
codex: createCodexSetup(),
|
|
160
|
+
});
|
|
161
|
+
const runPass = createRunPass({ fleet, harnesses, processes: sessions, folderProcesses: createFolderProcesses(), workspace, checkouts, trust, state, setup, clock, logger, refuseModel, newLaunchId: randomUUID, sockets, modelLogins, ...(configured.logins !== undefined && { logins: configured.logins }) });
|
|
143
162
|
// The machine's load (#400) and the harnesses' usage (#353), each read on its own interval for the report.
|
|
144
163
|
const readLoad = createReadLoad({ machine: createMachine({ worktreeRoot: configuration.worktreeRoot ?? paths.worktrees }), fleet, state, clock, logger });
|
|
145
164
|
const usage = createUsage({
|
|
@@ -155,8 +174,15 @@ export async function runTrierarch(input) {
|
|
|
155
174
|
const readUsage = createReadUsage({ usage, state, clock, logger, harnesses: Object.keys(configured.harnesses), prices: priceTableOf(configured.prices) });
|
|
156
175
|
const reportSelf = createReportSelf({ fleet, processes: sessions, trust, state, setup, readLoad, readUsage, clock });
|
|
157
176
|
const askForTrustedRepositories = createAskForTrustedRepositories({ fleet, logger, ...(crew.pluginShipId !== undefined && { pluginShipId: crew.pluginShipId }) });
|
|
177
|
+
const keepProxy = async () => {
|
|
178
|
+
const held = await Promise.all(PLUGIN_HARNESSES.map((harness) => keys.has(harness)));
|
|
179
|
+
await proxy.keep({ isNeeded: held.includes(true) }).catch((error) => {
|
|
180
|
+
logger.warn(`the model proxy: ${error instanceof Error ? error.message : String(error)}`);
|
|
181
|
+
});
|
|
182
|
+
};
|
|
158
183
|
// Each pass ends with the trierarch's own report: the first at start, then only when it changed.
|
|
159
184
|
const pass = async () => {
|
|
185
|
+
await keepProxy();
|
|
160
186
|
await askForTrustedRepositories();
|
|
161
187
|
await runPass();
|
|
162
188
|
await reportSelf();
|