@sentropic/llm-mesh 0.34.1 → 0.35.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 CHANGED
@@ -140,6 +140,42 @@ const facade = createLlmMeshFacade({
140
140
  That migration option is only for pre-ownerScope local records. New enrollment
141
141
  always takes ownership from `StartEnrollmentInput.ownerScope`.
142
142
 
143
+ ## Device-flow enrollment CLI (`llm-mesh-enroll`)
144
+
145
+ The `llm-mesh-enroll` bin enrolls seat-billed device-flow accounts
146
+ (muse-code and codex, repeatable for N accounts) and probes muse-code seat
147
+ accounts. The keyring key is read from the environment variable named by
148
+ `--keyring-key-env` (never from argv): it must hold 32 bytes as 64 hex
149
+ chars or 44/43-char base64 (a human passphrase is refused). stdout carries
150
+ one JSON object per line, secrets never reach stdout, stderr, or error
151
+ messages. `probe` only supports `--provider muse-code` and verifies the
152
+ stored account provider before any token leaves the keyring; `--effort` is
153
+ validated for forward compatibility but not forwarded on the Muse Chat wire.
154
+
155
+ ```sh
156
+ export SENTROPIC_LLM_MESH_KEYRING_KEY # owner-held 32-byte key (hex), set in the environment
157
+
158
+ # 1. Enroll one account (repeat with a new --label per account).
159
+ # The owner approves each device login on accountscenter.meta.com.
160
+ llm-mesh-enroll enroll --provider muse-code \
161
+ --keyring-dir ~/.sentropic/immo-detection-keyring \
162
+ --owner-scope tenant-immo:signal-detection \
163
+ --label "Immo Detection 1" \
164
+ --keyring-key-env SENTROPIC_LLM_MESH_KEYRING_KEY
165
+
166
+ # 2. Probe the stored account (prints status plus latency plus usage only).
167
+ llm-mesh-enroll probe --provider muse-code \
168
+ --keyring-dir ~/.sentropic/immo-detection-keyring \
169
+ --account <account-id-from-enroll> \
170
+ --model muse-wonder-1.0 --effort low \
171
+ --keyring-key-env SENTROPIC_LLM_MESH_KEYRING_KEY
172
+ ```
173
+
174
+ A probe 402 means `billing_not_configured` on the non-seat `muse.ts`
175
+ direct-key path: re-enroll a seat account with the device flow above.
176
+ Exit codes: 0 ok, 2 usage, 3 enrollment failed, 4 account not found,
177
+ 5 keyring key, 6 probe failed, 7 billing not configured.
178
+
143
179
  ## Claude subscription enrollment (LOT 1)
144
180
 
145
181
  The facade supports browser PKCE enrollment and renewable Claude CLI credential
@@ -96,7 +96,7 @@ export interface EnrollmentProvider {
96
96
  resolve(credential: PreparedCredential): Promise<ResolvedProviderMetadata>;
97
97
  refresh(input: RefreshInput): Promise<PreparedCredential>;
98
98
  waitForCallback?(enrollmentId: string): Promise<CompletedEnrollment>;
99
- pollForCompletion?(enrollmentId: string): Promise<CompletedEnrollment>;
99
+ pollForCompletion?(enrollmentId: string, maxAttempts?: number): Promise<CompletedEnrollment>;
100
100
  cancel?(enrollmentId: string): Promise<void>;
101
101
  }
102
102
  //# sourceMappingURL=contracts.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/enrollment/contracts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contracts.d.ts","sourceRoot":"","sources":["../../src/enrollment/contracts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ export {};
3
+ //# sourceMappingURL=bin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.d.ts","sourceRoot":"","sources":["../../../src/node/cli/bin.ts"],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ #!/usr/bin/env node
2
+ // @sentropic/llm-mesh/node/cli/bin.ts
3
+ //
4
+ // Dedicated executable entry point for the `llm-mesh-enroll` bin
5
+ // (package.json `bin`). It runs unconditionally: npm exposes the bin as a
6
+ // symlink named `llm-mesh-enroll`, so a suffix guard on `argv[1]` would
7
+ // no-op. Library consumers import `run` from `./enroll-cli.js` instead.
8
+ import { argv, exit } from 'node:process';
9
+ import { EXIT_CODES, defaultWriters } from './enroll-args.js';
10
+ import { run } from './enroll-cli.js';
11
+ run(argv.slice(2)).then((code) => exit(code), () => {
12
+ defaultWriters().err(JSON.stringify({ status: 'error', code: EXIT_CODES.probeFailed }));
13
+ exit(EXIT_CODES.probeFailed);
14
+ });
15
+ //# sourceMappingURL=bin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bin.js","sourceRoot":"","sources":["../../../src/node/cli/bin.ts"],"names":[],"mappings":";AACA,sCAAsC;AACtC,EAAE;AACF,iEAAiE;AACjE,0EAA0E;AAC1E,wEAAwE;AACxE,wEAAwE;AAExE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CACrB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EACpB,GAAG,EAAE;IACH,cAAc,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxF,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAC/B,CAAC,CACF,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { LocalAccountTransportService } from '../../service/local-account-transport-service.js';
2
+ export declare const EXIT_CODES: {
3
+ readonly ok: 0;
4
+ readonly usage: 2;
5
+ readonly enrollmentFailed: 3;
6
+ readonly accountNotFound: 4;
7
+ readonly keyringKey: 5;
8
+ readonly probeFailed: 6;
9
+ readonly billingNotConfigured: 7;
10
+ };
11
+ export interface CliWriters {
12
+ out: (line: string) => void;
13
+ err: (line: string) => void;
14
+ }
15
+ export interface EnrollCliDeps {
16
+ fetchFn?: typeof fetch;
17
+ writers?: CliWriters;
18
+ env?: Record<string, string | undefined>;
19
+ }
20
+ export interface ParsedArgs {
21
+ command: 'enroll' | 'probe' | 'help';
22
+ provider: string;
23
+ keyringDir?: string;
24
+ keyringKeyEnv?: string;
25
+ ownerScope?: string;
26
+ label?: string;
27
+ account?: string;
28
+ model?: string;
29
+ effort?: string;
30
+ maxAttempts?: number;
31
+ }
32
+ export declare const parseArgs: (argv: string[]) => ParsedArgs;
33
+ export declare const usageText: () => string;
34
+ export declare const defaultWriters: () => CliWriters;
35
+ export declare const fail: (writers: CliWriters, code: number, message: string) => number;
36
+ export declare const resolveMasterKey: (keyringKeyEnv: string | undefined, env: Record<string, string | undefined>) => {
37
+ key?: Buffer;
38
+ error?: string;
39
+ };
40
+ export declare const openService: (keyringDir: string, masterKey: Buffer, fetchFn: typeof fetch) => LocalAccountTransportService;
41
+ //# sourceMappingURL=enroll-args.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-args.d.ts","sourceRoot":"","sources":["../../../src/node/cli/enroll-args.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAEhG,eAAO,MAAM,UAAU;;;;;;;;CAQb,CAAC;AAEX,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5B,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IACvB,OAAO,CAAC,EAAE,UAAU,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA0CD,eAAO,MAAM,SAAS,SAAU,MAAM,EAAE,KAAG,UAsB1C,CAAC;AAEF,eAAO,MAAM,SAAS,QAAO,MAOf,CAAC;AAEf,eAAO,MAAM,cAAc,QAAO,UAGhC,CAAC;AAEH,eAAO,MAAM,IAAI,YAAa,UAAU,QAAQ,MAAM,WAAW,MAAM,KAAG,MAGzE,CAAC;AAEF,eAAO,MAAM,gBAAgB,kBACZ,MAAM,GAAG,SAAS,OAC5B,OAAO,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,KACtC;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAchC,CAAC;AAQF,eAAO,MAAM,WAAW,eACV,MAAM,aACP,MAAM,WACR,YAAY,KACpB,4BAKA,CAAC"}
@@ -0,0 +1,118 @@
1
+ // @sentropic/llm-mesh/node/cli/enroll-args.ts
2
+ //
3
+ // Shared argument parsing, exit codes, and keyring opening for the
4
+ // llm-mesh-enroll CLI. Secrets never enter error messages: only the env
5
+ // var NAME is quoted, never its value.
6
+ import { stderr, stdout } from 'node:process';
7
+ import { CodexEnrollmentProvider } from '../../enrollment/codex.js';
8
+ import { MuseCodeEnrollmentProvider } from '../../enrollment/muse-code.js';
9
+ import { deriveKeyringMasterKey, EncryptedFileKeyring, } from '../keyring/encrypted-file-keyring.js';
10
+ import { LocalAccountTransportService } from '../../service/local-account-transport-service.js';
11
+ export const EXIT_CODES = {
12
+ ok: 0,
13
+ usage: 2,
14
+ enrollmentFailed: 3,
15
+ accountNotFound: 4,
16
+ keyringKey: 5,
17
+ probeFailed: 6,
18
+ billingNotConfigured: 7,
19
+ };
20
+ const KNOWN_FLAGS = new Set([
21
+ 'provider',
22
+ 'keyring-dir',
23
+ 'keyring-key-env',
24
+ 'owner-scope',
25
+ 'label',
26
+ 'account',
27
+ 'model',
28
+ 'effort',
29
+ 'max-attempts',
30
+ 'help',
31
+ ]);
32
+ const flagValue = (argv, name) => {
33
+ for (let i = 0; i < argv.length; i += 1) {
34
+ const arg = argv[i];
35
+ if (arg === `--${name}`) {
36
+ const next = argv[i + 1];
37
+ if (next === undefined || next.startsWith('--'))
38
+ return undefined;
39
+ return next;
40
+ }
41
+ if (arg.startsWith(`--${name}=`)) {
42
+ const value = arg.slice(name.length + 3);
43
+ return value.length > 0 ? value : undefined;
44
+ }
45
+ }
46
+ return undefined;
47
+ };
48
+ const hasFlag = (argv, name) => argv.includes(`--${name}`) || argv.some((arg) => arg.startsWith(`--${name}=`));
49
+ const rejectUnknownFlags = (argv) => {
50
+ for (const arg of argv) {
51
+ if (!arg.startsWith('--'))
52
+ continue;
53
+ const name = arg.slice(2).split('=', 1)[0];
54
+ if (!KNOWN_FLAGS.has(name))
55
+ throw new Error(`unknown flag '--${name}'`);
56
+ }
57
+ };
58
+ export const parseArgs = (argv) => {
59
+ const [command, ...rest] = argv;
60
+ if (!command || command === 'help' || hasFlag(argv, 'help')) {
61
+ return { command: 'help', provider: 'muse-code' };
62
+ }
63
+ if (command !== 'enroll' && command !== 'probe') {
64
+ throw new Error(`unknown command '${command}'; expected 'enroll' or 'probe'`);
65
+ }
66
+ rejectUnknownFlags(rest);
67
+ const maxAttemptsRaw = flagValue(rest, 'max-attempts');
68
+ return {
69
+ command,
70
+ provider: flagValue(rest, 'provider') ?? 'muse-code',
71
+ keyringDir: flagValue(rest, 'keyring-dir'),
72
+ keyringKeyEnv: flagValue(rest, 'keyring-key-env'),
73
+ ownerScope: flagValue(rest, 'owner-scope'),
74
+ label: flagValue(rest, 'label'),
75
+ account: flagValue(rest, 'account'),
76
+ model: flagValue(rest, 'model') ?? 'muse-wonder-1.0',
77
+ effort: flagValue(rest, 'effort') ?? 'low',
78
+ ...(maxAttemptsRaw !== undefined ? { maxAttempts: Number(maxAttemptsRaw) } : {}),
79
+ };
80
+ };
81
+ export const usageText = () => [
82
+ 'llm-mesh-enroll enroll --provider muse-code --keyring-dir <dir>',
83
+ ' --owner-scope <ref> [--label <label>] --keyring-key-env <NAME>',
84
+ ' [--max-attempts <n>]',
85
+ 'llm-mesh-enroll probe --provider muse-code --keyring-dir <dir>',
86
+ ' --account <id> --model muse-wonder-1.0 --effort low --keyring-key-env <NAME>',
87
+ ].join('\n');
88
+ export const defaultWriters = () => ({
89
+ out: (line) => stdout.write(`${line}\n`),
90
+ err: (line) => stderr.write(`${line}\n`),
91
+ });
92
+ export const fail = (writers, code, message) => {
93
+ writers.err(JSON.stringify({ status: 'error', code, message }));
94
+ return code;
95
+ };
96
+ export const resolveMasterKey = (keyringKeyEnv, env) => {
97
+ if (!keyringKeyEnv)
98
+ return { error: 'missing --keyring-key-env <NAME>' };
99
+ if (!/^[A-Za-z_][A-Za-z0-9_]*$/.test(keyringKeyEnv)) {
100
+ return { error: `invalid --keyring-key-env name '${keyringKeyEnv}'` };
101
+ }
102
+ const raw = env[keyringKeyEnv];
103
+ if (typeof raw !== 'string' || raw.length === 0) {
104
+ return { error: `keyring key env var '${keyringKeyEnv}' is missing or empty` };
105
+ }
106
+ try {
107
+ return { key: deriveKeyringMasterKey(raw) };
108
+ }
109
+ catch {
110
+ return { error: `keyring key env var '${keyringKeyEnv}' must hold 32 bytes as 64 hex chars or 44/43-char base64` };
111
+ }
112
+ };
113
+ const buildProviders = (fetchFn) => new Map([
114
+ ['muse-code', new MuseCodeEnrollmentProvider({ fetchFn })],
115
+ ['codex', new CodexEnrollmentProvider({ fetchFn })],
116
+ ]);
117
+ export const openService = (keyringDir, masterKey, fetchFn) => new LocalAccountTransportService(new EncryptedFileKeyring(keyringDir, masterKey), buildProviders(fetchFn), { resolveConfig: async () => ({}) });
118
+ //# sourceMappingURL=enroll-args.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-args.js","sourceRoot":"","sources":["../../../src/node/cli/enroll-args.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { type EnrollCliDeps, type ParsedArgs } from './enroll-args.js';
2
+ export declare const runProbe: (args: ParsedArgs, deps?: EnrollCliDeps) => Promise<number>;
3
+ export declare const run: (argv: string[], deps?: EnrollCliDeps) => Promise<number>;
4
+ //# sourceMappingURL=enroll-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-cli.d.ts","sourceRoot":"","sources":["../../../src/node/cli/enroll-cli.ts"],"names":[],"mappings":"AAQA,OAAO,EAOL,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AAK1B,eAAO,MAAM,QAAQ,SACb,UAAU,SACV,aAAa,KAClB,QAAQ,MAAM,CAyFhB,CAAC;AAEF,eAAO,MAAM,GAAG,SAAgB,MAAM,EAAE,SAAQ,aAAa,KAAQ,QAAQ,MAAM,CAclF,CAAC"}
@@ -0,0 +1,124 @@
1
+ // @sentropic/llm-mesh/node/cli/enroll-cli.ts
2
+ //
3
+ // Generic device-flow enrollment CLI (muse-code first):
4
+ // `enroll` stores a seat account, `probe` checks it with one minimal
5
+ // generate through MuseAdapter/MuseRuntimeClient. stdout is a machine
6
+ // contract (one JSON object per line); secrets never printed.
7
+ import { EncryptedFileKeyring } from '../keyring/encrypted-file-keyring.js';
8
+ import { defaultWriters, EXIT_CODES, fail, parseArgs, resolveMasterKey, usageText, } from './enroll-args.js';
9
+ import { runEnroll } from './enroll-command.js';
10
+ const KNOWN_EFFORTS = new Set(['none', 'low', 'medium', 'high', 'xhigh', 'max']);
11
+ export const runProbe = async (args, deps = {}) => {
12
+ const writers = deps.writers ?? defaultWriters();
13
+ const env = deps.env ?? process.env;
14
+ const fetchFn = deps.fetchFn ?? fetch;
15
+ if (args.provider !== 'muse-code') {
16
+ return fail(writers, EXIT_CODES.usage, `provider '${args.provider}' has no probe; only 'muse-code' is probed`);
17
+ }
18
+ if (!args.keyringDir)
19
+ return fail(writers, EXIT_CODES.usage, 'missing --keyring-dir <dir>');
20
+ if (!args.account)
21
+ return fail(writers, EXIT_CODES.usage, 'missing --account <id>');
22
+ const effort = args.effort ?? 'low';
23
+ if (!KNOWN_EFFORTS.has(effort)) {
24
+ return fail(writers, EXIT_CODES.usage, `unknown --effort '${effort}'`);
25
+ }
26
+ const resolved = resolveMasterKey(args.keyringKeyEnv, env);
27
+ if (!resolved.key)
28
+ return fail(writers, EXIT_CODES.keyringKey, resolved.error ?? 'key error');
29
+ const keyring = new EncryptedFileKeyring(args.keyringDir, resolved.key);
30
+ let raw;
31
+ let publicRaw;
32
+ try {
33
+ raw = await keyring.getSecret(`sentropic-llm-mesh:${args.account}:envelope`);
34
+ publicRaw = await keyring.getSecret(`sentropic-llm-mesh:${args.account}:public`);
35
+ }
36
+ catch {
37
+ return fail(writers, EXIT_CODES.keyringKey, 'keyring read failed; check the key and permissions');
38
+ }
39
+ if (!raw) {
40
+ return fail(writers, EXIT_CODES.accountNotFound, `account '${args.account}' not found`);
41
+ }
42
+ // The envelope carries no provider; the public record does. Refuse any
43
+ // non-muse account before any token leaves the keyring: a codex OAuth
44
+ // token must never reach api.meta.ai.
45
+ try {
46
+ const record = JSON.parse(publicRaw ?? '');
47
+ if (record.providerId !== 'muse')
48
+ throw new Error('bad provider');
49
+ }
50
+ catch {
51
+ return fail(writers, EXIT_CODES.accountNotFound, `account '${args.account}' is not a muse-code seat account`);
52
+ }
53
+ let accessToken;
54
+ try {
55
+ const envelope = JSON.parse(raw);
56
+ if (typeof envelope.accessToken !== 'string' || !envelope.accessToken)
57
+ throw new Error('bad');
58
+ accessToken = envelope.accessToken;
59
+ }
60
+ catch {
61
+ return fail(writers, EXIT_CODES.probeFailed, `account '${args.account}' credential record is corrupt`);
62
+ }
63
+ // The Muse Chat wire takes no reasoning controls (the client refuses a
64
+ // non-empty reasoning block), so --effort is validated for forward
65
+ // compatibility but not forwarded.
66
+ let adapter;
67
+ try {
68
+ const { MuseAdapter } = await import('../../adapters.js');
69
+ const { MuseRuntimeClient } = await import('../../transport/muse-runtime-client.js');
70
+ adapter = new MuseAdapter({ client: new MuseRuntimeClient({ fetch: fetchFn }) });
71
+ }
72
+ catch {
73
+ return fail(writers, EXIT_CODES.probeFailed, 'probe failed to load the muse runtime');
74
+ }
75
+ const modelId = args.model ?? 'muse-wonder-1.0';
76
+ const startedAt = Date.now();
77
+ try {
78
+ const response = await adapter.generate({ providerId: 'muse', modelId, messages: [{ role: 'user', content: 'probe' }], maxOutputTokens: 16 }, {
79
+ auth: {
80
+ material: { type: 'account-transport', provider: 'muse', accessToken, accountId: args.account },
81
+ descriptor: { sourceType: 'account-transport', accountProviderId: 'muse' },
82
+ },
83
+ });
84
+ // Status plus latency plus usage only; the model text stays out.
85
+ writers.out(JSON.stringify({
86
+ status: 'ok',
87
+ latencyMs: Date.now() - startedAt,
88
+ modelId: response.modelId,
89
+ ...(response.usage ? { usage: response.usage } : {}),
90
+ }));
91
+ return EXIT_CODES.ok;
92
+ }
93
+ catch (error) {
94
+ const status = error.status;
95
+ if (status === 402) {
96
+ // Measured non-seat wire: a raw MUSE_API_KEY import (muse.ts direct
97
+ // path) is not seat-billed, so serving refuses billing_not_configured.
98
+ // Seat-billed device-flow accounts (muse-code.ts) never hit this.
99
+ return fail(writers, EXIT_CODES.billingNotConfigured, 'billing_not_configured: non-seat muse.ts direct-key path; re-enroll a seat account');
100
+ }
101
+ if (typeof status === 'number') {
102
+ return fail(writers, EXIT_CODES.probeFailed, `probe failed (status ${status})`);
103
+ }
104
+ return fail(writers, EXIT_CODES.probeFailed, 'probe failed');
105
+ }
106
+ };
107
+ export const run = async (argv, deps = {}) => {
108
+ const writers = deps.writers ?? defaultWriters();
109
+ let args;
110
+ try {
111
+ args = parseArgs(argv);
112
+ }
113
+ catch (error) {
114
+ return fail(writers, EXIT_CODES.usage, error instanceof Error ? error.message : 'bad usage');
115
+ }
116
+ if (args.command === 'help') {
117
+ writers.out(usageText());
118
+ return EXIT_CODES.ok;
119
+ }
120
+ if (args.command === 'enroll')
121
+ return runEnroll(args, deps);
122
+ return runProbe(args, deps);
123
+ };
124
+ //# sourceMappingURL=enroll-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-cli.js","sourceRoot":"","sources":["../../../src/node/cli/enroll-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type EnrollCliDeps, type ParsedArgs } from './enroll-args.js';
2
+ export declare const runEnroll: (args: ParsedArgs, deps?: EnrollCliDeps) => Promise<number>;
3
+ //# sourceMappingURL=enroll-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-command.d.ts","sourceRoot":"","sources":["../../../src/node/cli/enroll-command.ts"],"names":[],"mappings":"AAOA,OAAO,EAML,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,kBAAkB,CAAC;AA0B1B,eAAO,MAAM,SAAS,SACd,UAAU,SACV,aAAa,KAClB,QAAQ,MAAM,CAsDhB,CAAC"}
@@ -0,0 +1,87 @@
1
+ // @sentropic/llm-mesh/node/cli/enroll-command.ts
2
+ //
3
+ // The `enroll` command: start a device flow, print only the grant, poll,
4
+ // then persist. stdout is a machine contract (one JSON object per line);
5
+ // progress goes to stderr; secrets never printed.
6
+ import { EncryptedFileKeyring } from '../keyring/encrypted-file-keyring.js';
7
+ import { defaultWriters, EXIT_CODES, fail, openService, resolveMasterKey, } from './enroll-args.js';
8
+ const sanitizeStatus = (error) => {
9
+ const status = error.status;
10
+ return typeof status === 'number' ? ` (status ${status})` : null;
11
+ };
12
+ const relabelAccount = async (keyringDir, masterKey, accountId, label) => {
13
+ try {
14
+ const keyring = new EncryptedFileKeyring(keyringDir, masterKey);
15
+ const key = `sentropic-llm-mesh:${accountId}:public`;
16
+ const raw = await keyring.getSecret(key);
17
+ if (!raw)
18
+ return label;
19
+ const record = JSON.parse(raw);
20
+ await keyring.setSecret(key, JSON.stringify({ ...record, accountLabel: label }));
21
+ }
22
+ catch {
23
+ return label;
24
+ }
25
+ return label;
26
+ };
27
+ export const runEnroll = async (args, deps = {}) => {
28
+ const writers = deps.writers ?? defaultWriters();
29
+ const env = deps.env ?? process.env;
30
+ const fetchFn = deps.fetchFn ?? fetch;
31
+ if (args.provider !== 'muse-code' && args.provider !== 'codex') {
32
+ return fail(writers, EXIT_CODES.usage, `unknown provider '${args.provider}'; expected 'muse-code' or 'codex'`);
33
+ }
34
+ if (!args.keyringDir)
35
+ return fail(writers, EXIT_CODES.usage, 'missing --keyring-dir <dir>');
36
+ if (!args.ownerScope)
37
+ return fail(writers, EXIT_CODES.usage, 'missing --owner-scope <ref>');
38
+ const maxAttempts = args.maxAttempts ?? 60;
39
+ if (!Number.isInteger(maxAttempts) || maxAttempts < 1) {
40
+ return fail(writers, EXIT_CODES.usage, 'invalid --max-attempts <n>');
41
+ }
42
+ const resolved = resolveMasterKey(args.keyringKeyEnv, env);
43
+ if (!resolved.key)
44
+ return fail(writers, EXIT_CODES.keyringKey, resolved.error ?? 'key error');
45
+ const service = openService(args.keyringDir, resolved.key, fetchFn);
46
+ let session;
47
+ try {
48
+ session = await service.enroll(args.provider, {
49
+ configRef: 'default',
50
+ mode: 'cli',
51
+ redirectUri: 'http://127.0.0.1',
52
+ ownerScope: args.ownerScope,
53
+ });
54
+ }
55
+ catch (error) {
56
+ // Upstream bodies can echo tokens; relay only the status, never the body.
57
+ const suffix = sanitizeStatus(error) ?? '';
58
+ return fail(writers, EXIT_CODES.enrollmentFailed, `enrollment failed${suffix}`);
59
+ }
60
+ if (session.kind !== 'device-code') {
61
+ return fail(writers, EXIT_CODES.usage, `provider '${args.provider}' has no device flow`);
62
+ }
63
+ // First stdout line: the grant the owner approves. The user code and
64
+ // URL are public by device-flow design; no secret is printed.
65
+ writers.out(JSON.stringify({
66
+ verificationUrl: session.verificationUrl,
67
+ userCode: session.userCode,
68
+ expiresAt: session.expiresAt,
69
+ }));
70
+ writers.err('Waiting for the owner to approve the device login.');
71
+ try {
72
+ const completed = args.provider === 'muse-code'
73
+ ? await service.completeMuseDeviceImport(session.enrollmentId, args.ownerScope, maxAttempts)
74
+ : await service.pollForCompletion(session.enrollmentId);
75
+ const label = args.label
76
+ ? await relabelAccount(args.keyringDir, resolved.key, completed.accountId, args.label)
77
+ : completed.label;
78
+ // Last stdout line: the stored account only.
79
+ writers.out(JSON.stringify({ accountId: completed.accountId, label }));
80
+ return EXIT_CODES.ok;
81
+ }
82
+ catch (error) {
83
+ const suffix = sanitizeStatus(error) ?? '';
84
+ return fail(writers, EXIT_CODES.enrollmentFailed, `enrollment poll failed${suffix}`);
85
+ }
86
+ };
87
+ //# sourceMappingURL=enroll-command.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"enroll-command.js","sourceRoot":"","sources":["../../../src/node/cli/enroll-command.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ export type { SeatSidecar } from './seat-sidecar-file-backend.js';
7
7
  export { SEAT_SIDECAR_MAX_BYTES, SeatSidecarFileBackend, parseSeatSidecar } from './seat-sidecar-file-backend.js';
8
8
  export type { SeatExternalAuthority } from '../service/external-seat-authority.js';
9
9
  export { SEAT_EXTERNAL_AUTHORITY_KEY, isDeviceFlowSeatAccount, isExternalSeatAccount, isExternalSeatUnavailable, markExternalSeatAuthority, readExternalSeatAuthority, } from '../service/external-seat-authority.js';
10
- export { EncryptedFileKeyring, KeyringInsecurePermissionsError, } from './keyring/encrypted-file-keyring.js';
10
+ export { deriveKeyringMasterKey, EncryptedFileKeyring, KeyringInsecurePermissionsError, resolveKeyringMasterKey, } from './keyring/encrypted-file-keyring.js';
11
11
  export { EnvKeyring } from './keyring/env-keyring.js';
12
12
  export { InMemoryKeyring } from './keyring/in-memory-keyring.js';
13
13
  export { LinuxSecretstoreKeyring } from './keyring/linux-secretstore-keyring.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ export { SEAT_AGY_APPLICATION_TUPLE, SEAT_BUNDLE_MAX_BYTES, SEAT_BUNDLE_SCHEMA_V
2
2
  export { inspectSeatStoreRecord, SeatStoreReadError } from './cli-seat-store-reader.js';
3
3
  export { SEAT_SIDECAR_MAX_BYTES, SeatSidecarFileBackend, parseSeatSidecar } from './seat-sidecar-file-backend.js';
4
4
  export { SEAT_EXTERNAL_AUTHORITY_KEY, isDeviceFlowSeatAccount, isExternalSeatAccount, isExternalSeatUnavailable, markExternalSeatAuthority, readExternalSeatAuthority, } from '../service/external-seat-authority.js';
5
- export { EncryptedFileKeyring, KeyringInsecurePermissionsError, } from './keyring/encrypted-file-keyring.js';
5
+ export { deriveKeyringMasterKey, EncryptedFileKeyring, KeyringInsecurePermissionsError, resolveKeyringMasterKey, } from './keyring/encrypted-file-keyring.js';
6
6
  export { EnvKeyring } from './keyring/env-keyring.js';
7
7
  export { InMemoryKeyring } from './keyring/in-memory-keyring.js';
8
8
  export { LinuxSecretstoreKeyring } from './keyring/linux-secretstore-keyring.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAExF,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElH,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,oBAAoB,EACpB,+BAA+B,GAChC,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAgB3E,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,wBAAwB,EACxB,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAO1C,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAiBtF,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,8CAA8C,CAAC;AAMtD,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,8BAA8B,EAC9B,uBAAuB,EACvB,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/node/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,0BAA0B,EAC1B,qBAAqB,EACrB,0BAA0B,EAC1B,wBAAwB,EACxB,kBAAkB,EAClB,aAAa,EACb,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EACzB,kBAAkB,GACnB,MAAM,8BAA8B,CAAC;AAMtC,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAExF,OAAO,EAAE,sBAAsB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElH,OAAO,EACL,2BAA2B,EAC3B,uBAAuB,EACvB,qBAAqB,EACrB,yBAAyB,EACzB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,+BAA+B,EAC/B,uBAAuB,GACxB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAgB3E,OAAO,EACL,4BAA4B,EAC5B,4BAA4B,EAC5B,gCAAgC,EAChC,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,mBAAmB,EACnB,uBAAuB,EACvB,qBAAqB,EACrB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,wBAAwB,EACxB,6BAA6B,EAC7B,oBAAoB,EACpB,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAO1C,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAiBtF,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,wBAAwB,GACzB,MAAM,kCAAkC,CAAC;AAG1C,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,GACtB,MAAM,8CAA8C,CAAC;AAMtD,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,EAC3B,4BAA4B,EAC5B,0BAA0B,EAC1B,8BAA8B,EAC9B,uBAAuB,EACvB,+BAA+B,EAC/B,8BAA8B,GAC/B,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAEjF,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC"}
@@ -3,9 +3,15 @@ export declare class KeyringInsecurePermissionsError extends Error {
3
3
  readonly code = "keyring_insecure_permissions";
4
4
  constructor(target: string, expectedMode: number, actualMode: number);
5
5
  }
6
+ export interface EncryptedFileKeyringOptions {
7
+ masterKey?: Buffer;
8
+ }
9
+ export declare const deriveKeyringMasterKey: (value: string) => Buffer;
10
+ export declare const resolveKeyringMasterKey: (envVarName: string) => Buffer;
6
11
  export declare class EncryptedFileKeyring implements KeyringAdapter {
7
12
  private readonly directory;
8
- constructor(directory?: string);
13
+ private readonly explicitMasterKey?;
14
+ constructor(directory?: string, masterKeyOrOptions?: Buffer | EncryptedFileKeyringOptions);
9
15
  getSecret(key: string): Promise<string | null>;
10
16
  setSecret(key: string, secret: string): Promise<void>;
11
17
  setSecretIfAbsent(key: string, secret: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"encrypted-file-keyring.d.ts","sourceRoot":"","sources":["../../../src/node/keyring/encrypted-file-keyring.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAe9D,qBAAa,+BAAgC,SAAQ,KAAK;IACxD,QAAQ,CAAC,IAAI,kCAAkC;gBAEnC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAOrE;AAED,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAGjC,SAAS,SAE0C;IAK/C,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA0C9C,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrD,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBhE,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,OAAO,CAAC,UAAU;YAKJ,aAAa;YAiBb,aAAa;YA+Bb,qBAAqB;YA4BrB,kBAAkB;YAOlB,wBAAwB;YAQxB,eAAe;CAO9B"}
1
+ {"version":3,"file":"encrypted-file-keyring.d.ts","sourceRoot":"","sources":["../../../src/node/keyring/encrypted-file-keyring.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAe9D,qBAAa,+BAAgC,SAAQ,KAAK;IACxD,QAAQ,CAAC,IAAI,kCAAkC;gBAEnC,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;CAOrE;AAED,MAAM,WAAW,2BAA2B;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,sBAAsB,UAAW,MAAM,KAAG,MAiBtD,CAAC;AAEF,eAAO,MAAM,uBAAuB,eAAgB,MAAM,KAAG,MAU5D,CAAC;AAEF,qBAAa,oBAAqB,YAAW,cAAc;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAS;gBAG1C,SAAS,SAE0C,EACnD,kBAAkB,CAAC,EAAE,MAAM,GAAG,2BAA2B;IAarD,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IA0C9C,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAcrD,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmBhE,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9C,OAAO,CAAC,UAAU;YAKJ,aAAa;YAiBb,aAAa;YAoCb,qBAAqB;YA4BrB,kBAAkB;YAOlB,wBAAwB;YAQxB,eAAe;CAO9B"}
@@ -14,11 +14,51 @@ export class KeyringInsecurePermissionsError extends Error {
14
14
  this.name = 'KeyringInsecurePermissionsError';
15
15
  }
16
16
  }
17
+ export const deriveKeyringMasterKey = (value) => {
18
+ const trimmed = value.trim();
19
+ if (/^[0-9a-fA-F]{64}$/.test(trimmed)) {
20
+ return Buffer.from(trimmed, 'hex');
21
+ }
22
+ if (/^[A-Za-z0-9+/]{43}=$/.test(trimmed) || /^[A-Za-z0-9+/]{44}$/.test(trimmed)) {
23
+ try {
24
+ const decoded = Buffer.from(trimmed, 'base64');
25
+ if (decoded.length === 32)
26
+ return decoded;
27
+ }
28
+ catch {
29
+ // Fall through to the refusal below.
30
+ }
31
+ }
32
+ // No passphrase fallback: a human passphrase through one SHA-256 is
33
+ // offline-brute-forceable and protects long-lived refresh tokens.
34
+ // The key must be 32 bytes as 64 hex chars or 44/43-char base64.
35
+ throw new Error('keyring key must be 32 bytes as 64 hex chars or 44/43-char base64');
36
+ };
37
+ export const resolveKeyringMasterKey = (envVarName) => {
38
+ const name = envVarName.trim();
39
+ if (!name || !/^[A-Za-z_][A-Za-z0-9_]*$/.test(name)) {
40
+ throw new Error(`keyring key env var name is invalid: '${name}'`);
41
+ }
42
+ const value = process.env[name];
43
+ if (typeof value !== 'string' || value.length === 0) {
44
+ throw new Error(`keyring key env var '${name}' is missing or empty`);
45
+ }
46
+ return deriveKeyringMasterKey(value);
47
+ };
17
48
  export class EncryptedFileKeyring {
18
49
  directory;
50
+ explicitMasterKey;
19
51
  constructor(directory = process.env.SENTROPIC_LLM_MESH_KEYRING_DIR ??
20
- join(homedir(), '.sentropic', 'llm-mesh-keyring')) {
52
+ join(homedir(), '.sentropic', 'llm-mesh-keyring'), masterKeyOrOptions) {
21
53
  this.directory = directory;
54
+ // The local Buffer stub has no isBuffer; narrow on the Uint8Array root.
55
+ const explicit = masterKeyOrOptions instanceof Uint8Array
56
+ ? Buffer.from(masterKeyOrOptions)
57
+ : masterKeyOrOptions?.masterKey;
58
+ if (explicit !== undefined && explicit.length !== 32) {
59
+ throw new Error('Encrypted keyring master key must be 32 bytes');
60
+ }
61
+ this.explicitMasterKey = explicit;
22
62
  }
23
63
  async getSecret(key) {
24
64
  let raw;
@@ -116,6 +156,11 @@ export class EncryptedFileKeyring {
116
156
  };
117
157
  }
118
158
  async readMasterKey(create) {
159
+ if (this.explicitMasterKey) {
160
+ await mkdir(this.directory, { recursive: true, mode: 0o700 });
161
+ await this.setModeIfDifferent(this.directory, 0o700);
162
+ return this.explicitMasterKey;
163
+ }
119
164
  const path = join(this.directory, '.key');
120
165
  if (!create) {
121
166
  return this.readExistingMasterKey(path);
@@ -1 +1 @@
1
- {"version":3,"file":"encrypted-file-keyring.js","sourceRoot":"","sources":["../../../src/node/keyring/encrypted-file-keyring.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encrypted-file-keyring.js","sourceRoot":"","sources":["../../../src/node/keyring/encrypted-file-keyring.ts"],"names":[],"mappings":"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"}
@@ -382,7 +382,7 @@ export class LocalAccountTransportService {
382
382
  if (typeof provider.pollForCompletion !== 'function') {
383
383
  throw new Error("Muse enrollment provider does not support device-flow polling");
384
384
  }
385
- const res = await provider.pollForCompletion(enrollmentId);
385
+ const res = await provider.pollForCompletion(enrollmentId, maxAttempts);
386
386
  if (!res.credential) {
387
387
  throw new Error(`Enrollment session ${enrollmentId} did not resolve a credential`);
388
388
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local-account-transport-service.js","sourceRoot":"","sources":["../../src/service/local-account-transport-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-account-transport-service.js","sourceRoot":"","sources":["../../src/service/local-account-transport-service.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentropic/llm-mesh",
3
- "version": "0.34.1",
3
+ "version": "0.35.0",
4
4
  "description": "Provider-agnostic LLM access runtime SDK for Sentropic.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -11,6 +11,9 @@
11
11
  },
12
12
  "main": "./dist/index.js",
13
13
  "types": "./dist/index.d.ts",
14
+ "bin": {
15
+ "llm-mesh-enroll": "./dist/node/cli/bin.js"
16
+ },
14
17
  "exports": {
15
18
  "./speech": {
16
19
  "types": "./dist/speech/index.d.ts",