mcp-ai-agent-guidelines 0.15.3 → 0.15.4

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 (104) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +63 -1
  3. package/dist/cli/script-runner.d.ts +10 -0
  4. package/dist/cli/script-runner.d.ts.map +1 -1
  5. package/dist/cli/script-runner.js +31 -0
  6. package/dist/cli/script-runner.js.map +1 -1
  7. package/dist/cli.d.ts +1 -0
  8. package/dist/cli.d.ts.map +1 -1
  9. package/dist/cli.js +179 -3
  10. package/dist/cli.js.map +1 -1
  11. package/dist/config/orchestration-config.d.ts +9 -0
  12. package/dist/config/orchestration-config.d.ts.map +1 -1
  13. package/dist/config/orchestration-config.js +29 -5
  14. package/dist/config/orchestration-config.js.map +1 -1
  15. package/dist/contracts/generated.d.ts +1 -1
  16. package/dist/contracts/generated.d.ts.map +1 -1
  17. package/dist/generated/instructions/adapt.js +1 -1
  18. package/dist/generated/instructions/adapt.js.map +1 -1
  19. package/dist/generated/instructions/bootstrap.d.ts.map +1 -1
  20. package/dist/generated/instructions/bootstrap.js +1 -0
  21. package/dist/generated/instructions/bootstrap.js.map +1 -1
  22. package/dist/generated/instructions/meta-routing.js +3 -3
  23. package/dist/generated/instructions/meta-routing.js.map +1 -1
  24. package/dist/generated/instructions/onboard_project.js +2 -2
  25. package/dist/generated/instructions/onboard_project.js.map +1 -1
  26. package/dist/index.d.ts.map +1 -1
  27. package/dist/index.js +3 -3
  28. package/dist/index.js.map +1 -1
  29. package/dist/instructions/instruction-specs.d.ts +3 -1
  30. package/dist/instructions/instruction-specs.d.ts.map +1 -1
  31. package/dist/instructions/instruction-specs.js +9 -7
  32. package/dist/instructions/instruction-specs.js.map +1 -1
  33. package/dist/memory/coherence-scanner.d.ts +7 -0
  34. package/dist/memory/coherence-scanner.d.ts.map +1 -1
  35. package/dist/memory/coherence-scanner.js +6 -2
  36. package/dist/memory/coherence-scanner.js.map +1 -1
  37. package/dist/memory/toon-interface.d.ts +14 -6
  38. package/dist/memory/toon-interface.d.ts.map +1 -1
  39. package/dist/memory/toon-interface.js +45 -4
  40. package/dist/memory/toon-interface.js.map +1 -1
  41. package/dist/onboarding/wizard.d.ts +29 -0
  42. package/dist/onboarding/wizard.d.ts.map +1 -1
  43. package/dist/onboarding/wizard.js +102 -1
  44. package/dist/onboarding/wizard.js.map +1 -1
  45. package/dist/runtime/session-store-utils.d.ts +34 -0
  46. package/dist/runtime/session-store-utils.d.ts.map +1 -1
  47. package/dist/runtime/session-store-utils.js +93 -3
  48. package/dist/runtime/session-store-utils.js.map +1 -1
  49. package/dist/tests/cli/cli.test.js +1 -0
  50. package/dist/tests/cli/cli.test.js.map +1 -1
  51. package/dist/tests/cli/hooks.test.d.ts +2 -0
  52. package/dist/tests/cli/hooks.test.d.ts.map +1 -0
  53. package/dist/tests/cli/hooks.test.js +132 -0
  54. package/dist/tests/cli/hooks.test.js.map +1 -0
  55. package/dist/tests/cli/onboard.test.d.ts +2 -0
  56. package/dist/tests/cli/onboard.test.d.ts.map +1 -0
  57. package/dist/tests/cli/onboard.test.js +201 -0
  58. package/dist/tests/cli/onboard.test.js.map +1 -0
  59. package/dist/tests/cli/script-runner.test.js +22 -1
  60. package/dist/tests/cli/script-runner.test.js.map +1 -1
  61. package/dist/tests/cli-script-runner.test.js +35 -1
  62. package/dist/tests/cli-script-runner.test.js.map +1 -1
  63. package/dist/tests/config/orchestration-config-bootstrap-failure.test.js +13 -31
  64. package/dist/tests/config/orchestration-config-bootstrap-failure.test.js.map +1 -1
  65. package/dist/tests/config/orchestration-config.test.js +5 -3
  66. package/dist/tests/config/orchestration-config.test.js.map +1 -1
  67. package/dist/tests/mcp/tool-coverage-matrix.test.js +1 -3
  68. package/dist/tests/mcp/tool-coverage-matrix.test.js.map +1 -1
  69. package/dist/tests/memory/toon-interface.test.js +57 -0
  70. package/dist/tests/memory/toon-interface.test.js.map +1 -1
  71. package/dist/tests/onboarding/wizard.test.js +89 -0
  72. package/dist/tests/onboarding/wizard.test.js.map +1 -1
  73. package/dist/tests/runtime/mcp-server.test.js +9 -9
  74. package/dist/tests/runtime/mcp-server.test.js.map +1 -1
  75. package/dist/tests/runtime/session-store-utils.test.js +123 -4
  76. package/dist/tests/runtime/session-store-utils.test.js.map +1 -1
  77. package/dist/tests/tools/memory-tools.test.js +20 -0
  78. package/dist/tests/tools/memory-tools.test.js.map +1 -1
  79. package/dist/tests/tools/session-tools.test.js +16 -1
  80. package/dist/tests/tools/session-tools.test.js.map +1 -1
  81. package/dist/tests/tools/shared/tool-surface-manifest.test.js +52 -13
  82. package/dist/tests/tools/shared/tool-surface-manifest.test.js.map +1 -1
  83. package/dist/tests/tools/snapshot-tools.test.js +1 -0
  84. package/dist/tests/tools/snapshot-tools.test.js.map +1 -1
  85. package/dist/tests/validation/index.test.js +1 -0
  86. package/dist/tests/validation/index.test.js.map +1 -1
  87. package/dist/tests/validation/input-guards.test.js +3 -2
  88. package/dist/tests/validation/input-guards.test.js.map +1 -1
  89. package/dist/tools/memory-tools.d.ts.map +1 -1
  90. package/dist/tools/memory-tools.js +11 -0
  91. package/dist/tools/memory-tools.js.map +1 -1
  92. package/dist/tools/session-tools.d.ts.map +1 -1
  93. package/dist/tools/session-tools.js +11 -0
  94. package/dist/tools/session-tools.js.map +1 -1
  95. package/dist/tools/shared/tool-surface-manifest.d.ts +20 -1
  96. package/dist/tools/shared/tool-surface-manifest.d.ts.map +1 -1
  97. package/dist/tools/shared/tool-surface-manifest.js +30 -2
  98. package/dist/tools/shared/tool-surface-manifest.js.map +1 -1
  99. package/dist/validation/environment.d.ts.map +1 -1
  100. package/dist/validation/environment.js +4 -3
  101. package/dist/validation/environment.js.map +1 -1
  102. package/dist/validation/input-guards.js +2 -2
  103. package/dist/validation/input-guards.js.map +1 -1
  104. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -8,6 +8,17 @@ and [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
8
8
 
9
9
  ## [Unreleased]
10
10
 
11
+ ## [0.15.4] - 2026-04-24
12
+ ### Changed
13
+ - streamline onboarding process and enhance memory interface initialization
14
+
15
+ ### Added
16
+ - enhance meta-routing instruction for better task classification and usage guidance
17
+
18
+ ### Fixed
19
+ - address all Copilot review comments from PR #1461 and add push-ready gate
20
+ - update changelog to include recent enhancements in onboarding and meta-routing instructions
21
+ - update changelog to reflect recent enhancements in onboarding and meta-routing instructions
11
22
  ## [0.15.3] - 2026-04-21
12
23
 
13
24
  _No notable changes recorded._
package/README.md CHANGED
@@ -356,9 +356,10 @@ Published package note: the npm package ships `dist/`, `README.md`, and `LICENSE
356
356
  | `HIDDEN_TOOLS` | `""` | Comma-separated list of tool names to exclude from ListTools |
357
357
  | `LOG_LEVEL` | `"info"` | Observability log level (`debug`, `info`, `warn`, `error`) |
358
358
  | `ALLOW_GOVERNANCE_SKILLS` | unset / `"false"` | Must be `true` to allow `gov-*` skills through `criticalSkillGuard` |
359
- | `ENABLE_ADAPTIVE_ROUTING` | unset / `"false"` | Must be `true` to allow `adapt-*` skills through `criticalSkillGuard` |
359
+ | `DISABLE_ADAPTIVE_ROUTING` | unset / `"false"` | Set to `true` to hide `routing-adapt` and block `adapt-*` skills; enabled by default (opt-out model) |
360
360
  | `ALLOW_INTENSIVE_SKILLS` | unset / `"false"` | Must be `true` to allow resource-intensive skills such as `bench-eval-suite`, `eval-prompt-bench`, `qm-path-integral-historian`, and `gr-spacetime-debt-metric` |
361
361
  | `ENABLE_PHYSICS_SKILLS` | unset / `"false"` | Required by input validation when physics skills are not otherwise authorized; physics skills also require conventional-evidence schema validation |
362
+ | `MCP_SLIM_MODE` | unset / `"false"` | Set to `true` to expose only the minimal surface: `task-bootstrap`, `meta-routing`, and `project-onboard` (useful for low-context agents) |
362
363
 
363
364
  ### Skill gates
364
365
 
@@ -366,6 +367,67 @@ Skill execution is gated by environment variables above. Physics skills (`qm-*`,
366
367
 
367
368
  ---
368
369
 
370
+ ## Auto Mode & Session Hooks
371
+
372
+ Long-running agent sessions (VS Code Copilot, Claude Code, Copilot CLI) can drift away from MCP tools after the first few exchanges. The **session hooks** mechanism counteracts this by injecting lightweight reminders at the IDE lifecycle boundaries.
373
+
374
+ ### What the hooks do
375
+
376
+ | Hook | Trigger | Effect |
377
+ |------|---------|--------|
378
+ | `SessionStart` | New chat session begins | Reminds agent to call `task-bootstrap` / `meta-routing` first |
379
+ | `PreToolUse` | Before every tool call | Detects consecutive non-MCP calls; nudges agent to re-orient |
380
+
381
+ ### Quick install
382
+
383
+ ```bash
384
+ # VS Code / Copilot CLI (writes to ~/.copilot/hooks/)
385
+ mcp-cli hooks setup --client vscode
386
+
387
+ # Claude Code (writes to ~/.claude/)
388
+ mcp-cli hooks setup --client claude-code
389
+
390
+ # Inspect what will be written without touching the filesystem
391
+ mcp-cli hooks print --client vscode
392
+ ```
393
+
394
+ ### Manual install
395
+
396
+ Copy the following JSON to `~/.copilot/hooks/mcp-ai-agent-guidelines-hooks.json`:
397
+
398
+ ```json
399
+ {
400
+ "hooks": {
401
+ "SessionStart": [
402
+ {
403
+ "type": "command",
404
+ "command": "mcp-ai-agent-guidelines hooks remind-session"
405
+ }
406
+ ],
407
+ "PreToolUse": [
408
+ {
409
+ "type": "command",
410
+ "command": "mcp-ai-agent-guidelines hooks remind-drift"
411
+ }
412
+ ]
413
+ }
414
+ }
415
+ ```
416
+
417
+ ### Routing guidance
418
+
419
+ The `.agent/rules/` directory contains IDE-readable routing tables:
420
+
421
+ - `.agent/rules/default.md` — universal symptom → tool pipeline table and anti-patterns
422
+ - `.agent/rules/copilot.md` — VS Code Copilot-specific quick reference and session-start checklist
423
+
424
+ These files are automatically picked up by Copilot's custom instructions system and by Serena's hook integration layer.
425
+
426
+ > [!NOTE]
427
+ > The published npm package does **not** include `.agent/rules/`. If you install from npm and want these routing rules, copy them from the GitHub repository into your workspace.
428
+
429
+ ---
430
+
369
431
  ## Contributing
370
432
 
371
433
  Contributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines, code standards, and the skill/instruction development workflow.
@@ -6,6 +6,15 @@ export declare function runCommand(cmd: string, args?: string[]): Promise<{
6
6
  }>;
7
7
  export declare function runShellScript(script: string): Promise<string>;
8
8
  export declare function withSpinner<T>(message: string, task: () => Promise<T>): Promise<T>;
9
+ /**
10
+ * Like `withSpinner`, but exposes an `update(text)` callback to the task so it
11
+ * can report incremental progress (e.g. per-file during a snapshot scan).
12
+ *
13
+ * On a real TTY the spinner label is updated on each call.
14
+ * In CI / non-TTY environments (where `ora` can't spin) each `update()` call
15
+ * writes a plain log line to stdout instead — safe for piped output.
16
+ */
17
+ export declare function withProgressSpinner<T>(message: string, task: (update: (text: string) => void) => Promise<T>): Promise<T>;
9
18
  export declare function promptForInput(message: string, defaultValue?: string): Promise<string>;
10
19
  export declare function promptForSelection<T extends string>(message: string, choices: T[]): Promise<T>;
11
20
  export declare function promptForConfirmation(message: string): Promise<boolean>;
@@ -18,6 +27,7 @@ export declare class ScriptRunner {
18
27
  }>;
19
28
  runShellScript(script: string): Promise<string>;
20
29
  withSpinner<T>(message: string, task: () => Promise<T>): Promise<T>;
30
+ withProgressSpinner<T>(message: string, task: (update: (text: string) => void) => Promise<T>): Promise<T>;
21
31
  promptForInput(message: string, defaultValue?: string): Promise<string>;
22
32
  promptForSelection<T extends string>(message: string, choices: T[]): Promise<T>;
23
33
  promptForConfirmation(message: string): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"script-runner.d.ts","sourceRoot":"","sources":["../../src/cli/script-runner.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC;AAEvB,wBAAsB,UAAU,CAC/B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGpE;AAED,wBAAsB,WAAW,CAAC,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACpB,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED,wBAAsB,cAAc,CACnC,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACxD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,EAAE,GACV,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAM7E;AAED,qBAAa,YAAY;IACxB,QAAQ,CAAC,OAAO,IAAK;IAEf,UAAU,CACf,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,GACb,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAI1D,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/C,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAInE,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;IAIZ,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACxC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,EAAE,GACV,OAAO,CAAC,CAAC,CAAC;IAIP,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG9D"}
1
+ {"version":3,"file":"script-runner.d.ts","sourceRoot":"","sources":["../../src/cli/script-runner.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,IAAI,CAAC;AAEvB,wBAAsB,UAAU,CAC/B,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,GACb,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,CAgB/D;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAGpE;AAED,wBAAsB,WAAW,CAAC,CAAC,EAClC,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GACpB,OAAO,CAAC,CAAC,CAAC,CAeZ;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,EAC1C,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,wBAAsB,cAAc,CACnC,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC,CAMjB;AAED,wBAAsB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACxD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,EAAE,GACV,OAAO,CAAC,CAAC,CAAC,CASZ;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAM7E;AAED,qBAAa,YAAY;IACxB,QAAQ,CAAC,OAAO,IAAK;IAEf,UAAU,CACf,GAAG,EAAE,MAAM,EACX,IAAI,CAAC,EAAE,MAAM,EAAE,GACb,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAI1D,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI/C,WAAW,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;IAInE,mBAAmB,CAAC,CAAC,EAC1B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAClD,OAAO,CAAC,CAAC,CAAC;IAIP,cAAc,CACnB,OAAO,EAAE,MAAM,EACf,YAAY,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,MAAM,CAAC;IAIZ,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACxC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,EAAE,GACV,OAAO,CAAC,CAAC,CAAC;IAIP,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG9D"}
@@ -42,6 +42,34 @@ export async function withSpinner(message, task) {
42
42
  throw err;
43
43
  }
44
44
  }
45
+ /**
46
+ * Like `withSpinner`, but exposes an `update(text)` callback to the task so it
47
+ * can report incremental progress (e.g. per-file during a snapshot scan).
48
+ *
49
+ * On a real TTY the spinner label is updated on each call.
50
+ * In CI / non-TTY environments (where `ora` can't spin) each `update()` call
51
+ * writes a plain log line to stdout instead — safe for piped output.
52
+ */
53
+ export async function withProgressSpinner(message, task) {
54
+ const isInteractive = process.stdout.isTTY === true;
55
+ const spinner = isInteractive ? ora(message).start() : null;
56
+ const update = spinner
57
+ ? (text) => {
58
+ spinner.text = text;
59
+ }
60
+ : (text) => {
61
+ process.stdout.write(`${text}\n`);
62
+ };
63
+ try {
64
+ const result = await task(update);
65
+ spinner?.succeed(message);
66
+ return result;
67
+ }
68
+ catch (err) {
69
+ spinner?.fail(message);
70
+ throw err;
71
+ }
72
+ }
45
73
  export async function promptForInput(message, defaultValue) {
46
74
  try {
47
75
  return await input({ message, default: defaultValue });
@@ -80,6 +108,9 @@ export class ScriptRunner {
80
108
  async withSpinner(message, task) {
81
109
  return withSpinner(message, task);
82
110
  }
111
+ async withProgressSpinner(message, task) {
112
+ return withProgressSpinner(message, task);
113
+ }
83
114
  async promptForInput(message, defaultValue) {
84
115
  return promptForInput(message, defaultValue);
85
116
  }
@@ -1 +1 @@
1
- {"version":3,"file":"script-runner.js","sourceRoot":"","sources":["../../src/cli/script-runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script-runner.js","sourceRoot":"","sources":["../../src/cli/script-runner.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -25,6 +25,7 @@ export declare class McpAgentCli {
25
25
  private setupCommands;
26
26
  private setupOnboardingCommands;
27
27
  private setupOrchestrationCommands;
28
+ private setupHooksCommands;
28
29
  private setupMemoryCommands;
29
30
  private setupStatusCommands;
30
31
  private setupReportingCommands;
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAWtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACN,wBAAwB,EAExB,MAAM,wCAAwC,CAAC;AAChD,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAOxE,UAAU,UAAU;IACnB,eAAe,EAAE,mBAAmB,CAAC;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,mBAAmB,EAAE,wBAAwB,CAAC;IAC9C,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACjB;AAWD;;GAEG;AACH,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,OAAO,CAAa;gBAEhB,gBAAgB,GAAE,OAAO,CAAC,UAAU,CAAM;IActD,OAAO,CAAC,aAAa;IA8BrB,OAAO,CAAC,uBAAuB;IAmI/B,OAAO,CAAC,0BAA0B;IAyElC,OAAO,CAAC,mBAAmB;IAmJ3B,OAAO,CAAC,mBAAmB;IAgG3B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,gBAAgB;IA2ElB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE;CAQzB;AAGD,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAWtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EACN,wBAAwB,EAExB,MAAM,wCAAwC,CAAC;AAChD,OAAO,gBAA0C,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAOxE,UAAU,UAAU;IACnB,eAAe,EAAE,mBAAmB,CAAC;IACrC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,mBAAmB,EAAE,wBAAwB,CAAC;IAC9C,iBAAiB,EAAE,oBAAoB,CAAC;IACxC,YAAY,EAAE,YAAY,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;CACjB;AAWD;;GAEG;AACH,qBAAa,WAAW;IACvB,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,OAAO,CAAa;gBAEhB,gBAAgB,GAAE,OAAO,CAAC,UAAU,CAAM;IActD,OAAO,CAAC,aAAa;IA+BrB,OAAO,CAAC,uBAAuB;IAgM/B,OAAO,CAAC,0BAA0B;IAyElC,OAAO,CAAC,kBAAkB;IAuM1B,OAAO,CAAC,mBAAmB;IAmJ3B,OAAO,CAAC,mBAAmB;IAgG3B,OAAO,CAAC,sBAAsB;IAK9B,OAAO,CAAC,gBAAgB;IA2ElB,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE;CAQzB;AAGD,eAAe,WAAW,CAAC"}
package/dist/cli.js CHANGED
@@ -53,6 +53,7 @@ export class McpAgentCli {
53
53
  // Onboarding commands
54
54
  this.setupOnboardingCommands();
55
55
  this.setupOrchestrationCommands();
56
+ this.setupHooksCommands();
56
57
  // Reporting and presentation commands
57
58
  this.setupReportingCommands();
58
59
  // Memory/TOON commands
@@ -69,16 +70,25 @@ export class McpAgentCli {
69
70
  onboard
70
71
  .command("init")
71
72
  .description("Run interactive onboarding wizard")
72
- .action(async () => {
73
+ .option("-y, --yes", "Skip interactive prompts and accept built-in defaults (CI-safe)", false)
74
+ .option("-f, --force", "Overwrite existing configuration without confirmation (use with caution)", false)
75
+ .action(async (opts) => {
73
76
  try {
74
77
  const hasExisting = await this.context.onboardingWizard.checkExistingSetup();
75
- if (hasExisting) {
78
+ if (hasExisting && !opts.force) {
76
79
  console.log(chalk.yellow("⚠️ Existing configuration found."));
77
80
  console.log("Use 'onboard status' to view current setup or 'onboard reset' to reconfigure.");
81
+ console.log("Pass --force to overwrite the existing configuration.");
78
82
  return;
79
83
  }
80
- const config = await this.context.scriptRunner.withSpinner("Running onboarding wizard", () => this.context.onboardingWizard.runInteractiveSetup());
84
+ const config = opts.yes
85
+ ? await this.context.onboardingWizard.runSetupWithDefaults()
86
+ : await this.context.onboardingWizard.runInteractiveSetup();
81
87
  await this.context.scriptRunner.withSpinner("Saving onboarding configuration", () => this.context.onboardingWizard.saveConfiguration(config));
88
+ await this.context.scriptRunner.withProgressSpinner("Taking initial snapshot", (update) => this.context.memoryInterface.refresh((filePath, index, total) => {
89
+ update(`Scanning files… ${index + 1}/${total} ${filePath}`);
90
+ }));
91
+ await this.context.onboardingWizard.emitSkillHooks();
82
92
  console.log(chalk.green("\n🎉 Setup complete! You're ready to use MCP AI Agent Guidelines v2."));
83
93
  console.log(chalk.cyan("Next steps:"));
84
94
  console.log(" - Use 'mcp-ai-agent-guidelines status' to view your configuration");
@@ -159,6 +169,29 @@ export class McpAgentCli {
159
169
  console.error(chalk.red(`Reset failed: ${toErrorMessage(error)}`));
160
170
  }
161
171
  });
172
+ onboard
173
+ .command("skills")
174
+ .description("(Re)generate IDE skill hooks for every public instruction")
175
+ .option("--global", "Write to user-home skill directories instead of workspace-local ones", false)
176
+ .option("--target <client>", "Which IDE client(s) to target: copilot | claude | codex | all (default: all)", "all")
177
+ .action(async (opts) => {
178
+ const ALL_CLIENTS = ["copilot", "claude", "codex"];
179
+ const validClients = new Set(ALL_CLIENTS);
180
+ const target = opts.target.toLowerCase();
181
+ if (target !== "all" && !validClients.has(target)) {
182
+ console.error(chalk.red(`Invalid --target "${opts.target}". Valid values: copilot, claude, codex, all`));
183
+ process.exit(1);
184
+ }
185
+ const clients = target === "all" ? ALL_CLIENTS : [target];
186
+ try {
187
+ const count = await this.context.onboardingWizard.emitSkillHooks(opts.global, clients);
188
+ console.log(chalk.green(`✅ Emitted ${count} skill hook file(s)`));
189
+ }
190
+ catch (error) {
191
+ console.error(chalk.red(`Skill hook generation failed: ${toErrorMessage(error)}`));
192
+ process.exit(1);
193
+ }
194
+ });
162
195
  }
163
196
  setupOrchestrationCommands() {
164
197
  const orchestration = this.program
@@ -202,6 +235,149 @@ export class McpAgentCli {
202
235
  }
203
236
  });
204
237
  }
238
+ setupHooksCommands() {
239
+ const hooks = this.program
240
+ .command("hooks")
241
+ .description("Manage IDE session hooks to prevent agent drift (SessionStart / PreToolUse)");
242
+ /** Supported clients and where their hook JSON lives. */
243
+ const HOOK_PATHS = {
244
+ vscode: {
245
+ dir: [".copilot", "hooks"],
246
+ file: "mcp-ai-agent-guidelines-hooks.json",
247
+ },
248
+ "copilot-cli": {
249
+ dir: [".copilot", "hooks"],
250
+ file: "mcp-ai-agent-guidelines-hooks.json",
251
+ },
252
+ "claude-code": {
253
+ dir: [".claude"],
254
+ file: "mcp-ai-agent-guidelines-hooks.json",
255
+ },
256
+ };
257
+ const buildHookJson = (client) => ({
258
+ hooks: {
259
+ SessionStart: [
260
+ {
261
+ type: "command",
262
+ command: "mcp-ai-agent-guidelines hooks remind-session",
263
+ },
264
+ ],
265
+ PreToolUse: [
266
+ {
267
+ type: "command",
268
+ command: "mcp-ai-agent-guidelines hooks remind-drift",
269
+ },
270
+ ],
271
+ },
272
+ _meta: {
273
+ generatedBy: `mcp-ai-agent-guidelines hooks setup --client ${client}`,
274
+ docs: "https://github.com/Anselmoo/mcp-ai-agent-guidelines#auto-mode--session-hooks",
275
+ },
276
+ });
277
+ hooks
278
+ .command("setup")
279
+ .description("Write hook JSON to the appropriate path for the specified IDE client")
280
+ .option("--client <client>", "Target IDE client: vscode | copilot-cli | claude-code (default: vscode)", "vscode")
281
+ .option("--dry-run", "Print the hook JSON without writing to disk")
282
+ .action(async (opts) => {
283
+ const validClients = new Set(Object.keys(HOOK_PATHS));
284
+ if (!validClients.has(opts.client)) {
285
+ console.error(chalk.red(`Invalid --client "${opts.client}". Valid values: ${[...validClients].join(", ")}`));
286
+ process.exit(1);
287
+ }
288
+ const { homedir } = await import("node:os");
289
+ const { mkdir, writeFile } = await import("node:fs/promises");
290
+ const { join } = await import("node:path");
291
+ const clientKey = opts.client;
292
+ const { dir, file } = HOOK_PATHS[clientKey];
293
+ const hookJson = buildHookJson(opts.client);
294
+ const hookContent = JSON.stringify(hookJson, null, 2);
295
+ if (opts.dryRun) {
296
+ console.log(chalk.cyan(`\n# Hook JSON for --client ${opts.client}:`));
297
+ console.log(hookContent);
298
+ return;
299
+ }
300
+ const destDir = join(homedir(), ...dir);
301
+ const destFile = join(destDir, file);
302
+ try {
303
+ await mkdir(destDir, { recursive: true });
304
+ await writeFile(destFile, hookContent, "utf8");
305
+ console.log(chalk.green(`✅ Hook configuration written to ${destFile}`));
306
+ console.log(chalk.cyan("\nHook lifecycle:"));
307
+ console.log(" SessionStart → calls `task-bootstrap` reminder on new session");
308
+ console.log(" PreToolUse → detects consecutive non-MCP calls and nudges agent");
309
+ console.log(chalk.gray("\nTo uninstall, delete: " + destFile));
310
+ }
311
+ catch (error) {
312
+ console.error(chalk.red(`Hook setup failed: ${toErrorMessage(error)}`));
313
+ process.exit(1);
314
+ }
315
+ });
316
+ hooks
317
+ .command("print")
318
+ .description("Print the hook JSON to stdout without writing to disk")
319
+ .option("--client <client>", "Target IDE client: vscode | copilot-cli | claude-code (default: vscode)", "vscode")
320
+ .action((opts) => {
321
+ const validClients = new Set(Object.keys(HOOK_PATHS));
322
+ if (!validClients.has(opts.client)) {
323
+ console.error(chalk.red(`Invalid --client "${opts.client}". Valid values: ${[...validClients].join(", ")}`));
324
+ process.exit(1);
325
+ }
326
+ console.log(JSON.stringify(buildHookJson(opts.client), null, 2));
327
+ });
328
+ // These subcommands are invoked BY the hook JSON entries above.
329
+ hooks
330
+ .command("remind-session")
331
+ .description("Print a SessionStart reminder (called by IDE hook on session start)")
332
+ .action(() => {
333
+ console.log("[mcp-ai-agent-guidelines] Session started.\n" +
334
+ " → Call `task-bootstrap` first to load project context, TOON memory, and the codebase baseline.\n" +
335
+ " → If the task spans multiple domains or is ambiguous, call `meta-routing` before any domain tool.\n" +
336
+ " → See README.md or https://github.com/Anselmoo/mcp-ai-agent-guidelines for the full routing table.");
337
+ });
338
+ hooks
339
+ .command("remind-drift")
340
+ .description("Print a drift-detection reminder (called by IDE hook on PreToolUse)")
341
+ .option("--tool <name>", "Name of the tool about to be called (used to skip MCP tools)", "")
342
+ .action((opts) => {
343
+ const mcpToolPrefixes = [
344
+ "task-bootstrap",
345
+ "meta-routing",
346
+ "project-onboard",
347
+ "feature-implement",
348
+ "issue-debug",
349
+ "system-design",
350
+ "code-review",
351
+ "code-refactor",
352
+ "test-verify",
353
+ "evidence-research",
354
+ "strategy-plan",
355
+ "docs-generate",
356
+ "quality-evaluate",
357
+ "prompt-engineering",
358
+ "policy-govern",
359
+ "agent-orchestrate",
360
+ "enterprise-strategy",
361
+ "fault-resilience",
362
+ "routing-adapt",
363
+ "physics-analysis",
364
+ "agent-memory",
365
+ "agent-session",
366
+ "agent-snapshot",
367
+ "agent-workspace",
368
+ "orchestration-config",
369
+ "model-discover",
370
+ "graph-visualize",
371
+ ];
372
+ const tool = opts.tool.toLowerCase();
373
+ const isMcp = mcpToolPrefixes.some((p) => tool === p || tool.startsWith(p));
374
+ if (!isMcp) {
375
+ console.log("[mcp-ai-agent-guidelines] Reminder: you may be drifting away from MCP tools.\n" +
376
+ " → If you have made several consecutive non-MCP calls (grep, read_file, bash), pause and\n" +
377
+ " call `meta-routing` to re-orient, or `task-bootstrap` to reload project context.");
378
+ }
379
+ });
380
+ }
205
381
  setupMemoryCommands() {
206
382
  const memory = this.program
207
383
  .command("memory")
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -445,6 +445,15 @@ export declare function parseOrchestrationConfigDocument(raw: string): Orchestra
445
445
  export declare function parseOrchestrationConfigPatch(input: unknown): OrchestrationConfigPatch;
446
446
  export declare function createDefaultOrchestrationConfig(): OrchestrationConfig;
447
447
  export declare function resetConfigCache(): void;
448
+ /**
449
+ * Resolve the path to the primary orchestration config file.
450
+ *
451
+ * Priority order (first match wins):
452
+ * 1. Explicit `workspaceRoot` argument from the caller.
453
+ * 2. Workspace-root auto-detection: walk up from `process.cwd()` looking for
454
+ * `.git` or `package.json`.
455
+ * 3. `process.cwd()` fallback.
456
+ */
448
457
  export declare function resolveOrchestrationConfigPath(workspaceRoot?: string): string;
449
458
  export declare function loadOrchestrationConfig(overridePath?: string): OrchestrationConfig;
450
459
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"orchestration-config.d.ts","sourceRoot":"","sources":["../../src/config/orchestration-config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestration-config.d.ts","sourceRoot":"","sources":["../../src/config/orchestration-config.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,eAAO,MAAM,kCAAkC,uDACM,CAAC;AAMtD,MAAM,WAAW,aAAa;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,QAAQ,GAAG,WAAW,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,GAAG,OAAO,CAAC;IAC1E,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,oBAAoB;IACpC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAID,MAAM,WAAW,uBAAuB;IACvC,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,uBAAuB,EAAE,MAAM,CAAC;IAChC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,kBAAkB,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,eAAe;IAC/B,4BAA4B,EAAE,MAAM,CAAC;IACrC,uBAAuB,EAAE,MAAM,CAAC;IAChC,wBAAwB,EAAE,MAAM,CAAC;IACjC,iBAAiB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACrC,0BAA0B,EAAE,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IAClC,2BAA2B,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IACnC,WAAW,EAAE;QACZ,WAAW,EAAE,OAAO,CAAC;QACrB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,oBAAoB,EAAE,OAAO,CAAC;QAC9B,mEAAmE;QACnE,uBAAuB,CAAC,EAAE,OAAO,CAAC;QAClC,4DAA4D;QAC5D,+BAA+B,CAAC,EAAE,OAAO,CAAC;KAC1C,CAAC;IACF,2DAA2D;IAC3D,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACtC,6DAA6D;IAC7D,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IACvC,iDAAiD;IACjD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC1C,OAAO,EAAE;QACR,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;KACvC,CAAC;IAEF,aAAa,EAAE;QACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;KAC/C,CAAC;IACF,UAAU,EAAE;QACX,qBAAqB,EAAE,MAAM,CAAC;QAC9B,qCAAqC,EAAE,MAAM,CAAC;QAC9C,oBAAoB,EAAE,MAAM,CAAC;KAC7B,CAAC;IACF,KAAK,EAAE;QACN,mBAAmB,EAAE,MAAM,CAAC;QAC5B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC1C,CAAC;IACF,0DAA0D;IAC1D,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,8CAA8C;IAC9C,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,uCAAuC;IACvC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;IACzC,uCAAuC;IACvC,aAAa,CAAC,EAAE,kBAAkB,CAAC;CACnC;AAuJD,QAAA,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6B1B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,8BAA8B,CACrC,CAAC;AAEF,wBAAgB,6BAA6B,CAC5C,KAAK,EAAE,OAAO,GACZ,mBAAmB,CAErB;AAED,wBAAgB,gCAAgC,CAC/C,GAAG,EAAE,MAAM,GACT,mBAAmB,CAErB;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC5C,KAAK,EAAE,OAAO,GACZ,wBAAwB,CAI1B;AAMD,wBAAgB,gCAAgC,IAAI,mBAAmB,CAEtE;AAED,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;;;;;;;GAQG;AACH,wBAAgB,8BAA8B,CAAC,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAQ7E;AAmFD,wBAAgB,uBAAuB,CACtC,YAAY,CAAC,EAAE,MAAM,GACnB,mBAAmB,CAmErB;AAID;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAiBvD;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CA8D1D;AAID,uEAAuE;AACvE,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAS1D;AAED,6DAA6D;AAC7D,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED,2FAA2F;AAC3F,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAStE;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAK5D;AAED,kFAAkF;AAClF,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAGrD;AAED,4DAA4D;AAC5D,wBAAgB,sBAAsB,IAAI,MAAM,EAAE,CAKjD;AAID,oEAAoE;AACpE,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,kDAAkD;AAClD,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,EAAE,CAExE"}
@@ -4,6 +4,7 @@ import { parse, stringify as stringifyToml } from "smol-toml";
4
4
  import { z } from "zod";
5
5
  import { toErrorMessage } from "../infrastructure/object-utilities.js";
6
6
  import { createOperationalLogger } from "../infrastructure/observability.js";
7
+ import { findWorkspaceRootSync } from "../runtime/session-store-utils.js";
7
8
  import { parseOrThrow } from "../validation/schema-utilities.js";
8
9
  import { BUILTIN_ORCHESTRATION_DEFAULTS_SOURCE, createBuiltinBootstrapOrchestrationConfig, createBuiltinOrchestrationDefaults, } from "./orchestration-defaults.js";
9
10
  export const ORCHESTRATION_CONFIG_RELATIVE_PATH = ".mcp-ai-agent-guidelines/config/orchestration.toml";
@@ -199,8 +200,23 @@ export function createDefaultOrchestrationConfig() {
199
200
  export function resetConfigCache() {
200
201
  _config = null;
201
202
  }
202
- export function resolveOrchestrationConfigPath(workspaceRoot = process.cwd()) {
203
- return resolve(workspaceRoot, ORCHESTRATION_CONFIG_RELATIVE_PATH);
203
+ /**
204
+ * Resolve the path to the primary orchestration config file.
205
+ *
206
+ * Priority order (first match wins):
207
+ * 1. Explicit `workspaceRoot` argument from the caller.
208
+ * 2. Workspace-root auto-detection: walk up from `process.cwd()` looking for
209
+ * `.git` or `package.json`.
210
+ * 3. `process.cwd()` fallback.
211
+ */
212
+ export function resolveOrchestrationConfigPath(workspaceRoot) {
213
+ if (workspaceRoot !== undefined) {
214
+ return resolve(workspaceRoot, ORCHESTRATION_CONFIG_RELATIVE_PATH);
215
+ }
216
+ // Walk up from CWD to find the workspace root (handles MCP servers launched
217
+ // from $HOME by VS Code / Claude Desktop where CWD ≠ workspace).
218
+ const detected = findWorkspaceRootSync(process.cwd());
219
+ return resolve(detected ?? process.cwd(), ORCHESTRATION_CONFIG_RELATIVE_PATH);
204
220
  }
205
221
  function hasErrorCode(error, code) {
206
222
  return (typeof error === "object" &&
@@ -258,7 +274,9 @@ export function loadOrchestrationConfig(overridePath) {
258
274
  const fallbackConfig = createDefaultOrchestrationConfig();
259
275
  const detail = toErrorMessage(error);
260
276
  const message = `[orchestration] Failed to load primary config at ${configPath}: ${detail}`;
261
- if (overridePath === undefined && hasErrorCode(error, "ENOENT")) {
277
+ if (hasErrorCode(error, "ENOENT")) {
278
+ // Config file is missing — bootstrap advisory defaults regardless of
279
+ // whether the path came from the caller or from auto-detection.
262
280
  const bootstrapConfig = createBuiltinBootstrapOrchestrationConfig();
263
281
  try {
264
282
  bootstrapMissingWorkspaceOrchestrationConfig(configPath, bootstrapConfig);
@@ -271,8 +289,14 @@ export function loadOrchestrationConfig(overridePath) {
271
289
  return _config;
272
290
  }
273
291
  catch (bootstrapError) {
274
- throw new Error(`${message}. Failed to bootstrap a new workspace config from ${BUILTIN_ORCHESTRATION_DEFAULTS_SOURCE}: ${toErrorMessage(bootstrapError)}. ` +
275
- `Run \`mcp-cli onboard init\` or create ${ORCHESTRATION_CONFIG_RELATIVE_PATH} manually.`);
292
+ // Bootstrap write failed (e.g. permissions). Fall through to
293
+ // in-memory advisory defaults so at least this invocation succeeds.
294
+ orchestrationConfigLogger.log("warn", "Bootstrap write failed; using in-memory advisory defaults", {
295
+ configPath,
296
+ bootstrapError: toErrorMessage(bootstrapError),
297
+ });
298
+ _config = bootstrapConfig;
299
+ return _config;
276
300
  }
277
301
  }
278
302
  if (fallbackConfig.environment.strict_mode) {