[ISSUE] Trouble setting up VSCode workbench extension on OSX

  • Device: 13-inch, 2017 MacBook Pro w/ 2.5GHz Dual-Core Intel Core i7
  • VSCode Version: 178.2
  • OS Version: OSX 13.6.6
  • Other extensions installed: None (all disabled)

Other useful info:

  • node version: 21.7.2
  • npm version: 10.5.1
  • nvm version: 0.39.7

Hi! I am having an issue when I try and create a new project with the VSCode extension I get the following error. I have read through the docs and tried the solutions but nothing seems to work.

particle: Installing plugins...npm ERR! As of npm@5, the npm cache self-heals from corruption issues
npm ERR!   by treating integrity mismatches as cache misses.  As a result,
npm ERR!   data extracted from the cache is guaranteed to be valid.  If you
npm ERR!   want to make sure everything is consistent, use `npm cache verify`
npm ERR!   instead.  Deleting the cache can only make npm go slower, and is
npm ERR!   not likely to correct any problems you may be encountering!
npm ERR! 
npm ERR!   On the other hand, if you're debugging an issue with the installer,
npm ERR!   or race conditions that depend on the timing of writing to an empty
npm ERR!   cache, you can use `npm install --cache /tmp/empty-cache` to use a
npm ERR!   temporary cache instead of nuking the actual one.
npm ERR! 
npm ERR!   If you're sure you want to delete the entire cache, rerun this command
npm ERR!   with --force.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-08T23_42_28_568Z-debug-0.log

 ▸    exit status 1

particle: Installing plugins (retrying)...
 ▸    Error installing package. 
 ▸    npm WARN using --force Recommended protections disabled.
 ▸    npm WARN deprecated ini@1.3.4: Please update to ini >=1.3.6 to avoid a prototype pollution issue
 ▸    npm WARN deprecated trim@0.0.1: Use String.prototype.trim() instead
 ▸    npm WARN deprecated flat@4.1.0: Fixed a prototype pollution security issue in 4.1.0, please upgrade to ^4.1.1 or ^5.0.1.
 ▸    npm WARN deprecated cryptiles@2.0.5: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
 ▸    npm WARN deprecated debug@3.2.6: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated boom@2.10.1: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated sntp@1.0.9: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
 ▸    npm WARN deprecated node-uuid@1.4.7: Use uuid module instead
 ▸    npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
 ▸    npm WARN deprecated har-validator@2.0.6: this library is no longer supported
 ▸    npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
 ▸    npm WARN deprecated hoek@2.16.3: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated superagent@2.3.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated superagent@2.3.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated is-my-json-valid@2.15.0: catastrophic backtracking in regexes could potentially lead to REDOS attack, upgrade to 2.17.2 as soon as possible
 ▸    npm WARN deprecated hawk@3.1.3: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
 ▸    npm WARN deprecated axios@0.19.0: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410
 ▸    npm WARN deprecated superagent@5.1.2: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated superagent@5.3.1: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated sinon@7.5.0: 16.1.1
 ▸    npm WARN deprecated core-js@2.6.5: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm WARN deprecated core-js@2.6.10: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm WARN deprecated core-js@3.4.7: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm ERR! Cannot read properties of null (reading 'pickAlgorithm')
 ▸    
 ▸    npm ERR! A complete log of this run can be found in:
 ▸    npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-08T23_42_28_983Z-debug-0.log
 ▸    
 ▸    Try running again with GODE_DEBUG=info to see more output.
Error: Command failed with exit code 1: /Users/username/.vscode/extensions/particle.particle-vscode-core-1.16.16/src/cli/bin/darwin/amd64/particle version --no-update-check
particle: Installing plugins...npm ERR! As of npm@5, the npm cache self-heals from corruption issues
npm ERR!   by treating integrity mismatches as cache misses.  As a result,
npm ERR!   data extracted from the cache is guaranteed to be valid.  If you
npm ERR!   want to make sure everything is consistent, use `npm cache verify`
npm ERR!   instead.  Deleting the cache can only make npm go slower, and is
npm ERR!   not likely to correct any problems you may be encountering!
npm ERR! 
npm ERR!   On the other hand, if you're debugging an issue with the installer,
npm ERR!   or race conditions that depend on the timing of writing to an empty
npm ERR!   cache, you can use `npm install --cache /tmp/empty-cache` to use a
npm ERR!   temporary cache instead of nuking the actual one.
npm ERR! 
npm ERR!   If you're sure you want to delete the entire cache, rerun this command
npm ERR!   with --force.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-08T23_42_28_568Z-debug-0.log

 ▸    exit status 1

particle: Installing plugins (retrying)...
 ▸    Error installing package. 
 ▸    npm WARN using --force Recommended protections disabled.
 ▸    npm WARN deprecated ini@1.3.4: Please update to ini >=1.3.6 to avoid a prototype pollution issue
 ▸    npm WARN deprecated trim@0.0.1: Use String.prototype.trim() instead
 ▸    npm WARN deprecated flat@4.1.0: Fixed a prototype pollution security issue in 4.1.0, please upgrade to ^4.1.1 or ^5.0.1.
 ▸    npm WARN deprecated cryptiles@2.0.5: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated formidable@1.2.6: Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
 ▸    npm WARN deprecated debug@3.2.6: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated boom@2.10.1: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated debug@4.1.1: Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)
 ▸    npm WARN deprecated sntp@1.0.9: This module moved to @hapi/sntp. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
 ▸    npm WARN deprecated node-uuid@1.4.7: Use uuid module instead
 ▸    npm WARN deprecated uuid@3.3.2: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
 ▸    npm WARN deprecated har-validator@2.0.6: this library is no longer supported
 ▸    npm WARN deprecated mkdirp@0.5.1: Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)
 ▸    npm WARN deprecated hoek@2.16.3: This version has been deprecated in accordance with the hapi support policy (hapi.im/support). Please upgrade to the latest version to get the best features, bug fixes, and security patches. If you are unable to upgrade at this time, paid support is available for older versions (hapi.im/commercial).
 ▸    npm WARN deprecated superagent@2.3.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated superagent@2.3.0: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated is-my-json-valid@2.15.0: catastrophic backtracking in regexes could potentially lead to REDOS attack, upgrade to 2.17.2 as soon as possible
 ▸    npm WARN deprecated hawk@3.1.3: This module moved to @hapi/hawk. Please make sure to switch over as this distribution is no longer supported and may contain bugs and critical security issues.
 ▸    npm WARN deprecated axios@0.19.0: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410
 ▸    npm WARN deprecated superagent@5.1.2: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated superagent@5.3.1: Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
 ▸    npm WARN deprecated sinon@7.5.0: 16.1.1
 ▸    npm WARN deprecated core-js@2.6.5: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm WARN deprecated core-js@2.6.10: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm WARN deprecated core-js@3.4.7: core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.
 ▸    npm ERR! Cannot read properties of null (reading 'pickAlgorithm')
 ▸    
 ▸    npm ERR! A complete log of this run can be found in:
 ▸    npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-08T23_42_28_983Z-debug-0.log
 ▸    
 ▸    Try running again with GODE_DEBUG=info to see more output.
	at makeError (/Users/username/.vscode/extensions/particle.particle-vscode-core-1.16.16/node_modules/execa/lib/error.js:59:11)
	at handlePromise (/Users/username/.vscode/extensions/particle.particle-vscode-core-1.16.16/node_modules/execa/index.js:114:26)
	at process.processTicksAndRejections (node:internal/process/task_queues:96:5)
	at async /Users/username/.vscode/extensions/particle.particle-vscode-core-1.16.16/src/commands/lib/install-cli-dependencies.js:42:12

- - - -


GODE_DEBUG=info didn't anything that I could see so I uninstalled it from vscode and tried installing the cli with npm which ended up working. Next I tried installing all the packages that were labeled as deprecated with npm and retried installing the particle workbench but I still get the same errors as above. If anybody has any recommendations I would really appreciate it.

Here is my particle audit:


*** WARNING: MAY CONTAIN CONFIDENTIAL INFORMATION - PLEASE SANITIZE BEFORE SHARING ***
To report an issue, visit:
https://community.particle.io/t/how-to-report-bugs-and-provide-feedback/52361

{
    "username": null,
    "workspace": {
        "name": "",
        "isWorkspace": false,
        "folders": []
    },
    "cli": {
        "binpath": "/Users/username/.vscode/extensions/particle.particle-vscode-core-1.16.16/src/cli/bin/darwin/amd64/particle",
        "ok": true,
        "version": "particle: Installing plugins...\n ▸    npm ERR! code ENOTEMPTY\n ▸    npm ERR! syscall rename\n ▸    npm ERR! path /Users/username/.particle/node_modules/particle-cli\n ▸    npm ERR! dest /Users/username/.particle/node_modules/.particle-cli-PT02GVni\n ▸    npm ERR! errno -66\n ▸    npm ERR! ENOTEMPTY: directory not empty, rename '/Users/username/.particle/node_modules/particle-cli' -> '/Users/username/.particle/node_modules/.particle-cli-PT02GVni'\n ▸    \n ▸    npm ERR! A complete log of this run can be found in:\n ▸    npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-09T22_41_59_644Z-debug-0.log\nnpm ERR! As of npm@5, the npm cache self-heals from corruption issues\nnpm ERR!   by treating integrity mismatches as cache misses.  As a result,\nnpm ERR!   data extracted from the cache is guaranteed to be valid.  If you\nnpm ERR!   want to make sure everything is consistent, use `npm cache verify`\nnpm ERR!   instead.  Deleting the cache can only make npm go slower, and is\nnpm ERR!   not likely to correct any problems you may be encountering!\nnpm ERR! \nnpm ERR!   On the other hand, if you're debugging an issue with the installer,\nnpm ERR!   or race conditions that depend on the timing of writing to an empty\nnpm ERR!   cache, you can use `npm install --cache /tmp/empty-cache` to use a\nnpm ERR!   temporary cache instead of nuking the actual one.\nnpm ERR! \nnpm ERR!   If you're sure you want to delete the entire cache, rerun this command\nnpm ERR!   with --force.\n\nnpm ERR! A complete log of this run can be found in:\nnpm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-09T22_42_01_762Z-debug-0.log\n\n ▸    exit status 1\n\rparticle: Installing plugins (retrying)...\n ▸    Error installing package. \n ▸    npm WARN using --force Recommended protections disabled.\n ▸    npm ERR! code ENOTEMPTY\n ▸    npm ERR! syscall rename\n ▸    npm ERR! path /Users/username/.particle/node_modules/particle-cli\n ▸    npm ERR! dest /Users/username/.particle/node_modules/.particle-cli-PT02GVni\n ▸    npm ERR! errno -66\n ▸    npm ERR! ENOTEMPTY: directory not empty, rename '/Users/username/.particle/node_modules/particle-cli' -> '/Users/username/.particle/node_modules/.particle-cli-PT02GVni'\n ▸    \n ▸    npm ERR! A complete log of this run can be found in:\n ▸    npm ERR!     /Users/username/.particle/.npm-cache/_logs/2024-04-09T22_42_02_511Z-debug-0.log\n ▸    \n ▸    Try running again with GODE_DEBUG=info to see more output."
    },
    "localCompiler": {
        "ok": true,
        "dependencies": [
            {
                "id": "deviceOS@5.8.0",
                "ok": true
            },
            {
                "id": "gcc-arm@10.2.1",
                "ok": true
            },
            {
                "id": "buildtools@1.1.1",
                "ok": true
            },
            {
                "id": "buildscripts@1.15.0",
                "ok": true
            },
            {
                "id": "openocd@0.11.0-particle.4",
                "ok": true
            },
            {
                "id": "deviceOS@5.3.0",
                "ok": true
            },
            {
                "id": "deviceOS@4.2.0",
                "ok": true
            }
        ]
    },
    "platform": {
        "os": "darwin",
        "type": "Darwin",
        "release": "22.6.0",
        "arch": "x64",
        "path": {
            "key": "PATH",
            "value": "/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin",
            "entries": [
                "/usr/local/bin",
                "/System/Cryptexes/App/usr/bin",
                "/usr/bin",
                "/bin",
                "/usr/sbin",
                "/sbin",
                "/Library/TeX/texbin",
                "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin",
                "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin",
                "/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin"
            ]
        },
        "homeDir": "/Users/username",
        "particleDir": "/Users/username/.particle",
        "particleToolchainDir": "/Users/username/.particle/toolchains"
    },
    "env": {
        "COMMAND_MODE": "unix2003",
        "HOME": "/Users/username",
        "LOGNAME": "username",
        "MallocNanoZone": "0",
        "ORIGINAL_XDG_CURRENT_DESKTOP": "undefined",
        "PATH": "/usr/local/bin:/System/Cryptexes/App/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/local/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/bin:/var/run/com.apple.security.cryptexd/codex.system/bootstrap/usr/appleinternal/bin",
        "PWD": "/",
        "SHELL": "/bin/bash",
        "SHLVL": "1",
        "SSH_AUTH_SOCK": "/private/tmp/com.apple.launchd.cK6Ta9w1F3/Listeners",
        "TMPDIR": "/var/folders/rk/8px_6n2n10g2xh5pvw4tbsl80000gn/T/",
        "USER": "username",
        "VSCODE_AMD_ENTRYPOINT": "vs/workbench/api/node/extensionHostProcess",
        "VSCODE_CODE_CACHE_PATH": "/Users/username/Library/Application Support/Code/CachedData/b3e4e68a0bc097f0ae7907b217c1119af9e03435",
        "VSCODE_CRASH_REPORTER_PROCESS_TYPE": "extensionHost",
        "VSCODE_CWD": "/",
        "VSCODE_HANDLES_UNCAUGHT_ERRORS": "true",
        "VSCODE_IPC_HOOK": "/Users/username/Library/Application Support/Code/1.78-main.sock",
        "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"osLocale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}",
        "VSCODE_PID": "14087",
        "XPC_FLAGS": "0x0",
        "XPC_SERVICE_NAME": "application.com.microsoft.VSCode.1045921.1045927",
        "_": "/private/var/folders/rk/8px_6n2n10g2xh5pvw4tbsl80000gn/T/AppTranslocation/B9E5AB2D-051E-451B-9205-47E6DE5D47ED/d/Visual Studio Code.app/Contents/MacOS/Electron",
        "__CFBundleIdentifier": "com.microsoft.VSCode",
        "__CF_USER_TEXT_ENCODING": "0x1F5:0x0:0x0",
        "ELECTRON_RUN_AS_NODE": "1"
    },
    "versions": {
        "node": "16.17.1",
        "v8": "10.8.168.25-electron.0",
        "uv": "1.43.0",
        "zlib": "1.2.12.1-motley",
        "brotli": "1.0.9",
        "ares": "1.18.1",
        "modules": "110",
        "nghttp2": "1.47.0",
        "napi": "8",
        "llhttp": "6.0.9",
        "openssl": "1.1.1",
        "cldr": "41.0",
        "icu": "71.1",
        "tz": "2023a",
        "unicode": "14.0",
        "electron": "22.5.2",
        "microsoft-build": "20762381",
        "chrome": "108.0.5359.215"
    },
    "vscode": {
        "appName": "Visual Studio Code",
        "appRoot": "/private/var/folders/rk/8px_6n2n10g2xh5pvw4tbsl80000gn/T/AppTranslocation/B9E5AB2D-051E-451B-9205-47E6DE5D47ED/d/Visual Studio Code.app/Contents/Resources/app",
        "machineId": "50f34aa1860b1e07a5549ae9acedfe95039ba189e24fe96552dca62c40388443",
        "sessionId": "b91cbaed-f533-4fa6-870b-8efdba10f5911712702467564",
        "version": "1.78.2"
    },
    "extensions": [
        {
            "id": "ms-vscode.js-debug",
            "version": "1.78.0"
        },
        {
            "id": "ms-vscode.js-debug-companion",
            "version": "1.0.18"
        },
        {
            "id": "ms-vscode.vscode-js-profile-table",
            "version": "1.0.3"
        },
        {
            "id": "marus25.cortex-debug",
            "version": "1.12.1"
        },
        {
            "id": "mcu-debug.debug-tracker-vscode",
            "version": "0.0.15"
        },
        {
            "id": "mcu-debug.memory-view",
            "version": "0.0.25"
        },
        {
            "id": "mcu-debug.peripheral-viewer",
            "version": "1.4.6"
        },
        {
            "id": "mcu-debug.rtos-views",
            "version": "0.0.7"
        },
        {
            "id": "ms-vscode.cpptools",
            "version": "1.19.9"
        },
        {
            "id": "particle.particle-vscode-core",
            "version": "1.16.16"
        },
        {
            "id": "particle.particle-vscode-pack",
            "version": "1.16.16"
        },
        {
            "id": "particle.particle-vscode-snippets",
            "version": "1.16.16"
        },
        {
            "id": "particle.particle-vscode-theme",
            "version": "1.16.16"
        }
    ]
}

The Particle CLI cannot be installed natively with node 21. It requires node 16.

If you use the Particle CLI installer first, Workbench will use a private version of node 16 to run the Particle CLI.

Alternatively you can use a node version manager like nvm to install multiple versions of node and use 16 only with the particle cli.