@agent-profile/cli 0.3.2 → 0.3.4
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/index.js +352 -103
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -7383,8 +7383,8 @@ function formatWizardClientSelectionQuestion(defaults) {
|
|
|
7383
7383
|
return ` ${index + 1}) ${id}${enabled ? " (default)" : ""}`;
|
|
7384
7384
|
}).join("\n");
|
|
7385
7385
|
const fallback = defaults.length > 0 ? defaults.join(",") : "none";
|
|
7386
|
-
return `${formatWizardSectionTitle("
|
|
7387
|
-
Which clients should this
|
|
7386
|
+
return `${formatWizardSectionTitle("Generate client files")}
|
|
7387
|
+
Which clients should this setup create files for?
|
|
7388
7388
|
${summary}
|
|
7389
7389
|
Select multiple with commas or semicolons, for example 2,3.
|
|
7390
7390
|
Enter numbers or names, or press enter for defaults [${fallback}]: `;
|
|
@@ -7396,15 +7396,19 @@ How should existing agent instruction files be handled?
|
|
|
7396
7396
|
2) Add generated regions${def === "regions" ? " (default)" : ""}
|
|
7397
7397
|
Choose [1/2]: `;
|
|
7398
7398
|
}
|
|
7399
|
-
function formatWizardGitignoreQuestion() {
|
|
7400
|
-
|
|
7401
|
-
|
|
7399
|
+
function formatWizardGitignoreQuestion(entries) {
|
|
7400
|
+
const formattedEntries = entries.length > 0 ? `${entries.map((entry) => ` - ${entry}`).join("\n")}
|
|
7401
|
+
` : "";
|
|
7402
|
+
return `${formatWizardSectionTitle("Local file ignores")}
|
|
7403
|
+
Add missing recommended .gitignore entries?
|
|
7404
|
+
1) Yes - add all missing entries
|
|
7405
|
+
` + formattedEntries + " 2) No\nChoose [1/2]: ";
|
|
7402
7406
|
}
|
|
7403
7407
|
function formatWizardWriteConfirmationQuestion() {
|
|
7404
|
-
return `${formatWizardSectionTitle("
|
|
7408
|
+
return `${formatWizardSectionTitle("Create setup")}
|
|
7405
7409
|
How should this plan run?
|
|
7406
|
-
1)
|
|
7407
|
-
2)
|
|
7410
|
+
1) Preview only (default) - write nothing
|
|
7411
|
+
2) Create setup now
|
|
7408
7412
|
Choose [1/2]: `;
|
|
7409
7413
|
}
|
|
7410
7414
|
function recommendStrategy(report) {
|
|
@@ -7475,7 +7479,9 @@ function formatWizardIntro(context, recommendation) {
|
|
|
7475
7479
|
lines.push(
|
|
7476
7480
|
`- existing instruction files: ${formatList(existingRootInstructions(context.report))}`
|
|
7477
7481
|
);
|
|
7478
|
-
lines.push(
|
|
7482
|
+
lines.push(
|
|
7483
|
+
`- local runtime files: ${formatList(localRuntimePaths(context.report))}`
|
|
7484
|
+
);
|
|
7479
7485
|
lines.push(
|
|
7480
7486
|
`- generated client config: ${formatList(generatedClientConfigPaths(context.report))}`
|
|
7481
7487
|
);
|
|
@@ -7485,7 +7491,9 @@ function formatWizardIntro(context, recommendation) {
|
|
|
7485
7491
|
}
|
|
7486
7492
|
lines.push("");
|
|
7487
7493
|
lines.push(formatWizardSectionTitle("Recommendation"));
|
|
7488
|
-
lines.push(
|
|
7494
|
+
lines.push(
|
|
7495
|
+
`Recommended strategy: ${formatStrategyLabel(recommendation.strategy)}`
|
|
7496
|
+
);
|
|
7489
7497
|
lines.push(`Reason: ${recommendation.reason}`);
|
|
7490
7498
|
const conflictRows = context.report.files.filter(
|
|
7491
7499
|
(file) => file.action === "refuse-conflict"
|
|
@@ -7508,7 +7516,7 @@ function formatWizardIntro(context, recommendation) {
|
|
|
7508
7516
|
}
|
|
7509
7517
|
function formatWizardPlan(context, outcome) {
|
|
7510
7518
|
const lines = [];
|
|
7511
|
-
lines.push(formatWizardSectionTitle("
|
|
7519
|
+
lines.push(formatWizardSectionTitle("Create setup plan"));
|
|
7512
7520
|
if (!context.hasExistingProfile) {
|
|
7513
7521
|
lines.push("- create ai-profile.yaml");
|
|
7514
7522
|
} else {
|
|
@@ -7522,7 +7530,9 @@ function formatWizardPlan(context, outcome) {
|
|
|
7522
7530
|
continue;
|
|
7523
7531
|
}
|
|
7524
7532
|
if (outcome.strategy === "regions" && file.action === "insert-regions") {
|
|
7525
|
-
lines.push(
|
|
7533
|
+
lines.push(
|
|
7534
|
+
`- adopt ${file.path} into mixed ownership (manual region preserves existing content)`
|
|
7535
|
+
);
|
|
7526
7536
|
} else if (file.action === "update-generated-region") {
|
|
7527
7537
|
lines.push(`- update generated region in ${file.path}`);
|
|
7528
7538
|
} else {
|
|
@@ -7531,7 +7541,9 @@ function formatWizardPlan(context, outcome) {
|
|
|
7531
7541
|
continue;
|
|
7532
7542
|
}
|
|
7533
7543
|
if (file.action === "refuse-conflict") {
|
|
7534
|
-
lines.push(
|
|
7544
|
+
lines.push(
|
|
7545
|
+
`- refuse ${file.path} (${file.notes.join("; ") || "conflict"})`
|
|
7546
|
+
);
|
|
7535
7547
|
continue;
|
|
7536
7548
|
}
|
|
7537
7549
|
if (file.tags.includes("local-runtime")) {
|
|
@@ -7539,17 +7551,18 @@ function formatWizardPlan(context, outcome) {
|
|
|
7539
7551
|
continue;
|
|
7540
7552
|
}
|
|
7541
7553
|
if (file.kind === "client-config") {
|
|
7542
|
-
lines.push(`- preserve ${file.path} (
|
|
7554
|
+
lines.push(`- preserve ${file.path} (already exists)`);
|
|
7555
|
+
}
|
|
7556
|
+
}
|
|
7557
|
+
if (!context.hasExistingProfile) {
|
|
7558
|
+
for (const client of outcome.clients) {
|
|
7559
|
+
lines.push(`- create ${formatClientDisplayName(client)} files`);
|
|
7543
7560
|
}
|
|
7544
7561
|
}
|
|
7545
7562
|
if (outcome.updateGitignore) {
|
|
7546
|
-
const adds = context
|
|
7547
|
-
(item) => item.action !== "already-present"
|
|
7548
|
-
);
|
|
7563
|
+
const adds = missingGitignoreEntries(context);
|
|
7549
7564
|
if (adds.length > 0) {
|
|
7550
|
-
lines.push(
|
|
7551
|
-
`- update .gitignore (${adds.map((item) => item.line).join(", ")})`
|
|
7552
|
-
);
|
|
7565
|
+
lines.push(`- update .gitignore (${adds.join(", ")})`);
|
|
7553
7566
|
}
|
|
7554
7567
|
}
|
|
7555
7568
|
lines.push("");
|
|
@@ -7557,7 +7570,7 @@ function formatWizardPlan(context, outcome) {
|
|
|
7557
7570
|
if (context.hasExistingProfile) {
|
|
7558
7571
|
lines.push("Clients: unchanged (existing profile)");
|
|
7559
7572
|
} else {
|
|
7560
|
-
lines.push(`Clients
|
|
7573
|
+
lines.push(`Clients selected: ${formatClientDisplayList(outcome.clients)}`);
|
|
7561
7574
|
}
|
|
7562
7575
|
lines.push(`Update .gitignore: ${outcome.updateGitignore ? "yes" : "no"}`);
|
|
7563
7576
|
lines.push("");
|
|
@@ -7565,12 +7578,7 @@ function formatWizardPlan(context, outcome) {
|
|
|
7565
7578
|
`;
|
|
7566
7579
|
}
|
|
7567
7580
|
function formatWizardDeclined() {
|
|
7568
|
-
return [
|
|
7569
|
-
"Dry-run selected.",
|
|
7570
|
-
"No files written.",
|
|
7571
|
-
"Re-run with --write or choose 2 in the wizard to write.",
|
|
7572
|
-
""
|
|
7573
|
-
].join("\n");
|
|
7581
|
+
return ["Preview selected.", "No files written.", ""].join("\n");
|
|
7574
7582
|
}
|
|
7575
7583
|
async function runInitWizard(input) {
|
|
7576
7584
|
const recommendation = input.recommendation ?? recommendStrategy(input.context.report);
|
|
@@ -7598,10 +7606,12 @@ async function runInitWizard(input) {
|
|
|
7598
7606
|
(client) => clients.includes(client)
|
|
7599
7607
|
);
|
|
7600
7608
|
}
|
|
7601
|
-
const
|
|
7602
|
-
|
|
7603
|
-
|
|
7604
|
-
|
|
7609
|
+
const missingGitignore = missingGitignoreEntries(context);
|
|
7610
|
+
const gitignoreNeedsRecommendation = missingGitignore.length > 0;
|
|
7611
|
+
const updateGitignore = gitignoreNeedsRecommendation ? await input.prompts.confirmGitignore({
|
|
7612
|
+
default: false,
|
|
7613
|
+
entries: missingGitignore
|
|
7614
|
+
}) : false;
|
|
7605
7615
|
const outcomeDraft = {
|
|
7606
7616
|
confirmed: false,
|
|
7607
7617
|
strategy,
|
|
@@ -7629,15 +7639,6 @@ function createDefaultPrompts(io) {
|
|
|
7629
7639
|
const answer = await rl.question("");
|
|
7630
7640
|
return answer.trim() === "" ? fallback : answer.trim();
|
|
7631
7641
|
};
|
|
7632
|
-
const confirm = async (question, def) => {
|
|
7633
|
-
const suffix = def ? "[Y/n]" : "[y/N]";
|
|
7634
|
-
const fallback = def ? "y" : "n";
|
|
7635
|
-
const raw = await ask(`${question} ${suffix} `, fallback);
|
|
7636
|
-
const lower = raw.toLowerCase();
|
|
7637
|
-
if (lower === "y" || lower === "yes") return true;
|
|
7638
|
-
if (lower === "n" || lower === "no") return false;
|
|
7639
|
-
return def;
|
|
7640
|
-
};
|
|
7641
7642
|
return {
|
|
7642
7643
|
async selectStrategy({ default: def }) {
|
|
7643
7644
|
const raw = await ask(
|
|
@@ -7655,11 +7656,19 @@ function createDefaultPrompts(io) {
|
|
|
7655
7656
|
);
|
|
7656
7657
|
return parseWizardClientSelection(raw);
|
|
7657
7658
|
},
|
|
7658
|
-
async confirmGitignore({ default: def }) {
|
|
7659
|
-
|
|
7660
|
-
formatWizardGitignoreQuestion(),
|
|
7661
|
-
def
|
|
7659
|
+
async confirmGitignore({ default: def, entries }) {
|
|
7660
|
+
const raw = await ask(
|
|
7661
|
+
formatWizardGitignoreQuestion(entries),
|
|
7662
|
+
def ? "1" : "2"
|
|
7662
7663
|
);
|
|
7664
|
+
const normalized = raw.trim().toLowerCase();
|
|
7665
|
+
if (normalized === "1" || normalized === "y" || normalized === "yes") {
|
|
7666
|
+
return true;
|
|
7667
|
+
}
|
|
7668
|
+
if (normalized === "2" || normalized === "n" || normalized === "no") {
|
|
7669
|
+
return false;
|
|
7670
|
+
}
|
|
7671
|
+
return def;
|
|
7663
7672
|
},
|
|
7664
7673
|
async confirmWritePlan({ default: def }) {
|
|
7665
7674
|
try {
|
|
@@ -7690,6 +7699,30 @@ function formatStrategyLabel(strategy) {
|
|
|
7690
7699
|
function formatWizardSectionTitle(title) {
|
|
7691
7700
|
return `== ${title} ==`;
|
|
7692
7701
|
}
|
|
7702
|
+
function formatClientDisplayName(client) {
|
|
7703
|
+
switch (client) {
|
|
7704
|
+
case "codex":
|
|
7705
|
+
return "Codex";
|
|
7706
|
+
case "claude":
|
|
7707
|
+
return "Claude";
|
|
7708
|
+
case "tabnine":
|
|
7709
|
+
return "Tabnine";
|
|
7710
|
+
}
|
|
7711
|
+
}
|
|
7712
|
+
function formatClientDisplayList(clients) {
|
|
7713
|
+
const labels = clients.map(formatClientDisplayName);
|
|
7714
|
+
if (labels.length === 0) return "(none)";
|
|
7715
|
+
if (labels.length === 1) return labels[0];
|
|
7716
|
+
if (labels.length === 2) return `${labels[0]} and ${labels[1]}`;
|
|
7717
|
+
return `${labels.slice(0, -1).join(", ")}, and ${labels.at(-1)}`;
|
|
7718
|
+
}
|
|
7719
|
+
function missingGitignoreEntries(context) {
|
|
7720
|
+
const lines = [
|
|
7721
|
+
...context.gitignoreSuggestions,
|
|
7722
|
+
...context.report.gitignore.filter((item) => item.action !== "already-present").map((item) => item.line)
|
|
7723
|
+
];
|
|
7724
|
+
return lines.filter((line, index) => lines.indexOf(line) === index);
|
|
7725
|
+
}
|
|
7693
7726
|
function existingRootInstructions(report) {
|
|
7694
7727
|
return report.files.filter((file) => file.kind === "root-instructions" && file.exists).map((file) => file.path);
|
|
7695
7728
|
}
|
|
@@ -8042,6 +8075,7 @@ ${formatHelp()}`);
|
|
|
8042
8075
|
);
|
|
8043
8076
|
return 1;
|
|
8044
8077
|
}
|
|
8078
|
+
let wizardCreatesClientFiles = false;
|
|
8045
8079
|
if (isWizardEligibleArgs(args) && presetPayload === void 0) {
|
|
8046
8080
|
const dispatch = await dispatchInitWizard({
|
|
8047
8081
|
args: parsed,
|
|
@@ -8052,9 +8086,10 @@ ${formatHelp()}`);
|
|
|
8052
8086
|
promptsOverride: options.prompts,
|
|
8053
8087
|
nonInteractiveOverride: options.nonInteractive
|
|
8054
8088
|
});
|
|
8055
|
-
if (dispatch === "declined") {
|
|
8089
|
+
if (dispatch.kind === "declined") {
|
|
8056
8090
|
return 0;
|
|
8057
8091
|
}
|
|
8092
|
+
wizardCreatesClientFiles = dispatch.kind === "confirmed" && dispatch.createClientFiles;
|
|
8058
8093
|
}
|
|
8059
8094
|
if (existingProfileBytes) {
|
|
8060
8095
|
const existingClients = getExistingProfileClients(
|
|
@@ -8086,13 +8121,15 @@ ${formatHelp()}`);
|
|
|
8086
8121
|
}
|
|
8087
8122
|
}
|
|
8088
8123
|
}
|
|
8124
|
+
let gitignoreUpdated2 = false;
|
|
8089
8125
|
if (parsed.updateGitignore && parsed.write) {
|
|
8126
|
+
const suggestions2 = await getGitignoreSuggestions(rootDir);
|
|
8090
8127
|
const findings = await getLocalRuntimeGitignoreFindings(rootDir);
|
|
8091
8128
|
try {
|
|
8092
|
-
await appendMissingGitignoreLines(
|
|
8093
|
-
|
|
8094
|
-
findings.filter((finding) => finding.action === "would-add").map((finding) => finding.line)
|
|
8095
|
-
);
|
|
8129
|
+
gitignoreUpdated2 = await appendMissingGitignoreLines(rootDir, [
|
|
8130
|
+
...suggestions2,
|
|
8131
|
+
...findings.filter((finding) => finding.action === "would-add").map((finding) => finding.line)
|
|
8132
|
+
]);
|
|
8096
8133
|
} catch {
|
|
8097
8134
|
}
|
|
8098
8135
|
}
|
|
@@ -8127,6 +8164,7 @@ ${formatHelp()}`);
|
|
|
8127
8164
|
stackWarnings: [],
|
|
8128
8165
|
importFindings: [],
|
|
8129
8166
|
gitignoreSuggestions: [],
|
|
8167
|
+
gitignoreUpdated: gitignoreUpdated2,
|
|
8130
8168
|
...importReport2 ? { import: importReport2 } : {}
|
|
8131
8169
|
});
|
|
8132
8170
|
return 0;
|
|
@@ -8257,15 +8295,31 @@ ${formatHelp()}`);
|
|
|
8257
8295
|
}
|
|
8258
8296
|
const suggestions = presetPayload === void 0 ? await getGitignoreSuggestions(rootDir) : [];
|
|
8259
8297
|
const gitignoreFindings = presetPayload === void 0 ? await getLocalRuntimeGitignoreFindings(rootDir) : [];
|
|
8298
|
+
let gitignoreUpdated = false;
|
|
8260
8299
|
if (parsed.updateGitignore && parsed.write) {
|
|
8261
8300
|
try {
|
|
8262
|
-
await appendMissingGitignoreLines(
|
|
8263
|
-
|
|
8264
|
-
gitignoreFindings.filter((finding) => finding.action === "would-add").map((finding) => finding.line)
|
|
8265
|
-
);
|
|
8301
|
+
gitignoreUpdated = await appendMissingGitignoreLines(rootDir, [
|
|
8302
|
+
...suggestions,
|
|
8303
|
+
...gitignoreFindings.filter((finding) => finding.action === "would-add").map((finding) => finding.line)
|
|
8304
|
+
]);
|
|
8266
8305
|
} catch {
|
|
8267
8306
|
}
|
|
8268
8307
|
}
|
|
8308
|
+
let clientWritePlan;
|
|
8309
|
+
if (wizardCreatesClientFiles && parsed.write) {
|
|
8310
|
+
const clientWrite = await writeCompiledClientFiles({
|
|
8311
|
+
rootDir,
|
|
8312
|
+
profilePath: safeProfilePath.path,
|
|
8313
|
+
profile: validation.profile,
|
|
8314
|
+
profileBytes: Buffer.from(profileText, "utf8")
|
|
8315
|
+
});
|
|
8316
|
+
if (!clientWrite.ok) {
|
|
8317
|
+
io.stderr(clientWrite.message);
|
|
8318
|
+
return clientWrite.code;
|
|
8319
|
+
}
|
|
8320
|
+
clientWritePlan = clientWrite.plan;
|
|
8321
|
+
}
|
|
8322
|
+
const finalGitignoreSuggestions = gitignoreUpdated && presetPayload === void 0 ? await getGitignoreSuggestions(rootDir) : suggestions;
|
|
8269
8323
|
let importReport;
|
|
8270
8324
|
if (parsed.importExisting) {
|
|
8271
8325
|
importReport = await buildPhase14ImportReport({
|
|
@@ -8285,13 +8339,15 @@ ${formatHelp()}`);
|
|
|
8285
8339
|
action: parsed.write ? "write" : "create",
|
|
8286
8340
|
wouldWrite: !parsed.write && plan.counts.create + plan.counts.change > 0,
|
|
8287
8341
|
wrote: parsed.write && plan.counts.create + plan.counts.change > 0,
|
|
8342
|
+
clientWritePlan,
|
|
8343
|
+
gitignoreUpdated,
|
|
8288
8344
|
clients,
|
|
8289
8345
|
clientsEnabled: enabledClients(clients),
|
|
8290
8346
|
detectedStack: stackResult.stack.languages,
|
|
8291
8347
|
preset: presetPayload,
|
|
8292
8348
|
stackWarnings: stackResult.warnings,
|
|
8293
8349
|
importFindings: importResult?.findings ?? [],
|
|
8294
|
-
gitignoreSuggestions:
|
|
8350
|
+
gitignoreSuggestions: finalGitignoreSuggestions,
|
|
8295
8351
|
...importReport ? { import: importReport } : {}
|
|
8296
8352
|
});
|
|
8297
8353
|
return 0;
|
|
@@ -8306,7 +8362,7 @@ async function dispatchInitWizard(input) {
|
|
|
8306
8362
|
});
|
|
8307
8363
|
if (nonInteractive) {
|
|
8308
8364
|
input.args.importExisting = true;
|
|
8309
|
-
return "non-interactive";
|
|
8365
|
+
return { kind: "non-interactive" };
|
|
8310
8366
|
}
|
|
8311
8367
|
let profileForReport;
|
|
8312
8368
|
if (input.existingProfileBytes) {
|
|
@@ -8341,6 +8397,7 @@ async function dispatchInitWizard(input) {
|
|
|
8341
8397
|
},
|
|
8342
8398
|
detectedClients,
|
|
8343
8399
|
hasExistingProfile: input.existingProfileBytes !== void 0,
|
|
8400
|
+
gitignoreSuggestions: await getGitignoreSuggestions(input.rootDir),
|
|
8344
8401
|
report: toWizardImportReport(wizardPhaseReport)
|
|
8345
8402
|
};
|
|
8346
8403
|
const prompts = input.promptsOverride ?? createDefaultPrompts(input.io);
|
|
@@ -8362,7 +8419,7 @@ async function dispatchInitWizard(input) {
|
|
|
8362
8419
|
}
|
|
8363
8420
|
});
|
|
8364
8421
|
if (!outcome.confirmed) {
|
|
8365
|
-
return "declined";
|
|
8422
|
+
return { kind: "declined" };
|
|
8366
8423
|
}
|
|
8367
8424
|
input.args.importExisting = true;
|
|
8368
8425
|
input.args.strategy = outcome.strategy;
|
|
@@ -8374,7 +8431,10 @@ async function dispatchInitWizard(input) {
|
|
|
8374
8431
|
input.args.noClients = WIZARD_CLIENT_IDS.filter(
|
|
8375
8432
|
(id) => !outcome.clients.includes(id)
|
|
8376
8433
|
);
|
|
8377
|
-
return
|
|
8434
|
+
return {
|
|
8435
|
+
kind: "confirmed",
|
|
8436
|
+
createClientFiles: input.existingProfileBytes === void 0 && outcome.clients.length > 0
|
|
8437
|
+
};
|
|
8378
8438
|
}
|
|
8379
8439
|
function toWizardImportReport(report) {
|
|
8380
8440
|
return {
|
|
@@ -8636,13 +8696,13 @@ function parseInitArgs(args) {
|
|
|
8636
8696
|
if (preset !== void 0 && importExisting) {
|
|
8637
8697
|
return {
|
|
8638
8698
|
ok: false,
|
|
8639
|
-
message: "--preset cannot be used with --import
|
|
8699
|
+
message: "--preset cannot be used with --import."
|
|
8640
8700
|
};
|
|
8641
8701
|
}
|
|
8642
8702
|
if (preset !== void 0 && profileProvided) {
|
|
8643
8703
|
return {
|
|
8644
8704
|
ok: false,
|
|
8645
|
-
message: "--preset cannot be used with --profile
|
|
8705
|
+
message: "--preset cannot be used with --profile; preset init writes only ai-profile.yaml."
|
|
8646
8706
|
};
|
|
8647
8707
|
}
|
|
8648
8708
|
if (strategyProvided && !importExisting) {
|
|
@@ -9165,6 +9225,96 @@ async function createOrApplyWritePlan(rootDir, writes, write, io) {
|
|
|
9165
9225
|
return void 0;
|
|
9166
9226
|
}
|
|
9167
9227
|
}
|
|
9228
|
+
async function writeCompiledClientFiles(input) {
|
|
9229
|
+
const compileResult = compileProfile({ profile: input.profile });
|
|
9230
|
+
if (!compileResult.ok) {
|
|
9231
|
+
return {
|
|
9232
|
+
ok: false,
|
|
9233
|
+
code: 1,
|
|
9234
|
+
message: formatCompileIssues(compileResult.issues)
|
|
9235
|
+
};
|
|
9236
|
+
}
|
|
9237
|
+
let regionPlan;
|
|
9238
|
+
try {
|
|
9239
|
+
regionPlan = await planRegionAwareWrites(
|
|
9240
|
+
input.rootDir,
|
|
9241
|
+
compileResult.files
|
|
9242
|
+
);
|
|
9243
|
+
} catch {
|
|
9244
|
+
return {
|
|
9245
|
+
ok: false,
|
|
9246
|
+
code: 1,
|
|
9247
|
+
message: formatSimpleError(
|
|
9248
|
+
"generated outputs",
|
|
9249
|
+
"safe repository-local readable paths",
|
|
9250
|
+
"unsafe path",
|
|
9251
|
+
"Existing generated output paths could not be safely read under --root."
|
|
9252
|
+
)
|
|
9253
|
+
};
|
|
9254
|
+
}
|
|
9255
|
+
if (regionPlan.refusals.length > 0) {
|
|
9256
|
+
return {
|
|
9257
|
+
ok: false,
|
|
9258
|
+
code: 3,
|
|
9259
|
+
message: formatRegionAwareWriteRefusals(regionPlan.refusals)
|
|
9260
|
+
};
|
|
9261
|
+
}
|
|
9262
|
+
let protectedPaths;
|
|
9263
|
+
try {
|
|
9264
|
+
protectedPaths = await getProtectedGeneratedPaths(
|
|
9265
|
+
input.rootDir,
|
|
9266
|
+
compileResult.files
|
|
9267
|
+
);
|
|
9268
|
+
} catch {
|
|
9269
|
+
return {
|
|
9270
|
+
ok: false,
|
|
9271
|
+
code: 1,
|
|
9272
|
+
message: formatSimpleError(
|
|
9273
|
+
"generated outputs",
|
|
9274
|
+
"safe repository-local readable paths",
|
|
9275
|
+
"unsafe path",
|
|
9276
|
+
"Existing generated output paths could not be safely read under --root."
|
|
9277
|
+
)
|
|
9278
|
+
};
|
|
9279
|
+
}
|
|
9280
|
+
if (protectedPaths.length > 0) {
|
|
9281
|
+
return {
|
|
9282
|
+
ok: false,
|
|
9283
|
+
code: 3,
|
|
9284
|
+
message: `Refusing to replace existing generated paths without --force:
|
|
9285
|
+
${protectedPaths.map((item) => `- ${item.path} (${item.reason})`).join("\n")}
|
|
9286
|
+
`
|
|
9287
|
+
};
|
|
9288
|
+
}
|
|
9289
|
+
const lockfile = createLockfileFile({
|
|
9290
|
+
profilePath: input.profilePath,
|
|
9291
|
+
profileBytes: input.profileBytes,
|
|
9292
|
+
templates: compileResult.templates,
|
|
9293
|
+
files: compileResult.files,
|
|
9294
|
+
mixedOutputs: regionPlan.mixedOutputs
|
|
9295
|
+
});
|
|
9296
|
+
const writes = [
|
|
9297
|
+
...regionPlan.writes,
|
|
9298
|
+
{ path: lockfile.path, bytes: lockfile.bytes }
|
|
9299
|
+
];
|
|
9300
|
+
try {
|
|
9301
|
+
return {
|
|
9302
|
+
ok: true,
|
|
9303
|
+
plan: await applyWritePlan({ rootDir: input.rootDir, writes })
|
|
9304
|
+
};
|
|
9305
|
+
} catch {
|
|
9306
|
+
return {
|
|
9307
|
+
ok: false,
|
|
9308
|
+
code: 1,
|
|
9309
|
+
message: formatSimpleError(
|
|
9310
|
+
"write-plan",
|
|
9311
|
+
"safe repository-local write paths",
|
|
9312
|
+
"unsafe path",
|
|
9313
|
+
"Planned writes could not be safely resolved under --root."
|
|
9314
|
+
)
|
|
9315
|
+
};
|
|
9316
|
+
}
|
|
9317
|
+
}
|
|
9168
9318
|
async function assertPortAvailable(host, port) {
|
|
9169
9319
|
return new Promise((resolve) => {
|
|
9170
9320
|
const server = createServer();
|
|
@@ -9327,18 +9477,17 @@ Commands:
|
|
|
9327
9477
|
init Create a starting ai-profile.yaml (interactive wizard with no args).
|
|
9328
9478
|
ui Start the local read-only UI.
|
|
9329
9479
|
|
|
9330
|
-
Init wizard
|
|
9331
|
-
Plain \`agent-profile init\` opens a
|
|
9332
|
-
--import / --strategy / --update-gitignore / --write. In non-interactive
|
|
9480
|
+
Init wizard:
|
|
9481
|
+
Plain \`agent-profile init\` opens a guided setup wizard. In non-interactive
|
|
9333
9482
|
environments (no TTY, CI=true, or --non-interactive), init defaults to
|
|
9334
9483
|
--import --strategy preserve --dry-run and writes nothing.
|
|
9335
9484
|
|
|
9336
9485
|
Init presets:
|
|
9337
9486
|
--preset verifies a short-lived hosted preset token offline. Repository
|
|
9338
9487
|
analysis happens locally and no source code is uploaded. Dry-run is the
|
|
9339
|
-
default; use --write to create ai-profile.yaml.
|
|
9340
|
-
|
|
9341
|
-
|
|
9488
|
+
default; use --write to create ai-profile.yaml. --preset cannot be combined
|
|
9489
|
+
with --import or --profile. This CLI verifies tokens that match the hosted
|
|
9490
|
+
preset builder contract.
|
|
9342
9491
|
|
|
9343
9492
|
Init clients:
|
|
9344
9493
|
--client enables one or more profile clients: tabnine, codex, claude, or all.
|
|
@@ -9383,33 +9532,24 @@ function formatWritePlan(title, wrote, plan) {
|
|
|
9383
9532
|
`;
|
|
9384
9533
|
}
|
|
9385
9534
|
function formatPhase14ImportReportLines(report) {
|
|
9386
|
-
const lines = ["", "
|
|
9387
|
-
lines.push(`
|
|
9388
|
-
lines.push(` strategy: ${report.strategy}`);
|
|
9535
|
+
const lines = ["", "Existing files report:"];
|
|
9536
|
+
lines.push(` strategy: ${formatImportStrategy(report.strategy)}`);
|
|
9389
9537
|
lines.push(` mode: ${report.mode}`);
|
|
9390
|
-
lines.push(` root: ${report.root}`);
|
|
9391
9538
|
lines.push(` profile: ${report.profilePath}`);
|
|
9392
|
-
lines.push(
|
|
9393
|
-
` stack: languages=[${report.stack.languages.join(", ")}] frameworks=[${report.stack.frameworks.join(", ")}] packageManagers=[${report.stack.packageManagers.join(", ")}] testing=[${report.stack.testing.join(", ")}]`
|
|
9394
|
-
);
|
|
9539
|
+
lines.push(` stack: ${formatDetectedStack(report.stack.languages)}`);
|
|
9395
9540
|
if (report.files.length > 0) {
|
|
9396
9541
|
lines.push(" files:");
|
|
9397
9542
|
for (const finding of report.files) {
|
|
9398
|
-
|
|
9399
|
-
lines.push(
|
|
9400
|
-
` - ${finding.path} (${finding.kind}, ${finding.ownership}, action=${finding.action})${tags}`
|
|
9401
|
-
);
|
|
9543
|
+
lines.push(` - ${finding.path}: ${formatImportFileAction(finding)}`);
|
|
9402
9544
|
for (const note of finding.notes) {
|
|
9403
|
-
lines.push(` note: ${note}`);
|
|
9545
|
+
lines.push(` note: ${formatImportNote(note)}`);
|
|
9404
9546
|
}
|
|
9405
9547
|
}
|
|
9406
9548
|
}
|
|
9407
9549
|
if (report.gitignore.length > 0) {
|
|
9408
|
-
lines.push(" gitignore:");
|
|
9550
|
+
lines.push(" recommended .gitignore entries:");
|
|
9409
9551
|
for (const finding of report.gitignore) {
|
|
9410
|
-
lines.push(
|
|
9411
|
-
` - ${finding.line}: ${finding.action} (${finding.reason})`
|
|
9412
|
-
);
|
|
9552
|
+
lines.push(` - ${formatGitignoreFinding(finding)}`);
|
|
9413
9553
|
}
|
|
9414
9554
|
}
|
|
9415
9555
|
if (report.collisions.length > 0) {
|
|
@@ -9421,10 +9561,77 @@ function formatPhase14ImportReportLines(report) {
|
|
|
9421
9561
|
}
|
|
9422
9562
|
}
|
|
9423
9563
|
lines.push(
|
|
9424
|
-
` summary:
|
|
9564
|
+
` summary: profile=${report.summary.wouldCreateProfile ? "would create" : "already exists"}; region updates=${report.summary.wouldUpdateRegions}; preserved manual files=${report.summary.preservedManualFiles}; conflicts=${report.summary.conflicts}; name collisions=${report.summary.nameCollisions}`
|
|
9565
|
+
);
|
|
9566
|
+
return lines;
|
|
9567
|
+
}
|
|
9568
|
+
function formatImportStrategy(strategy) {
|
|
9569
|
+
return strategy === "regions" ? "add generated regions" : "preserve existing files";
|
|
9570
|
+
}
|
|
9571
|
+
function formatImportFileAction(finding) {
|
|
9572
|
+
switch (finding.action) {
|
|
9573
|
+
case "create":
|
|
9574
|
+
return finding.kind === "root-instructions" ? "will be created when client files are generated" : "will be created by the generated output step";
|
|
9575
|
+
case "preserve":
|
|
9576
|
+
if (finding.ownership === "generated-owned") {
|
|
9577
|
+
return "present (generated)";
|
|
9578
|
+
}
|
|
9579
|
+
return "preserved";
|
|
9580
|
+
case "insert-regions":
|
|
9581
|
+
return "can be adopted into generated/manual regions";
|
|
9582
|
+
case "update-generated-region":
|
|
9583
|
+
return "generated region updated";
|
|
9584
|
+
case "refuse-conflict":
|
|
9585
|
+
return "conflict; not written";
|
|
9586
|
+
case "ignore-local-runtime":
|
|
9587
|
+
return "preserved as local runtime state";
|
|
9588
|
+
}
|
|
9589
|
+
}
|
|
9590
|
+
function formatImportNote(note) {
|
|
9591
|
+
return note.replace(
|
|
9592
|
+
"lockfile-owned generated output; refresh via `agent-profile compile --write`",
|
|
9593
|
+
"generated output already recorded by setup"
|
|
9594
|
+
).replace(
|
|
9595
|
+
"generated client config; refresh via `agent-profile compile --write`",
|
|
9596
|
+
"generated client config already recorded by setup"
|
|
9425
9597
|
);
|
|
9598
|
+
}
|
|
9599
|
+
function formatGitignoreFinding(finding) {
|
|
9600
|
+
if (finding.action === "already-present") {
|
|
9601
|
+
return `${finding.line}: already ignored`;
|
|
9602
|
+
}
|
|
9603
|
+
return `${finding.line}: recommended local-runtime ignore`;
|
|
9604
|
+
}
|
|
9605
|
+
function formatInitOutcomeSummary(input) {
|
|
9606
|
+
const lines = [input.wrote ? "Setup report:" : "Setup preview:"];
|
|
9607
|
+
lines.push(`- ${input.wrote ? "wrote" : "would write"} ${input.profilePath}`);
|
|
9608
|
+
for (const finding of input.import?.files ?? []) {
|
|
9609
|
+
if (finding.kind === "root-instructions" && finding.action === "update-generated-region") {
|
|
9610
|
+
lines.push(`- updated generated region in ${finding.path}`);
|
|
9611
|
+
}
|
|
9612
|
+
}
|
|
9613
|
+
if (input.clientWritePlan) {
|
|
9614
|
+
const clientChanges = input.clientWritePlan.actions.filter(
|
|
9615
|
+
(action) => action.action === "create" || action.action === "change"
|
|
9616
|
+
);
|
|
9617
|
+
if (clientChanges.length > 0) {
|
|
9618
|
+
lines.push(`- generated ${String(clientChanges.length)} client files`);
|
|
9619
|
+
}
|
|
9620
|
+
}
|
|
9621
|
+
if (input.gitignoreUpdated) {
|
|
9622
|
+
lines.push("- updated .gitignore");
|
|
9623
|
+
}
|
|
9426
9624
|
return lines;
|
|
9427
9625
|
}
|
|
9626
|
+
function formatNextStepLines(input) {
|
|
9627
|
+
if (input.wrote) {
|
|
9628
|
+
return [];
|
|
9629
|
+
}
|
|
9630
|
+
return [
|
|
9631
|
+
"",
|
|
9632
|
+
"Next step: run `agent-profile init --write` to create the profile."
|
|
9633
|
+
];
|
|
9634
|
+
}
|
|
9428
9635
|
function formatInitText(input) {
|
|
9429
9636
|
const lines = [];
|
|
9430
9637
|
if (input.preset !== void 0) {
|
|
@@ -9447,19 +9654,17 @@ function formatInitText(input) {
|
|
|
9447
9654
|
lines.push(...formatPhase14ImportReportLines(input.import));
|
|
9448
9655
|
}
|
|
9449
9656
|
lines.push(
|
|
9450
|
-
"
|
|
9657
|
+
"",
|
|
9658
|
+
"Next step: run `agent-profile compile --dry-run` to inspect compiled artifacts."
|
|
9451
9659
|
);
|
|
9452
9660
|
return `${lines.join("\n").replace(/\n*$/u, "")}
|
|
9453
9661
|
`;
|
|
9454
9662
|
}
|
|
9663
|
+
lines.push(...formatInitOutcomeSummary(input));
|
|
9455
9664
|
lines.push(
|
|
9456
|
-
|
|
9457
|
-
|
|
9458
|
-
|
|
9459
|
-
(client) => ` ${client}: ${input.clients[client].enabled ? "enabled" : "disabled"}${formatClientSource(input.clients[client].source)}`
|
|
9460
|
-
),
|
|
9461
|
-
`clients enabled: ${formatEnabledClients(input.clientsEnabled)}`,
|
|
9462
|
-
`stack detected: ${formatDetectedStack(input.detectedStack)}`
|
|
9665
|
+
"",
|
|
9666
|
+
`Clients selected: ${formatClientDisplayList2(input.clientsEnabled)}`,
|
|
9667
|
+
`Stack detected: ${formatDetectedStack(input.detectedStack)}`
|
|
9463
9668
|
);
|
|
9464
9669
|
if (input.stackWarnings.length > 0) {
|
|
9465
9670
|
lines.push("", "Stack detection warnings:");
|
|
@@ -9468,13 +9673,13 @@ function formatInitText(input) {
|
|
|
9468
9673
|
}
|
|
9469
9674
|
}
|
|
9470
9675
|
if (input.importFindings.length > 0) {
|
|
9471
|
-
lines.push("", "
|
|
9676
|
+
lines.push("", "Existing files found:");
|
|
9472
9677
|
for (const finding of input.importFindings) {
|
|
9473
9678
|
lines.push(`- [${finding.kind}] ${finding.path}: ${finding.message}`);
|
|
9474
9679
|
}
|
|
9475
9680
|
}
|
|
9476
9681
|
if (input.gitignoreSuggestions.length > 0) {
|
|
9477
|
-
lines.push("", "
|
|
9682
|
+
lines.push("", "Recommended .gitignore entries:");
|
|
9478
9683
|
for (const suggestion of input.gitignoreSuggestions) {
|
|
9479
9684
|
lines.push(` .gitignore: add \`${suggestion}\``);
|
|
9480
9685
|
}
|
|
@@ -9482,10 +9687,7 @@ function formatInitText(input) {
|
|
|
9482
9687
|
if (input.import) {
|
|
9483
9688
|
lines.push(...formatPhase14ImportReportLines(input.import));
|
|
9484
9689
|
}
|
|
9485
|
-
lines.push(
|
|
9486
|
-
"",
|
|
9487
|
-
input.wrote ? "run `agent-profile compile --dry-run` to inspect compiled artifacts." : "run `agent-profile init --write` to create the profile."
|
|
9488
|
-
);
|
|
9690
|
+
lines.push(...formatNextStepLines(input));
|
|
9489
9691
|
return `${lines.join("\n").replace(/\n*$/u, "")}
|
|
9490
9692
|
`;
|
|
9491
9693
|
}
|
|
@@ -9507,11 +9709,27 @@ function formatInitRefusalFacts(input) {
|
|
|
9507
9709
|
"fix filesystem permissions or choose a safe repository-relative --profile path."
|
|
9508
9710
|
].join("\n");
|
|
9509
9711
|
}
|
|
9510
|
-
function
|
|
9511
|
-
|
|
9512
|
-
|
|
9513
|
-
|
|
9514
|
-
|
|
9712
|
+
function formatClientDisplayList2(clients) {
|
|
9713
|
+
const labels = clients.map((client) => {
|
|
9714
|
+
switch (client) {
|
|
9715
|
+
case "codex":
|
|
9716
|
+
return "Codex";
|
|
9717
|
+
case "claude":
|
|
9718
|
+
return "Claude";
|
|
9719
|
+
case "tabnine":
|
|
9720
|
+
return "Tabnine";
|
|
9721
|
+
}
|
|
9722
|
+
});
|
|
9723
|
+
if (labels.length === 0) {
|
|
9724
|
+
return "(none)";
|
|
9725
|
+
}
|
|
9726
|
+
if (labels.length === 1) {
|
|
9727
|
+
return labels[0];
|
|
9728
|
+
}
|
|
9729
|
+
if (labels.length === 2) {
|
|
9730
|
+
return `${labels[0]} and ${labels[1]}`;
|
|
9731
|
+
}
|
|
9732
|
+
return `${labels.slice(0, -1).join(", ")}, and ${labels.at(-1)}`;
|
|
9515
9733
|
}
|
|
9516
9734
|
function formatDetectedStack(languages) {
|
|
9517
9735
|
return languages.length === 0 ? "(none)" : languages.join(", ");
|
|
@@ -9597,16 +9815,22 @@ async function planRegionAdoptions(rootDir, profile) {
|
|
|
9597
9815
|
return { adoptions, refusals };
|
|
9598
9816
|
}
|
|
9599
9817
|
async function appendMissingGitignoreLines(rootDir, lines) {
|
|
9600
|
-
if (lines.length === 0) return;
|
|
9818
|
+
if (lines.length === 0) return false;
|
|
9601
9819
|
const existing = await readOptionalText3(rootDir, ".gitignore") ?? "";
|
|
9820
|
+
const existingLines = new Set(existing.split(/\r?\n/u));
|
|
9821
|
+
const missingLines = lines.filter(
|
|
9822
|
+
(line, index) => lines.indexOf(line) === index && !existingLines.has(line)
|
|
9823
|
+
);
|
|
9824
|
+
if (missingLines.length === 0) return false;
|
|
9602
9825
|
const trailing = existing.endsWith("\n") || existing === "" ? "" : "\n";
|
|
9603
|
-
const addition = `${
|
|
9826
|
+
const addition = `${missingLines.join("\n")}
|
|
9604
9827
|
`;
|
|
9605
9828
|
const next = `${existing}${trailing}${addition}`;
|
|
9606
9829
|
await applyWritePlan({
|
|
9607
9830
|
rootDir,
|
|
9608
9831
|
writes: [{ path: ".gitignore", bytes: next }]
|
|
9609
9832
|
});
|
|
9833
|
+
return true;
|
|
9610
9834
|
}
|
|
9611
9835
|
function formatRegionAdoptionRefusals(refusals) {
|
|
9612
9836
|
const lines = [
|
|
@@ -9617,6 +9841,31 @@ function formatRegionAdoptionRefusals(refusals) {
|
|
|
9617
9841
|
];
|
|
9618
9842
|
return lines.join("\n");
|
|
9619
9843
|
}
|
|
9844
|
+
function formatRegionAwareWriteRefusals(refusals) {
|
|
9845
|
+
const hashMismatches = refusals.filter(
|
|
9846
|
+
(item) => item.reason === "hash-mismatch"
|
|
9847
|
+
);
|
|
9848
|
+
const adoptionRefusals = refusals.filter(
|
|
9849
|
+
(item) => item.reason !== "hash-mismatch"
|
|
9850
|
+
);
|
|
9851
|
+
const lines = [];
|
|
9852
|
+
if (adoptionRefusals.length > 0) {
|
|
9853
|
+
lines.push(
|
|
9854
|
+
"Refusing to overwrite region-aware instruction files without explicit adoption:",
|
|
9855
|
+
...adoptionRefusals.map((item) => `- ${item.path} (${item.reason})`),
|
|
9856
|
+
"Run `agent-profile init --import --strategy regions --write` to adopt existing files into mixed ownership."
|
|
9857
|
+
);
|
|
9858
|
+
}
|
|
9859
|
+
if (hashMismatches.length > 0) {
|
|
9860
|
+
lines.push(
|
|
9861
|
+
"Refusing to overwrite lockfile-owned generated region files that differ from ai-profile.lock:",
|
|
9862
|
+
...hashMismatches.map((item) => `- ${item.path} (${item.reason})`),
|
|
9863
|
+
"Re-run with --force after reviewing the diff, or regenerate ai-profile.lock to record the new bytes."
|
|
9864
|
+
);
|
|
9865
|
+
}
|
|
9866
|
+
return `${lines.join("\n")}
|
|
9867
|
+
`;
|
|
9868
|
+
}
|
|
9620
9869
|
var REGION_AWARE_PATHS = /* @__PURE__ */ new Set(["AGENTS.md", "CLAUDE.md"]);
|
|
9621
9870
|
async function planRegionAwareWrites(rootDir, files, options = { force: false }) {
|
|
9622
9871
|
const lockfile = await readLockfileForRegions(rootDir);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agent-profile/cli",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.4",
|
|
4
4
|
"description": "Command-line interface for Agent Profile Compiler.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"@agent-profile/core": "0.2.0",
|
|
27
27
|
"@agent-profile/doctor": "0.3.0",
|
|
28
28
|
"@agent-profile/scanner": "0.2.0",
|
|
29
|
-
"@agent-profile/web": "0.3.
|
|
29
|
+
"@agent-profile/web": "0.3.4"
|
|
30
30
|
},
|
|
31
31
|
"devDependencies": {
|
|
32
32
|
"esbuild": "^0.28.0"
|