maxsimcli 4.2.2 → 4.3.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.
Files changed (91) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/assets/CHANGELOG.md +14 -0
  3. package/dist/assets/templates/agents/AGENTS.md +8 -6
  4. package/dist/assets/templates/agents/maxsim-code-reviewer.md +11 -0
  5. package/dist/assets/templates/agents/maxsim-executor.md +1 -0
  6. package/dist/assets/templates/agents/maxsim-planner.md +1 -0
  7. package/dist/assets/templates/agents/maxsim-project-researcher.md +96 -0
  8. package/dist/assets/templates/agents/maxsim-research-synthesizer.md +55 -3
  9. package/dist/assets/templates/agents/maxsim-roadmapper.md +11 -0
  10. package/dist/assets/templates/references/questioning.md +184 -33
  11. package/dist/assets/templates/skills/code-review/SKILL.md +5 -3
  12. package/dist/assets/templates/skills/{batch-worktree → maxsim-batch}/SKILL.md +3 -3
  13. package/dist/assets/templates/skills/{simplify → maxsim-simplify}/SKILL.md +7 -6
  14. package/dist/assets/templates/skills/using-maxsim/SKILL.md +4 -2
  15. package/dist/assets/templates/templates/conventions.md +138 -0
  16. package/dist/assets/templates/templates/no-gos.md +45 -4
  17. package/dist/assets/templates/templates/project.md +23 -0
  18. package/dist/assets/templates/workflows/batch.md +1 -1
  19. package/dist/assets/templates/workflows/init-existing.md +187 -0
  20. package/dist/assets/templates/workflows/new-project.md +195 -7
  21. package/dist/backend-server.cjs +13 -0
  22. package/dist/backend-server.cjs.map +1 -1
  23. package/dist/cli.cjs +350 -40
  24. package/dist/cli.cjs.map +1 -1
  25. package/dist/cli.js +7 -3
  26. package/dist/cli.js.map +1 -1
  27. package/dist/core/core.d.ts +2 -0
  28. package/dist/core/core.d.ts.map +1 -1
  29. package/dist/core/core.js +67 -6
  30. package/dist/core/core.js.map +1 -1
  31. package/dist/core/index.d.ts +4 -4
  32. package/dist/core/index.d.ts.map +1 -1
  33. package/dist/core/index.js +9 -3
  34. package/dist/core/index.js.map +1 -1
  35. package/dist/core/init.d.ts +2 -0
  36. package/dist/core/init.d.ts.map +1 -1
  37. package/dist/core/init.js +6 -0
  38. package/dist/core/init.js.map +1 -1
  39. package/dist/core/milestone.d.ts +1 -1
  40. package/dist/core/milestone.d.ts.map +1 -1
  41. package/dist/core/milestone.js +81 -37
  42. package/dist/core/milestone.js.map +1 -1
  43. package/dist/core/phase.d.ts +3 -0
  44. package/dist/core/phase.d.ts.map +1 -1
  45. package/dist/core/phase.js +213 -0
  46. package/dist/core/phase.js.map +1 -1
  47. package/dist/core/state.d.ts +6 -0
  48. package/dist/core/state.d.ts.map +1 -1
  49. package/dist/core/state.js +69 -0
  50. package/dist/core/state.js.map +1 -1
  51. package/dist/core/types.d.ts +10 -8
  52. package/dist/core/types.d.ts.map +1 -1
  53. package/dist/core-RRjCSt0G.cjs.map +1 -1
  54. package/dist/install/adapters.js +2 -2
  55. package/dist/install/adapters.js.map +1 -1
  56. package/dist/install/copy.js +2 -2
  57. package/dist/install/copy.js.map +1 -1
  58. package/dist/install/hooks.js +6 -6
  59. package/dist/install/hooks.js.map +1 -1
  60. package/dist/install/index.js +5 -6
  61. package/dist/install/index.js.map +1 -1
  62. package/dist/install/shared.d.ts +7 -7
  63. package/dist/install/shared.d.ts.map +1 -1
  64. package/dist/install/shared.js +18 -9
  65. package/dist/install/shared.js.map +1 -1
  66. package/dist/install/uninstall.js +3 -3
  67. package/dist/install/uninstall.js.map +1 -1
  68. package/dist/{adapters/base.d.ts → install/utils.d.ts} +3 -10
  69. package/dist/install/utils.d.ts.map +1 -0
  70. package/dist/{adapters/base.js → install/utils.js} +3 -20
  71. package/dist/install/utils.js.map +1 -0
  72. package/dist/install.cjs +20 -67
  73. package/dist/install.cjs.map +1 -1
  74. package/dist/mcp-server.cjs +13 -0
  75. package/dist/mcp-server.cjs.map +1 -1
  76. package/dist/skills-MYlMkYNt.cjs.map +1 -1
  77. package/package.json +1 -1
  78. package/dist/adapters/base.d.ts.map +0 -1
  79. package/dist/adapters/base.js.map +0 -1
  80. package/dist/adapters/claude.d.ts +0 -21
  81. package/dist/adapters/claude.d.ts.map +0 -1
  82. package/dist/adapters/claude.js +0 -104
  83. package/dist/adapters/claude.js.map +0 -1
  84. package/dist/adapters/index.d.ts +0 -9
  85. package/dist/adapters/index.d.ts.map +0 -1
  86. package/dist/adapters/index.js +0 -20
  87. package/dist/adapters/index.js.map +0 -1
  88. package/dist/adapters/types.d.ts +0 -10
  89. package/dist/adapters/types.d.ts.map +0 -1
  90. package/dist/adapters/types.js +0 -6
  91. package/dist/adapters/types.js.map +0 -1
package/dist/install.cjs CHANGED
@@ -7507,10 +7507,11 @@ var require_minimist = /* @__PURE__ */ __commonJSMin(((exports, module) => {
7507
7507
  }));
7508
7508
 
7509
7509
  //#endregion
7510
- //#region src/adapters/base.ts
7510
+ //#region src/install/utils.ts
7511
7511
  var import_minimist = /* @__PURE__ */ __toESM(require_minimist());
7512
7512
  /**
7513
- * @maxsim/adaptersShared base utilities extracted from bin/install.js
7513
+ * Install utilities shared helper functions for the install pipeline.
7514
+ * (Inlined from the former adapters/base.ts after multi-runtime removal.)
7514
7515
  */
7515
7516
  /**
7516
7517
  * Expand ~ to home directory (shell doesn't expand in env vars passed to node)
@@ -7554,58 +7555,6 @@ function writeSettings(settingsPath, settings) {
7554
7555
  node_fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + "\n");
7555
7556
  }
7556
7557
 
7557
- //#endregion
7558
- //#region src/adapters/claude.ts
7559
- /**
7560
- * @maxsim/adapters — Claude Code adapter
7561
- *
7562
- * Ports the Claude-specific logic from bin/install.js:
7563
- * - getGlobalDir('claude', ...) (lines 135-142)
7564
- * - getDirName('claude') (line 49)
7565
- * - getConfigDirFromHome('claude', isGlobal) (lines 58-72)
7566
- * - copyWithPathReplacement for Claude (lines 839-892)
7567
- */
7568
- /**
7569
- * Get the global config directory for Claude Code.
7570
- * Priority: explicitDir > CLAUDE_CONFIG_DIR env > ~/.claude
7571
- */
7572
- function getGlobalDir$1(explicitDir) {
7573
- if (explicitDir) return expandTilde(explicitDir);
7574
- if (process.env.CLAUDE_CONFIG_DIR) return expandTilde(process.env.CLAUDE_CONFIG_DIR);
7575
- return node_path.join(node_os.homedir(), ".claude");
7576
- }
7577
- /**
7578
- * Get the config directory path relative to home for hook templating.
7579
- * Used for path.join(homeDir, '<configDir>', ...) replacement in hooks.
7580
- */
7581
- function getConfigDirFromHome$1(isGlobal) {
7582
- return "'.claude'";
7583
- }
7584
- /**
7585
- * Transform markdown content for Claude Code installation.
7586
- * For Claude, this is path replacement only — no frontmatter conversion needed.
7587
- * Replaces ~/.claude/ and ./.claude/ references with the actual install path prefix.
7588
- */
7589
- function transformContent(content, pathPrefix) {
7590
- const globalClaudeRegex = /~\/\.claude\//g;
7591
- const localClaudeRegex = /\.\/\.claude\//g;
7592
- let result = content.replace(globalClaudeRegex, pathPrefix);
7593
- result = result.replace(localClaudeRegex, `./.claude/`);
7594
- return result;
7595
- }
7596
- /**
7597
- * Claude Code adapter configuration.
7598
- * Claude uses nested command structure (commands/maxsim/*.md).
7599
- */
7600
- const claudeAdapter = {
7601
- runtime: "claude",
7602
- dirName: ".claude",
7603
- getGlobalDir: getGlobalDir$1,
7604
- getConfigDirFromHome: getConfigDirFromHome$1,
7605
- transformContent,
7606
- commandStructure: "nested"
7607
- };
7608
-
7609
7558
  //#endregion
7610
7559
  //#region src/install/shared.ts
7611
7560
  const pkg = JSON.parse(node_fs.readFileSync(node_path.resolve(__dirname, "..", "package.json"), "utf-8"));
@@ -7614,30 +7563,36 @@ const builtInSkills = [
7614
7563
  "tdd",
7615
7564
  "systematic-debugging",
7616
7565
  "verification-before-completion",
7617
- "simplify",
7566
+ "maxsim-simplify",
7618
7567
  "code-review",
7619
7568
  "memory-management",
7620
7569
  "using-maxsim",
7621
7570
  "brainstorming",
7622
- "roadmap-writing"
7571
+ "roadmap-writing",
7572
+ "sdd",
7573
+ "maxsim-batch"
7623
7574
  ];
7624
7575
  /**
7625
- * Get the global config directory, using the Claude adapter
7576
+ * Get the global config directory for Claude Code.
7577
+ * Priority: explicitDir > CLAUDE_CONFIG_DIR env > ~/.claude
7626
7578
  */
7627
7579
  function getGlobalDir(explicitDir = null) {
7628
- return claudeAdapter.getGlobalDir(explicitDir);
7580
+ if (explicitDir) return expandTilde(explicitDir);
7581
+ if (process.env.CLAUDE_CONFIG_DIR) return expandTilde(process.env.CLAUDE_CONFIG_DIR);
7582
+ return node_path.join(node_os.homedir(), ".claude");
7629
7583
  }
7630
7584
  /**
7631
- * Get the config directory path relative to home for hook templating
7585
+ * Get the config directory path relative to home for hook templating.
7586
+ * Used for path.join(homeDir, '<configDir>', ...) replacement in hooks.
7632
7587
  */
7633
- function getConfigDirFromHome(isGlobal) {
7634
- return claudeAdapter.getConfigDirFromHome(isGlobal);
7588
+ function getConfigDirFromHome(_isGlobal) {
7589
+ return "'.claude'";
7635
7590
  }
7636
7591
  /**
7637
7592
  * Get the local directory name
7638
7593
  */
7639
7594
  function getDirName() {
7640
- return claudeAdapter.dirName;
7595
+ return ".claude";
7641
7596
  }
7642
7597
  /**
7643
7598
  * Recursively remove a directory, handling Windows read-only file attributes.
@@ -7697,7 +7652,7 @@ function verifyFileInstalled(filePath, description) {
7697
7652
  * Returns an object with `complete` (boolean) and `missing` (list of
7698
7653
  * component names that are absent or incomplete).
7699
7654
  */
7700
- function verifyInstallComplete(configDir, _runtime, manifest = null) {
7655
+ function verifyInstallComplete(configDir, manifest = null) {
7701
7656
  const missing = [];
7702
7657
  if (manifest && manifest.files) {
7703
7658
  for (const relPath of Object.keys(manifest.files)) if (!node_fs.existsSync(node_path.join(configDir, relPath))) missing.push(relPath);
@@ -8410,7 +8365,6 @@ if (hasHelp) {
8410
8365
  process.exit(0);
8411
8366
  }
8412
8367
  async function install(isGlobal) {
8413
- const runtime = "claude";
8414
8368
  const dirName = getDirName();
8415
8369
  const src = templatesRoot;
8416
8370
  const targetDir = isGlobal ? getGlobalDir(explicitConfigDir) : node_path.join(process.cwd(), dirName);
@@ -8421,7 +8375,7 @@ async function install(isGlobal) {
8421
8375
  const existingManifest = readManifest(targetDir);
8422
8376
  const isAlreadyCurrent = existingManifest !== null && existingManifest.version === pkg.version;
8423
8377
  if (existingManifest !== null) {
8424
- const { complete, missing } = verifyInstallComplete(targetDir, runtime, existingManifest);
8378
+ const { complete, missing } = verifyInstallComplete(targetDir, existingManifest);
8425
8379
  if (!complete) console.log(` ${chalk.yellow("!")} Previous install (v${existingManifest.version}) is incomplete — ${missing.length} missing file(s). Re-installing.`);
8426
8380
  else if (isAlreadyCurrent) console.log(` ${chalk.dim(`Version ${pkg.version} already installed — upgrading in place`)}`);
8427
8381
  }
@@ -8644,8 +8598,7 @@ async function install(isGlobal) {
8644
8598
  return {
8645
8599
  settingsPath,
8646
8600
  settings,
8647
- statuslineCommand,
8648
- runtime
8601
+ statuslineCommand
8649
8602
  };
8650
8603
  }
8651
8604
  /**