Qwen Code Settings
Configuration file for Qwen Code
**/.qwen/settings.json
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
**/.qwen/settings.json and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
$schema | string | URL or path to the JSON schema for this configuration file |
$version | integer | Schema version identifier |
general | object | General configuration options |
general.preferredEditor | string | The preferred editor to open files in |
general.vimMode | boolean | Enable Vim keybindings default: false |
general.enableAutoUpdate | boolean | Enable automatic update checks and installations on startup default: true |
general.gitCoAuthor | boolean | Automatically add a Co-authored-by trailer to git commit messages default: true |
general.checkpointing | object | Session checkpointing configuration |
general.checkpointing.enabled | boolean | Enable session checkpointing for recovery default: false |
general.defaultFileEncoding | string | Default encoding for new files default: "utf-8"one of: "utf-8", "utf-8-bom" |
output | object | Output configuration |
output.format | string | The format of the CLI output default: "text"one of: "text", "json" |
ui | object | User interface configuration |
ui.theme | string | The color theme for the UI |
ui.customThemes | object | Custom theme definitions |
ui.hideWindowTitle | boolean | Hide the window title bar default: false |
ui.hideTips | boolean | Hide helpful tips in the UI default: false |
ui.hideBanner | boolean | Hide the application banner default: false |
ui.hideFooter | boolean | Hide the footer from the UI default: false |
ui.showMemoryUsage | boolean | Display memory usage information in the UI default: false |
ui.showLineNumbers | boolean | Show line numbers in code blocks in the CLI output default: true |
ui.showCitations | boolean | Show citations for generated text in the chat default: true |
ui.enableWelcomeBack | boolean | Show welcome back dialog when returning to a project with conversation history default: true |
ui.accessibility | object | Accessibility configuration |
ui.accessibility.enableLoadingPhrases | boolean | Enable loading phrases (disable for accessibility) default: true |
ui.accessibility.screenReader | boolean | Enables screen reader mode, adjusting the TUI for better compatibility default: false |
ui.customWittyPhrases | array<string> | Custom phrases to display during loading states default: [] |
ide | object | IDE integration configuration |
ide.enabled | boolean | Enable IDE integration mode default: false |
ide.hasSeenNudge | boolean | Whether the user has seen the IDE integration nudge default: false |
privacy | object | Privacy configuration |
privacy.usageStatisticsEnabled | boolean | Enable collection of usage statistics default: true |
model | object | Model configuration |
model.name | string | The Qwen model to use for conversations |
model.maxSessionTurns | integer | Maximum number of turns to keep in a session (-1 is unlimited) default: -1 |
model.chatCompression | object | Chat history compression configuration |
model.chatCompression.contextPercentageThreshold | number | Threshold for chat history compression as a percentage of token limit default: 0.7 |
model.skipNextSpeakerCheck | boolean | Skip the next speaker check default: false |
model.skipLoopDetection | boolean | Disables loop detection checks (use if false positives occur) default: false |
model.skipStartupContext | boolean | Skips sending the startup workspace context at session start default: false |
model.enableOpenAILogging | boolean | Enables logging of OpenAI API calls for debugging default: false |
model.openAILoggingDir | string | Custom directory path for OpenAI API logs |
model.generationConfig | object | Generation configuration parameters |
model.generationConfig.timeout | number | Request timeout |
model.generationConfig.contextWindowSize | integer | Override model's maximum assumed context capacity |
model.generationConfig.enableCacheControl | boolean | Enable cache control |
model.generationConfig.modalities | object | Override auto-detected input modalities |
model.generationConfig.customHeaders | object | Custom HTTP headers for API requests |
model.generationConfig.extra_body | object | Additional body parameters (OpenAI-compatible providers only) |
model.generationConfig.samplingParams | object | Fine-tuning knobs (e.g., temperature, top_p, max_tokens) |
context | object | Context configuration |
context.fileName | oneOf | The name of the context file(s) |
context.importFormat | string | The format to use when importing memory |
context.includeDirectories | array<string> | Additional directories to include in the workspace context default: [] |
context.loadFromIncludeDirectories | boolean | Controls behavior of /memory refresh for included directories default: false |
context.fileFiltering | object | File filtering configuration |
context.fileFiltering.respectGitIgnore | boolean | Respect .gitignore files when searching default: true |
context.fileFiltering.respectQwenIgnore | boolean | Respect .qwenignore files when searching default: true |
context.fileFiltering.enableRecursiveFileSearch | boolean | Enable recursive file searching for @ completions default: true |
context.fileFiltering.enableFuzzySearch | boolean | Enable fuzzy search capabilities default: true |
tools | object | Tools configuration |
tools.sandbox | oneOf | Sandbox execution environment (boolean or custom path string) |
tools.shell | object | Shell configuration |
tools.shell.enableInteractiveShell | boolean | Use node-pty for an interactive shell experience default: false |
tools.core | array<string> | Allowlist of built-in tools |
tools.exclude | array<string> | Tool names to exclude from discovery |
tools.allowed | array<string> | Tools that bypass the confirmation dialog |
tools.approvalMode | string | Default approval mode for tool usage default: "default"one of: "plan", "default", "auto-edit", "yolo" |
tools.discoveryCommand | string | Command to run for tool discovery |
tools.callCommand | string | Custom shell command for calling a specific discovered tool |
tools.useRipgrep | boolean | Use ripgrep for file content search default: true |
tools.useBuiltinRipgrep | boolean | Use the bundled ripgrep binary (requires tools.useRipgrep: true) default: true |
tools.truncateToolOutputThreshold | integer | Truncate output if larger than this many characters default: 25000 |
tools.truncateToolOutputLines | integer | Maximum lines/entries kept when truncating output default: 1000 |
mcp | object | MCP (Model Context Protocol) configuration |
mcp.serverCommand | string | Command to start an MCP server |
mcp.allowed | array<string> | Allowlist of MCP server names |
mcp.excluded | array<string> | Denylist of MCP server names |
security | object | Security configuration |
security.folderTrust | object | Folder trust configuration |
security.folderTrust.enabled | boolean | Setting to track whether Folder trust is enabled default: false |
security.auth | object | Authentication configuration |
security.auth.selectedType | string | The currently selected authentication type |
security.auth.enforcedType | string | The required auth type (useful for enterprises) |
security.auth.useExternal | boolean | Whether to use an external authentication flow |
advanced | object | Advanced configuration options |
advanced.autoConfigureMemory | boolean | Automatically configure Node.js memory limits default: false |
advanced.dnsResolutionOrder | string | The DNS resolution order |
advanced.excludedEnvVars | array<string> | Environment variables to exclude from project context default: ["DEBUG", "DEBUG_MODE"] |
advanced.tavilyApiKey | string | API key for Tavily web search service |
advanced.bugCommand | object | Bug command configuration |
advanced.bugCommand.urlTemplate | string | A URL that can contain {title} and {info} placeholders for the /bug command |
mcpServers | object | Model-Context Protocol server configurations |
telemetry | object | Telemetry configuration |
telemetry.enabled | boolean | Whether or not telemetry is enabled |
telemetry.target | string | The destination for collected telemetry one of: "local", "gcp" |
telemetry.otlpEndpoint | string | The endpoint for the OTLP Exporter |
telemetry.otlpProtocol | string | The protocol for the OTLP Exporter one of: "grpc", "http" |
telemetry.logPrompts | boolean | Whether or not to include the content of user prompts in the logs |
telemetry.outfile | string | The file to write telemetry to when target is local |
telemetry.useCollector | boolean | Whether to use an external OTLP collector |
Audit
What we found in this schema
- Declared draft: draft-07
- Validates cleanly against its own meta-schema.
- 137 properties, 82% carrying a description, max nesting depth 9.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$id | JSON Schema Core, draft 2020-12 | §8.2.1 — The "$id" Keyword |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
enum | JSON Schema Validation, draft 2020-12 | §6.1.2 — "enum" |
format | JSON Schema Validation, draft 2020-12 | §7 — Vocabularies for Semantic Content With "format" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
oneOf | JSON Schema Core, draft 2020-12 | §10.2.1.3 — "oneOf" |
pattern | JSON Schema Validation, draft 2020-12 | §6.3.3 — "pattern" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.