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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/assets/CHANGELOG.md +14 -0
- package/dist/assets/templates/agents/AGENTS.md +8 -6
- package/dist/assets/templates/agents/maxsim-code-reviewer.md +11 -0
- package/dist/assets/templates/agents/maxsim-executor.md +1 -0
- package/dist/assets/templates/agents/maxsim-planner.md +1 -0
- package/dist/assets/templates/agents/maxsim-project-researcher.md +96 -0
- package/dist/assets/templates/agents/maxsim-research-synthesizer.md +55 -3
- package/dist/assets/templates/agents/maxsim-roadmapper.md +11 -0
- package/dist/assets/templates/references/questioning.md +184 -33
- package/dist/assets/templates/skills/code-review/SKILL.md +5 -3
- package/dist/assets/templates/skills/{batch-worktree → maxsim-batch}/SKILL.md +3 -3
- package/dist/assets/templates/skills/{simplify → maxsim-simplify}/SKILL.md +7 -6
- package/dist/assets/templates/skills/using-maxsim/SKILL.md +4 -2
- package/dist/assets/templates/templates/conventions.md +138 -0
- package/dist/assets/templates/templates/no-gos.md +45 -4
- package/dist/assets/templates/templates/project.md +23 -0
- package/dist/assets/templates/workflows/batch.md +1 -1
- package/dist/assets/templates/workflows/init-existing.md +187 -0
- package/dist/assets/templates/workflows/new-project.md +195 -7
- package/dist/backend-server.cjs +13 -0
- package/dist/backend-server.cjs.map +1 -1
- package/dist/cli.cjs +350 -40
- package/dist/cli.cjs.map +1 -1
- package/dist/cli.js +7 -3
- package/dist/cli.js.map +1 -1
- package/dist/core/core.d.ts +2 -0
- package/dist/core/core.d.ts.map +1 -1
- package/dist/core/core.js +67 -6
- package/dist/core/core.js.map +1 -1
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +9 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/init.d.ts +2 -0
- package/dist/core/init.d.ts.map +1 -1
- package/dist/core/init.js +6 -0
- package/dist/core/init.js.map +1 -1
- package/dist/core/milestone.d.ts +1 -1
- package/dist/core/milestone.d.ts.map +1 -1
- package/dist/core/milestone.js +81 -37
- package/dist/core/milestone.js.map +1 -1
- package/dist/core/phase.d.ts +3 -0
- package/dist/core/phase.d.ts.map +1 -1
- package/dist/core/phase.js +213 -0
- package/dist/core/phase.js.map +1 -1
- package/dist/core/state.d.ts +6 -0
- package/dist/core/state.d.ts.map +1 -1
- package/dist/core/state.js +69 -0
- package/dist/core/state.js.map +1 -1
- package/dist/core/types.d.ts +10 -8
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core-RRjCSt0G.cjs.map +1 -1
- package/dist/install/adapters.js +2 -2
- package/dist/install/adapters.js.map +1 -1
- package/dist/install/copy.js +2 -2
- package/dist/install/copy.js.map +1 -1
- package/dist/install/hooks.js +6 -6
- package/dist/install/hooks.js.map +1 -1
- package/dist/install/index.js +5 -6
- package/dist/install/index.js.map +1 -1
- package/dist/install/shared.d.ts +7 -7
- package/dist/install/shared.d.ts.map +1 -1
- package/dist/install/shared.js +18 -9
- package/dist/install/shared.js.map +1 -1
- package/dist/install/uninstall.js +3 -3
- package/dist/install/uninstall.js.map +1 -1
- package/dist/{adapters/base.d.ts → install/utils.d.ts} +3 -10
- package/dist/install/utils.d.ts.map +1 -0
- package/dist/{adapters/base.js → install/utils.js} +3 -20
- package/dist/install/utils.js.map +1 -0
- package/dist/install.cjs +20 -67
- package/dist/install.cjs.map +1 -1
- package/dist/mcp-server.cjs +13 -0
- package/dist/mcp-server.cjs.map +1 -1
- package/dist/skills-MYlMkYNt.cjs.map +1 -1
- package/package.json +1 -1
- package/dist/adapters/base.d.ts.map +0 -1
- package/dist/adapters/base.js.map +0 -1
- package/dist/adapters/claude.d.ts +0 -21
- package/dist/adapters/claude.d.ts.map +0 -1
- package/dist/adapters/claude.js +0 -104
- package/dist/adapters/claude.js.map +0 -1
- package/dist/adapters/index.d.ts +0 -9
- package/dist/adapters/index.d.ts.map +0 -1
- package/dist/adapters/index.js +0 -20
- package/dist/adapters/index.js.map +0 -1
- package/dist/adapters/types.d.ts +0 -10
- package/dist/adapters/types.d.ts.map +0 -1
- package/dist/adapters/types.js +0 -6
- 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/
|
|
7510
|
+
//#region src/install/utils.ts
|
|
7511
7511
|
var import_minimist = /* @__PURE__ */ __toESM(require_minimist());
|
|
7512
7512
|
/**
|
|
7513
|
-
*
|
|
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
|
|
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
|
|
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(
|
|
7634
|
-
return
|
|
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
|
|
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,
|
|
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,
|
|
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
|
/**
|