Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Feb 12, 2026

This change addresses item #2411

This changes visible behavior

The following changes are proposed:

  • Add a new VS Code context key cmake:addPresetCommandsAvailable that is true when cmake.useCMakePresets is not explicitly never
  • Update when clauses for the 5 "Add … Preset" commands to use this new context key instead of useCMakePresets

The purpose of this change

When cmake.useCMakePresets is auto and no CMakePresets.json exists yet, the "Add Configure/Build/Test/Package/Workflow Preset" commands were hidden from the command palette — making it impossible to create the presets file via those commands.

The existing useCMakePresets context key is a resolved boolean: true only when presets are actively in use. For auto without preset files, this is false. The new cmake:addPresetCommandsAvailable key instead checks the raw config setting, so "Add" commands appear whenever the user hasn't explicitly opted out of presets (never). Other preset commands (select, edit, open) still gate on useCMakePresets as before.

Other Notes/Information

The undefined guard on the new context key handles the case where project is undefined (no active project) — not a missing config default.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • 0psvsblobprodwus2145.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 1mcvsblobprodwus2174.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 2zsvsblobprodwus2125.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 40vvsblobprodwus2135.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • 5azvsblobprodwus2162.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 5bdvsblobprodwus2128.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 5zivsblobprodwus217.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 6yfvsblobprodwus2121.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 77qvsblobprodwus2118.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 78kvsblobprodwus2152.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • 7q7vsblobprodwus2144.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 84hvsblobprodwus2148.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • 9yyvsblobprodwus2157.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • an0vsblobprodwus2146.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • b15vsblobprodwus2164.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • b53vsblobprodwus2154.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • b5svsblobprodwus2116.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • cbvvsblobprodwus2131.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • cffvsblobprodwus218.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • d94vsblobprodwus2119.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • dyrvsblobprodwus2173.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • etjvsblobprodwus2172.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • faxvsblobprodwus2122.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • i01vsblobprodwus216.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • ia4vsblobprodwus2112.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • izzvsblobprodwus2142.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • jlovsblobprodwus2163.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • jqivsblobprodwus2187.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • k4pvsblobprodwus2140.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • kafvsblobprodwus2165.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • km4vsblobprodwus2183.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • l7ivsblobprodwus2133.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • lusvsblobprodwus2166.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • mdcvsblobprodwus2159.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • mt2vsblobprodwus2110.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • ndavsblobprodwus219.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • nudvsblobprodwus214.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • nypvsblobprodwus2178.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • ox9vsblobprodwus2149.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • s0ivsblobprodwus2134.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • s8nvsblobprodwus2158.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • v41vsblobprodwus2175.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • vd2vsblobprodwus2150.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • vipvsblobprodwus2139.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • wlnvsblobprodwus2188.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • wztvsblobprodwus2155.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /usr/local/bin/yarn install --frozen-lockfile (dns block)
  • x0dvsblobprodwus2111.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • x1mvsblobprodwus2181.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • xktvsblobprodwus2141.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • xumvsblobprodwus213.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • y1mvsblobprodwus2138.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • yf8vsblobprodwus212.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • z2bvsblobprodwus2185.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • zaxvsblobprodwus215.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)
  • zt8vsblobprodwus2176.vsblob.vsassets.io
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node /home/REDACTED/work/_temp/ghcca-node/node/bin/npx webpack --mode development (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>[Feature] Make "CMake: Add ... Preset" commands available on command palette if cmake.useCMakePresets is set to auto</issue_title>
<issue_description>### Request Overview

It was mentioned in #2294 that preset-related commands are not present if cmake.useCMakePresets is set to never or auto. It makes sense, but it would be nice if "Add..." commands were available even if CMakePresets.json file is not yet created, just so it could be created by automatically.

Additional Information

No response</issue_description>

Comments on the Issue (you are @copilot in this section)


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

When cmake.useCMakePresets is set to "auto" and no CMakePresets.json
exists yet, the "Add ... Preset" commands are now available in the
command palette. A new context key cmake:addPresetCommandsAvailable
is set to true when the setting is not explicitly "never", allowing
users to create preset files from the command palette.

Fixes #2411

Co-authored-by: snehara99 <[email protected]>
Copilot AI changed the title [WIP] Add CMake preset commands to command palette for auto setting Make "CMake: Add ... Preset" commands available when useCMakePresets is auto Feb 12, 2026
Copilot AI requested a review from snehara99 February 12, 2026 19:52
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.

[Feature] Make "CMake: Add ... Preset" commands available on command palette if cmake.useCMakePresets is set to auto

2 participants