lynxprompt 1.2.8 → 1.2.9

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
@@ -2856,9 +2856,36 @@ function generateFileContent(options, platform2) {
2856
2856
  sections.push(`- ${desc}`);
2857
2857
  }
2858
2858
  }
2859
+ if (options.planModeFrequency && options.planModeFrequency !== "on_request") {
2860
+ const planModeDescriptions = {
2861
+ always: "**Always enter Plan Mode** before making any changes - think through the approach first",
2862
+ complex_tasks: "**Use Plan Mode** for complex tasks, multi-step changes, or risky modifications",
2863
+ multi_file: "**Use Plan Mode** when changes span multiple files",
2864
+ new_features: "**Use Plan Mode** when implementing new features",
2865
+ never: "Skip plan mode - proceed directly with implementation"
2866
+ };
2867
+ if (planModeDescriptions[options.planModeFrequency]) {
2868
+ sections.push(`- ${planModeDescriptions[options.planModeFrequency]}`);
2869
+ }
2870
+ }
2859
2871
  sections.push("");
2860
2872
  }
2861
2873
  }
2874
+ if (options.commitWorkflow && (isMarkdown || isMdc)) {
2875
+ sections.push("## Git Workflow");
2876
+ sections.push("");
2877
+ if (options.commitWorkflow === "branch_pr") {
2878
+ sections.push("- **Workflow:** Create feature branches and submit pull requests");
2879
+ sections.push("- Do NOT commit directly to main/master branch");
2880
+ sections.push("- Create a descriptive branch name (e.g., `feat/add-login`, `fix/button-styling`)");
2881
+ sections.push("- Open a PR for review before merging");
2882
+ } else if (options.commitWorkflow === "direct_main") {
2883
+ sections.push("- **Workflow:** Commit directly to main/master branch");
2884
+ sections.push("- Small, focused commits are preferred");
2885
+ sections.push("- Ensure tests pass before pushing");
2886
+ }
2887
+ sections.push("");
2888
+ }
2862
2889
  if (options.importantFiles && options.importantFiles.length > 0) {
2863
2890
  if (isMarkdown || isMdc) {
2864
2891
  sections.push("## Important Files to Read");
@@ -3359,7 +3386,7 @@ function generateYamlConfig(options, platform2) {
3359
3386
 
3360
3387
  // src/commands/wizard.ts
3361
3388
  var DRAFTS_DIR = ".lynxprompt/drafts";
3362
- var CLI_VERSION = "1.2.8";
3389
+ var CLI_VERSION = "1.2.9";
3363
3390
  async function saveDraftLocally(name, config2, stepReached) {
3364
3391
  const draftsPath = join4(process.cwd(), DRAFTS_DIR);
3365
3392
  await mkdir3(draftsPath, { recursive: true });
@@ -5241,6 +5268,18 @@ async function runInteractiveWizard(options, detected, userTier) {
5241
5268
  initial: 0
5242
5269
  }, promptConfig);
5243
5270
  answers.defaultBranch = defaultBranchResponse.defaultBranch || "main";
5271
+ const commitWorkflowResponse = await prompts3({
5272
+ type: "select",
5273
+ name: "commitWorkflow",
5274
+ message: chalk7.white("Commit workflow preference:"),
5275
+ choices: [
5276
+ { title: "\u{1F500} Branch + PR - Create branches and open pull requests", value: "branch_pr" },
5277
+ { title: "\u2B06\uFE0F Direct to main - Commit directly to main/master branch", value: "direct_main" }
5278
+ ],
5279
+ initial: 0
5280
+ // Default to branch + PR
5281
+ }, promptConfig);
5282
+ answers.commitWorkflow = commitWorkflowResponse.commitWorkflow || "branch_pr";
5244
5283
  const cicdChoices = [
5245
5284
  { title: chalk7.gray("\u23ED Skip"), value: "" },
5246
5285
  ...CICD_OPTIONS.map((c) => ({
@@ -6460,7 +6499,9 @@ async function runInteractiveWizard(options, detected, userTier) {
6460
6499
  versionTagFormat: answers.versionTagFormat,
6461
6500
  changelogTool: answers.changelogTool,
6462
6501
  // AI Behavior
6463
- planModeFrequency: answers.planModeFrequency
6502
+ planModeFrequency: answers.planModeFrequency,
6503
+ // Commit workflow
6504
+ commitWorkflow: answers.commitWorkflow
6464
6505
  };
6465
6506
  }
6466
6507
 
@@ -8542,7 +8583,7 @@ function handleError2(error) {
8542
8583
  }
8543
8584
 
8544
8585
  // src/index.ts
8545
- var CLI_VERSION2 = "1.2.8";
8586
+ var CLI_VERSION2 = "1.2.9";
8546
8587
  var program = new Command();
8547
8588
  program.name("lynxprompt").description("CLI for LynxPrompt - Generate AI IDE configuration files").version(CLI_VERSION2);
8548
8589
  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);