@indy2kro/agentenv 1.1.2 → 1.2.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/dist/adapters/base.d.ts +3 -1
- package/dist/adapters/base.d.ts.map +1 -1
- package/dist/adapters/base.js.map +1 -1
- package/dist/adapters/claude.d.ts +0 -4
- package/dist/adapters/claude.d.ts.map +1 -1
- package/dist/adapters/claude.js +5 -36
- package/dist/adapters/claude.js.map +1 -1
- package/dist/adapters/cline.d.ts.map +1 -1
- package/dist/adapters/cline.js +1 -0
- package/dist/adapters/cline.js.map +1 -1
- package/dist/adapters/codex.d.ts.map +1 -1
- package/dist/adapters/codex.js +12 -10
- package/dist/adapters/codex.js.map +1 -1
- package/dist/adapters/copilot.d.ts.map +1 -1
- package/dist/adapters/copilot.js +8 -9
- package/dist/adapters/copilot.js.map +1 -1
- package/dist/adapters/detect.d.ts +8 -0
- package/dist/adapters/detect.d.ts.map +1 -1
- package/dist/adapters/detect.js +26 -7
- package/dist/adapters/detect.js.map +1 -1
- package/dist/adapters/gemini.d.ts.map +1 -1
- package/dist/adapters/gemini.js +5 -0
- package/dist/adapters/gemini.js.map +1 -1
- package/dist/adapters/opencode.d.ts.map +1 -1
- package/dist/adapters/opencode.js +3 -8
- package/dist/adapters/opencode.js.map +1 -1
- package/dist/adapters/rtk-delegation.d.ts +20 -2
- package/dist/adapters/rtk-delegation.d.ts.map +1 -1
- package/dist/adapters/rtk-delegation.js +86 -11
- package/dist/adapters/rtk-delegation.js.map +1 -1
- package/dist/adapters/vibe.d.ts.map +1 -1
- package/dist/adapters/vibe.js +4 -1
- package/dist/adapters/vibe.js.map +1 -1
- package/dist/adapters/windsurf.d.ts.map +1 -1
- package/dist/adapters/windsurf.js +3 -1
- package/dist/adapters/windsurf.js.map +1 -1
- package/dist/cli/exit.d.ts +7 -0
- package/dist/cli/exit.d.ts.map +1 -1
- package/dist/cli/exit.js +9 -0
- package/dist/cli/exit.js.map +1 -1
- package/dist/cli/json.d.ts +22 -0
- package/dist/cli/json.d.ts.map +1 -0
- package/dist/cli/json.js +17 -0
- package/dist/cli/json.js.map +1 -0
- package/dist/commands/agent-files.d.ts +14 -0
- package/dist/commands/agent-files.d.ts.map +1 -0
- package/dist/commands/agent-files.js +58 -0
- package/dist/commands/agent-files.js.map +1 -0
- package/dist/commands/apply.d.ts +42 -1
- package/dist/commands/apply.d.ts.map +1 -1
- package/dist/commands/apply.js +169 -53
- package/dist/commands/apply.js.map +1 -1
- package/dist/commands/completion.d.ts +4 -0
- package/dist/commands/completion.d.ts.map +1 -1
- package/dist/commands/completion.js +46 -5
- package/dist/commands/completion.js.map +1 -1
- package/dist/commands/config-edit.d.ts +9 -7
- package/dist/commands/config-edit.d.ts.map +1 -1
- package/dist/commands/config-edit.js +65 -18
- package/dist/commands/config-edit.js.map +1 -1
- package/dist/commands/doctor.d.ts +9 -1
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +123 -8
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/setup.d.ts +22 -3
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +136 -39
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/status.d.ts +10 -6
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +62 -48
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/uninstall.d.ts +15 -2
- package/dist/commands/uninstall.d.ts.map +1 -1
- package/dist/commands/uninstall.js +79 -13
- package/dist/commands/uninstall.js.map +1 -1
- package/dist/commands/update.d.ts +29 -2
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +173 -15
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/wizard.d.ts +2 -0
- package/dist/commands/wizard.d.ts.map +1 -1
- package/dist/commands/wizard.js +33 -12
- package/dist/commands/wizard.js.map +1 -1
- package/dist/config/schema.d.ts +3 -3
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +51 -28
- package/dist/config/schema.js.map +1 -1
- package/dist/config/scopes.d.ts +14 -0
- package/dist/config/scopes.d.ts.map +1 -1
- package/dist/config/scopes.js +23 -0
- package/dist/config/scopes.js.map +1 -1
- package/dist/generate/agentsmd.d.ts +9 -3
- package/dist/generate/agentsmd.d.ts.map +1 -1
- package/dist/generate/agentsmd.js +103 -24
- package/dist/generate/agentsmd.js.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/integrations/base.d.ts +0 -1
- package/dist/integrations/base.d.ts.map +1 -1
- package/dist/integrations/superpowers.d.ts +12 -4
- package/dist/integrations/superpowers.d.ts.map +1 -1
- package/dist/integrations/superpowers.js +33 -37
- package/dist/integrations/superpowers.js.map +1 -1
- package/dist/shell/detector.d.ts.map +1 -1
- package/dist/shell/detector.js +9 -0
- package/dist/shell/detector.js.map +1 -1
- package/dist/shell/shell-fix-state.d.ts +1 -1
- package/dist/shell/shell-fix-state.d.ts.map +1 -1
- package/dist/shell/shell-fix-state.js +13 -2
- package/dist/shell/shell-fix-state.js.map +1 -1
- package/dist/toolchain/gh.d.ts +7 -0
- package/dist/toolchain/gh.d.ts.map +1 -1
- package/dist/toolchain/gh.js +13 -1
- package/dist/toolchain/gh.js.map +1 -1
- package/dist/toolchain/mise.d.ts +54 -1
- package/dist/toolchain/mise.d.ts.map +1 -1
- package/dist/toolchain/mise.js +170 -27
- package/dist/toolchain/mise.js.map +1 -1
- package/dist/toolchain/rtk.d.ts +7 -0
- package/dist/toolchain/rtk.d.ts.map +1 -1
- package/dist/toolchain/rtk.js +11 -0
- package/dist/toolchain/rtk.js.map +1 -1
- package/dist/ui/output.d.ts.map +1 -1
- package/dist/ui/output.js +7 -3
- package/dist/ui/output.js.map +1 -1
- package/dist/ui/report.d.ts +13 -2
- package/dist/ui/report.d.ts.map +1 -1
- package/dist/ui/report.js +24 -4
- package/dist/ui/report.js.map +1 -1
- package/dist/utils/fs-retry.d.ts +11 -1
- package/dist/utils/fs-retry.d.ts.map +1 -1
- package/dist/utils/fs-retry.js +43 -4
- package/dist/utils/fs-retry.js.map +1 -1
- package/dist/wizard/build.d.ts +7 -1
- package/dist/wizard/build.d.ts.map +1 -1
- package/dist/wizard/build.js +11 -6
- package/dist/wizard/build.js.map +1 -1
- package/package.json +2 -1
package/dist/commands/doctor.js
CHANGED
|
@@ -5,10 +5,12 @@ import { AGENT_COMMANDS, isAgentInstalled } from '../adapters/detect.js';
|
|
|
5
5
|
import { isQuiet, LOGO, resolveResultLine, setQuietEnabled, shouldPrintBanner, } from '../ui/output.js';
|
|
6
6
|
import { theme } from '../ui/theme.js';
|
|
7
7
|
import { BINARY_MAP, getEnabledAgents, loadConfig, TOOL_KEYS, validateConfig, } from '../config/schema.js';
|
|
8
|
-
import { findConfigPath, userConfigDir } from '../config/scopes.js';
|
|
8
|
+
import { findConfigPath, findConfigPathInScope, parseScopeFlag, userConfigDir, } from '../config/scopes.js';
|
|
9
9
|
import { bashExecutable, checkAgentShellConfiguration, detectShell, generateGitBashPathAddition, gitInstallRoot, NATIVE_UNIX_TOOLS, preferredGitBashLauncher, readPersistentWindowsPath, resolveOnWindowsPath, } from '../shell/detector.js';
|
|
10
|
-
import { getInstalledToolState, getMiseVersion, getShimsDirValue, isMiseInstalled, miseGlobalConfigPath, miseInstallInstructions, PINNED_TOOL_VERSIONS, shimsDir, shimsDirOnPath, toolAvailabilityClassification, } from '../toolchain/mise.js';
|
|
10
|
+
import { getInstalledToolState, getMiseVersion, getShimsDirValue, isMiseInstalled, MISE_TOOL_NAMES, miseGlobalConfigPath, miseTomlPathFor, runMiseCaptured, miseInstallInstructions, PINNED_TOOL_VERSIONS, shimsDir, shimsDirOnPath, findShadowedShims, toolAvailabilityClassification, } from '../toolchain/mise.js';
|
|
11
11
|
import { checkRtkInstallation } from '../toolchain/rtk.js';
|
|
12
|
+
import { requestedInstructionFiles } from '../generate/agentsmd.js';
|
|
13
|
+
import { userScopeInstructionFiles } from './apply.js';
|
|
12
14
|
const STATUS_COLOR = {
|
|
13
15
|
ok: theme.ok,
|
|
14
16
|
warn: theme.warn,
|
|
@@ -149,6 +151,10 @@ export function agentShellItem(agent, info, exists) {
|
|
|
149
151
|
}
|
|
150
152
|
return { status: 'ok', label, detail: info.shell };
|
|
151
153
|
}
|
|
154
|
+
/** The deps that make `doctor --scope <scope>` inspect that scope; none without a scope. */
|
|
155
|
+
export function scopedDoctorDeps(scope) {
|
|
156
|
+
return scope ? { findConfigPath: () => findConfigPathInScope(scope) } : {};
|
|
157
|
+
}
|
|
152
158
|
export function gatherDoctor(sectionFilter, deps = {}) {
|
|
153
159
|
const detectShellFn = deps.detectShell ?? detectShell;
|
|
154
160
|
const existsSync = deps.existsSync ?? fs.existsSync;
|
|
@@ -158,6 +164,9 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
158
164
|
const miseGlobalConfigPathFn = deps.miseGlobalConfigPath ?? miseGlobalConfigPath;
|
|
159
165
|
const shimsDirFn = deps.shimsDir ?? shimsDir;
|
|
160
166
|
const shimsDirOnPathFn = deps.shimsDirOnPath ?? shimsDirOnPath;
|
|
167
|
+
const findShadowedShimsFn = deps.findShadowedShims ?? findShadowedShims;
|
|
168
|
+
const miseProvidesExecutableFn = deps.miseProvidesExecutable ??
|
|
169
|
+
((binary, cwd) => runMiseCaptured(['which', binary], { cwd }).status === 0);
|
|
161
170
|
const findConfigPathFn = deps.findConfigPath ?? findConfigPath;
|
|
162
171
|
const userConfigDirFn = deps.userConfigDir ?? userConfigDir;
|
|
163
172
|
const loadConfigFn = deps.loadConfig ?? loadConfig;
|
|
@@ -227,6 +236,7 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
227
236
|
status: 'fail',
|
|
228
237
|
label: 'shims_dir',
|
|
229
238
|
detail: `not set to ${shimsDirFn()} in ${globalConfigPath} — run \`agentenv apply\``,
|
|
239
|
+
fix: 'agentenv apply',
|
|
230
240
|
});
|
|
231
241
|
}
|
|
232
242
|
miseItems.push({
|
|
@@ -300,18 +310,45 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
300
310
|
const item = { status: 'ok', label: `${binary} (${key})`, detail: '' };
|
|
301
311
|
if (status === 'needs-new-terminal') {
|
|
302
312
|
item.status = 'warn';
|
|
303
|
-
|
|
313
|
+
if (miseProvidesExecutableFn(binary, path.dirname(configPath))) {
|
|
314
|
+
item.detail = 'installed via mise; open a new terminal';
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
// mise lists it as installed but `mise which` finds nothing to run (e.g. an
|
|
318
|
+
// upstream package whose Windows asset has no .exe), so a new terminal
|
|
319
|
+
// would never fix it.
|
|
320
|
+
const miseName = MISE_TOOL_NAMES[key] || key;
|
|
321
|
+
item.detail = `mise lists it as installed but provides no executable (\`mise which ${binary}\` fails), so a new terminal will not help; reinstall with \`mise install --force ${miseName}\`, and if that fails too the package is broken for this platform: \`agentenv remove ${key}\``;
|
|
322
|
+
item.fix = `mise install --force ${miseName}`;
|
|
323
|
+
}
|
|
304
324
|
}
|
|
305
325
|
else if (status === 'manual') {
|
|
306
|
-
|
|
307
|
-
|
|
326
|
+
// Not actionable by agentenv (e.g. tokei, or rga/jless on Windows), so it
|
|
327
|
+
// must not keep the whole report at 'warn' forever.
|
|
328
|
+
item.detail = 'not managed by mise; install manually if you want it';
|
|
308
329
|
}
|
|
309
330
|
else if (status === 'missing') {
|
|
310
331
|
item.status = 'fail';
|
|
311
|
-
item.detail =
|
|
332
|
+
item.detail =
|
|
333
|
+
scope === 'user'
|
|
334
|
+
? 'not on PATH — run `agentenv apply --scope user`'
|
|
335
|
+
: 'not on PATH — run `mise install` in this project';
|
|
336
|
+
item.fix = scope === 'user' ? 'agentenv apply --scope user' : 'agentenv apply';
|
|
312
337
|
}
|
|
313
338
|
toolItems.push(item);
|
|
314
339
|
}
|
|
340
|
+
// mise's own `doctor` warns about this; without it every tool above can read
|
|
341
|
+
// [ok] while the agent actually runs a different copy of it.
|
|
342
|
+
const shadowed = findShadowedShimsFn(enabledTools.map((key) => BINARY_MAP[key]), { pathEnv: process.env.PATH ?? '', shimsDir: shimsDirFn() });
|
|
343
|
+
if (shadowed.length > 0) {
|
|
344
|
+
const shown = shadowed.slice(0, 5).map((s) => `${s.binary} → ${s.shadowedBy}`);
|
|
345
|
+
const more = shadowed.length > shown.length ? `, +${shadowed.length - shown.length} more` : '';
|
|
346
|
+
toolItems.push({
|
|
347
|
+
status: 'warn',
|
|
348
|
+
label: 'PATH order',
|
|
349
|
+
detail: `${shadowed.length} tool(s) resolve to another copy before the mise shims: ${shown.join('; ')}${more} — move ${shimsDirFn()} earlier in PATH`,
|
|
350
|
+
});
|
|
351
|
+
}
|
|
315
352
|
}
|
|
316
353
|
sections.push({
|
|
317
354
|
title: `Tools (${enabledTools.length} configured)`,
|
|
@@ -333,11 +370,12 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
333
370
|
status: 'fail',
|
|
334
371
|
label: 'rtk',
|
|
335
372
|
detail: 'not found via `mise which rtk` or on PATH — run `agentenv apply`',
|
|
373
|
+
fix: 'agentenv apply',
|
|
336
374
|
});
|
|
337
375
|
}
|
|
338
376
|
else {
|
|
339
377
|
rtkItems.push({ status: 'ok', label: 'rtk', detail: rtkInfo.resolvedPath });
|
|
340
|
-
const pinned = PINNED_TOOL_VERSIONS.rtk;
|
|
378
|
+
const pinned = config.tool_versions?.rtk ?? PINNED_TOOL_VERSIONS.rtk;
|
|
341
379
|
if (rtkInfo.version) {
|
|
342
380
|
const detail = pinned && !rtkInfo.version.includes(pinned)
|
|
343
381
|
? `${rtkInfo.version} (agentenv pins ${pinned})`
|
|
@@ -373,6 +411,12 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
373
411
|
detail: installed
|
|
374
412
|
? ''
|
|
375
413
|
: 'CLI not found on PATH — install it or disable the agent in config',
|
|
414
|
+
// Installing it is the other way out, but only disabling is a command agentenv owns.
|
|
415
|
+
...(installed
|
|
416
|
+
? {}
|
|
417
|
+
: {
|
|
418
|
+
fix: `agentenv remove ${agent}${config.scope === 'user' ? ' --scope user' : ''}`,
|
|
419
|
+
}),
|
|
376
420
|
});
|
|
377
421
|
if (platform === 'win32' && SHELL_MANAGED_AGENTS.includes(agent)) {
|
|
378
422
|
agentItems.push(agentShellItem(agent, checkAgentShellFn(agent), existsSync));
|
|
@@ -385,6 +429,71 @@ export function gatherDoctor(sectionFilter, deps = {}) {
|
|
|
385
429
|
? agentItems
|
|
386
430
|
: [{ status: 'warn', label: 'none', detail: 'no agents enabled' }],
|
|
387
431
|
});
|
|
432
|
+
// Generated files — what `apply` wrote and agents actually read. `status`
|
|
433
|
+
// reports the same drift; agents are pointed at `doctor --json`, so it has
|
|
434
|
+
// to see a stripped managed block or a missing custom binary too.
|
|
435
|
+
const baseDir = config.scope === 'user' ? userConfigDirFn() : path.dirname(configPath);
|
|
436
|
+
const applyFix = config.scope === 'user' ? 'agentenv apply --scope user' : 'agentenv apply';
|
|
437
|
+
const marker = config.generate?.marker_start ?? '<!-- agentenv-managed-start -->';
|
|
438
|
+
const generated = [
|
|
439
|
+
{ label: 'mise.toml', file: miseTomlPathFor(config.scope, baseDir), managed: false },
|
|
440
|
+
...requestedInstructionFiles(config).map((name) => ({
|
|
441
|
+
label: name,
|
|
442
|
+
file: path.join(baseDir, name),
|
|
443
|
+
managed: true,
|
|
444
|
+
})),
|
|
445
|
+
...userScopeInstructionFiles(config, baseDir, {}).map((entry) => ({
|
|
446
|
+
label: entry.path,
|
|
447
|
+
file: entry.path,
|
|
448
|
+
managed: true,
|
|
449
|
+
})),
|
|
450
|
+
];
|
|
451
|
+
sections.push({
|
|
452
|
+
title: `Generated files (${generated.length})`,
|
|
453
|
+
items: generated.map(({ label, file, managed }) => {
|
|
454
|
+
if (!existsSync(file)) {
|
|
455
|
+
return { status: 'warn', label, detail: `missing — run \`${applyFix}\``, fix: applyFix };
|
|
456
|
+
}
|
|
457
|
+
let content = '';
|
|
458
|
+
try {
|
|
459
|
+
content = String(readFileSync(file, 'utf-8'));
|
|
460
|
+
}
|
|
461
|
+
catch {
|
|
462
|
+
// Unreadable counts as having no managed block below.
|
|
463
|
+
}
|
|
464
|
+
if (managed && !content.includes(marker)) {
|
|
465
|
+
return {
|
|
466
|
+
status: 'warn',
|
|
467
|
+
label,
|
|
468
|
+
detail: `present but has no agentenv managed block — run \`${applyFix}\``,
|
|
469
|
+
fix: applyFix,
|
|
470
|
+
};
|
|
471
|
+
}
|
|
472
|
+
return { status: 'ok', label, detail: file };
|
|
473
|
+
}),
|
|
474
|
+
});
|
|
475
|
+
const installedCustom = (config.custom_tools ?? []).filter((tool) => tool.already_installed);
|
|
476
|
+
if (installedCustom.length > 0) {
|
|
477
|
+
sections.push({
|
|
478
|
+
title: `Custom tools (${installedCustom.length})`,
|
|
479
|
+
items: installedCustom.map((tool) => {
|
|
480
|
+
const where = platform === 'win32'
|
|
481
|
+
? tool.path_windows
|
|
482
|
+
: platform === 'darwin'
|
|
483
|
+
? tool.path_macos
|
|
484
|
+
: tool.path_linux;
|
|
485
|
+
return where && existsSync(where)
|
|
486
|
+
? { status: 'ok', label: tool.name, detail: where }
|
|
487
|
+
: {
|
|
488
|
+
status: 'warn',
|
|
489
|
+
label: tool.name,
|
|
490
|
+
detail: where
|
|
491
|
+
? `not found at ${where}`
|
|
492
|
+
: `no path configured for ${platform}; set path_${platform === 'win32' ? 'windows' : platform === 'darwin' ? 'macos' : 'linux'}`,
|
|
493
|
+
};
|
|
494
|
+
}),
|
|
495
|
+
});
|
|
496
|
+
}
|
|
388
497
|
return sections;
|
|
389
498
|
}
|
|
390
499
|
function doctorSummary(payload) {
|
|
@@ -419,11 +528,17 @@ export const doctorCommand = new Command()
|
|
|
419
528
|
.description('Diagnose the machine: mise, shims, config, tools and agents (read-only)')
|
|
420
529
|
.option('--json', 'emit a machine-readable JSON document on stdout')
|
|
421
530
|
.option('--section <index|name>', 'only run one report section (1-based section index or title prefix)')
|
|
531
|
+
.option('--scope <scope>', 'config scope to inspect: project|user (default: nearest config)')
|
|
422
532
|
.action((options, command) => {
|
|
533
|
+
const scope = parseScopeFlag(options.scope);
|
|
534
|
+
if (scope.error) {
|
|
535
|
+
command.error(scope.error);
|
|
536
|
+
return;
|
|
537
|
+
}
|
|
423
538
|
const json = options.json === true;
|
|
424
539
|
if (json)
|
|
425
540
|
setQuietEnabled(true);
|
|
426
|
-
const gathered = gatherDoctor(options.section);
|
|
541
|
+
const gathered = gatherDoctor(options.section, scopedDoctorDeps(scope.scope));
|
|
427
542
|
const sections = options.section === undefined ? gathered : filterDoctorSections(gathered, options.section);
|
|
428
543
|
if (sections === undefined) {
|
|
429
544
|
// Invalid argument, not an operational failure — docs/guides/exit-codes.md
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EACL,OAAO,EACP,IAAI,EACJ,iBAAiB,EACjB,eAAe,EACf,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACvC,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,UAAU,EACV,SAAS,EACT,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpE,OAAO,EACL,cAAc,EACd,4BAA4B,EAC5B,WAAW,EACX,2BAA2B,EAC3B,cAAc,EACd,iBAAiB,EACjB,wBAAwB,EACxB,yBAAyB,EACzB,oBAAoB,GACrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,qBAAqB,EACrB,cAAc,EACd,gBAAgB,EAChB,eAAe,EACf,oBAAoB,EACpB,uBAAuB,EACvB,oBAAoB,EACpB,QAAQ,EACR,cAAc,EACd,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAe3D,MAAM,YAAY,GAAmD;IACnE,EAAE,EAAE,KAAK,CAAC,EAAE;IACZ,IAAI,EAAE,KAAK,CAAC,IAAI;IAChB,IAAI,EAAE,KAAK,CAAC,IAAI;CACjB,CAAC;AASF,MAAM,UAAU,YAAY,CAAC,QAAyB;IACpD,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;IACjG,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;QAC/B,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,QAAyB,EACzB,GAAW;IAEX,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACtE,OAAO,CAAC,QAAQ,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1C,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAC1D,CAAC;IACF,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,YAAY,CAC1B,QAAyB,EACzB,UAAwC,EAAE;IAE1C,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,CAAC,cAAc,KAAK,KAAK,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACtC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7F,KAAK,CAAC,IAAI,CACR,KAAK,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/F,CAAC;QACJ,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,IAAI,CAAC,CAAS;IACrB,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;AAC3D,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAAC,aAAiC,EAAE,KAAa;IACjF,IAAI,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC;QAAE,OAAO,IAAI,CAAC;IAC5E,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC,CAAC;AACrE,CAAC;AA+BD,kFAAkF;AAClF,MAAM,oBAAoB,GAAe,CAAC,aAAa,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;AAElF,MAAM,cAAc,GAAG,yCAAyC,CAAC;AAEjE;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,WAAmB,EACnB,OAAe,EACf,MAAsC,EACtC,UAA8B,OAAO,CAAC,GAAG,CAAC,OAAO;IAEjD,kEAAkE;IAClE,MAAM,OAAO,GAAG,CAAC,CAAS,EAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;IAC7E,MAAM,IAAI,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI;QAClB,CAAC,CAAC;YACE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC;YACnC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;SAC7B,CAAC,GAAG,CAAC,OAAO,CAAC;QAChB,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QACtE,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QACD,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;QAClD,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QACpC,IAAI,IAAI,KAAK,MAAM,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACxD,KAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,GAAG,IAAI,MAAM,QAAQ,EAAE,CAAC,CAAC;QACvC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,KAAK,GAAG,8BAA8B,CAAC;IAC7C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO;YACL,MAAM,EAAE,IAAI;YACZ,KAAK;YACL,MAAM,EAAE,CAAC,4BAA4B,EAAE,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;SAC5D,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,CAAC,GAAG,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClG,MAAM,QAAQ,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACjF,MAAM,SAAS,GAAG,QAAQ,KAAK,EAAE,IAAI,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAClG,IAAI,GAAW,CAAC;IAChB,IAAI,SAAS,IAAI,aAAa,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACxC,0EAA0E;QAC1E,GAAG,GAAG,yCAAyC,CAAC,GAAG,aAAa,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,4EAA4E,CAAC;IAC3J,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,GAAG,GAAG,OAAO,QAAQ,uEAAuE,CAAC;IAC/F,CAAC;SAAM,CAAC;QACN,GAAG,GAAG,mFAAmF,CAAC;IAC5F,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,GAAG,QAAQ,EAAE,GAAG,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AACpF,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,cAAc,CAC5B,KAAe,EACf,IAA+C,EAC/C,MAAsC;IAEtC,MAAM,KAAK,GAAG,GAAG,KAAK,QAAQ,CAAC;IAC/B,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,6BAA6B,cAAc,EAAE,EAAE,CAAC;IAC1F,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,qBAAqB,cAAc,EAAE,EAAE,CAAC;IAC/F,CAAC;IACD,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,IAAI,QAAQ,EAAE,CAAC;QACb,OAAO;YACL,MAAM,EAAE,MAAM;YACd,KAAK;YACL,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,8EAA8E,QAAQ,MAAM,cAAc,EAAE;SAClI,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,aAAsB,EAAE,OAAyB,EAAE;IAC9E,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC;IACtD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC,UAAU,CAAC;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,YAAY,CAAC;IAC1D,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,IAAI,eAAe,CAAC;IAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC;IAC/D,MAAM,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,CAAC;IACjF,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC;IAC7C,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC;IAC/D,MAAM,gBAAgB,GAAG,IAAI,CAAC,cAAc,IAAI,cAAc,CAAC;IAC/D,MAAM,eAAe,GAAG,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC;IAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC;IACnD,MAAM,uBAAuB,GAAG,IAAI,CAAC,qBAAqB,IAAI,qBAAqB,CAAC;IACpF,MAAM,gCAAgC,GACpC,IAAI,CAAC,8BAA8B,IAAI,8BAA8B,CAAC;IACxE,MAAM,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,IAAI,oBAAoB,CAAC;IACjF,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;IACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACnD,MAAM,oBAAoB,GAAG,IAAI,CAAC,kBAAkB,IAAI,yBAAyB,CAAC;IAClF,MAAM,iBAAiB,GAAG,IAAI,CAAC,4BAA4B,IAAI,4BAA4B,CAAC;IAE5F,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,MAAM,KAAK,GAAG,CAAC,KAAa,EAAW,EAAE,CAAC,kBAAkB,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;IAEnF,eAAe;IACf,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAiB;QAC3B,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,IAAI,GAAG,EAAE;KAC/E,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1E,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9F,IAAI,KAAK,CAAC,WAAW,IAAI,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;YAClE,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAC;YAC9C,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,WAAW,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC;gBACV,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,UAAU;gBACjB,MAAM,EAAE,sEAAsE;aAC/E,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAElD,eAAe;IACf,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,IAAI,iBAAiB,EAAE,EAAE,CAAC;QACxB,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC;IAC9E,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,aAAa;SACtB,CAAC,CAAC;QACH,SAAS,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,uBAAuB,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;SAC5C,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACnD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAC;IAClD,IAAI,YAAY,GAAkB,IAAI,CAAC;IACvC,IAAI,UAAU,CAAC,gBAAgB,CAAC;QAAE,YAAY,GAAG,YAAY,CAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;IACzF,MAAM,UAAU,GAAG,YAAY,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;IACjF,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;IACpC,IAAI,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,KAAK,QAAQ,EAAE,CAAC;QAChD,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IAC7E,CAAC;SAAM,CAAC;QACN,SAAS,CAAC,IAAI,CAAC;YACb,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,WAAW;YAClB,MAAM,EAAE,cAAc,UAAU,EAAE,OAAO,gBAAgB,2BAA2B;SACrF,CAAC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,IAAI,CAAC;QACb,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;QAC1C,KAAK,EAAE,eAAe;QACtB,MAAM,EAAE,gBAAgB,EAAE;YACxB,CAAC,CAAC,UAAU,EAAE;YACd,CAAC,CAAC,GAAG,UAAU,EAAE,+CAA+C;KACnE,CAAC,CAAC;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAEnD,SAAS;IACT,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,QAAQ,CAAC,IAAI,CAAC;YACZ,KAAK,EAAE,QAAQ;YACf,KAAK,EAAE;gBACL;oBACE,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,eAAe;oBACtB,MAAM,EAAE,gDAAgD;iBACzD;aACF;SACF,CAAC,CAAC;QACH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GACT,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IAChG,MAAM,WAAW,GAAiB;QAChC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,UAAU,KAAK,KAAK,SAAS,EAAE;KAC1E,CAAC;IAEF,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,YAAY,CAAC,UAAU,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC;YACf,MAAM,EAAE,MAAM;YACd,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;SAC/D,CAAC,CAAC;QACH,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;QACvD,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACtC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC;SAAM,CAAC;QACN,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;IAC7E,CAAC;IACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,WAAW,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;IAEvD,wEAAwE;IACxE,wEAAwE;IACxE,uEAAuE;IACvE,kEAAkE;IAClE,0EAA0E;IAC1E,wDAAwD;IACxD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC;IACjC,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC;IACpE,MAAM,SAAS,GAAiB,EAAE,CAAC;IACnC,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACnB,qEAAqE;QACrE,yEAAyE;QACzE,gEAAgE;QAChE,MAAM,cAAc,GAAG,uBAAuB,EAAE,CAAC;QACjD,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,MAAM,GAAG,gCAAgC,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAe,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,KAAK,GAAG,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACnF,IAAI,MAAM,KAAK,oBAAoB,EAAE,CAAC;gBACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,yCAAyC,CAAC;YAC1D,CAAC;iBAAM,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,uCAAuC,CAAC;YACxD,CAAC;iBAAM,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBAChC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;gBACrB,IAAI,CAAC,MAAM,GAAG,kDAAkD,CAAC;YACnE,CAAC;YACD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC;QACZ,KAAK,EAAE,UAAU,YAAY,CAAC,MAAM,cAAc;QAClD,KAAK,EACH,SAAS,CAAC,MAAM,GAAG,CAAC;YAClB,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;KACtE,CAAC,CAAC;IAEH,0EAA0E;IAC1E,wEAAwE;IACxE,uEAAuE;IACvE,yEAAyE;IACzE,gDAAgD;IAChD,IAAI,MAAM,CAAC,GAAG,EAAE,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,EAAE,CAAC;QACvD,MAAM,QAAQ,GAAiB,EAAE,CAAC;QAClC,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;YACjE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC1B,QAAQ,CAAC,IAAI,CAAC;oBACZ,MAAM,EAAE,MAAM;oBACd,KAAK,EAAE,KAAK;oBACZ,MAAM,EAAE,kEAAkE;iBAC3E,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;gBAC5E,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC;gBACxC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,MAAM,GACV,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACzC,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,mBAAmB,MAAM,GAAG;wBAChD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;oBACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACN,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,wBAAwB,EAAE,CAAC,CAAC;gBACxF,CAAC;gBACD,QAAQ,CAAC,IAAI,CAAC;oBACZ,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;oBACtC,KAAK,EAAE,UAAU;oBACjB,MAAM,EAAE,OAAO,CAAC,MAAM;wBACpB,CAAC,CAAC,oBAAoB;wBACtB,CAAC,CAAC,6GAA6G;iBAClH,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,sEAAsE;IACtE,gEAAgE;IAChE,0EAA0E;IAC1E,kBAAkB;IAClB,MAAM,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,UAAU,GAAiB,EAAE,CAAC;IACpC,IAAI,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;QACpB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAiB,CAAC,CAAC;YACxD,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;gBACjC,KAAK,EAAE,GAAG,KAAK,KAAK,cAAc,CAAC,KAAiB,CAAC,CAAC,CAAC,CAAC,GAAG;gBAC3D,MAAM,EAAE,SAAS;oBACf,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,mEAAmE;aACxE,CAAC,CAAC;YACH,IAAI,QAAQ,KAAK,OAAO,IAAI,oBAAoB,CAAC,QAAQ,CAAC,KAAiB,CAAC,EAAE,CAAC;gBAC7E,UAAU,CAAC,IAAI,CACb,cAAc,CAAC,KAAiB,EAAE,iBAAiB,CAAC,KAAiB,CAAC,EAAE,UAAU,CAAC,CACpF,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC;QACZ,KAAK,EAAE,WAAW,MAAM,CAAC,MAAM,WAAW;QAC1C,KAAK,EACH,UAAU,CAAC,MAAM,GAAG,CAAC;YACnB,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;KACvE,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,aAAa,CAAC,OAAmB;IACxC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACvC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS,IAAI,CAAC,CAAC;iBACtC,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS,IAAI,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;IACD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,GAAG,SAAS,WAAW,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,QAAQ;YACnE,OAAO,EAAE,8DAA8D;SACxE,CAAC;IACJ,CAAC;IACD,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,OAAO;YACL,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,sBAAsB;YAChC,OAAO,EAAE,GAAG,SAAS,WAAW,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,0BAA0B;SACrF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC;AAC7D,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,EAAE;KACvC,IAAI,CAAC,QAAQ,CAAC;KACd,WAAW,CAAC,yEAAyE,CAAC;KACtF,MAAM,CAAC,QAAQ,EAAE,iDAAiD,CAAC;KACnE,MAAM,CACL,wBAAwB,EACxB,qEAAqE,CACtE;KACA,MAAM,CAAC,CAAC,OAA6C,EAAE,OAAgB,EAAE,EAAE;IAC1E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC;IACnC,IAAI,IAAI;QAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IAEhC,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,MAAM,QAAQ,GACZ,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7F,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,2EAA2E;QAC3E,iDAAiD;QACjD,OAAO,CAAC,KAAK,CACX,8BAA8B,OAAO,CAAC,OAAO,gBAAgB,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC7I,CAAC;QACF,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,EAAE;YACpC,cAAc,EAAE,iBAAiB,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,EAAE,OAAO,EAAE,CAAC;SAC5E,CAAC,CAAC;QACH,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC;QAAE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/setup.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import { Command } from 'commander';
|
|
|
2
2
|
import type { AgentenvConfig } from '../config/schema.js';
|
|
3
3
|
import type { ScopeValue } from '../config/scopes.js';
|
|
4
4
|
import { applyConfiguration } from './apply.js';
|
|
5
|
+
import type { ApplyResult } from './apply.js';
|
|
5
6
|
interface MisePrereqCheckDeps {
|
|
6
7
|
isInstalled?: () => boolean;
|
|
7
8
|
version?: () => string;
|
|
@@ -21,6 +22,19 @@ export interface SaveAndApplyDeps {
|
|
|
21
22
|
startedAt?: number;
|
|
22
23
|
/** Generate files only — no `mise install`, no verification. */
|
|
23
24
|
skipMiseInstall?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* What to write to `file`, when it differs from the (possibly user-layered)
|
|
27
|
+
* `config` being applied. `null` means the file is already what the user
|
|
28
|
+
* wants: don't touch it, so its comments and layering survive.
|
|
29
|
+
*/
|
|
30
|
+
persistConfig?: AgentenvConfig | null;
|
|
31
|
+
/** JSON mode: don't stream raw mise output onto stdout (it would corrupt the document). */
|
|
32
|
+
json?: boolean;
|
|
33
|
+
/**
|
|
34
|
+
* JSON mode: receives apply's structured result (and the config file it ran
|
|
35
|
+
* against) instead of the human message list and result box being printed.
|
|
36
|
+
*/
|
|
37
|
+
onApplied?: (result: ApplyResult, file: string) => void;
|
|
24
38
|
}
|
|
25
39
|
/** Save the config and apply it, mirroring the shared setup tail. */
|
|
26
40
|
export declare function saveAndApply(config: AgentenvConfig, file: string, deps?: SaveAndApplyDeps): Promise<void>;
|
|
@@ -31,13 +45,12 @@ interface SetupCommandOptions {
|
|
|
31
45
|
tier2?: boolean;
|
|
32
46
|
rtk?: boolean;
|
|
33
47
|
config?: string;
|
|
34
|
-
superpowers?:
|
|
48
|
+
superpowers?: boolean;
|
|
49
|
+
json?: boolean;
|
|
35
50
|
}
|
|
36
51
|
export interface UnattendedSetupDeps extends SaveAndApplyDeps {
|
|
37
52
|
misePrereqCheckDeps?: MisePrereqCheckDeps;
|
|
38
53
|
}
|
|
39
|
-
/** --scope only steers unattended (--yes) setup; the interactive wizard has no scope prompt yet. */
|
|
40
|
-
export declare function interactiveScopeIgnoredWarning(scope: ScopeValue | undefined): string | undefined;
|
|
41
54
|
/**
|
|
42
55
|
* Unattended, single-command setup: `agentenv setup --yes`. Resolves the
|
|
43
56
|
* configuration from, in priority order:
|
|
@@ -47,6 +60,12 @@ export declare function interactiveScopeIgnoredWarning(scope: ScopeValue | undef
|
|
|
47
60
|
* --agents / --no-tier2 / --no-rtk / --scope / --superpowers.
|
|
48
61
|
*/
|
|
49
62
|
export declare function unattendedSetup(options: SetupCommandOptions, deps?: UnattendedSetupDeps): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* `setup --yes --json`: run the normal unattended flow with chrome off and
|
|
65
|
+
* its console output captured, then emit one JSON envelope. Raw mise output
|
|
66
|
+
* is not streamed (it would corrupt the document).
|
|
67
|
+
*/
|
|
68
|
+
export declare function unattendedSetupJson(options: SetupCommandOptions, deps?: UnattendedSetupDeps): Promise<void>;
|
|
50
69
|
export declare const setupCommand: Command;
|
|
51
70
|
export {};
|
|
52
71
|
//# sourceMappingURL=setup.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEpE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAoB9C,UAAU,mBAAmB;IAC3B,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,MAAM,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,GAAE,mBAAwB,GAAG,OAAO,CAavE;AAED,MAAM,WAAW,gBAAgB;IAC/B,iEAAiE;IACjE,kBAAkB,CAAC,EAAE,OAAO,kBAAkB,CAAC;IAC/C,wEAAwE;IACxE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B;;;;OAIG;IACH,aAAa,CAAC,EAAE,cAAc,GAAG,IAAI,CAAC;IACtC,2FAA2F;IAC3F,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD;AAgBD,qEAAqE;AACrE,wBAAsB,YAAY,CAChC,MAAM,EAAE,cAAc,EACtB,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAiDf;AAED,UAAU,mBAAmB;IAC3B,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,mBAAoB,SAAQ,gBAAgB;IAC3D,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;CAC3C;AA4BD;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAkHf;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,mBAAmB,EAC5B,IAAI,GAAE,mBAAwB,GAC7B,OAAO,CAAC,IAAI,CAAC,CA8Cf;AAED,eAAO,MAAM,YAAY,SAuCrB,CAAC"}
|
package/dist/commands/setup.js
CHANGED
|
@@ -8,8 +8,9 @@ import { applyConfiguration } from './apply.js';
|
|
|
8
8
|
import { runConfigWizard } from './wizard.js';
|
|
9
9
|
import { AGENT_OPTIONS, buildDefaultSimpleConfig, parseAgentsInput } from '../wizard/build.js';
|
|
10
10
|
import { getMiseVersion, isMiseInstalled, miseInstallInstructions, prereqLine, } from '../toolchain/mise.js';
|
|
11
|
-
import { colorizeLine, theme } from '../ui/theme.js';
|
|
12
|
-
import { renderLogo } from '../ui/output.js';
|
|
11
|
+
import { colorizeLine, setColorEnabled, theme } from '../ui/theme.js';
|
|
12
|
+
import { renderLogo, setQuietEnabled } from '../ui/output.js';
|
|
13
|
+
import { printJson } from '../cli/json.js';
|
|
13
14
|
import { printConfigPath, printMessages, printResult, reportValidation } from '../ui/report.js';
|
|
14
15
|
import { withSpinner } from '../ui/spinner.js';
|
|
15
16
|
function agentLabel(agent) {
|
|
@@ -33,33 +34,66 @@ export function misePrereqCheck(deps = {}) {
|
|
|
33
34
|
console.error('\nInstall mise first, then re-run `agentenv setup`.');
|
|
34
35
|
return false;
|
|
35
36
|
}
|
|
37
|
+
/**
|
|
38
|
+
* The project file's own settings, for generating committed files without the
|
|
39
|
+
* user layer (see ApplyOptions.fileConfig). Undefined in user scope, or when
|
|
40
|
+
* the file can't be read back.
|
|
41
|
+
*/
|
|
42
|
+
function projectFileConfig(config, file) {
|
|
43
|
+
if (config.scope !== 'project')
|
|
44
|
+
return undefined;
|
|
45
|
+
try {
|
|
46
|
+
return loadConfig(file);
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return undefined;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
36
52
|
/** Save the config and apply it, mirroring the shared setup tail. */
|
|
37
53
|
export async function saveAndApply(config, file, deps = {}) {
|
|
38
|
-
|
|
39
|
-
|
|
54
|
+
const toSave = deps.persistConfig === undefined ? config : deps.persistConfig;
|
|
55
|
+
if (toSave === null) {
|
|
56
|
+
console.log(`Using existing configuration: ${file} (left unchanged)\n`);
|
|
57
|
+
}
|
|
58
|
+
else {
|
|
59
|
+
const existed = fs.existsSync(file);
|
|
60
|
+
const changed = saveConfig(toSave, file);
|
|
61
|
+
if (!changed)
|
|
62
|
+
console.log(`Configuration already up to date: ${file} (left unchanged)\n`);
|
|
63
|
+
else if (existed)
|
|
64
|
+
console.log(`Updated configuration: ${file}\n`);
|
|
65
|
+
else
|
|
66
|
+
console.log(`Saved configuration: ${file}\n`);
|
|
40
67
|
}
|
|
41
|
-
saveConfig(config, file);
|
|
42
|
-
console.log(`Saved configuration: ${file}\n`);
|
|
43
68
|
const apply = deps.applyConfiguration ?? applyConfiguration;
|
|
44
69
|
// `file` is always the actual agentenv.toml being applied — including when
|
|
45
|
-
// findConfigPath()'s upward search
|
|
70
|
+
// findConfigPath()'s upward search found it in an ancestor
|
|
46
71
|
// directory — so its own directory is the base dir, not a re-derivation
|
|
47
72
|
// from config.scope that assumes cwd for "project".
|
|
48
73
|
const result = await withSpinner('Applying configuration...', (spinner) =>
|
|
49
74
|
// setup already printed the prereq line above, so tell apply not to repeat it.
|
|
50
75
|
apply(config, path.dirname(file), {
|
|
51
76
|
skipPrereqMessage: true,
|
|
77
|
+
fileConfig: projectFileConfig(config, file),
|
|
52
78
|
skipMiseInstall: deps.skipMiseInstall,
|
|
53
|
-
onMiseInstall:
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
79
|
+
onMiseInstall: deps.json
|
|
80
|
+
? undefined
|
|
81
|
+
: {
|
|
82
|
+
onStart: () => {
|
|
83
|
+
spinner.stop();
|
|
84
|
+
console.log(colorizeLine('Installing tools via mise...'));
|
|
85
|
+
},
|
|
86
|
+
onOutput: (chunk) => process.stdout.write(chunk),
|
|
87
|
+
onEnd: () => spinner.start(),
|
|
57
88
|
},
|
|
58
|
-
onOutput: (chunk) => process.stdout.write(chunk),
|
|
59
|
-
onEnd: () => spinner.start(),
|
|
60
|
-
},
|
|
61
89
|
}));
|
|
62
|
-
|
|
90
|
+
if (deps.json) {
|
|
91
|
+
deps.onApplied?.(result, file);
|
|
92
|
+
if (!result.success)
|
|
93
|
+
process.exitCode = 1;
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
printMessages(result.messages, result.errors, result.timeline);
|
|
63
97
|
const elapsedMs = deps.startedAt === undefined ? result.elapsedMs : Date.now() - deps.startedAt;
|
|
64
98
|
if (!result.success) {
|
|
65
99
|
process.exitCode = 1;
|
|
@@ -69,7 +103,7 @@ export async function saveAndApply(config, file, deps = {}) {
|
|
|
69
103
|
printResult('ok', deps.successMessage ?? 'Setup complete!', undefined, elapsedMs);
|
|
70
104
|
}
|
|
71
105
|
/**
|
|
72
|
-
* `--agents`/`--superpowers` only take effect when unattendedSetup builds a
|
|
106
|
+
* `--agents`/`--superpowers`/`--no-rtk`/`--no-tier2` only take effect when unattendedSetup builds a
|
|
73
107
|
* fresh default config; reusing an existing agentenv.toml (the common case)
|
|
74
108
|
* applies it as-is, silently dropping whatever the caller typed unless we
|
|
75
109
|
* say so here.
|
|
@@ -80,15 +114,12 @@ function ignoredUnattendedFlags(options) {
|
|
|
80
114
|
ignored.push('--agents');
|
|
81
115
|
if (options.superpowers !== undefined)
|
|
82
116
|
ignored.push('--superpowers');
|
|
117
|
+
if (options.rtk === false)
|
|
118
|
+
ignored.push('--no-rtk');
|
|
119
|
+
if (options.tier2 === false)
|
|
120
|
+
ignored.push('--no-tier2');
|
|
83
121
|
return ignored;
|
|
84
122
|
}
|
|
85
|
-
/** --scope only steers unattended (--yes) setup; the interactive wizard has no scope prompt yet. */
|
|
86
|
-
export function interactiveScopeIgnoredWarning(scope) {
|
|
87
|
-
if (scope === undefined)
|
|
88
|
-
return undefined;
|
|
89
|
-
return (`--scope is ignored by the interactive wizard (only --yes uses it); ` +
|
|
90
|
-
`run \`agentenv setup --yes --scope ${scope}\` for unattended setup at that scope.`);
|
|
91
|
-
}
|
|
92
123
|
function warnIgnoredFlags(options, file) {
|
|
93
124
|
const ignored = ignoredUnattendedFlags(options);
|
|
94
125
|
if (ignored.length === 0)
|
|
@@ -114,6 +145,7 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
114
145
|
}
|
|
115
146
|
let config;
|
|
116
147
|
let file;
|
|
148
|
+
let reusedExisting = false;
|
|
117
149
|
if (options.config) {
|
|
118
150
|
try {
|
|
119
151
|
config = loadConfig(options.config, { layerUserConfig: true });
|
|
@@ -129,7 +161,9 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
129
161
|
process.exitCode = 1;
|
|
130
162
|
return;
|
|
131
163
|
}
|
|
132
|
-
file
|
|
164
|
+
// Apply the given file in place (never copy it over cwd/agentenv.toml).
|
|
165
|
+
file = path.resolve(options.config);
|
|
166
|
+
reusedExisting = true;
|
|
133
167
|
}
|
|
134
168
|
else {
|
|
135
169
|
const scope = options.scope ?? 'project';
|
|
@@ -150,6 +184,7 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
150
184
|
return;
|
|
151
185
|
}
|
|
152
186
|
warnIgnoredFlags(options, file);
|
|
187
|
+
reusedExisting = true;
|
|
153
188
|
}
|
|
154
189
|
else if (options.scope === undefined) {
|
|
155
190
|
// No config at the preferred scope and the user didn't ask for a
|
|
@@ -173,6 +208,7 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
173
208
|
return;
|
|
174
209
|
}
|
|
175
210
|
warnIgnoredFlags(options, file);
|
|
211
|
+
reusedExisting = true;
|
|
176
212
|
}
|
|
177
213
|
}
|
|
178
214
|
if (config === undefined) {
|
|
@@ -183,7 +219,7 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
183
219
|
}
|
|
184
220
|
catch (error) {
|
|
185
221
|
console.error(theme.fail(error instanceof Error ? error.message : String(error)));
|
|
186
|
-
process.exitCode =
|
|
222
|
+
process.exitCode = 2; // usage error: unknown agent name
|
|
187
223
|
return;
|
|
188
224
|
}
|
|
189
225
|
}
|
|
@@ -198,16 +234,71 @@ export async function unattendedSetup(options, deps = {}) {
|
|
|
198
234
|
}
|
|
199
235
|
const includeTier2 = options.tier2 !== false;
|
|
200
236
|
const rtkEnabled = options.rtk !== false;
|
|
201
|
-
const
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
? options.superpowers
|
|
205
|
-
: undefined;
|
|
206
|
-
config = buildDefaultSimpleConfig(agents, includeTier2, rtkEnabled, scope, superpowersRef);
|
|
207
|
-
console.log(`Defaults: agents ${agents.join(', ')}, Tier 2 tools ${includeTier2 ? 'on' : 'off'}, rtk ${rtkEnabled ? 'on' : 'off'}, Superpowers ${superpowersRef === undefined ? 'off' : `on (ref ${superpowersRef || 'default'})`}`);
|
|
237
|
+
const superpowers = options.superpowers === true;
|
|
238
|
+
config = buildDefaultSimpleConfig(agents, includeTier2, rtkEnabled, scope, superpowers);
|
|
239
|
+
console.log(`Defaults: agents ${agents.join(', ')}, Tier 2 tools ${includeTier2 ? 'on' : 'off'}, rtk ${rtkEnabled ? 'on' : 'off'}, Superpowers ${superpowers ? 'on' : 'off'}`);
|
|
208
240
|
}
|
|
209
241
|
}
|
|
210
|
-
await saveAndApply(config, file, {
|
|
242
|
+
await saveAndApply(config, file, {
|
|
243
|
+
...deps,
|
|
244
|
+
startedAt,
|
|
245
|
+
...(reusedExisting ? { persistConfig: null } : {}),
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* `setup --yes --json`: run the normal unattended flow with chrome off and
|
|
250
|
+
* its console output captured, then emit one JSON envelope. Raw mise output
|
|
251
|
+
* is not streamed (it would corrupt the document).
|
|
252
|
+
*/
|
|
253
|
+
export async function unattendedSetupJson(options, deps = {}) {
|
|
254
|
+
setQuietEnabled(true);
|
|
255
|
+
setColorEnabled(false);
|
|
256
|
+
// Notes the flow prints before/around apply, warnings (e.g. ignored flags),
|
|
257
|
+
// and errors from steps that stop before apply ever runs (bad config, no
|
|
258
|
+
// agents). Apply's own messages/errors come from its structured result.
|
|
259
|
+
const notes = [];
|
|
260
|
+
const warnings = [];
|
|
261
|
+
const earlyErrors = [];
|
|
262
|
+
const original = { log: console.log, warn: console.warn, error: console.error };
|
|
263
|
+
const capture = (sink) => (message) => {
|
|
264
|
+
for (const line of String(message ?? '').split(/\r?\n/)) {
|
|
265
|
+
if (line.trim() !== '')
|
|
266
|
+
sink.push(line);
|
|
267
|
+
}
|
|
268
|
+
};
|
|
269
|
+
console.log = capture(notes);
|
|
270
|
+
console.warn = capture(warnings);
|
|
271
|
+
console.error = capture(earlyErrors);
|
|
272
|
+
const priorExitCode = process.exitCode;
|
|
273
|
+
process.exitCode = undefined;
|
|
274
|
+
let applied;
|
|
275
|
+
try {
|
|
276
|
+
await unattendedSetup(options, {
|
|
277
|
+
...deps,
|
|
278
|
+
json: true,
|
|
279
|
+
onApplied: (result, file) => {
|
|
280
|
+
applied = { result, file };
|
|
281
|
+
deps.onApplied?.(result, file);
|
|
282
|
+
},
|
|
283
|
+
});
|
|
284
|
+
}
|
|
285
|
+
finally {
|
|
286
|
+
console.log = original.log;
|
|
287
|
+
console.warn = original.warn;
|
|
288
|
+
console.error = original.error;
|
|
289
|
+
}
|
|
290
|
+
const failed = process.exitCode !== undefined && process.exitCode !== 0;
|
|
291
|
+
printJson({
|
|
292
|
+
success: !failed,
|
|
293
|
+
configPath: applied?.file ?? null,
|
|
294
|
+
baseDir: applied ? path.dirname(applied.file) : null,
|
|
295
|
+
messages: [...notes, ...(applied?.result.messages ?? [])],
|
|
296
|
+
errors: [...earlyErrors, ...(applied?.result.errors ?? [])],
|
|
297
|
+
warnings,
|
|
298
|
+
...(applied?.result.elapsedMs === undefined ? {} : { elapsedMs: applied.result.elapsedMs }),
|
|
299
|
+
});
|
|
300
|
+
if (!failed)
|
|
301
|
+
process.exitCode = priorExitCode;
|
|
211
302
|
}
|
|
212
303
|
export const setupCommand = new Command()
|
|
213
304
|
.name('setup')
|
|
@@ -215,24 +306,30 @@ export const setupCommand = new Command()
|
|
|
215
306
|
.description('Setup wizard (agents, tools, custom binaries, Superpowers); use --yes for unattended single-command setup')
|
|
216
307
|
.option('-y, --yes', 'unattended: use detected agents + defaults, or an existing config')
|
|
217
308
|
.option('-a, --agents <agents>', 'comma-separated agents to configure (unattended)')
|
|
218
|
-
.option('--scope <scope>', 'configuration scope: project|user (default: project)')
|
|
309
|
+
.option('--scope <scope>', 'configuration scope: project|user (default: project; preselects the wizard prompt without --yes)')
|
|
219
310
|
.option('--no-tier2', 'skip Tier 2 tools (unattended)')
|
|
220
311
|
.option('--no-rtk', 'disable rtk command rewriting (unattended)')
|
|
221
|
-
.option('--superpowers
|
|
312
|
+
.option('--superpowers', 'enable the Superpowers integration (unattended); installed from the official Claude Code marketplace')
|
|
222
313
|
.option('--config <path>', 'path to an existing agentenv.toml to apply (unattended)')
|
|
314
|
+
.option('--json', 'emit one machine-readable JSON document on stdout (requires --yes)')
|
|
223
315
|
.action(async (options, command) => {
|
|
224
316
|
const scope = parseScopeFlag(options.scope);
|
|
225
317
|
if (scope.error) {
|
|
226
318
|
command.error(scope.error);
|
|
227
319
|
return;
|
|
228
320
|
}
|
|
321
|
+
if (options.json && !options.yes) {
|
|
322
|
+
command.error('--json requires --yes (the interactive wizard cannot produce JSON)');
|
|
323
|
+
return;
|
|
324
|
+
}
|
|
325
|
+
if (options.yes && options.json) {
|
|
326
|
+
await unattendedSetupJson({ ...options, scope: scope.scope });
|
|
327
|
+
return;
|
|
328
|
+
}
|
|
229
329
|
if (options.yes) {
|
|
230
330
|
await unattendedSetup({ ...options, scope: scope.scope });
|
|
231
331
|
return;
|
|
232
332
|
}
|
|
233
|
-
|
|
234
|
-
if (scopeWarning)
|
|
235
|
-
console.warn(theme.warn(scopeWarning));
|
|
236
|
-
await runConfigWizard();
|
|
333
|
+
await runConfigWizard({ scope: scope.scope });
|
|
237
334
|
});
|
|
238
335
|
//# sourceMappingURL=setup.js.map
|