From 647f4560ed3ee30e725fdb7d62a830b1aa8ab853 Mon Sep 17 00:00:00 2001 From: Sjoerd Bozon Date: Mon, 19 Jan 2026 11:43:50 +0100 Subject: [PATCH] fix: deep-merge prompt recommendations to preserve existing settings --- tools/cli/installers/lib/ide/github-copilot.js | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/tools/cli/installers/lib/ide/github-copilot.js b/tools/cli/installers/lib/ide/github-copilot.js index 0eff3034..07dd0925 100644 --- a/tools/cli/installers/lib/ide/github-copilot.js +++ b/tools/cli/installers/lib/ide/github-copilot.js @@ -218,9 +218,17 @@ class GitHubCopilotSetup extends BaseIdeSetup { bmadSettings['chat.promptFilesRecommendations'] = options.promptRecommendations; } - // Merge settings (existing take precedence) + // Merge settings (existing take precedence, except for prompt recommendations) const mergedSettings = { ...bmadSettings, ...existingSettings }; + // Deep-merge prompt recommendations (new prompts added, existing preserved) + if (options.promptRecommendations && Object.keys(options.promptRecommendations).length > 0) { + mergedSettings['chat.promptFilesRecommendations'] = { + ...existingSettings['chat.promptFilesRecommendations'], + ...options.promptRecommendations, + }; + } + // Write settings await fs.writeFile(settingsPath, JSON.stringify(mergedSettings, null, 2)); console.log(chalk.green(' ✓ VS Code settings configured'));