Settings
User and Workspace settings, settings.json, precedence, and the settings Codevre understands.
On this page
Open Settings with Ctrl+, (Cmd+, on Mac), the ⚙ button, or File ▸ Preferences. The Settings tool and the settings.json files are always in sync: change one and the other follows. You can also change any setting from the command palette by typing its name.
How settings are layered
Link to “How settings are layered”built-in defaults → User settings → Workspace settings
(your browser) (.codevre/settings.json in the project)The later layer wins, key by key. A Workspace file only overrides the keys it contains. Object settings such as files.exclude are merged entry by entry, so a Workspace files.exclude adds to your User one instead of replacing it.
With no project open, only User settings apply. When you close a project or open another, its Workspace settings are dropped, so one project's vre.settings.root never leaks into the next.
User settings
Link to “User settings”Your settings for every project: theme, font size, layout preferences and so on.
- Stored in this browser's local storage (key
codevre-user-settings). - Other open Codevre tabs follow changes immediately.
- Preferences ▸ User Settings opens them. Reset All in the Settings tool restores the defaults, with Undo.
Workspace settings
Link to “Workspace settings”Settings for one project, stored in the project and saved with it:
.codevre/settings.json, or if that doesn't exist,.vscode/settings.json.
Only the first one found is used; they aren't merged with each other. The format is JSONC: comments and trailing commas are fine. If you save a file with a syntax error, the last valid settings stay in effect until you fix it.
Open it with Preferences ▸ Open Workspace settings.json, or right-click the .codevre folder and choose Create settings.json.
{
// Workspace settings for this project. They override your User settings,
// key by key.
"vre.preview.autoRun": true,
"vre.settings.root": "",
"vre.settings.Wait": 100,
"vre.settings.ignoreFiles": []
}VS Code Live Server compatibility
Link to “VS Code Live Server compatibility”Codevre reads Live Server's keys as aliases, so a project from VS Code works unchanged:
| Live Server key | Codevre key |
|---|---|
liveServer.settings.root | vre.settings.root |
liveServer.settings.Wait | vre.settings.Wait |
liveServer.settings.ignoreFiles | vre.settings.ignoreFiles |
If both are set, the vre.* key wins.
Which scope to use
Link to “Which scope to use”| Put in User | Put in Workspace |
|---|---|
| Theme, font size, word wrap, minimap | vre.* preview settings |
| Default layout, header and status bar | files.exclude |
| AI provider and model | Anything only this project needs |
Project settings in User settings follow you into every other project and can break them. For example, vre.settings.root: "public" empties the preview of any project without a public folder. When the Agent changes a setting, vre.*, liveServer.* and files.exclude always go to the Workspace file.
When a change could go either way, some commands (such as Color Theme) write to the Workspace file only if the project already sets that key, and to User settings otherwise.
Settings Codevre understands
Link to “Settings Codevre understands”Preview (localhost:codevre)
Link to “Preview (localhost:codevre)”| Key | Type | Default | Meaning |
|---|---|---|---|
vre.preview.autoRun | boolean | true | Rerun a running preview after files change |
vre.settings.root | string | "" | Subfolder served as the preview's /, e.g. public. "" or . means the project root. The folder must exist |
vre.settings.Wait | number (ms) | 100 | Delay before rebuilding the preview after a change (0–10000) |
vre.settings.ignoreFiles | string[] | [] | Globs whose changes don't reload the preview, e.g. ["**/*.md", "notes/**"] |
See localhost:codevre.
Files
Link to “Files”| Key | Type | Default | Meaning |
|---|---|---|---|
files.exclude | object | { "**/.git": true } | Glob → true hides matches from the Explorer and Search |
Editor
Link to “Editor”Any Monaco option, as editor.<option> (one level of nesting, like editor.minimap.enabled).
| Key | Default |
|---|---|
editor.theme | dark-plus (also light-plus and many more themes) |
editor.fontSize | 14 |
editor.tabSize | 2 |
editor.wordWrap | on |
editor.minimap.enabled | true |
Workbench
Link to “Workbench”| Key | Default | Meaning |
|---|---|---|
workbench.defaultLayout | code | code or agent. User only |
workbench.header.visible | true | Show the header bar |
workbench.statusBar.visible | true | Show the status bar |
workbench.fileStatusBar | true | Per-file status bars in editor panes |
workbench.compactDock | false | Compact dock chrome |
workbench.tabs.connected | false | Connected tab style |
Diff
Link to “Diff”| Key | Default | Meaning |
|---|---|---|
diff.renderSideBySide | false | Side-by-side diffs |
diff.gitOnly | false | Only Git baselines |
All AI settings are User only. Keys aren't settings; they're saved to your Codevre account and never written to settings.json.
| Key | Default | Meaning |
|---|---|---|
ai.provider | openrouter | The Agent's provider: openrouter, anthropic, openai, gemini, xai |
ai.openRouter.model, ai.anthropic.model, ai.openai.model, ai.gemini.model, ai.xai.model | "" | The Agent's model for each provider. An empty OpenRouter model uses the Default router (openrouter/free) |
ai.monacopilot.enabled | false | Inline completions |
ai.monacopilot.delay | 800 | Idle delay in ms (100–5000) |
ai.monacopilot.provider | chat | Provider for completions. chat = same as the Agent |
ai.monacopilot.model | "" | Completion-only model. Empty = the provider's chat model |
Some Agent preferences, such as Chat/Agent mode, approvals, reasoning effort and recent models, are kept per browser rather than as settings. See Agent settings.
This is a summary. See Settings reference for every setting, including the cursor, suggestions, minimap and breadcrumbs.
The Settings editor
Link to “The Settings editor”- User / Workspace tabs. The active tab decides where a change is written. The Workspace tab is read-only with no project open, or while
settings.jsonhas a syntax error; a banner shows the line and column and an Open settings.json button. - Search matches keys, titles, descriptions and values ("N Settings Found"). Ctrl+F focuses it; Esc clears it.
- Modified settings are marked. "(Also modified in: Workspace)" links to the other tab. The filter button shows modified settings only.
- Setting a value equal to the inherited one removes the key instead of writing a duplicate.
- Each setting's ⋯ menu (or right-click) has Reset Setting, Apply to This Project / Apply to All Projects, Copy Setting ID, Copy Setting as JSON and Edit in settings.json.
- The header ⋯ menu has Reset All User Settings… and Reset All Workspace Settings…, both with Undo for 8 seconds, plus Open Workspace settings.json.
- Changing a Workspace setting edits
settings.jsonin place, keeping your comments, key order and formatting. If the project has no settings file, the first change creates.codevre/settings.json. - Keys the editor doesn't know are listed under Other with their value.
- Project › Project Settings holds the project's name, description, tags, cover image, visibility and link. See Files and projects.
The Settings tool lists every setting with its description. Use its search box, or ask the Agent to list_settings.