lynxprompt 1.2.14 → 1.2.16

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
@@ -1737,7 +1737,6 @@ async function detectExtendedCommands(cwd) {
1737
1737
  }
1738
1738
  }
1739
1739
  try {
1740
- const files = await readFile3(join3(cwd, "."), "utf-8").catch(() => "");
1741
1740
  const dockerViewerPath = join3(cwd, "Dockerfile.viewer");
1742
1741
  if (await fileExists(dockerViewerPath)) {
1743
1742
  addCmd("build", "docker build -f Dockerfile.viewer -t app-viewer .", "Build viewer Docker image");
@@ -3932,7 +3931,7 @@ function generateYamlConfig(options, platform2) {
3932
3931
 
3933
3932
  // src/commands/wizard.ts
3934
3933
  var DRAFTS_DIR = ".lynxprompt/drafts";
3935
- var CLI_VERSION = "1.2.14";
3934
+ var CLI_VERSION = "1.2.16";
3936
3935
  async function saveDraftLocally(name, config2, stepReached) {
3937
3936
  const draftsPath = join4(process.cwd(), DRAFTS_DIR);
3938
3937
  await mkdir3(draftsPath, { recursive: true });
@@ -5093,21 +5092,7 @@ async function runWizardWithDraftProtection(options) {
5093
5092
  const userTier = userPlanRaw === "teams" ? "teams" : "users";
5094
5093
  const userPlanDisplay = userTier === "teams" ? "TEAMS" : "USERS";
5095
5094
  if (!authenticated) {
5096
- const W = 55;
5097
- const y = chalk7.yellow;
5098
- const pad = (s, len) => s + " ".repeat(Math.max(0, len - s.length));
5099
- console.log(y("\u250C" + "\u2500".repeat(W) + "\u2510"));
5100
- console.log(y("\u2502") + pad(" \u{1F4A1} Log in for full wizard features:", W - 1) + y("\u2502"));
5101
- console.log(y("\u2502") + " ".repeat(W) + y("\u2502"));
5102
- console.log(y("\u2502") + pad(" \u2022 Full wizard with all steps", W) + y("\u2502"));
5103
- console.log(y("\u2502") + pad(" \u2022 Auto-detect from repos [TEAMS]", W) + y("\u2502"));
5104
- console.log(y("\u2502") + pad(" \u2022 AI assistant for configs [TEAMS]", W) + y("\u2502"));
5105
- console.log(y("\u2502") + pad(" \u2022 Save preferences to your profile", W) + y("\u2502"));
5106
- console.log(y("\u2502") + pad(" \u2022 Push configs to cloud (lynxp push)", W) + y("\u2502"));
5107
- console.log(y("\u2502") + pad(" \u2022 Share across devices (lynxp push/pull)", W) + y("\u2502"));
5108
- console.log(y("\u2502") + " ".repeat(W) + y("\u2502"));
5109
- console.log(y("\u2502") + pad(" Run: " + chalk7.cyan("lynxp login"), W + 10) + y("\u2502"));
5110
- console.log(y("\u2514" + "\u2500".repeat(W) + "\u2518"));
5095
+ console.log(chalk7.gray(` \u{1F464} Running as guest. ${chalk7.cyan("lynxp login")} for cloud sync & sharing.`));
5111
5096
  console.log();
5112
5097
  } else {
5113
5098
  const planEmoji = userTier === "teams" ? "\u{1F465}" : "\u{1F193}";
@@ -5332,12 +5317,27 @@ async function runWizardWithDraftProtection(options) {
5332
5317
  nextStepsLines.push(chalk7.cyan(" lynxp push ") + chalk7.gray("Upload to cloud"));
5333
5318
  nextStepsLines.push(chalk7.cyan(" lynxp link ") + chalk7.gray("Link to a blueprint"));
5334
5319
  nextStepsLines.push(chalk7.cyan(" lynxp diff ") + chalk7.gray("Compare with cloud blueprint"));
5335
- } else {
5336
- nextStepsLines.push(chalk7.gray(" lynxp login ") + chalk7.yellow("Log in to push & sync"));
5337
5320
  }
5338
5321
  nextStepsLines.push(chalk7.cyan(" lynxp status ") + chalk7.gray("View current setup"));
5339
5322
  printBox(nextStepsLines, chalk7.gray);
5340
5323
  console.log();
5324
+ if (!authenticated) {
5325
+ const W = 60;
5326
+ const y = chalk7.yellow;
5327
+ const g = chalk7.green;
5328
+ const pad = (s, len) => s + " ".repeat(Math.max(0, len - s.length));
5329
+ console.log(y(" \u256D" + "\u2500".repeat(W) + "\u256E"));
5330
+ console.log(y(" \u2502") + g(pad(" \u{1F680} Unlock LynxPrompt Cloud (FREE)", W)) + y("\u2502"));
5331
+ console.log(y(" \u2502") + " ".repeat(W) + y("\u2502"));
5332
+ console.log(y(" \u2502") + pad(" \u2713 Sync configs across all your devices", W) + y("\u2502"));
5333
+ console.log(y(" \u2502") + pad(" \u2713 Share blueprints with your team", W) + y("\u2502"));
5334
+ console.log(y(" \u2502") + pad(" \u2713 Save preferences for future wizards", W) + y("\u2502"));
5335
+ console.log(y(" \u2502") + pad(" \u2713 Auto-update configs via lynxp push/pull", W) + y("\u2502"));
5336
+ console.log(y(" \u2502") + " ".repeat(W) + y("\u2502"));
5337
+ console.log(y(" \u2502") + pad(" Sign in now: " + chalk7.cyan("lynxp login"), W + 10) + y("\u2502"));
5338
+ console.log(y(" \u2570" + "\u2500".repeat(W) + "\u256F"));
5339
+ console.log();
5340
+ }
5341
5341
  if (options.saveDraft) {
5342
5342
  try {
5343
5343
  await saveDraftLocally(options.saveDraft, config2);
@@ -6486,7 +6486,7 @@ async function runInteractiveWizard(options, detected, userTier) {
6486
6486
  { title: "\u{1F524} Other (specify)", value: "other" }
6487
6487
  ],
6488
6488
  hint: chalk7.gray("type to filter"),
6489
- suggest: (input, choices) => choices.filter((c) => c.title.toLowerCase().includes(input.toLowerCase()))
6489
+ suggest: (input, choices) => Promise.resolve(choices.filter((c) => c.title.toLowerCase().includes(input.toLowerCase())))
6490
6490
  }, promptConfig);
6491
6491
  answers.commentLanguage = commentLangResponse.commentLanguage || "";
6492
6492
  if (answers.commentLanguage === "other") {
@@ -9322,7 +9322,7 @@ function handleError2(error) {
9322
9322
  }
9323
9323
 
9324
9324
  // src/index.ts
9325
- var CLI_VERSION2 = "1.2.14";
9325
+ var CLI_VERSION2 = "1.2.16";
9326
9326
  var program = new Command();
9327
9327
  program.name("lynxprompt").description("CLI for LynxPrompt - Generate AI IDE configuration files").version(CLI_VERSION2);
9328
9328
  program.command("wizard").description("Generate AI IDE configuration (recommended for most users)").option("-n, --name <name>", "Project name").option("-d, --description <description>", "Project description").option("-s, --stack <stack>", "Tech stack (comma-separated)").option("-f, --format <format>", "Output format: agents, cursor, or comma-separated for multiple").option("-p, --platforms <platforms>", "Alias for --format (deprecated)").option("--persona <persona>", "AI persona (fullstack, backend, frontend, devops, data, security)").option("--boundaries <level>", "Boundary preset (conservative, standard, permissive)").option("-y, --yes", "Skip prompts, use defaults (generates AGENTS.md)").option("-o, --output <dir>", "Output directory (default: current directory)").option("--repo-url <url>", "Analyze remote repository URL (GitHub/GitLab supported)").option("--blueprint", "Generate with [[VARIABLE|default]] placeholders for templates").option("--license <type>", "License type (mit, apache-2.0, gpl-3.0, etc.)").option("--ci-cd <platform>", "CI/CD platform (github_actions, gitlab_ci, jenkins, etc.)").option("--project-type <type>", "Project type (work, leisure, opensource, learning)").option("--detect-only", "Only detect project info, don't generate files").option("--load-draft <name>", "Load a saved wizard draft").option("--save-draft <name>", "Save wizard state as a draft (auto-saves at end)").option("--vars <values>", "Fill variables: VAR1=value1,VAR2=value2").action(wizardCommand);