@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 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("Choose clients")}
7387
- Which clients should this profile enable?
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
- return `${formatWizardSectionTitle("Optional .gitignore update")}
7401
- Add recommended local-runtime ignore entries to .gitignore?`;
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("Choose run mode")}
7408
+ return `${formatWizardSectionTitle("Create setup")}
7405
7409
  How should this plan run?
7406
- 1) Dry run preview (default) - write nothing
7407
- 2) Write files now (--write)
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(`- local runtime files: ${formatList(localRuntimePaths(context.report))}`);
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(`Recommended strategy: ${formatStrategyLabel(recommendation.strategy)}`);
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("Write plan"));
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(`- adopt ${file.path} into mixed ownership (manual region preserves existing content)`);
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(`- refuse ${file.path} (${file.notes.join("; ") || "conflict"})`);
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} (refresh via \`agent-profile compile --write\`)`);
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.report.gitignore.filter(
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 to enable: ${formatList(outcome.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 gitignoreNeedsRecommendation = context.report.gitignore.some(
7602
- (item) => item.action !== "already-present"
7603
- );
7604
- const updateGitignore = gitignoreNeedsRecommendation ? await input.prompts.confirmGitignore({ default: false }) : false;
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
- return confirm(
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
- rootDir,
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
- rootDir,
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: suggestions,
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 "confirmed";
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 in Phase 9."
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 in Phase 9; preset init writes only ai-profile.yaml."
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 (Phase 15):
9331
- Plain \`agent-profile init\` opens a friendly wizard that maps to Phase 14
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. In Phase 9, --preset cannot
9340
- be combined with --import or --profile. The hosted preset builder ships in a
9341
- later phase; this CLI verifies tokens that match its contract.
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 = ["", "Phase 14 import report:"];
9387
- lines.push(` command: ${report.command}`);
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
- const tags = finding.tags.length > 0 ? ` [${finding.tags.join(", ")}]` : "";
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: wouldCreateProfile=${report.summary.wouldCreateProfile} wouldUpdateRegions=${report.summary.wouldUpdateRegions} preservedManualFiles=${report.summary.preservedManualFiles} conflicts=${report.summary.conflicts} nameCollisions=${report.summary.nameCollisions}`
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
- "run `agent-profile compile --dry-run` to inspect compiled artifacts."
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
- `${input.wrote ? "wrote" : "would write"}: ${input.profilePath}`,
9457
- "clients:",
9458
- ...CLIENT_IDS.map(
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("", "Import findings:");
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("", "suggestions:");
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 formatClientSource(source) {
9511
- return source === "default" ? "" : ` (${source})`;
9512
- }
9513
- function formatEnabledClients(clients) {
9514
- return clients.length === 0 ? "(none)" : clients.join(", ");
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 = `${lines.join("\n")}
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.2",
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.2"
29
+ "@agent-profile/web": "0.3.4"
30
30
  },
31
31
  "devDependencies": {
32
32
  "esbuild": "^0.28.0"