@functional-systems/lambdadb-cli 0.1.7-dev.23 → 0.1.7-dev.25
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/CHANGELOG.md +17 -0
- package/CONTRIBUTING.md +29 -0
- package/DESIGN.md +9 -3
- package/ONBOARDING.md +417 -0
- package/README.md +401 -138
- package/dist/account.d.ts +50 -0
- package/dist/account.js +301 -0
- package/dist/account.js.map +1 -0
- package/dist/agent-config.d.ts +4 -3
- package/dist/agent-config.js +12 -5
- package/dist/agent-config.js.map +1 -1
- package/dist/agents.d.ts +3 -3
- package/dist/agents.js +8 -8
- package/dist/agents.js.map +1 -1
- package/dist/cli.js +44 -6
- package/dist/cli.js.map +1 -1
- package/dist/config.d.ts +10 -4
- package/dist/config.js +43 -6
- package/dist/config.js.map +1 -1
- package/dist/credentials.d.ts +29 -0
- package/dist/credentials.js +116 -0
- package/dist/credentials.js.map +1 -0
- package/dist/device-auth.d.ts +16 -0
- package/dist/device-auth.js +160 -0
- package/dist/device-auth.js.map +1 -0
- package/dist/errors.d.ts +7 -0
- package/dist/errors.js +35 -1
- package/dist/errors.js.map +1 -1
- package/dist/init.d.ts +5 -2
- package/dist/init.js +58 -33
- package/dist/init.js.map +1 -1
- package/dist/mcp.js +8 -1
- package/dist/mcp.js.map +1 -1
- package/dist/projects.d.ts +29 -0
- package/dist/projects.js +323 -0
- package/dist/projects.js.map +1 -0
- package/package.json +6 -2
- package/skills/lambdadb/SKILL.md +43 -24
- package/skills/lambdadb/references/usage.md +98 -0
- package/src/account.ts +351 -0
- package/src/agent-config.ts +14 -8
- package/src/agents.ts +8 -8
- package/src/cli.ts +46 -6
- package/src/config.ts +43 -10
- package/src/credentials.ts +138 -0
- package/src/device-auth.ts +200 -0
- package/src/errors.ts +31 -2
- package/src/init.ts +50 -31
- package/src/mcp.ts +7 -1
- package/src/projects.ts +439 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { type Options } from './config.js';
|
|
2
|
+
import { CredentialVault, type CredentialReference } from './credentials.js';
|
|
3
|
+
import type { Output } from './output.js';
|
|
4
|
+
export type AccountOptions = Options & {
|
|
5
|
+
apiUrl?: string;
|
|
6
|
+
browser?: boolean;
|
|
7
|
+
signal?: AbortSignal;
|
|
8
|
+
};
|
|
9
|
+
export type Account = CredentialReference & {
|
|
10
|
+
apiUrl: string;
|
|
11
|
+
consoleUrl: string;
|
|
12
|
+
memberId: string;
|
|
13
|
+
email: string;
|
|
14
|
+
expiresAt: string;
|
|
15
|
+
};
|
|
16
|
+
export declare const accountVault: () => CredentialVault;
|
|
17
|
+
export declare const accountPath: (options: Options) => Promise<string>;
|
|
18
|
+
export declare const accountTarget: (a: Account) => {
|
|
19
|
+
endpoint: string;
|
|
20
|
+
project: string;
|
|
21
|
+
credentialStore: import("./credentials.js").CredentialStore;
|
|
22
|
+
credentialId: string;
|
|
23
|
+
apiUrl: string;
|
|
24
|
+
consoleUrl: string;
|
|
25
|
+
memberId: string;
|
|
26
|
+
email: string;
|
|
27
|
+
expiresAt: string;
|
|
28
|
+
};
|
|
29
|
+
export declare function readOptional(path: string): Promise<string | undefined>;
|
|
30
|
+
export declare function writeMetadata(path: string, value: unknown, before: string | undefined): Promise<void>;
|
|
31
|
+
export declare function withManagementLock<T>(options: Options, action: () => Promise<T>): Promise<T>;
|
|
32
|
+
export declare function loadAccount(options: AccountOptions): Promise<Account>;
|
|
33
|
+
export declare function accountRequest(account: Account, token: string, path: string, method?: string, body?: object, org?: string, signal?: AbortSignal, requestTimeoutMs?: number): Promise<Record<string, unknown>>;
|
|
34
|
+
export type Organization = {
|
|
35
|
+
id: string;
|
|
36
|
+
name: string;
|
|
37
|
+
role: string;
|
|
38
|
+
plan: string;
|
|
39
|
+
max_projects: number;
|
|
40
|
+
projects_count: number;
|
|
41
|
+
billing_url: string;
|
|
42
|
+
can_upgrade: boolean;
|
|
43
|
+
};
|
|
44
|
+
export declare function parseOrganization(value: unknown, a: Account): Organization;
|
|
45
|
+
export declare function management(options: AccountOptions, output: Output): Promise<{
|
|
46
|
+
account: Account;
|
|
47
|
+
request: (path: string, method?: string, body?: object, org?: string) => Promise<Record<string, unknown>>;
|
|
48
|
+
}>;
|
|
49
|
+
export declare function login(options: AccountOptions, output: Output, vault?: CredentialVault): Promise<Account>;
|
|
50
|
+
export declare function logout(options: AccountOptions, output: Output, vault?: CredentialVault): Promise<void>;
|
package/dist/account.js
ADDED
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
import { randomUUID } from 'node:crypto';
|
|
2
|
+
import { mkdir, readFile, writeFile, rename, rm, open } from 'node:fs/promises';
|
|
3
|
+
import { dirname } from 'node:path';
|
|
4
|
+
import { configPath, endpoint, fileIdentity, timeoutMs } from './config.js';
|
|
5
|
+
import { CredentialVault, credentialReference } from './credentials.js';
|
|
6
|
+
import { authorizeAccount } from './device-auth.js';
|
|
7
|
+
import { InputError, ManagementError } from './errors.js';
|
|
8
|
+
export const accountVault = () => new CredentialVault(undefined, process.platform, 'account');
|
|
9
|
+
export const accountPath = async (options) => `${await fileIdentity(configPath(options))}.account.json`;
|
|
10
|
+
export const accountTarget = (a) => ({ ...a, endpoint: a.apiUrl, project: 'account' });
|
|
11
|
+
export async function readOptional(path) {
|
|
12
|
+
try {
|
|
13
|
+
return await readFile(path, 'utf8');
|
|
14
|
+
}
|
|
15
|
+
catch (error) {
|
|
16
|
+
if (error.code === 'ENOENT')
|
|
17
|
+
return undefined;
|
|
18
|
+
throw new InputError(`Cannot read ${path}. Check file permissions.`);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
export async function writeMetadata(path, value, before) {
|
|
22
|
+
const destination = await fileIdentity(path);
|
|
23
|
+
if ((await readOptional(path)) !== before)
|
|
24
|
+
throw new InputError(`Configuration changed: ${path}. Retry after reviewing it.`);
|
|
25
|
+
const temp = `${destination}.${randomUUID()}.tmp`;
|
|
26
|
+
try {
|
|
27
|
+
await mkdir(dirname(destination), { recursive: true, mode: 0o700 });
|
|
28
|
+
await writeFile(temp, JSON.stringify(value, null, 2) + '\n', { flag: 'wx', mode: 0o600 });
|
|
29
|
+
await rename(temp, destination);
|
|
30
|
+
}
|
|
31
|
+
finally {
|
|
32
|
+
await rm(temp, { force: true }).catch(() => { });
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export async function withManagementLock(options, action) {
|
|
36
|
+
const path = `${await fileIdentity(configPath(options))}.management.lock`;
|
|
37
|
+
await mkdir(dirname(path), { recursive: true, mode: 0o700 });
|
|
38
|
+
let handle;
|
|
39
|
+
try {
|
|
40
|
+
handle = await open(path, 'wx', 0o600);
|
|
41
|
+
}
|
|
42
|
+
catch {
|
|
43
|
+
throw new InputError(`Another management operation may be running. After confirming it has stopped, remove ${path} and retry.`);
|
|
44
|
+
}
|
|
45
|
+
try {
|
|
46
|
+
await handle.writeFile(String(process.pid));
|
|
47
|
+
return await action();
|
|
48
|
+
}
|
|
49
|
+
finally {
|
|
50
|
+
await handle.close();
|
|
51
|
+
await rm(path, { force: true });
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
function parseAccount(text) {
|
|
55
|
+
let a;
|
|
56
|
+
try {
|
|
57
|
+
a = JSON.parse(text);
|
|
58
|
+
credentialReference(a.credentialStore, a.credentialId);
|
|
59
|
+
if (Object.keys(a).some((k) => ![
|
|
60
|
+
'apiUrl',
|
|
61
|
+
'consoleUrl',
|
|
62
|
+
'memberId',
|
|
63
|
+
'email',
|
|
64
|
+
'expiresAt',
|
|
65
|
+
'credentialStore',
|
|
66
|
+
'credentialId',
|
|
67
|
+
].includes(k)) ||
|
|
68
|
+
typeof a.memberId !== 'string' ||
|
|
69
|
+
!/^[0-9a-f-]{36}$/.test(a.memberId) ||
|
|
70
|
+
typeof a.email !== 'string' ||
|
|
71
|
+
typeof a.expiresAt !== 'string' ||
|
|
72
|
+
!Number.isFinite(Date.parse(a.expiresAt)))
|
|
73
|
+
throw new Error();
|
|
74
|
+
if (endpoint(a.apiUrl) !== a.apiUrl || endpoint(a.consoleUrl) !== a.consoleUrl)
|
|
75
|
+
throw new Error();
|
|
76
|
+
}
|
|
77
|
+
catch {
|
|
78
|
+
throw new InputError('Invalid account metadata. Never store tokens in configuration; restore the file or run login.');
|
|
79
|
+
}
|
|
80
|
+
return a;
|
|
81
|
+
}
|
|
82
|
+
export async function loadAccount(options) {
|
|
83
|
+
const text = await readOptional(await accountPath(options));
|
|
84
|
+
if (!text)
|
|
85
|
+
throw new InputError('Run lambdadb login first. Project-key environment setup remains available without account login.');
|
|
86
|
+
const a = parseAccount(text);
|
|
87
|
+
if (options.apiUrl && endpoint(options.apiUrl) !== a.apiUrl)
|
|
88
|
+
throw new InputError('This login belongs to a different API origin. Run login with --api-url for that server.');
|
|
89
|
+
if (Date.parse(a.expiresAt) <= Date.now())
|
|
90
|
+
throw new InputError('CLI login expired. Run lambdadb login again; existing project connections are preserved.');
|
|
91
|
+
return a;
|
|
92
|
+
}
|
|
93
|
+
export async function accountRequest(account, token, path, method = 'GET', body, org, signal, requestTimeoutMs = 30_000) {
|
|
94
|
+
let response;
|
|
95
|
+
let value;
|
|
96
|
+
try {
|
|
97
|
+
response = await fetch(`${account.apiUrl}/auth/cli/${path}`, {
|
|
98
|
+
method,
|
|
99
|
+
redirect: 'error',
|
|
100
|
+
headers: {
|
|
101
|
+
Authorization: `Bearer ${token}`,
|
|
102
|
+
'Content-Type': 'application/json',
|
|
103
|
+
...(org ? { 'X-Organization-ID': org } : {}),
|
|
104
|
+
},
|
|
105
|
+
...(body ? { body: JSON.stringify(body) } : {}),
|
|
106
|
+
signal: signal ? AbortSignal.any([signal, AbortSignal.timeout(requestTimeoutMs)]) : AbortSignal.timeout(requestTimeoutMs),
|
|
107
|
+
});
|
|
108
|
+
if (response.status === 204)
|
|
109
|
+
return {};
|
|
110
|
+
const reader = response.body?.getReader();
|
|
111
|
+
if (!reader)
|
|
112
|
+
throw new Error();
|
|
113
|
+
const chunks = [];
|
|
114
|
+
let size = 0;
|
|
115
|
+
try {
|
|
116
|
+
for (;;) {
|
|
117
|
+
const next = await reader.read();
|
|
118
|
+
if (next.done)
|
|
119
|
+
break;
|
|
120
|
+
size += next.value.length;
|
|
121
|
+
if (size > 2_000_000)
|
|
122
|
+
throw new Error();
|
|
123
|
+
chunks.push(next.value);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
finally {
|
|
127
|
+
await reader.cancel().catch(() => { });
|
|
128
|
+
}
|
|
129
|
+
value = JSON.parse(Buffer.concat(chunks).toString('utf8'));
|
|
130
|
+
if (!value || typeof value !== 'object' || Array.isArray(value))
|
|
131
|
+
throw new Error();
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
// A rejection remains definite without a JSON body. A connect conflict may
|
|
135
|
+
// represent an already claimed issuance, whose result cannot be recovered.
|
|
136
|
+
const status = response?.status;
|
|
137
|
+
if (status !== undefined && status >= 400 && status < 500 && status !== 408 &&
|
|
138
|
+
!(path === 'connect' && status === 409)) {
|
|
139
|
+
throw new ManagementError('management_request_failed', status);
|
|
140
|
+
}
|
|
141
|
+
throw new ManagementError(method === 'GET' ? 'management_unavailable' : 'write_outcome_unknown', status);
|
|
142
|
+
}
|
|
143
|
+
if (!response.ok) {
|
|
144
|
+
const known = [
|
|
145
|
+
'login_required',
|
|
146
|
+
'access_denied',
|
|
147
|
+
'project_limit_reached',
|
|
148
|
+
'issuance_unconfirmed',
|
|
149
|
+
'project_not_ready_or_forbidden',
|
|
150
|
+
'project_request_rejected',
|
|
151
|
+
];
|
|
152
|
+
const code = method !== 'GET' && (response.status >= 500 || response.status === 408) && value.error !== 'issuance_unconfirmed'
|
|
153
|
+
? 'write_outcome_unknown'
|
|
154
|
+
: typeof value.error === 'string' && known.includes(value.error)
|
|
155
|
+
? value.error
|
|
156
|
+
: 'management_request_failed';
|
|
157
|
+
// Only a small allowlist of non-secret fields may reach diagnostics.
|
|
158
|
+
const details = {};
|
|
159
|
+
if (typeof value.invitation_id === 'string' && /^[0-9a-f-]{36}$/.test(value.invitation_id)) {
|
|
160
|
+
details.invitation_id = value.invitation_id;
|
|
161
|
+
details.invitation_url = `${account.consoleUrl}/invites/${value.invitation_id}`;
|
|
162
|
+
}
|
|
163
|
+
if (code === 'project_limit_reached')
|
|
164
|
+
details.organization = parseOrganization(value.organization, account);
|
|
165
|
+
throw new ManagementError(code, response.status, details);
|
|
166
|
+
}
|
|
167
|
+
return value;
|
|
168
|
+
}
|
|
169
|
+
export function parseOrganization(value, a) {
|
|
170
|
+
const v = value;
|
|
171
|
+
if (!v ||
|
|
172
|
+
typeof v.id !== 'string' ||
|
|
173
|
+
!/^[0-9a-f-]{36}$/.test(v.id) ||
|
|
174
|
+
typeof v.name !== 'string' ||
|
|
175
|
+
!['owner', 'admin', 'member'].includes(v.role) ||
|
|
176
|
+
typeof v.plan !== 'string' ||
|
|
177
|
+
!Number.isInteger(v.max_projects) ||
|
|
178
|
+
v.max_projects < 0 ||
|
|
179
|
+
!Number.isInteger(v.projects_count) ||
|
|
180
|
+
v.projects_count < 0)
|
|
181
|
+
throw new InputError('Invalid Organization response. Check server compatibility.');
|
|
182
|
+
return {
|
|
183
|
+
id: v.id,
|
|
184
|
+
name: v.name,
|
|
185
|
+
role: v.role,
|
|
186
|
+
plan: v.plan,
|
|
187
|
+
max_projects: v.max_projects,
|
|
188
|
+
projects_count: v.projects_count,
|
|
189
|
+
billing_url: `${a.consoleUrl}/organization/billing/open?org_id=${encodeURIComponent(v.id)}`,
|
|
190
|
+
can_upgrade: v.role === 'owner',
|
|
191
|
+
};
|
|
192
|
+
}
|
|
193
|
+
export async function management(options, output) {
|
|
194
|
+
const requestTimeoutMs = timeoutMs(options);
|
|
195
|
+
const account = await loadAccount(options);
|
|
196
|
+
let token;
|
|
197
|
+
try {
|
|
198
|
+
token = await accountVault().read(accountTarget(account));
|
|
199
|
+
}
|
|
200
|
+
catch {
|
|
201
|
+
throw new InputError('Cannot read the CLI account session. Unlock the recorded OS store or run login explicitly. No account credential is forwarded to MCP.');
|
|
202
|
+
}
|
|
203
|
+
output.protect(token);
|
|
204
|
+
return {
|
|
205
|
+
account,
|
|
206
|
+
request: (path, method = 'GET', body, org) => accountRequest(account, token, path, method, body, org, options.signal, requestTimeoutMs),
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
export async function login(options, output, vault = accountVault()) {
|
|
210
|
+
const requestTimeoutMs = timeoutMs(options);
|
|
211
|
+
return withManagementLock(options, async () => {
|
|
212
|
+
const path = await accountPath(options), before = await readOptional(path);
|
|
213
|
+
let previousOrigin;
|
|
214
|
+
if (before) {
|
|
215
|
+
try {
|
|
216
|
+
previousOrigin = parseAccount(before).apiUrl;
|
|
217
|
+
}
|
|
218
|
+
catch {
|
|
219
|
+
/* Explicit login can replace malformed non-secret metadata. */
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
const apiUrl = endpoint(options.apiUrl ?? previousOrigin ?? 'https://api.lambdadb.ai');
|
|
223
|
+
const store = await vault.select(options.credentialStore ?? 'auto');
|
|
224
|
+
output.diagnostic(`Account session: ${store}; non-secret metadata: ${path}. Login lasts up to seven days. Project credentials are separate.`);
|
|
225
|
+
if (store === 'keyutils')
|
|
226
|
+
output.diagnostic('Kernel credentials can expire or disappear after reboot. Run login again explicitly if unavailable.');
|
|
227
|
+
const cancellation = new AbortController();
|
|
228
|
+
const cancel = () => cancellation.abort();
|
|
229
|
+
process.once('SIGINT', cancel);
|
|
230
|
+
process.once('SIGTERM', cancel);
|
|
231
|
+
try {
|
|
232
|
+
const granted = await authorizeAccount(apiUrl, options.browser !== false, output, options.signal ? AbortSignal.any([options.signal, cancellation.signal]) : cancellation.signal, requestTimeoutMs);
|
|
233
|
+
const account = {
|
|
234
|
+
apiUrl,
|
|
235
|
+
consoleUrl: granted.consoleUrl,
|
|
236
|
+
memberId: granted.memberId,
|
|
237
|
+
email: granted.email,
|
|
238
|
+
expiresAt: granted.expiresAt,
|
|
239
|
+
credentialStore: store,
|
|
240
|
+
credentialId: randomUUID(),
|
|
241
|
+
};
|
|
242
|
+
try {
|
|
243
|
+
await vault.save(accountTarget(account), granted.token);
|
|
244
|
+
await writeMetadata(path, account, before);
|
|
245
|
+
}
|
|
246
|
+
catch (error) {
|
|
247
|
+
await accountRequest(account, granted.token, 'logout', 'POST', {}, undefined, options.signal, requestTimeoutMs).catch(() => output.diagnostic('Server-session cleanup could not be confirmed; it expires within seven days.'));
|
|
248
|
+
await vault.remove(accountTarget(account)).catch(() => { });
|
|
249
|
+
throw error;
|
|
250
|
+
}
|
|
251
|
+
if (before) {
|
|
252
|
+
// Retire only a parseable previous account slot after the replacement is durable.
|
|
253
|
+
try {
|
|
254
|
+
const old = parseAccount(before);
|
|
255
|
+
const token = await vault.read(accountTarget(old));
|
|
256
|
+
output.protect(token);
|
|
257
|
+
await revokeAccount(old, token, options);
|
|
258
|
+
await vault.remove(accountTarget(old));
|
|
259
|
+
}
|
|
260
|
+
catch {
|
|
261
|
+
output.diagnostic('Previous login cleanup could not be confirmed. It expires within seven days; project keys are unaffected.');
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return account;
|
|
265
|
+
}
|
|
266
|
+
finally {
|
|
267
|
+
process.removeListener('SIGINT', cancel);
|
|
268
|
+
process.removeListener('SIGTERM', cancel);
|
|
269
|
+
}
|
|
270
|
+
});
|
|
271
|
+
}
|
|
272
|
+
export async function logout(options, output, vault = accountVault()) {
|
|
273
|
+
timeoutMs(options);
|
|
274
|
+
return withManagementLock(options, async () => {
|
|
275
|
+
const path = await accountPath(options), before = await readOptional(path);
|
|
276
|
+
if (!before)
|
|
277
|
+
return;
|
|
278
|
+
// Expired sessions may still be removed locally, without opening a browser.
|
|
279
|
+
const account = parseAccount(before);
|
|
280
|
+
if (options.apiUrl && endpoint(options.apiUrl) !== account.apiUrl)
|
|
281
|
+
throw new InputError('The account belongs to another API origin.');
|
|
282
|
+
const token = await vault.read(accountTarget(account));
|
|
283
|
+
output.protect(token);
|
|
284
|
+
await revokeAccount(account, token, options);
|
|
285
|
+
await vault.remove(accountTarget(account));
|
|
286
|
+
if ((await readOptional(path)) !== before)
|
|
287
|
+
throw new InputError('Account metadata changed. Review it before removing it.');
|
|
288
|
+
await rm(await fileIdentity(path));
|
|
289
|
+
});
|
|
290
|
+
}
|
|
291
|
+
async function revokeAccount(account, token, options) {
|
|
292
|
+
try {
|
|
293
|
+
await accountRequest(account, token, 'logout', 'POST', {}, undefined, options.signal, timeoutMs(options));
|
|
294
|
+
}
|
|
295
|
+
catch (error) {
|
|
296
|
+
// An expired or already revoked session is safe to remove locally.
|
|
297
|
+
if (!(error instanceof ManagementError && error.status === 401))
|
|
298
|
+
throw error;
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
//# sourceMappingURL=account.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAgB,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAA4B,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAW1D,MAAM,CAAC,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAC9F,MAAM,CAAC,MAAM,WAAW,GAAG,KAAK,EAAE,OAAgB,EAAE,EAAE,CACpD,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC;AAC5D,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAU,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;AAEhG,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,IAAI,CAAC;QACH,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAC;QACzE,MAAM,IAAI,UAAU,CAAC,eAAe,IAAI,2BAA2B,CAAC,CAAC;IACvE,CAAC;AACH,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,KAAc,EAAE,MAA0B;IAC1F,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,MAAM;QACvC,MAAM,IAAI,UAAU,CAAC,0BAA0B,IAAI,6BAA6B,CAAC,CAAC;IACpF,MAAM,IAAI,GAAG,GAAG,WAAW,IAAI,UAAU,EAAE,MAAM,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACpE,MAAM,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1F,MAAM,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAClC,CAAC;YAAS,CAAC;QACT,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAClD,CAAC;AACH,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAI,OAAgB,EAAE,MAAwB;IACpF,MAAM,IAAI,GAAG,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,kBAAkB,CAAC;IAC1E,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7D,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,UAAU,CAClB,wFAAwF,IAAI,aAAa,CAC1G,CAAC;IACJ,CAAC;IACD,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5C,OAAO,MAAM,MAAM,EAAE,CAAC;IACxB,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AACD,SAAS,YAAY,CAAC,IAAY;IAChC,IAAI,CAAU,CAAC;IACf,IAAI,CAAC;QACH,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrB,mBAAmB,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;QACvD,IACE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC;YACC,QAAQ;YACR,YAAY;YACZ,UAAU;YACV,OAAO;YACP,WAAW;YACX,iBAAiB;YACjB,cAAc;SACf,CAAC,QAAQ,CAAC,CAAC,CAAC,CAChB;YACD,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ;YAC9B,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC;YACnC,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ;YAC3B,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;YAC/B,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAEzC,MAAM,IAAI,KAAK,EAAE,CAAC;QACpB,IAAI,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IACpG,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,UAAU,CAClB,+FAA+F,CAChG,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,OAAuB;IACvD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,IAAI,CAAC,IAAI;QACP,MAAM,IAAI,UAAU,CAClB,kGAAkG,CACnG,CAAC;IACJ,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM;QACzD,MAAM,IAAI,UAAU,CAClB,yFAAyF,CAC1F,CAAC;IACJ,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;QACvC,MAAM,IAAI,UAAU,CAClB,0FAA0F,CAC3F,CAAC;IACJ,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAgB,EAChB,KAAa,EACb,IAAY,EACZ,MAAM,GAAG,KAAK,EACd,IAAa,EACb,GAAY,EACZ,MAAoB,EACpB,gBAAgB,GAAG,MAAM;IAEzB,IAAI,QAA8B,CAAC;IACnC,IAAI,KAA8B,CAAC;IACnC,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,OAAO,CAAC,MAAM,aAAa,IAAI,EAAE,EAAE;YAC3D,MAAM;YACN,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE;gBACP,aAAa,EAAE,UAAU,KAAK,EAAE;gBAChC,cAAc,EAAE,kBAAkB;gBAClC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC7C;YACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,gBAAgB,CAAC;SAC1H,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;QAC1C,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAiB,EAAE,CAAC;QAChC,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,CAAC;YACH,SAAS,CAAC;gBACR,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBACjC,IAAI,IAAI,CAAC,IAAI;oBAAE,MAAM;gBACrB,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAC1B,IAAI,IAAI,GAAG,SAAS;oBAAE,MAAM,IAAI,KAAK,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACxC,CAAC;QACD,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;QAC3D,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,EAAE,CAAC;IACrF,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;QAChC,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,IAAI,GAAG,IAAI,MAAM,GAAG,GAAG,IAAI,MAAM,KAAK,GAAG;YACzE,CAAC,CAAC,IAAI,KAAK,SAAS,IAAI,MAAM,KAAK,GAAG,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,eAAe,CAAC,2BAA2B,EAAE,MAAM,CAAC,CAAC;QACjE,CAAC;QACD,MAAM,IAAI,eAAe,CACvB,MAAM,KAAK,KAAK,CAAC,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,uBAAuB,EACrE,MAAM,CACP,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,KAAK,GAAG;YACZ,gBAAgB;YAChB,eAAe;YACf,uBAAuB;YACvB,sBAAsB;YACtB,gCAAgC;YAChC,0BAA0B;SAC3B,CAAC;QACF,MAAM,IAAI,GACR,MAAM,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,sBAAsB;YAC/G,CAAC,CAAC,uBAAuB;YACzB,CAAC,CAAC,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC9D,CAAC,CAAC,KAAK,CAAC,KAAK;gBACb,CAAC,CAAC,2BAA2B,CAAC;QACpC,qEAAqE;QACrE,MAAM,OAAO,GAA4B,EAAE,CAAC;QAC5C,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3F,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAC;YAC5C,OAAO,CAAC,cAAc,GAAG,GAAG,OAAO,CAAC,UAAU,YAAY,KAAK,CAAC,aAAa,EAAE,CAAC;QAClF,CAAC;QACD,IAAI,IAAI,KAAK,uBAAuB;YAClC,OAAO,CAAC,YAAY,GAAG,iBAAiB,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;QACxE,MAAM,IAAI,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5D,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAWD,MAAM,UAAU,iBAAiB,CAAC,KAAc,EAAE,CAAU;IAC1D,MAAM,CAAC,GAAG,KAAqB,CAAC;IAChC,IACE,CAAC,CAAC;QACF,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ;QACxB,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC1B,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9C,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC1B,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;QACjC,CAAC,CAAC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC;QACnC,CAAC,CAAC,cAAc,GAAG,CAAC;QAEpB,MAAM,IAAI,UAAU,CAAC,4DAA4D,CAAC,CAAC;IACrF,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,WAAW,EAAE,GAAG,CAAC,CAAC,UAAU,qCAAqC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;QAC3F,WAAW,EAAE,CAAC,CAAC,IAAI,KAAK,OAAO;KAChC,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,OAAuB,EAAE,MAAc;IACtE,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,CAAC;IAC3C,IAAI,KAAa,CAAC;IAClB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,YAAY,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5D,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,UAAU,CAClB,uIAAuI,CACxI,CAAC;IACJ,CAAC;IACD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACtB,OAAO;QACL,OAAO;QACP,OAAO,EAAE,CAAC,IAAY,EAAE,MAAM,GAAG,KAAK,EAAE,IAAa,EAAE,GAAY,EAAE,EAAE,CACrE,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC;KAC5F,CAAC;AACJ,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,KAAK,CAAC,OAAuB,EAAE,MAAc,EAAE,KAAK,GAAG,YAAY,EAAE;IACzF,MAAM,gBAAgB,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC5C,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EACrC,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,cAAkC,CAAC;QACvC,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC;gBACH,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC;YAC/C,CAAC;YAAC,MAAM,CAAC;gBACP,+DAA+D;YACjE,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,IAAI,cAAc,IAAI,yBAAyB,CAAC,CAAC;QACvF,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,IAAI,MAAM,CAAC,CAAC;QACpE,MAAM,CAAC,UAAU,CACf,oBAAoB,KAAK,0BAA0B,IAAI,mEAAmE,CAC3H,CAAC;QACF,IAAI,KAAK,KAAK,UAAU;YACtB,MAAM,CAAC,UAAU,CACf,qGAAqG,CACtG,CAAC;QACJ,MAAM,YAAY,GAAG,IAAI,eAAe,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC1C,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,gBAAgB,CACpC,MAAM,EACN,OAAO,CAAC,OAAO,KAAK,KAAK,EACzB,MAAM,EACN,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAC7F,gBAAgB,CACjB,CAAC;YACF,MAAM,OAAO,GAAY;gBACvB,MAAM;gBACN,UAAU,EAAE,OAAO,CAAC,UAAU;gBAC9B,QAAQ,EAAE,OAAO,CAAC,QAAQ;gBAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,eAAe,EAAE,KAAK;gBACtB,YAAY,EAAE,UAAU,EAAE;aAC3B,CAAC;YACF,IAAI,CAAC;gBACH,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;gBACxD,MAAM,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CACzH,MAAM,CAAC,UAAU,CAAC,8EAA8E,CAAC,CAClG,CAAC;gBACF,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC3D,MAAM,KAAK,CAAC;YACd,CAAC;YACD,IAAI,MAAM,EAAE,CAAC;gBACX,kFAAkF;gBAClF,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;oBACjC,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;oBACnD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBACtB,MAAM,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;oBACzC,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzC,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,CAAC,UAAU,CACf,2GAA2G,CAC5G,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YACzC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,OAAuB,EAAE,MAAc,EAAE,KAAK,GAAG,YAAY,EAAE;IAC1F,SAAS,CAAC,OAAO,CAAC,CAAC;IACnB,OAAO,kBAAkB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;QAC5C,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EACrC,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM;YAAE,OAAO;QACpB,4EAA4E;QAC5E,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACrC,IAAI,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,MAAM;YAC/D,MAAM,IAAI,UAAU,CAAC,4CAA4C,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtB,MAAM,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,MAAM;YACvC,MAAM,IAAI,UAAU,CAAC,yDAAyD,CAAC,CAAC;QAClF,MAAM,EAAE,CAAC,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,OAAgB,EAAE,KAAa,EAAE,OAAuB;IACnF,IAAI,CAAC;QACH,MAAM,cAAc,CAAC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAC5G,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,mEAAmE;QACnE,IAAI,CAAC,CAAC,KAAK,YAAY,eAAe,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC;YAAE,MAAM,KAAK,CAAC;IAC/E,CAAC;AACH,CAAC"}
|
package/dist/agent-config.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { SelectedSettings } from './config.js';
|
|
2
2
|
export type McpLaunch = {
|
|
3
3
|
command: string;
|
|
4
4
|
args: string[];
|
|
5
|
-
apiKeyEnv
|
|
5
|
+
apiKeyEnv?: string;
|
|
6
|
+
runtimeEnv?: string[];
|
|
6
7
|
};
|
|
7
8
|
type Server = {
|
|
8
9
|
command: string | string[];
|
|
@@ -14,7 +15,7 @@ type Server = {
|
|
|
14
15
|
};
|
|
15
16
|
type ServerFactory = (launch: McpLaunch) => Server;
|
|
16
17
|
type JsonMapPath = readonly string[] | ((value: Record<string, unknown>) => readonly string[]);
|
|
17
|
-
export declare function mcpLaunch(selected:
|
|
18
|
+
export declare function mcpLaunch(selected: SelectedSettings, writeTools: boolean, cliVersion: string): McpLaunch;
|
|
18
19
|
export declare function jsonConfig(path: string, text: string | undefined, launch: McpLaunch, createServer: ServerFactory, mapPath?: JsonMapPath): string;
|
|
19
20
|
export declare function strictJsonConfig(path: string, text: string | undefined, launch: McpLaunch, createServer: ServerFactory, mapPath?: JsonMapPath): string;
|
|
20
21
|
export declare function tomlConfig(path: string, text: string | undefined, launch: McpLaunch, createServer: ServerFactory): string;
|
package/dist/agent-config.js
CHANGED
|
@@ -1,12 +1,16 @@
|
|
|
1
1
|
import { applyEdits, modify, parse as parseJson } from 'jsonc-parser';
|
|
2
2
|
import { parse as parseToml } from 'smol-toml';
|
|
3
|
+
import { credentialReference } from './credentials.js';
|
|
3
4
|
import { InputError } from './errors.js';
|
|
4
5
|
const begin = '# BEGIN lambdadb init';
|
|
5
6
|
const end = '# END lambdadb init';
|
|
6
7
|
export function mcpLaunch(selected, writeTools, cliVersion) {
|
|
7
|
-
|
|
8
|
+
const stored = selected.credentialStore ? credentialReference(selected.credentialStore, selected.credentialId) : undefined;
|
|
9
|
+
return { command: 'npx', apiKeyEnv: selected.credentialStore ? undefined : selected.apiKeyEnv,
|
|
10
|
+
runtimeEnv: selected.credentialStore === 'secret-service' ? ['DBUS_SESSION_BUS_ADDRESS', 'XDG_RUNTIME_DIR'] : [],
|
|
8
11
|
args: ['-y', `@functional-systems/lambdadb-cli@${cliVersion}`, 'mcp',
|
|
9
|
-
'--endpoint', selected.endpoint, '--project', selected.project,
|
|
12
|
+
'--endpoint', selected.endpoint, '--project', selected.project,
|
|
13
|
+
...(stored ? ['--credential-store', stored.credentialStore, '--credential-id', stored.credentialId] : ['--api-key-env', selected.apiKeyEnv]),
|
|
10
14
|
...(writeTools ? ['--write-tools'] : [])] };
|
|
11
15
|
}
|
|
12
16
|
function object(value) {
|
|
@@ -22,10 +26,13 @@ function managedServer(value, createServer) {
|
|
|
22
26
|
if (command !== 'npx' || !Array.isArray(a))
|
|
23
27
|
return false;
|
|
24
28
|
if (a.some(v => typeof v !== 'string') || !/^@functional-systems\/lambdadb-cli@[\w.+-]+$/.test(a[1] ?? '')
|
|
25
|
-
|| a[0] !== '-y' || a[2] !== 'mcp' || a[3] !== '--endpoint' || a[5] !== '--project'
|
|
26
|
-
|| a[7] !== '--api-key-env' || ![9, 10].includes(a.length) || (a.length === 10 && a[9] !== '--write-tools'))
|
|
29
|
+
|| a[0] !== '-y' || a[2] !== 'mcp' || a[3] !== '--endpoint' || a[5] !== '--project')
|
|
27
30
|
return false;
|
|
28
|
-
const
|
|
31
|
+
const stored = a[7] === '--credential-store' && ['keychain', 'windows', 'secret-service', 'keyutils'].includes(a[8]) && a[9] === '--credential-id';
|
|
32
|
+
const length = stored ? 11 : 9;
|
|
33
|
+
if ((!stored && a[7] !== '--api-key-env') || ![length, length + 1].includes(a.length) || (a.length > length && a[length] !== '--write-tools'))
|
|
34
|
+
return false;
|
|
35
|
+
const expected = createServer({ command: 'npx', args: a, apiKeyEnv: stored ? undefined : a[8], runtimeEnv: stored && a[8] === 'secret-service' ? ['DBUS_SESSION_BUS_ADDRESS', 'XDG_RUNTIME_DIR'] : [] });
|
|
29
36
|
return Object.keys(value).length === Object.keys(expected).length
|
|
30
37
|
&& Object.entries(expected).every(([key, item]) => JSON.stringify(value[key]) === JSON.stringify(item));
|
|
31
38
|
}
|
package/dist/agent-config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../src/agent-config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,IAAI,SAAS,EAAmB,MAAM,cAAc,CAAC;AACvF,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;AAE/C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,MAAM,KAAK,GAAG,uBAAuB,CAAC;AACtC,MAAM,GAAG,GAAG,qBAAqB,CAAC;AAElC,MAAM,UAAU,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"agent-config.js","sourceRoot":"","sources":["../src/agent-config.ts"],"names":[],"mappings":"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"}
|
package/dist/agents.d.ts
CHANGED
|
@@ -84,7 +84,7 @@ export declare const agentAdapters: readonly [{
|
|
|
84
84
|
readonly detectionDirectories: (context: AgentContext) => string[];
|
|
85
85
|
readonly paths: typeof copilotPaths;
|
|
86
86
|
readonly configure: (path: string, text: string | undefined, launch: McpLaunch) => string;
|
|
87
|
-
readonly instructions: "GitHub Copilot CLI: restart
|
|
87
|
+
readonly instructions: "GitHub Copilot CLI: restart with the configured credential source available, trust the repository, then check /mcp and run /skills reload. Project MCP settings override user settings.";
|
|
88
88
|
}, {
|
|
89
89
|
readonly id: "kiro";
|
|
90
90
|
readonly executable: readonly ["kiro", "kiro-cli"];
|
|
@@ -94,7 +94,7 @@ export declare const agentAdapters: readonly [{
|
|
|
94
94
|
skill: string;
|
|
95
95
|
};
|
|
96
96
|
readonly configure: (path: string, text: string | undefined, launch: McpLaunch) => string;
|
|
97
|
-
readonly instructions: "Kiro IDE/CLI: restart
|
|
97
|
+
readonly instructions: "Kiro IDE/CLI: restart with the configured credential source available and check /mcp. For environment mode, approve the selected variable in Mcp Approved Env Vars when prompted. Custom agents must include the MCP JSON and skill resources; init does not alter agent permissions or definitions.";
|
|
98
98
|
}, {
|
|
99
99
|
readonly id: "cline";
|
|
100
100
|
readonly executable: readonly [];
|
|
@@ -105,7 +105,7 @@ export declare const agentAdapters: readonly [{
|
|
|
105
105
|
skill: string;
|
|
106
106
|
};
|
|
107
107
|
readonly configure: (path: string, text: string | undefined, launch: McpLaunch) => string;
|
|
108
|
-
readonly instructions: "Cline VS Code extension: reload VS Code
|
|
108
|
+
readonly instructions: "Cline VS Code extension: reload VS Code with the configured credential source available and check MCP Servers and the Skills menu. Init targets the default stable VS Code profile, not Cline CLI or other editors/profiles. No tools are auto-approved.";
|
|
109
109
|
}];
|
|
110
110
|
export type Agent = typeof agentAdapters[number]['id'];
|
|
111
111
|
export declare const agentNames: string;
|
package/dist/agents.js
CHANGED
|
@@ -3,18 +3,18 @@ import { constants } from 'node:fs';
|
|
|
3
3
|
import { delimiter, join, resolve } from 'node:path';
|
|
4
4
|
import { jsonConfig, strictJsonConfig, tomlConfig } from './agent-config.js';
|
|
5
5
|
import { InputError } from './errors.js';
|
|
6
|
-
const codexServer = ({ command, args, apiKeyEnv }) => ({ command, args, env_vars: [apiKeyEnv] });
|
|
6
|
+
const codexServer = ({ command, args, apiKeyEnv, runtimeEnv }) => ({ command, args, env_vars: apiKeyEnv ? [apiKeyEnv] : runtimeEnv ?? [] });
|
|
7
7
|
const claudeServer = ({ command, args, apiKeyEnv }) => ({
|
|
8
|
-
type: 'stdio', command, args, env: { [apiKeyEnv]: `\${${apiKeyEnv}}` },
|
|
8
|
+
type: 'stdio', command, args, env: apiKeyEnv ? { [apiKeyEnv]: `\${${apiKeyEnv}}` } : {},
|
|
9
9
|
});
|
|
10
10
|
const cursorServer = ({ command, args, apiKeyEnv }) => ({
|
|
11
|
-
type: 'stdio', command, args, env: { [apiKeyEnv]: `\${env:${apiKeyEnv}}` },
|
|
11
|
+
type: 'stdio', command, args, env: apiKeyEnv ? { [apiKeyEnv]: `\${env:${apiKeyEnv}}` } : {},
|
|
12
12
|
});
|
|
13
13
|
const geminiServer = ({ command, args, apiKeyEnv }) => ({
|
|
14
|
-
command, args, env: { [apiKeyEnv]: `\${${apiKeyEnv}}` },
|
|
14
|
+
command, args, env: apiKeyEnv ? { [apiKeyEnv]: `\${${apiKeyEnv}}` } : {},
|
|
15
15
|
});
|
|
16
16
|
const opencodeServer = ({ command, args, apiKeyEnv }) => ({
|
|
17
|
-
type: 'local', command: [command, ...args], environment: { [apiKeyEnv]: `{env:${apiKeyEnv}}` },
|
|
17
|
+
type: 'local', command: [command, ...args], environment: apiKeyEnv ? { [apiKeyEnv]: `{env:${apiKeyEnv}}` } : {},
|
|
18
18
|
});
|
|
19
19
|
function vscodeUserDirectory({ cwd, home, env, platform = process.platform }) {
|
|
20
20
|
if (env.VSCODE_PORTABLE)
|
|
@@ -146,7 +146,7 @@ export const agentAdapters = [
|
|
|
146
146
|
detectionDirectories: context => [copilotDirectory(context), join(context.cwd, '.github', 'mcp.json')],
|
|
147
147
|
paths: copilotPaths,
|
|
148
148
|
configure: (path, text, launch) => strictJsonConfig(path, text, launch, claudeServer, copilotMapPath),
|
|
149
|
-
instructions: 'GitHub Copilot CLI: restart
|
|
149
|
+
instructions: 'GitHub Copilot CLI: restart with the configured credential source available, trust the repository, then check /mcp and run /skills reload. Project MCP settings override user settings.',
|
|
150
150
|
},
|
|
151
151
|
{
|
|
152
152
|
id: 'kiro', executable: ['kiro', 'kiro-cli'],
|
|
@@ -156,7 +156,7 @@ export const agentAdapters = [
|
|
|
156
156
|
return { mcp: join(directory, 'settings', 'mcp.json'), skill: join(directory, 'skills', 'lambdadb', 'SKILL.md') };
|
|
157
157
|
},
|
|
158
158
|
configure: (path, text, launch) => jsonConfig(path, text, launch, geminiServer),
|
|
159
|
-
instructions: 'Kiro IDE/CLI: restart
|
|
159
|
+
instructions: 'Kiro IDE/CLI: restart with the configured credential source available and check /mcp. For environment mode, approve the selected variable in Mcp Approved Env Vars when prompted. Custom agents must include the MCP JSON and skill resources; init does not alter agent permissions or definitions.',
|
|
160
160
|
},
|
|
161
161
|
{
|
|
162
162
|
id: 'cline', executable: [], scopes: ['user'],
|
|
@@ -166,7 +166,7 @@ export const agentAdapters = [
|
|
|
166
166
|
skill: join(context.home, '.cline', 'skills', 'lambdadb', 'SKILL.md') };
|
|
167
167
|
},
|
|
168
168
|
configure: (path, text, launch) => strictJsonConfig(path, text, launch, cursorServer),
|
|
169
|
-
instructions: 'Cline VS Code extension: reload VS Code
|
|
169
|
+
instructions: 'Cline VS Code extension: reload VS Code with the configured credential source available and check MCP Servers and the Skills menu. Init targets the default stable VS Code profile, not Cline CLI or other editors/profiles. No tools are auto-approved.',
|
|
170
170
|
},
|
|
171
171
|
];
|
|
172
172
|
export const agentNames = agentAdapters.map(adapter => adapter.id).join(',');
|
package/dist/agents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../src/agents.ts"],"names":[],"mappings":"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"}
|