vscode
Avoid common VSCode mistakes — settings conflicts, debugger setup, and extension clashes.
Installation
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
View source ↗GuidesSkill instructions
Settings Precedence
- User → Workspace → Folder — later overrides earlier
-
.vscode/settings.jsonper project — overrides user settings -
"editor.formatOnSave"in workspace overrides user — can be confusing - Multi-root workspaces need per-folder settings — or root
.code-workspacefile - Some settings only work in user —
"terminal.integrated.shell"is user-only
Formatter Conflicts
- Multiple formatters for same language — set
"[language]": {"editor.defaultFormatter": "id"} - Prettier vs ESLint both formatting — disable one:
"prettier.enable": falsein ESLint projects - Format on save runs wrong formatter — explicit
defaultFormatterrequired -
.editorconfigoverrides some settings — can conflict with extension settings
Debugger Setup
-
launch.jsonneeded for most debugging — can't just press F5 -
"cwd"relative to workspace root — not launch.json location -
"program"path wrong — use${workspaceFolder}/path/to/file - Node.js:
"skipFiles"to avoid stepping into node_modules - Compound configurations for multi-process —
"compounds"array in launch.json
Extensions
- Extension host crash — disable recently installed, enable one by one
- "Cannot find module" after install — restart VS Code completely
- Extension settings not applying — check if workspace setting overrides
- Conflicting extensions — keybinding conflicts, duplicate features
Terminal
- Wrong shell on new terminal — set
"terminal.integrated.defaultProfile.*" - Environment variables missing — terminal inherits from launch method, not .bashrc
- Path not updated after install — restart VS Code, not just terminal
- Shell integration issues —
"terminal.integrated.shellIntegration.enabled": falseto disable
Remote Development
- SSH:
~/.ssh/configHost must match —"remote.SSH.configFile"to use different config - Containers:
.devcontainer/devcontainer.jsonrequired — won't auto-detect Dockerfile - WSL: extensions install separately — WSL extensions stay in WSL
- Port forwarding: auto but not always — check Ports panel
Workspace Trust
- Restricted mode disables some features — debugging, tasks, some extensions
- Trust prompt on first open — "Trust Folder" to enable everything
- Per-folder trust in multi-root — can trust some folders, not others
Common Fixes
- IntelliSense not working — check language server status in Output panel
- "Cannot find module" in TypeScript — restart TS server: Cmd+Shift+P → "TypeScript: Restart TS Server"
- Git not detecting changes — check if inside subfolder,
.gitmust be at root or configured - Settings not saving — check write permissions on settings.json
Examples
Read the usage examples in the source repository.
View source ↗Source history
- Indexed on
- 2026-03-11
- Index updated
- 2026-03-11
- Branch
- main
Index and sync dates describe this directory. View the source repository for code history.
GitHub ↗chat Comments (0)
Sign in to join the discussion and leave a comment.
No comments yet. Be the first to share your thoughts!