跳到正文
FunCoding

搜索

搜索文档、Skill 和 MCP

设置文件与配置层级

找到用户、项目和系统设置,处理迁移、环境替换与例外字段。

Qwen Code 使用 settings.json 保存长期设置。大多数字段归入 general、ui、model、tools 等对象,proxy、plansDirectory 等仍是顶层键。

从低到高的配置来源

默认值 → System defaults → 用户 → 项目 → System → 环境变量 → CLI 参数,是官方给出的通用顺序。

该顺序不表示所有字段都逐层深合并。权限数组可能做并集,modelProviders 项目段会替换用户段,选中提供商的 generationConfig 是独立整套配置;详见模型解析。某些 operator-only 设置忽略工作区值。

文件位置
用户~/.qwen/settings.json
项目项目根目录 .qwen/settings.json
Linux 系统默认 / 系统覆盖/etc/qwen-code/system-defaults.json / settings.json
Windows 系统默认 / 系统覆盖C:\ProgramData\qwen-code\system-defaults.json / settings.json
macOS 系统默认 / 系统覆盖/Library/Application Support/QwenCode/system-defaults.json / settings.json

表中系统覆盖 settings.json 与同一行 system-defaults.json 位于同目录。QWEN_CODE_SYSTEM_DEFAULTS_PATH、QWEN_CODE_SYSTEM_SETTINGS_PATH 可分别指定系统文件路径。

启用文件夹信任后,未信任项目不加载项目设置,见信任目录。

嵌套对象示例

{
  "general": {
    "vimMode": true
  },
  "output": {
    "showTimestamps": true
  },
  "tools": {
    "approvalMode": "default"
  }
}

这是启用 Vim、显示时间戳并选择人工审批的示例,不能把点路径直接当作通用 JSON 键写法。

普通字符串支持 $VAR_NAME 或 ${VAR_NAME} 环境替换;但 Linux executionSandbox 要求字面值,Web 品牌字段也有专门限制。敏感配置应按对应字段说明处理,而不是默认所有占位符都可用。

旧设置迁移

旧格式会先备份再迁移。以下 disable 字段改为 enable 并反转布尔值:

旧字段当前字段
disableAutoUpdate、disableUpdateNaggeneral.enableAutoUpdate
disableLoadingPhrasesui.accessibility.enableLoadingPhrases
disableFuzzySearchcontext.fileFiltering.enableFuzzySearch
disableCacheControlmodel.generationConfig.enableCacheControl

前两个更新开关只要任一旧值为 true,新 enableAutoUpdate 就为 false。不能把旧值原样复制到正向字段。

tools.allowed、tools.exclude、tools.core 不自动迁移;尤其 core 白名单没有完全等价的新字段,见工具注册与发现。

按目的查设置