@stackbilt/cli 0.15.1 → 1.0.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/__tests__/adf-init.test.js +31 -0
- package/dist/__tests__/adf-init.test.js.map +1 -1
- package/dist/__tests__/adf-patch.test.d.ts +2 -0
- package/dist/__tests__/adf-patch.test.d.ts.map +1 -0
- package/dist/__tests__/adf-patch.test.js +192 -0
- package/dist/__tests__/adf-patch.test.js.map +1 -0
- package/dist/__tests__/bootstrap.test.js +107 -0
- package/dist/__tests__/bootstrap.test.js.map +1 -1
- package/dist/__tests__/context-refresh-repo-intel.test.d.ts +9 -0
- package/dist/__tests__/context-refresh-repo-intel.test.d.ts.map +1 -0
- package/dist/__tests__/context-refresh-repo-intel.test.js +228 -0
- package/dist/__tests__/context-refresh-repo-intel.test.js.map +1 -0
- package/dist/__tests__/context-refresh.test.d.ts +2 -0
- package/dist/__tests__/context-refresh.test.d.ts.map +1 -0
- package/dist/__tests__/context-refresh.test.js +198 -0
- package/dist/__tests__/context-refresh.test.js.map +1 -0
- package/dist/__tests__/context.test.js +62 -0
- package/dist/__tests__/context.test.js.map +1 -1
- package/dist/__tests__/hook.test.js +25 -0
- package/dist/__tests__/hook.test.js.map +1 -1
- package/dist/__tests__/score.test.js +58 -0
- package/dist/__tests__/score.test.js.map +1 -1
- package/dist/__tests__/serve-context.test.d.ts +2 -0
- package/dist/__tests__/serve-context.test.d.ts.map +1 -0
- package/dist/__tests__/serve-context.test.js +112 -0
- package/dist/__tests__/serve-context.test.js.map +1 -0
- package/dist/__tests__/setup.test.js +48 -0
- package/dist/__tests__/setup.test.js.map +1 -1
- package/dist/__tests__/why.test.d.ts +2 -0
- package/dist/__tests__/why.test.d.ts.map +1 -0
- package/dist/__tests__/why.test.js +145 -0
- package/dist/__tests__/why.test.js.map +1 -0
- package/dist/commands/adf.d.ts +2 -2
- package/dist/commands/adf.d.ts.map +1 -1
- package/dist/commands/adf.js +94 -1
- package/dist/commands/adf.js.map +1 -1
- package/dist/commands/bootstrap.d.ts.map +1 -1
- package/dist/commands/bootstrap.js +145 -34
- package/dist/commands/bootstrap.js.map +1 -1
- package/dist/commands/context-refresh.d.ts +16 -0
- package/dist/commands/context-refresh.d.ts.map +1 -0
- package/dist/commands/context-refresh.js +841 -0
- package/dist/commands/context-refresh.js.map +1 -0
- package/dist/commands/context.d.ts.map +1 -1
- package/dist/commands/context.js +104 -7
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/hook.d.ts +1 -0
- package/dist/commands/hook.d.ts.map +1 -1
- package/dist/commands/hook.js +30 -1
- package/dist/commands/hook.js.map +1 -1
- package/dist/commands/score.js +76 -14
- package/dist/commands/score.js.map +1 -1
- package/dist/commands/serve.d.ts +22 -1
- package/dist/commands/serve.d.ts.map +1 -1
- package/dist/commands/serve.js +206 -7
- package/dist/commands/serve.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +47 -1
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/why.d.ts.map +1 -1
- package/dist/commands/why.js +44 -0
- package/dist/commands/why.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +10 -28
- package/dist/index.js.map +1 -1
- package/package.json +27 -15
- package/dist/__tests__/auth-wiring.test.d.ts +0 -2
- package/dist/__tests__/auth-wiring.test.d.ts.map +0 -1
- package/dist/__tests__/auth-wiring.test.js +0 -158
- package/dist/__tests__/auth-wiring.test.js.map +0 -1
- package/dist/__tests__/credentials.test.d.ts +0 -2
- package/dist/__tests__/credentials.test.d.ts.map +0 -1
- package/dist/__tests__/credentials.test.js +0 -145
- package/dist/__tests__/credentials.test.js.map +0 -1
- package/dist/__tests__/deprecated-commands.test.d.ts +0 -2
- package/dist/__tests__/deprecated-commands.test.d.ts.map +0 -1
- package/dist/__tests__/deprecated-commands.test.js +0 -59
- package/dist/__tests__/deprecated-commands.test.js.map +0 -1
- package/dist/__tests__/login.test.d.ts +0 -2
- package/dist/__tests__/login.test.d.ts.map +0 -1
- package/dist/__tests__/login.test.js +0 -66
- package/dist/__tests__/login.test.js.map +0 -1
- package/dist/commands/architect.d.ts +0 -12
- package/dist/commands/architect.d.ts.map +0 -1
- package/dist/commands/architect.js +0 -167
- package/dist/commands/architect.js.map +0 -1
- package/dist/commands/deprecation-warning.d.ts +0 -4
- package/dist/commands/deprecation-warning.d.ts.map +0 -1
- package/dist/commands/deprecation-warning.js +0 -20
- package/dist/commands/deprecation-warning.js.map +0 -1
- package/dist/commands/login.d.ts +0 -13
- package/dist/commands/login.d.ts.map +0 -1
- package/dist/commands/login.js +0 -80
- package/dist/commands/login.js.map +0 -1
- package/dist/commands/run.d.ts +0 -18
- package/dist/commands/run.d.ts.map +0 -1
- package/dist/commands/run.js +0 -247
- package/dist/commands/run.js.map +0 -1
- package/dist/commands/scaffold.d.ts +0 -11
- package/dist/commands/scaffold.d.ts.map +0 -1
- package/dist/commands/scaffold.js +0 -112
- package/dist/commands/scaffold.js.map +0 -1
- package/dist/credentials.d.ts +0 -34
- package/dist/credentials.d.ts.map +0 -1
- package/dist/credentials.js +0 -108
- package/dist/credentials.js.map +0 -1
- package/dist/http-client.d.ts +0 -114
- package/dist/http-client.d.ts.map +0 -1
- package/dist/http-client.js +0 -69
- package/dist/http-client.js.map +0 -1
- package/dist/types/scaffold-contract-types.d.ts +0 -90
- package/dist/types/scaffold-contract-types.d.ts.map +0 -1
- package/dist/types/scaffold-contract-types.js +0 -22
- package/dist/types/scaffold-contract-types.js.map +0 -1
package/dist/commands/adf.js
CHANGED
|
@@ -258,6 +258,12 @@ exports.POINTER_CLAUDE_MD = `# CLAUDE.md
|
|
|
258
258
|
> New rules should be added to the appropriate \`.ai/*.adf\` module.
|
|
259
259
|
> See \`.ai/manifest.adf\` for the module routing manifest.
|
|
260
260
|
|
|
261
|
+
## Session Start
|
|
262
|
+
|
|
263
|
+
Call \`charter_context\` (MCP tool) before any other action. It returns the live constraint surface — open work, recent decisions, and metric ceilings — so you act within current project state rather than reconstructing it from scratch.
|
|
264
|
+
|
|
265
|
+
If \`charter serve\` is not running, read \`.ai/context.snapshot.json\` directly or run \`charter context-refresh\` to generate it.
|
|
266
|
+
|
|
261
267
|
## Environment
|
|
262
268
|
<!-- Add runtime/OS/shell-specific notes here (not stack rules) -->
|
|
263
269
|
`;
|
|
@@ -268,6 +274,12 @@ exports.POINTER_CLAUDE_MD_HYBRID = `# CLAUDE.md
|
|
|
268
274
|
> New rules should be added to the appropriate \`.ai/*.adf\` module.
|
|
269
275
|
> See \`.ai/manifest.adf\` for the module routing manifest.
|
|
270
276
|
|
|
277
|
+
## Session Start
|
|
278
|
+
|
|
279
|
+
Call \`charter_context\` (MCP tool) before any other action. It returns the live constraint surface — open work, recent decisions, and metric ceilings — so you act within current project state rather than reconstructing it from scratch.
|
|
280
|
+
|
|
281
|
+
If \`charter serve\` is not running, read \`.ai/context.snapshot.json\` directly or run \`charter context-refresh\` to generate it.
|
|
282
|
+
|
|
271
283
|
## Module Index
|
|
272
284
|
<!-- charter:module-index:start -->
|
|
273
285
|
<!-- charter:module-index:end -->
|
|
@@ -501,6 +513,70 @@ function adfFmt(options, args) {
|
|
|
501
513
|
process.stdout.write(formatted);
|
|
502
514
|
return index_1.EXIT_CODE.SUCCESS;
|
|
503
515
|
}
|
|
516
|
+
function captureOpBefore(doc, op) {
|
|
517
|
+
switch (op.op) {
|
|
518
|
+
case 'ADD_BULLET':
|
|
519
|
+
return { op: op.op, section: op.section, before: null };
|
|
520
|
+
case 'REPLACE_BULLET': {
|
|
521
|
+
const s = doc.sections.find(s => s.key === op.section);
|
|
522
|
+
let before = null;
|
|
523
|
+
if (s?.content.type === 'list')
|
|
524
|
+
before = s.content.items[op.index] ?? null;
|
|
525
|
+
else if (s?.content.type === 'map') {
|
|
526
|
+
const e = s.content.entries[op.index];
|
|
527
|
+
before = e ? `${e.key}: ${e.value}` : null;
|
|
528
|
+
}
|
|
529
|
+
return { op: op.op, section: op.section, index: op.index, before };
|
|
530
|
+
}
|
|
531
|
+
case 'REMOVE_BULLET': {
|
|
532
|
+
const s = doc.sections.find(s => s.key === op.section);
|
|
533
|
+
let before = null;
|
|
534
|
+
if (s?.content.type === 'list')
|
|
535
|
+
before = s.content.items[op.index] ?? null;
|
|
536
|
+
else if (s?.content.type === 'map') {
|
|
537
|
+
const e = s.content.entries[op.index];
|
|
538
|
+
before = e ? `${e.key}: ${e.value}` : null;
|
|
539
|
+
}
|
|
540
|
+
return { op: op.op, section: op.section, index: op.index, before };
|
|
541
|
+
}
|
|
542
|
+
case 'ADD_SECTION':
|
|
543
|
+
return { op: op.op, key: op.key, before: null };
|
|
544
|
+
case 'REPLACE_SECTION': {
|
|
545
|
+
const s = doc.sections.find(s => s.key === op.key);
|
|
546
|
+
return { op: op.op, key: op.key, before: s?.content ?? null };
|
|
547
|
+
}
|
|
548
|
+
case 'REMOVE_SECTION': {
|
|
549
|
+
const s = doc.sections.find(s => s.key === op.key);
|
|
550
|
+
return { op: op.op, key: op.key, before: s?.content ?? null };
|
|
551
|
+
}
|
|
552
|
+
case 'UPDATE_METRIC': {
|
|
553
|
+
const s = doc.sections.find(s => s.key === op.section);
|
|
554
|
+
let before = null;
|
|
555
|
+
if (s?.content.type === 'metric') {
|
|
556
|
+
const entry = s.content.entries.find(e => e.key === op.key);
|
|
557
|
+
before = entry?.value ?? null;
|
|
558
|
+
}
|
|
559
|
+
return { op: op.op, section: op.section, key: op.key, before };
|
|
560
|
+
}
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
function captureOpAfter(patched, op) {
|
|
564
|
+
switch (op.op) {
|
|
565
|
+
case 'ADD_BULLET': return op.value;
|
|
566
|
+
case 'REPLACE_BULLET': return op.value;
|
|
567
|
+
case 'REMOVE_BULLET': return null;
|
|
568
|
+
case 'ADD_SECTION': {
|
|
569
|
+
const s = patched.sections.find(s => s.key === op.key);
|
|
570
|
+
return s?.content ?? null;
|
|
571
|
+
}
|
|
572
|
+
case 'REPLACE_SECTION': {
|
|
573
|
+
const s = patched.sections.find(s => s.key === op.key);
|
|
574
|
+
return s?.content ?? null;
|
|
575
|
+
}
|
|
576
|
+
case 'REMOVE_SECTION': return null;
|
|
577
|
+
case 'UPDATE_METRIC': return op.value;
|
|
578
|
+
}
|
|
579
|
+
}
|
|
504
580
|
// ============================================================================
|
|
505
581
|
// adf patch
|
|
506
582
|
// ============================================================================
|
|
@@ -531,15 +607,32 @@ function adfPatch(options, args) {
|
|
|
531
607
|
}
|
|
532
608
|
const input = fs.readFileSync(filePath, 'utf-8');
|
|
533
609
|
const doc = (0, adf_1.parseAdf)(input);
|
|
610
|
+
// Capture before-values from the original doc (before any mutation)
|
|
611
|
+
const befores = ops.map(op => captureOpBefore(doc, op));
|
|
534
612
|
try {
|
|
535
613
|
const patched = (0, adf_1.applyPatches)(doc, ops);
|
|
536
614
|
const output = (0, adf_1.formatAdf)(patched);
|
|
537
615
|
fs.writeFileSync(filePath, output);
|
|
616
|
+
const changes = befores.map((b, i) => ({
|
|
617
|
+
...b,
|
|
618
|
+
after: captureOpAfter(patched, ops[i]),
|
|
619
|
+
}));
|
|
538
620
|
if (options.format === 'json') {
|
|
539
|
-
console.log(JSON.stringify({ file: filePath, patched: true, opsApplied: ops.length }, null, 2));
|
|
621
|
+
console.log(JSON.stringify({ file: filePath, patched: true, opsApplied: ops.length, changes }, null, 2));
|
|
540
622
|
}
|
|
541
623
|
else {
|
|
542
624
|
console.log(` [ok] Applied ${ops.length} patch${ops.length === 1 ? '' : 'es'} to ${filePath}`);
|
|
625
|
+
for (const c of changes) {
|
|
626
|
+
if (c.op === 'UPDATE_METRIC') {
|
|
627
|
+
console.log(` ${c.section}.${c.key}: ${c.before} → ${c.after}`);
|
|
628
|
+
}
|
|
629
|
+
else if (c.op === 'REPLACE_BULLET' || c.op === 'REMOVE_BULLET') {
|
|
630
|
+
console.log(` ${c.op} [${c.index}] in ${c.section}: "${c.before}" → ${c.after === null ? '(removed)' : `"${c.after}"`}`);
|
|
631
|
+
}
|
|
632
|
+
else if (c.op === 'ADD_BULLET') {
|
|
633
|
+
console.log(` ${c.op} in ${c.section}: "${c.after}"`);
|
|
634
|
+
}
|
|
635
|
+
}
|
|
543
636
|
}
|
|
544
637
|
return index_1.EXIT_CODE.SUCCESS;
|
|
545
638
|
}
|
package/dist/commands/adf.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adf.js","sourceRoot":"","sources":["../../src/commands/adf.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"adf.js","sourceRoot":"","sources":["../../src/commands/adf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA+D3C,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../src/commands/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AA+D3C,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAmb3F"}
|
|
@@ -67,6 +67,7 @@ async function bootstrapCommand(options, args) {
|
|
|
67
67
|
const securitySensitive = args.includes('--security-sensitive');
|
|
68
68
|
const nonInteractive = options.yes;
|
|
69
69
|
const setupOverwrite = options.yes || force;
|
|
70
|
+
const leanMode = (0, flags_1.getFlag)(args, '--mode') === 'lean';
|
|
70
71
|
if (ciTarget && ciTarget !== 'github') {
|
|
71
72
|
throw new index_1.CLIError(`Unsupported CI target: ${ciTarget}. Supported: github`);
|
|
72
73
|
}
|
|
@@ -96,7 +97,7 @@ async function bootstrapCommand(options, args) {
|
|
|
96
97
|
warnings++;
|
|
97
98
|
}
|
|
98
99
|
if (options.format === 'text') {
|
|
99
|
-
console.log(
|
|
100
|
+
console.log(`[1/${leanMode ? '4' : '7'}] Detecting stack...`);
|
|
100
101
|
console.log(` Stack: ${selectedPreset} (${detection.confidence} confidence)`);
|
|
101
102
|
console.log(` Monorepo: ${detection.monorepo ? 'yes' : 'no'}${detection.monorepo && detection.signals.hasPnpm ? ' (pnpm workspace)' : ''}`);
|
|
102
103
|
if (detection.warnings.length > 0) {
|
|
@@ -118,7 +119,7 @@ async function bootstrapCommand(options, args) {
|
|
|
118
119
|
result.steps.push(setupResult.step);
|
|
119
120
|
warnings += setupResult.step.warnings.length;
|
|
120
121
|
if (options.format === 'text') {
|
|
121
|
-
console.log(
|
|
122
|
+
console.log(`[2/${leanMode ? '4' : '7'}] Setting up governance...`);
|
|
122
123
|
for (const f of (setupResult.step.details.created || [])) {
|
|
123
124
|
console.log(` Created ${f}`);
|
|
124
125
|
}
|
|
@@ -134,7 +135,7 @@ async function bootstrapCommand(options, args) {
|
|
|
134
135
|
result.steps.push(adfResult.step);
|
|
135
136
|
warnings += adfResult.step.warnings.length;
|
|
136
137
|
if (options.format === 'text') {
|
|
137
|
-
console.log(
|
|
138
|
+
console.log(`[3/${leanMode ? '4' : '7'}] Initializing ADF context...`);
|
|
138
139
|
for (const f of (adfResult.step.details.files || [])) {
|
|
139
140
|
console.log(` Created ${f}`);
|
|
140
141
|
}
|
|
@@ -202,10 +203,12 @@ async function bootstrapCommand(options, args) {
|
|
|
202
203
|
// ========================================================================
|
|
203
204
|
// Phase 4: Migrate Agent Configs
|
|
204
205
|
// ========================================================================
|
|
205
|
-
const migrateResult =
|
|
206
|
+
const migrateResult = leanMode
|
|
207
|
+
? { step: { name: 'migrate', status: 'skip', details: { reason: 'lean mode' }, warnings: [] } }
|
|
208
|
+
: runMigratePhase(options, nonInteractive);
|
|
206
209
|
result.steps.push(migrateResult.step);
|
|
207
210
|
warnings += migrateResult.step.warnings.length;
|
|
208
|
-
if (options.format === 'text') {
|
|
211
|
+
if (options.format === 'text' && !leanMode) {
|
|
209
212
|
console.log('[4/7] Migrating agent configs...');
|
|
210
213
|
if (migrateResult.step.status === 'skip') {
|
|
211
214
|
console.log(' Skipped (no migratable files)');
|
|
@@ -224,10 +227,12 @@ async function bootstrapCommand(options, args) {
|
|
|
224
227
|
// ========================================================================
|
|
225
228
|
// Phase 5: Install
|
|
226
229
|
// ========================================================================
|
|
227
|
-
const installResult =
|
|
230
|
+
const installResult = leanMode
|
|
231
|
+
? { step: { name: 'install', status: 'skip', details: { reason: 'lean mode' }, warnings: [] } }
|
|
232
|
+
: runInstallPhase(options, skipInstall);
|
|
228
233
|
result.steps.push(installResult.step);
|
|
229
234
|
warnings += installResult.step.warnings.length;
|
|
230
|
-
if (options.format === 'text') {
|
|
235
|
+
if (options.format === 'text' && !leanMode) {
|
|
231
236
|
console.log('[5/7] Installing dependencies...');
|
|
232
237
|
if (skipInstall) {
|
|
233
238
|
console.log(' Skipped (--skip-install)');
|
|
@@ -253,10 +258,12 @@ async function bootstrapCommand(options, args) {
|
|
|
253
258
|
// ========================================================================
|
|
254
259
|
// Phase 6: Populate (#89)
|
|
255
260
|
// ========================================================================
|
|
256
|
-
const populateResult =
|
|
261
|
+
const populateResult = leanMode
|
|
262
|
+
? { step: { name: 'populate', status: 'skip', details: { reason: 'lean mode' }, warnings: [] } }
|
|
263
|
+
: await runPopulatePhase(options);
|
|
257
264
|
result.steps.push(populateResult.step);
|
|
258
265
|
warnings += populateResult.step.warnings.length;
|
|
259
|
-
if (options.format === 'text') {
|
|
266
|
+
if (options.format === 'text' && !leanMode) {
|
|
260
267
|
console.log('[6/7] Auto-populating ADF modules...');
|
|
261
268
|
const populated = populateResult.step.details.populated;
|
|
262
269
|
const skipped = populateResult.step.details.skipped;
|
|
@@ -275,7 +282,7 @@ async function bootstrapCommand(options, args) {
|
|
|
275
282
|
result.steps.push(doctorResult.step);
|
|
276
283
|
warnings += doctorResult.step.warnings.length;
|
|
277
284
|
if (options.format === 'text') {
|
|
278
|
-
console.log('
|
|
285
|
+
console.log(`[${leanMode ? '4/4' : '7/7'}] Running health check...`);
|
|
279
286
|
if (skipDoctor) {
|
|
280
287
|
console.log(' Skipped (--skip-doctor)');
|
|
281
288
|
}
|
|
@@ -293,38 +300,70 @@ async function bootstrapCommand(options, args) {
|
|
|
293
300
|
// ========================================================================
|
|
294
301
|
const failCount = result.steps.filter(s => s.status === 'fail').length;
|
|
295
302
|
result.status = failCount === 0 ? 'success' : failCount < result.steps.length ? 'partial' : 'failure';
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
303
|
+
if (leanMode) {
|
|
304
|
+
const leanPm = detectPackageManagerFromLockfiles();
|
|
305
|
+
result.nextSteps.push({
|
|
306
|
+
cmd: `${leanPm} install`,
|
|
307
|
+
required: true,
|
|
308
|
+
reason: 'Install dependencies (skipped in lean mode)',
|
|
309
|
+
});
|
|
310
|
+
if (inGitRepo) {
|
|
311
|
+
result.nextSteps.push({
|
|
312
|
+
cmd: 'charter hook install --commit-msg',
|
|
313
|
+
required: false,
|
|
314
|
+
reason: 'Install commit-msg hook for trailer enforcement',
|
|
315
|
+
});
|
|
316
|
+
result.nextSteps.push({
|
|
317
|
+
cmd: 'charter hook install --pre-commit',
|
|
318
|
+
required: false,
|
|
319
|
+
reason: 'Install pre-commit hook for ADF evidence gate',
|
|
320
|
+
});
|
|
321
|
+
}
|
|
322
|
+
result.nextSteps.push({
|
|
323
|
+
cmd: 'charter serve',
|
|
324
|
+
required: false,
|
|
325
|
+
reason: 'Enable real-time governance via MCP (wire in .mcp.json or .claude/settings.json)',
|
|
326
|
+
});
|
|
327
|
+
}
|
|
328
|
+
else {
|
|
329
|
+
// Build next steps
|
|
330
|
+
result.nextSteps.push({
|
|
331
|
+
cmd: 'charter serve # start MCP server for Claude Code / Codex / Cursor integration',
|
|
332
|
+
required: false,
|
|
333
|
+
reason: 'Enable real-time governance via MCP (wire in .mcp.json or .claude/settings.json)',
|
|
334
|
+
});
|
|
314
335
|
result.nextSteps.push({
|
|
315
|
-
cmd: 'charter
|
|
336
|
+
cmd: 'Review .charter/patterns/ and customize for your stack',
|
|
316
337
|
required: false,
|
|
317
|
-
reason: '
|
|
338
|
+
reason: 'Customize blessed stack patterns',
|
|
318
339
|
});
|
|
319
340
|
result.nextSteps.push({
|
|
320
|
-
cmd: 'charter
|
|
341
|
+
cmd: 'git add .charter .ai CLAUDE.md .cursorrules agents.md && git commit -m "chore: bootstrap charter governance"',
|
|
321
342
|
required: false,
|
|
322
|
-
reason: '
|
|
343
|
+
reason: 'Commit governance baseline',
|
|
323
344
|
});
|
|
345
|
+
// Gate hook next-steps on being inside a git repo
|
|
346
|
+
if (inGitRepo) {
|
|
347
|
+
result.nextSteps.push({
|
|
348
|
+
cmd: 'charter hook install --pre-commit',
|
|
349
|
+
required: false,
|
|
350
|
+
reason: 'Install pre-commit hook for ADF evidence gate',
|
|
351
|
+
});
|
|
352
|
+
result.nextSteps.push({
|
|
353
|
+
cmd: 'charter hook install --commit-msg',
|
|
354
|
+
required: false,
|
|
355
|
+
reason: 'Install commit-msg hook for trailer enforcement',
|
|
356
|
+
});
|
|
357
|
+
result.nextSteps.push({
|
|
358
|
+
cmd: 'echo \'charter context --write\' >> .git/hooks/post-commit && chmod +x .git/hooks/post-commit',
|
|
359
|
+
required: false,
|
|
360
|
+
reason: 'Keep .charter/context.md fresh after each commit (charter brief auto-refresh)',
|
|
361
|
+
});
|
|
362
|
+
}
|
|
324
363
|
result.nextSteps.push({
|
|
325
|
-
cmd: '
|
|
364
|
+
cmd: 'charter hook print --claude # paste output into .claude/settings.json → hooks.UserPromptSubmit',
|
|
326
365
|
required: false,
|
|
327
|
-
reason: '
|
|
366
|
+
reason: 'Auto-refresh context at session start so charter_context returns live state, not a cold snapshot, before the agent acts',
|
|
328
367
|
});
|
|
329
368
|
}
|
|
330
369
|
// ========================================================================
|
|
@@ -550,6 +589,16 @@ function runSetupPhase(options, selectedPreset, detection, contexts, ciTarget, p
|
|
|
550
589
|
if (manifestApplied.legacy.dependencies.updated) {
|
|
551
590
|
updated.push('package.json (devDependencies)');
|
|
552
591
|
}
|
|
592
|
+
const mcpConfig = ensureProjectMcpConfig('.ai', force);
|
|
593
|
+
if (mcpConfig.created) {
|
|
594
|
+
created.push('.mcp.json');
|
|
595
|
+
}
|
|
596
|
+
else if (mcpConfig.updated) {
|
|
597
|
+
updated.push('.mcp.json');
|
|
598
|
+
}
|
|
599
|
+
if (mcpConfig.warning) {
|
|
600
|
+
warnings.push(mcpConfig.warning);
|
|
601
|
+
}
|
|
553
602
|
return {
|
|
554
603
|
step: {
|
|
555
604
|
name: 'setup',
|
|
@@ -572,6 +621,65 @@ function runSetupPhase(options, selectedPreset, detection, contexts, ciTarget, p
|
|
|
572
621
|
};
|
|
573
622
|
}
|
|
574
623
|
}
|
|
624
|
+
function ensureProjectMcpConfig(aiDir, force) {
|
|
625
|
+
const configPath = path.resolve('.mcp.json');
|
|
626
|
+
const desiredServer = {
|
|
627
|
+
command: 'npx',
|
|
628
|
+
args: ['@stackbilt/cli', 'serve', '--ai-dir', path.resolve(aiDir)],
|
|
629
|
+
};
|
|
630
|
+
const configExists = fs.existsSync(configPath);
|
|
631
|
+
let root = {};
|
|
632
|
+
if (configExists) {
|
|
633
|
+
try {
|
|
634
|
+
const parsed = JSON.parse(fs.readFileSync(configPath, 'utf-8'));
|
|
635
|
+
if (!parsed || typeof parsed !== 'object' || Array.isArray(parsed)) {
|
|
636
|
+
return {
|
|
637
|
+
created: false,
|
|
638
|
+
updated: false,
|
|
639
|
+
warning: 'Skipped MCP config update: .mcp.json must contain a JSON object at the top level.',
|
|
640
|
+
};
|
|
641
|
+
}
|
|
642
|
+
root = { ...parsed };
|
|
643
|
+
}
|
|
644
|
+
catch (err) {
|
|
645
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
646
|
+
return {
|
|
647
|
+
created: false,
|
|
648
|
+
updated: false,
|
|
649
|
+
warning: `Skipped MCP config update: .mcp.json is not valid JSON (${msg}).`,
|
|
650
|
+
};
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
const mcpServersRaw = root.mcpServers;
|
|
654
|
+
if (mcpServersRaw !== undefined && (typeof mcpServersRaw !== 'object' || mcpServersRaw === null || Array.isArray(mcpServersRaw))) {
|
|
655
|
+
return {
|
|
656
|
+
created: false,
|
|
657
|
+
updated: false,
|
|
658
|
+
warning: 'Skipped MCP config update: .mcp.json#mcpServers must be a JSON object.',
|
|
659
|
+
};
|
|
660
|
+
}
|
|
661
|
+
const mcpServers = { ...(mcpServersRaw ?? {}) };
|
|
662
|
+
const existingCharter = mcpServers.charter;
|
|
663
|
+
const sameServer = JSON.stringify(existingCharter) === JSON.stringify(desiredServer);
|
|
664
|
+
if (sameServer) {
|
|
665
|
+
return { created: false, updated: false };
|
|
666
|
+
}
|
|
667
|
+
if (existingCharter !== undefined && !force) {
|
|
668
|
+
return {
|
|
669
|
+
created: false,
|
|
670
|
+
updated: false,
|
|
671
|
+
warning: 'Skipped MCP config update: .mcp.json already defines mcpServers.charter (use --force to replace it).',
|
|
672
|
+
};
|
|
673
|
+
}
|
|
674
|
+
mcpServers.charter = desiredServer;
|
|
675
|
+
root.mcpServers = mcpServers;
|
|
676
|
+
fs.writeFileSync(configPath, JSON.stringify(root, null, 2) + '\n');
|
|
677
|
+
const absolutePathWarning = 'Generated .mcp.json uses an absolute --ai-dir path. Update it if you share this file across machines.';
|
|
678
|
+
if (!configExists) {
|
|
679
|
+
return { created: true, updated: false, warning: absolutePathWarning };
|
|
680
|
+
}
|
|
681
|
+
return { created: false, updated: true, warning: absolutePathWarning };
|
|
682
|
+
}
|
|
575
683
|
// ============================================================================
|
|
576
684
|
// Phase 3: ADF Init
|
|
577
685
|
// ============================================================================
|
|
@@ -1050,6 +1158,9 @@ function isAlreadyThinPointer(filePath) {
|
|
|
1050
1158
|
* Prompt user for a yes/no answer via readline.
|
|
1051
1159
|
*/
|
|
1052
1160
|
function promptYesNo(question) {
|
|
1161
|
+
if (!process.stdin.isTTY) {
|
|
1162
|
+
return Promise.resolve(false);
|
|
1163
|
+
}
|
|
1053
1164
|
const rl = readline.createInterface({
|
|
1054
1165
|
input: process.stdin,
|
|
1055
1166
|
output: process.stdout,
|