@memnexus-ai/mx-agent-cli 0.1.19 → 0.1.21

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 (40) hide show
  1. package/dist/__tests__/project-config.test.d.ts +2 -0
  2. package/dist/__tests__/project-config.test.d.ts.map +1 -0
  3. package/dist/__tests__/project-config.test.js +133 -0
  4. package/dist/__tests__/project-config.test.js.map +1 -0
  5. package/dist/commands/create.d.ts.map +1 -1
  6. package/dist/commands/create.js +10 -8
  7. package/dist/commands/create.js.map +1 -1
  8. package/dist/commands/init.d.ts +26 -0
  9. package/dist/commands/init.d.ts.map +1 -0
  10. package/dist/commands/init.js +120 -0
  11. package/dist/commands/init.js.map +1 -0
  12. package/dist/commands/list.d.ts.map +1 -1
  13. package/dist/commands/list.js +4 -2
  14. package/dist/commands/list.js.map +1 -1
  15. package/dist/commands/start.d.ts.map +1 -1
  16. package/dist/commands/start.js +18 -16
  17. package/dist/commands/start.js.map +1 -1
  18. package/dist/index.js +15 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/lib/catalog.d.ts +5 -5
  21. package/dist/lib/catalog.d.ts.map +1 -1
  22. package/dist/lib/catalog.js +11 -11
  23. package/dist/lib/catalog.js.map +1 -1
  24. package/dist/lib/claude.d.ts +16 -8
  25. package/dist/lib/claude.d.ts.map +1 -1
  26. package/dist/lib/claude.js +43 -27
  27. package/dist/lib/claude.js.map +1 -1
  28. package/dist/lib/project-config.d.ts +38 -0
  29. package/dist/lib/project-config.d.ts.map +1 -0
  30. package/dist/lib/project-config.js +90 -0
  31. package/dist/lib/project-config.js.map +1 -0
  32. package/dist/lib/templates.d.ts +24 -0
  33. package/dist/lib/templates.d.ts.map +1 -0
  34. package/dist/lib/templates.js +88 -0
  35. package/dist/lib/templates.js.map +1 -0
  36. package/dist/lib/worktree.d.ts +5 -5
  37. package/dist/lib/worktree.d.ts.map +1 -1
  38. package/dist/lib/worktree.js +36 -30
  39. package/dist/lib/worktree.js.map +1 -1
  40. package/package.json +6 -3
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ import { runUsage } from './commands/usage.js';
23
23
  import { runUpdate } from './commands/update.js';
24
24
  import { runPager } from './commands/pager.js';
25
25
  import { runConfig } from './commands/config.js';
26
+ import { runInit } from './commands/init.js';
26
27
  const __dirname = dirname(fileURLToPath(import.meta.url));
27
28
  const require = createRequire(import.meta.url);
28
29
  const pkg = require(join(__dirname, '../package.json'));
@@ -31,6 +32,20 @@ program
31
32
  .name('mx-agent')
32
33
  .description('CLI for creating and managing AI agent teams')
33
34
  .version(pkg.version);
35
+ // ── init ───────────────────────────────────────────────────────────────
36
+ program
37
+ .command('init')
38
+ .description('Scaffold mx-agent-system/ for a new project')
39
+ .option('--force', 'Overwrite existing mx-agent.config.json and config files')
40
+ .option('--base-branch <branch>', 'Base branch (default: main)')
41
+ .option('--worktree-dir <path>', 'Worktrees directory (default: .worktrees)')
42
+ .option('--config-source <path>', 'Agent config path (default: mx-agent-system/agent-config)')
43
+ .action((opts) => {
44
+ runInit(opts).catch((err) => {
45
+ console.error(err instanceof Error ? err.message : String(err));
46
+ process.exit(1);
47
+ });
48
+ });
34
49
  // ── create ─────────────────────────────────────────────────────────────
35
50
  program
36
51
  .command('create')
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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"}
@@ -28,22 +28,22 @@ export declare function parseTeamEntry(filePath: string): TeamEntry | null;
28
28
  /**
29
29
  * Return the path to the teams catalog directory.
30
30
  */
31
- export declare function getTeamsCatalogDir(projectRoot: string): string;
31
+ export declare function getTeamsCatalogDir(projectRoot: string, teamsDir?: string): string;
32
32
  /**
33
33
  * Return the path to a specific team's catalog file.
34
34
  */
35
- export declare function getTeamCatalogPath(projectRoot: string, slug: string): string;
35
+ export declare function getTeamCatalogPath(projectRoot: string, slug: string, teamsDir?: string): string;
36
36
  /**
37
37
  * List all teams from the catalog directory.
38
38
  * Skips README.md.
39
39
  */
40
- export declare function listTeams(projectRoot: string): TeamEntry[];
40
+ export declare function listTeams(projectRoot: string, teamsDir?: string): TeamEntry[];
41
41
  /**
42
42
  * Look up a single team entry by slug.
43
43
  */
44
- export declare function getTeam(projectRoot: string, slug: string): TeamEntry | null;
44
+ export declare function getTeam(projectRoot: string, slug: string, teamsDir?: string): TeamEntry | null;
45
45
  /**
46
46
  * Write a team catalog entry (creates the file).
47
47
  */
48
- export declare function writeTeamCatalog(projectRoot: string, entry: TeamEntry): void;
48
+ export declare function writeTeamCatalog(projectRoot: string, entry: TeamEntry, teamsDir?: string): void;
49
49
  //# sourceMappingURL=catalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/lib/catalog.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,WAAW,SAAS;IACxB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AASD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAW3D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CA+BjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAE5E;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,EAAE,CAW1D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAI3E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,IAAI,CAK5E"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../../src/lib/catalog.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,WAAW,SAAS;IACxB,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AASD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAW3D;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CA+BjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAgC,GAAG,MAAM,CAE1G;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAgC,GAAG,MAAM,CAExH;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAgC,GAAG,SAAS,EAAE,CAWtG;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,GAAE,MAAgC,GAAG,SAAS,GAAG,IAAI,CAIvH;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAE,MAAgC,GAAG,IAAI,CAKxH"}
@@ -68,21 +68,21 @@ export function parseTeamEntry(filePath) {
68
68
  /**
69
69
  * Return the path to the teams catalog directory.
70
70
  */
71
- export function getTeamsCatalogDir(projectRoot) {
72
- return join(projectRoot, 'mx-agent-system', 'teams');
71
+ export function getTeamsCatalogDir(projectRoot, teamsDir = 'mx-agent-system/teams') {
72
+ return join(projectRoot, teamsDir);
73
73
  }
74
74
  /**
75
75
  * Return the path to a specific team's catalog file.
76
76
  */
77
- export function getTeamCatalogPath(projectRoot, slug) {
78
- return join(getTeamsCatalogDir(projectRoot), `${slug}.md`);
77
+ export function getTeamCatalogPath(projectRoot, slug, teamsDir = 'mx-agent-system/teams') {
78
+ return join(getTeamsCatalogDir(projectRoot, teamsDir), `${slug}.md`);
79
79
  }
80
80
  /**
81
81
  * List all teams from the catalog directory.
82
82
  * Skips README.md.
83
83
  */
84
- export function listTeams(projectRoot) {
85
- const dir = getTeamsCatalogDir(projectRoot);
84
+ export function listTeams(projectRoot, teamsDir = 'mx-agent-system/teams') {
85
+ const dir = getTeamsCatalogDir(projectRoot, teamsDir);
86
86
  if (!existsSync(dir))
87
87
  return [];
88
88
  const files = readdirSync(dir).filter((f) => f.endsWith('.md') && f.toLowerCase() !== 'readme.md');
@@ -93,8 +93,8 @@ export function listTeams(projectRoot) {
93
93
  /**
94
94
  * Look up a single team entry by slug.
95
95
  */
96
- export function getTeam(projectRoot, slug) {
97
- const path = getTeamCatalogPath(projectRoot, slug);
96
+ export function getTeam(projectRoot, slug, teamsDir = 'mx-agent-system/teams') {
97
+ const path = getTeamCatalogPath(projectRoot, slug, teamsDir);
98
98
  if (!existsSync(path))
99
99
  return null;
100
100
  return parseTeamEntry(path);
@@ -102,11 +102,11 @@ export function getTeam(projectRoot, slug) {
102
102
  /**
103
103
  * Write a team catalog entry (creates the file).
104
104
  */
105
- export function writeTeamCatalog(projectRoot, entry) {
106
- const dir = getTeamsCatalogDir(projectRoot);
105
+ export function writeTeamCatalog(projectRoot, entry, teamsDir = 'mx-agent-system/teams') {
106
+ const dir = getTeamsCatalogDir(projectRoot, teamsDir);
107
107
  if (!existsSync(dir))
108
108
  mkdirSync(dir, { recursive: true });
109
- const path = getTeamCatalogPath(projectRoot, entry.slug);
109
+ const path = getTeamCatalogPath(projectRoot, entry.slug, teamsDir);
110
110
  writeFileSync(path, serializeTeamEntry(entry));
111
111
  }
112
112
  //# sourceMappingURL=catalog.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/lib/catalog.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/lib/catalog.ts"],"names":[],"mappings":"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"}
@@ -9,10 +9,15 @@ export declare function logDim(msg: string): void;
9
9
  * Deploy CLAUDE.md into the worktree from the template.
10
10
  *
11
11
  * Template resolution order:
12
- * 1. dev-tools/worktree-cli/templates/CLAUDE.md.template (synced from origin/main)
13
- * 2. CLAUDE.md at the project root
12
+ * 1. origin/<baseBranch>:<configSource>/CLAUDE.md.template via git show
13
+ * 2. Local <configSource>/CLAUDE.md.template offline fallback
14
+ * 3. Local dev-tools/worktree-cli/templates/CLAUDE.md.template — legacy fallback
15
+ * 4. Root CLAUDE.md
14
16
  */
15
- export declare function deployClaudeMd(projectRoot: string, worktreePath: string): void;
17
+ export declare function deployClaudeMd(projectRoot: string, worktreePath: string, opts?: {
18
+ baseBranch?: string;
19
+ configSource?: string;
20
+ }): void;
16
21
  /**
17
22
  * Write CLAUDE.local.md into the worktree with isolation context.
18
23
  * Matches the format produced by writeWorktreeClaudeLocal in operations.ts.
@@ -29,15 +34,18 @@ export declare function writeClaudeLocal(opts: {
29
34
  }): void;
30
35
  /**
31
36
  * Sync .claude/settings.json and .claude/hooks/worktree-guard.sh from the
32
- * platform team's canonical source: mx-agent-system/agent-config/ on origin/main.
37
+ * platform team's canonical source: <configSource>/ on origin/<baseBranch>.
33
38
  *
34
- * Uses `git show origin/main:<path>` to read file content directly from the
35
- * remote object store — no checkout/unstage dance, no staged files left behind.
39
+ * Uses `git show origin/<baseBranch>:<path>` to read file content directly from
40
+ * the remote object store — no checkout/unstage dance, no staged files left behind.
36
41
  *
37
- * Source of truth for all agent configuration is mx-agent-system/agent-config/.
42
+ * Source of truth for all agent configuration is <configSource>/.
38
43
  * Changes to agent permissions or hooks must go through a platform team PR.
39
44
  */
40
- export declare function syncClaudeConfig(worktreePath: string): void;
45
+ export declare function syncClaudeConfig(worktreePath: string, opts?: {
46
+ baseBranch?: string;
47
+ configSource?: string;
48
+ }): void;
41
49
  /**
42
50
  * Exec into a Claude session in the worktree with the given initial prompt.
43
51
  * Uses spawnSync so Claude replaces the current process cleanly.
@@ -1 +1 @@
1
- {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/lib/claude.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAExC;AAID;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CA4E9E;AAID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,IAAI,CAmDP;AAID;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI,CA+C3D;AAsDD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAoCP"}
1
+ {"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/lib/claude.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAUH,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAE5C;AAED,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAExC;AAID;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAO,GACxD,IAAI,CAwEN;AAID;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,IAAI,CAmDP;AAID;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAO,GACxD,IAAI,CAqDN;AAsDD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,IAAI,CAoCP"}
@@ -2,7 +2,7 @@
2
2
  * CLAUDE.md deployment, CLAUDE.local.md generation, and session start.
3
3
  * Mirrors the patterns in dev-tools/worktree-cli/src/operations.ts.
4
4
  */
5
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
5
+ import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
6
6
  import { join } from 'path';
7
7
  import { execSync, spawnSync } from 'child_process';
8
8
  import chalk from 'chalk';
@@ -21,10 +21,14 @@ export function logDim(msg) {
21
21
  * Deploy CLAUDE.md into the worktree from the template.
22
22
  *
23
23
  * Template resolution order:
24
- * 1. dev-tools/worktree-cli/templates/CLAUDE.md.template (synced from origin/main)
25
- * 2. CLAUDE.md at the project root
24
+ * 1. origin/<baseBranch>:<configSource>/CLAUDE.md.template via git show
25
+ * 2. Local <configSource>/CLAUDE.md.template offline fallback
26
+ * 3. Local dev-tools/worktree-cli/templates/CLAUDE.md.template — legacy fallback
27
+ * 4. Root CLAUDE.md
26
28
  */
27
- export function deployClaudeMd(projectRoot, worktreePath) {
29
+ export function deployClaudeMd(projectRoot, worktreePath, opts = {}) {
30
+ const baseBranch = opts.baseBranch ?? 'main';
31
+ const configSource = opts.configSource ?? 'mx-agent-system/agent-config';
28
32
  const claudeMdPath = join(worktreePath, 'CLAUDE.md');
29
33
  // Handle transition: untrack from git index if still tracked
30
34
  try {
@@ -41,23 +45,21 @@ export function deployClaudeMd(projectRoot, worktreePath) {
41
45
  catch {
42
46
  // Not tracked or error — fine
43
47
  }
44
- // Template resolution order:
45
- // 1. origin/main:mx-agent-system/agent-config/CLAUDE.md.template via git show
46
- // — canonical remote source, immune to local filesystem tampering (SF-7 fix)
47
- // 2. Local mx-agent-system/agent-config/CLAUDE.md.template — offline fallback
48
- // 3. Local dev-tools/worktree-cli/templates/CLAUDE.md.template — legacy fallback
49
- // 4. Root CLAUDE.md
50
48
  let content = null;
51
- // Prefer reading from origin/main via git show to avoid local tampering
49
+ // Prefer reading from origin/<baseBranch> via git show to avoid local tampering
52
50
  try {
53
- content = execSync('git show origin/main:mx-agent-system/agent-config/CLAUDE.md.template', { cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe' });
51
+ const r = spawnSync('git', ['show', `origin/${baseBranch}:${configSource}/CLAUDE.md.template`], {
52
+ cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe',
53
+ });
54
+ if (r.status === 0 && r.stdout)
55
+ content = r.stdout;
54
56
  }
55
57
  catch {
56
58
  // git show failed (offline or path missing) — fall through to local paths
57
59
  }
58
60
  if (!content) {
59
61
  const localCandidates = [
60
- join(projectRoot, 'mx-agent-system/agent-config/CLAUDE.md.template'),
62
+ join(projectRoot, configSource, 'CLAUDE.md.template'),
61
63
  join(projectRoot, 'dev-tools/worktree-cli/templates/CLAUDE.md.template'),
62
64
  ];
63
65
  for (const templatePath of localCandidates) {
@@ -157,21 +159,25 @@ Today's date is ${new Date().toISOString().slice(0, 10)}.
157
159
  // ── Claude config sync ────────────────────────────────────────────────
158
160
  /**
159
161
  * Sync .claude/settings.json and .claude/hooks/worktree-guard.sh from the
160
- * platform team's canonical source: mx-agent-system/agent-config/ on origin/main.
162
+ * platform team's canonical source: <configSource>/ on origin/<baseBranch>.
161
163
  *
162
- * Uses `git show origin/main:<path>` to read file content directly from the
163
- * remote object store — no checkout/unstage dance, no staged files left behind.
164
+ * Uses `git show origin/<baseBranch>:<path>` to read file content directly from
165
+ * the remote object store — no checkout/unstage dance, no staged files left behind.
164
166
  *
165
- * Source of truth for all agent configuration is mx-agent-system/agent-config/.
167
+ * Source of truth for all agent configuration is <configSource>/.
166
168
  * Changes to agent permissions or hooks must go through a platform team PR.
167
169
  */
168
- export function syncClaudeConfig(worktreePath) {
169
- logDim('Syncing agent config from mx-agent-system/agent-config/ (origin/main)...');
170
+ export function syncClaudeConfig(worktreePath, opts = {}) {
171
+ const baseBranch = opts.baseBranch ?? 'main';
172
+ const configSource = opts.configSource ?? 'mx-agent-system/agent-config';
173
+ logDim(`Syncing agent config from ${configSource}/ (origin/${baseBranch})...`);
170
174
  try {
171
- execSync('git fetch origin main --quiet', { cwd: worktreePath, stdio: 'pipe' });
175
+ const r = spawnSync('git', ['fetch', 'origin', baseBranch, '--quiet'], { cwd: worktreePath, stdio: 'pipe' });
176
+ if (r.status !== 0)
177
+ throw new Error('fetch failed');
172
178
  }
173
179
  catch {
174
- logWarning('Could not fetch origin/main — using existing agent config');
180
+ logWarning(`Could not fetch origin/${baseBranch} — using existing agent config`);
175
181
  return;
176
182
  }
177
183
  // Ensure .claude/hooks/ exists in the worktree
@@ -180,26 +186,36 @@ export function syncClaudeConfig(worktreePath) {
180
186
  let synced = 0;
181
187
  // settings.json
182
188
  try {
183
- const content = execSync('git show origin/main:mx-agent-system/agent-config/settings.json', { cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe' });
189
+ const r = spawnSync('git', ['show', `origin/${baseBranch}:${configSource}/settings.json`], {
190
+ cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe',
191
+ });
192
+ if (r.status !== 0 || !r.stdout)
193
+ throw new Error('git show failed');
194
+ const content = r.stdout;
184
195
  writeFileSync(join(worktreePath, '.claude', 'settings.json'), content);
185
196
  synced++;
186
197
  }
187
198
  catch {
188
- logWarning('Could not sync settings.json from mx-agent-system/agent-config/');
199
+ logWarning(`Could not sync settings.json from ${configSource}/`);
189
200
  }
190
201
  // worktree-guard.sh
191
202
  try {
192
- const content = execSync('git show origin/main:mx-agent-system/agent-config/hooks/worktree-guard.sh', { cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe' });
203
+ const r = spawnSync('git', ['show', `origin/${baseBranch}:${configSource}/hooks/worktree-guard.sh`], {
204
+ cwd: worktreePath, encoding: 'utf-8', stdio: 'pipe',
205
+ });
206
+ if (r.status !== 0 || !r.stdout)
207
+ throw new Error('git show failed');
208
+ const content = r.stdout;
193
209
  const guardPath = join(worktreePath, '.claude', 'hooks', 'worktree-guard.sh');
194
210
  writeFileSync(guardPath, content);
195
- execSync(`chmod +x "${guardPath}"`, { stdio: 'pipe' });
211
+ chmodSync(guardPath, 0o755);
196
212
  synced++;
197
213
  }
198
214
  catch {
199
- logWarning('Could not sync worktree-guard.sh from mx-agent-system/agent-config/');
215
+ logWarning(`Could not sync worktree-guard.sh from ${configSource}/`);
200
216
  }
201
217
  if (synced === 2) {
202
- logSuccess('Agent config synced from mx-agent-system/agent-config/');
218
+ logSuccess(`Agent config synced from ${configSource}/`);
203
219
  }
204
220
  else if (synced > 0) {
205
221
  logWarning(`Partial sync: ${synced}/2 config files updated`);
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/lib/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/lib/claude.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Project-level configuration for mx-agent.
3
+ *
4
+ * Reads mx-agent.config.json from the project root. All fields are optional;
5
+ * absence of the file or any field falls back to the hardcoded defaults that
6
+ * match the existing MemNexus monorepo layout — zero behavioral change for
7
+ * projects that don't have a config file.
8
+ */
9
+ export interface ProjectConfig {
10
+ /** Base branch for git operations (default: 'main') */
11
+ baseBranch?: string;
12
+ /** Directory under projectRoot where worktrees are stored (default: '.worktrees') */
13
+ worktreeDir?: string;
14
+ /** Path under projectRoot to the agent-config directory (default: 'mx-agent-system/agent-config') */
15
+ configSource?: string;
16
+ /** Path under projectRoot to the teams catalog directory (default: 'mx-agent-system/teams') */
17
+ teamsDir?: string;
18
+ /** Path under projectRoot to the roleguides directory (default: 'mx-agent-system/roleguides') */
19
+ roleguidesDir?: string;
20
+ }
21
+ export declare const PROJECT_CONFIG_DEFAULTS: Required<ProjectConfig>;
22
+ /**
23
+ * Read mx-agent.config.json from projectRoot.
24
+ *
25
+ * Returns null if the file is absent or cannot be parsed — never throws for
26
+ * parse errors. Validation errors (shell metacharacters, path traversal) are
27
+ * intentionally surfaced to the caller so malicious config values are visible.
28
+ * Unknown keys are silently ignored; only known ProjectConfig fields are returned.
29
+ */
30
+ export declare function loadProjectConfig(projectRoot: string): ProjectConfig | null;
31
+ /**
32
+ * Merge a partial ProjectConfig over the defaults.
33
+ *
34
+ * This is the primary caller API — always returns a fully populated config
35
+ * with every field guaranteed to be a string.
36
+ */
37
+ export declare function resolveProjectConfig(c: ProjectConfig | null): Required<ProjectConfig>;
38
+ //# sourceMappingURL=project-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-config.d.ts","sourceRoot":"","sources":["../../src/lib/project-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,MAAM,WAAW,aAAa;IAC5B,uDAAuD;IACvD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qGAAqG;IACrG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iGAAiG;IACjG,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,aAAa,CAM3D,CAAC;AA4BF;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAoB3E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,aAAa,GAAG,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,CAQrF"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Project-level configuration for mx-agent.
3
+ *
4
+ * Reads mx-agent.config.json from the project root. All fields are optional;
5
+ * absence of the file or any field falls back to the hardcoded defaults that
6
+ * match the existing MemNexus monorepo layout — zero behavioral change for
7
+ * projects that don't have a config file.
8
+ */
9
+ import { existsSync, readFileSync } from 'fs';
10
+ import { join } from 'path';
11
+ export const PROJECT_CONFIG_DEFAULTS = {
12
+ baseBranch: 'main',
13
+ worktreeDir: '.worktrees',
14
+ configSource: 'mx-agent-system/agent-config',
15
+ teamsDir: 'mx-agent-system/teams',
16
+ roleguidesDir: 'mx-agent-system/roleguides',
17
+ };
18
+ /** Characters that must not appear in config values used in shell commands */
19
+ const SHELL_UNSAFE_RE = /[;|&`$(){}!#\\<>\n\r\x00]/;
20
+ /**
21
+ * Validate that config field values are safe for use in shell commands and path joins.
22
+ * Throws a descriptive error if any field contains disallowed characters.
23
+ * Called by loadProjectConfig before returning — never throws from outside this module.
24
+ */
25
+ function validateProjectConfig(config) {
26
+ for (const [key, value] of Object.entries(config)) {
27
+ if (typeof value !== 'string')
28
+ continue;
29
+ if (SHELL_UNSAFE_RE.test(value)) {
30
+ throw new Error(`mx-agent.config.json: "${key}" contains disallowed characters. ` +
31
+ `Only alphanumeric characters, hyphens, underscores, dots, and forward slashes are permitted.`);
32
+ }
33
+ if (value.includes('..')) {
34
+ throw new Error(`mx-agent.config.json: "${key}" must not contain ".." (path traversal not allowed).`);
35
+ }
36
+ }
37
+ return config;
38
+ }
39
+ /**
40
+ * Read mx-agent.config.json from projectRoot.
41
+ *
42
+ * Returns null if the file is absent or cannot be parsed — never throws for
43
+ * parse errors. Validation errors (shell metacharacters, path traversal) are
44
+ * intentionally surfaced to the caller so malicious config values are visible.
45
+ * Unknown keys are silently ignored; only known ProjectConfig fields are returned.
46
+ */
47
+ export function loadProjectConfig(projectRoot) {
48
+ const configPath = join(projectRoot, 'mx-agent.config.json');
49
+ if (!existsSync(configPath))
50
+ return null;
51
+ let config;
52
+ try {
53
+ const raw = readFileSync(configPath, 'utf-8');
54
+ const parsed = JSON.parse(raw);
55
+ config = {};
56
+ if (typeof parsed.baseBranch === 'string')
57
+ config.baseBranch = parsed.baseBranch;
58
+ if (typeof parsed.worktreeDir === 'string')
59
+ config.worktreeDir = parsed.worktreeDir;
60
+ if (typeof parsed.configSource === 'string')
61
+ config.configSource = parsed.configSource;
62
+ if (typeof parsed.teamsDir === 'string')
63
+ config.teamsDir = parsed.teamsDir;
64
+ if (typeof parsed.roleguidesDir === 'string')
65
+ config.roleguidesDir = parsed.roleguidesDir;
66
+ }
67
+ catch {
68
+ return null;
69
+ }
70
+ // Validation errors are intentionally NOT silenced — malicious config values should
71
+ // be surfaced to the user, not quietly ignored.
72
+ validateProjectConfig(config);
73
+ return config;
74
+ }
75
+ /**
76
+ * Merge a partial ProjectConfig over the defaults.
77
+ *
78
+ * This is the primary caller API — always returns a fully populated config
79
+ * with every field guaranteed to be a string.
80
+ */
81
+ export function resolveProjectConfig(c) {
82
+ return {
83
+ baseBranch: c?.baseBranch ?? PROJECT_CONFIG_DEFAULTS.baseBranch,
84
+ worktreeDir: c?.worktreeDir ?? PROJECT_CONFIG_DEFAULTS.worktreeDir,
85
+ configSource: c?.configSource ?? PROJECT_CONFIG_DEFAULTS.configSource,
86
+ teamsDir: c?.teamsDir ?? PROJECT_CONFIG_DEFAULTS.teamsDir,
87
+ roleguidesDir: c?.roleguidesDir ?? PROJECT_CONFIG_DEFAULTS.roleguidesDir,
88
+ };
89
+ }
90
+ //# sourceMappingURL=project-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-config.js","sourceRoot":"","sources":["../../src/lib/project-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Embedded template strings used by `mx-agent init`.
3
+ *
4
+ * These are inline string constants — no file bundling, no network calls.
5
+ * They provide minimal-but-valid stubs that a user can customise after init.
6
+ */
7
+ /**
8
+ * Minimal settings.json for Claude Code agent permissions.
9
+ * Grants bash access and restricts to the worktree directory.
10
+ */
11
+ export declare const SETTINGS_JSON_TEMPLATE: string;
12
+ /**
13
+ * Stub worktree-guard.sh hook.
14
+ * Blocks branch switching to main and force-pushes.
15
+ */
16
+ export declare const WORKTREE_GUARD_SH_TEMPLATE = "#!/usr/bin/env bash\n# worktree-guard.sh \u2014 Claude Code PreToolUse hook\n# Blocks dangerous git operations in worktrees.\n# Customise this file for your project's safety requirements.\n\nset -euo pipefail\n\nTOOL_NAME=\"${CLAUDE_TOOL_NAME:-}\"\nTOOL_INPUT=\"${CLAUDE_TOOL_INPUT:-}\"\n\nif [[ \"$TOOL_NAME\" != \"Bash\" ]]; then\n exit 0\nfi\n\n# Block checkout/switch to base branch\nif echo \"$TOOL_INPUT\" | grep -qE 'git (checkout|switch) (main|master|develop)'; then\n echo \"Blocked: cannot switch to base branch from a worktree.\" >&2\n exit 1\nfi\n\n# Block force push to base branch\nif echo \"$TOOL_INPUT\" | grep -qE 'git push .*(--force|-f).*(main|master|develop)'; then\n echo \"Blocked: force push to base branch is not allowed.\" >&2\n exit 1\nfi\n\nexit 0\n";
17
+ /**
18
+ * Stub CLAUDE.md.template — the template that gets deployed into each worktree
19
+ * as CLAUDE.md when running mx-agent create / mx-agent start.
20
+ *
21
+ * Users should replace this with project-specific instructions.
22
+ */
23
+ export declare const CLAUDE_MD_TEMPLATE = "# Agent Instructions\n\nThis file is deployed automatically into each agent worktree by `mx-agent`.\nReplace the contents below with your project-specific agent instructions.\n\n## Project Overview\n\n<!-- Describe your project here -->\n\n## Workflow\n\n<!-- Describe the expected workflow for agents -->\n\n## Rules\n\n1. Stay within your worktree directory.\n2. Do not push to the base branch directly \u2014 create a PR.\n3. Follow the project's coding conventions.\n";
24
+ //# sourceMappingURL=templates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/lib/templates.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH;;;GAGG;AACH,eAAO,MAAM,sBAAsB,QAuBlC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,0BAA0B,kxBA2BtC,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB,4dAkB9B,CAAC"}