Skip to content

Conversation

@isdaniel
Copy link
Contributor

  • Smart JSON Merging for VS Code Settings .vscode/settings.json is now intelligently merged instead of being overwritten during specify init --here or specify init .

    • Existing settings are preserved
    • New Spec Kit settings are added
    • Nested objects are merged recursively
    • Prevents accidental loss of custom VS Code workspace configurations

fix #859

…` is now intelligently merged instead of being overwritten during `specify init --here` or `specify init .`

  - Existing settings are preserved
  - New Spec Kit settings are added
  - Nested objects are merged recursively
  - Prevents accidental loss of custom VS Code workspace configurations
@isdaniel isdaniel requested a review from localden as a code owner October 16, 2025 16:17
Copilot AI review requested due to automatic review settings October 16, 2025 16:17
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds smart JSON merging functionality for VS Code workspace settings during template initialization. Instead of overwriting existing .vscode/settings.json files, the new implementation preserves existing configurations while adding new Spec Kit settings.

Key changes:

  • Implemented deep JSON merging for VS Code settings files
  • Added special handling to preserve existing workspace configurations
  • Introduced recursive merging for nested JSON objects

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

…ions for better code clarity and IDE support.
@localden localden merged commit a66af9b into github:main Oct 17, 2025
zikajk pushed a commit to zikajk/spec-kit that referenced this pull request Oct 18, 2025
Smart JSON Merging for VS Code Settings `.vscode/settings.json`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

.vscode/settings.json is overwritten

2 participants