文件位置
在 Windows 上,用户配置文件路径为
%APPDATA%\devin\config.json 和 %APPDATA%\devin\mcp_config.json (例如 C:\Users\<you>\AppData\Roaming\devin\config.json) ,而不是 ~\.config\devin\。MCP 服务器在 v3000.3 (Local 3.6 版本) 中已移至专用的
mcp_config.json 文件。旧版本会将其存储在主配置文件的 mcpServers 密钥中;新版本会在启动时自动迁移其中找到的所有 mcpServers 条目。请参阅 mcpServers。完整配置参考
- 用户配置
- 项目配置
选项参考
标记为 仅限用户 的选项只能在用户配置中设置 (
~/.config/devin/config.json;Windows 上为 %APPDATA%\devin\config.json) 。项目配置中只有 permissions、read_config_from 和 hooks 可用。mcpServers 也可在两个级别设置,但位于专用的 mcp_config.json 文件中 (请参阅 mcpServers) 。Agent (仅限用户)
theme_mode (仅限用户)
权限
mcpServers
~/.config/devin/mcp_config.json (Windows 上为 %APPDATA%\devin\mcp_config.json) 、.devin/mcp_config.json 和 .devin/mcp_config.local.json。在较早版本中,mcpServers 密钥直接位于主配置文件中;较新版本会在启动时自动将其迁移到专用文件中。
show_path (仅限用户)
在输入框边框中显示当前工作目录路径。启用后,输入框上边框会显示美化后的 CWD (例如~/projects/my-app) 。
unicode_mode (仅限用户)
控制终端 UI 使用 Unicode 符号,还是使用兼容 ASCII 的替代字符。如果你的终端或字体无法正确渲染 Unicode 字形 (例如 ⏺ 符号显示为方框) ,请将其设为"ascii"。
show_hints (仅限用户)
在对话轮次之间偶尔显示提示 (例如“你知道吗:使用/model 可在可用模型之间切换”) 。有助于你了解 CLI 功能;熟悉后可将其设为 false 以关闭这些提示。
include_gitignored_files (仅限用户)
在@ 选项卡补全结果中包含被 Git 忽略的文件。启用后,匹配 .gitignore 规则的文件会出现在 @ 提及补全中。如果你将文档或其他文件存放在被 Git 忽略的目录中,并希望引用它们,此选项会很有用。
respect_gitignore (仅限用户)
控制 Agent 在通过工具读取或写入文件时是否遵守.gitignore。启用后,访问被 .gitignore 忽略路径的工具调用会被阻止。这与 include_gitignored_files 不同,后者仅影响 @ 选项卡补全。
attribution (仅限用户)
控制 Agent 是否在其创建的提交和拉取请求中添加 Devin 署名。启用后,提交信息和 PR 正文会包含一行Generated with [Devin] 以及一个 Co-Authored-By: Devin 尾注。将其设为 false 可省略这两项,即不添加任何 Devin 署名。
subagents_enabled (仅限用户)
控制 Agent 是否可以将工作交给子 Agent。禁用后,run_subagent 和 read_subagent 工具将被移除,因此 Agent 会自行完成所有工作。更改此设置会立即生效,正在运行的会话无需重启即可采用新设置。
Organization policy 优先:如果 Admin 已通过 默认子 Agent 模型 设置为你的 org 禁用子 Agent,则无论此设置如何,子 Agent 都会保持禁用状态。
keymap (仅限用户)
覆盖 CLI 的内置键盘快捷键。此部分是一个上下文表 (global、editor、input、list、…) ,每个上下文将操作名称映射到触发相应操作的按键。未列出的操作将保留其内置默认设置。
按键规范由通过
- 分隔的修饰键 (ctrl、alt、shift) 和一个按键名称组成 (按键名称可以是单个字符,也可以是 enter、esc、tab、home、page-up、f5 等命名按键) 。修饰键的顺序不限,匹配不区分大小写;但单个大写字符表示绑定带 Shift 的按键 ("K" 等同于 "shift-k") 。
global.cancel (Ctrl+C) 无法解除绑定,因此你始终可以中断正在运行的 Agent。无效条目、未知的上下文或操作,以及会与同一上下文中其他快捷键冲突的覆盖项,都会在启动时报告,并回退到内置默认值。auto_update (仅限用户)
控制 macOS 和 Linux 上的后台自动更新。启用后,Devin CLI 运行期间会在后台下载并启用新版本,因此下次调用devin 时会自动使用最新版本。当前正在运行的会话不受影响——current 符号链接的切换只会在下次启动时生效。
此更新机制可安全应对中断:文件系统的每个步骤都会先暂存到临时路径,再通过原子重命名切换到正式位置;同时,并发更新会通过文件锁按顺序执行。更新过程中即使退出,也不会导致安装损坏——下次启动时仍只会继续使用旧版本。
仅适用于自行管理的安装 (macOS/Linux 上通过 curl | bash 安装) 。与其他产品捆绑的安装 (例如 Windsurf) 会忽略此设置,并通过其宿主应用进行更新。
keymap (仅限用户)
覆盖键盘快捷键。覆盖项按 context 和 action 标识;该标识符为/shortcuts 中每个快捷键显示的 context.action (例如 editor.insert_newline) :
覆盖会完全替换该 action 的内置默认设置;未列出的 action 将保留默认设置。
Ctrl+C (取消) 无法解除绑定。无效条目 (未知名称、无效的按键规范、类型不正确的值,或与同一上下文中其他绑定冲突的覆盖) 会在启动时以警告形式报告并跳过——其余配置仍会生效。
按键规范由零个或多个以 - 分隔的修饰键以及一个按键名称组成 (例如 ctrl-shift-p、alt-enter、f5、K) 。修饰键:ctrl/control/c、alt/meta/option/opt/m、shift/s。命名按键:enter、esc、tab、backspace、delete、insert、up、down、left、right、home、end、page-up、page-down、space、f1–f24。其他任何单个字符都会绑定对应的字符键 (区分大小写:K 会绑定 Shift+K) ;减号键请使用 - (ctrl--) 。
你也可以交互式地重新绑定:在 /shortcuts 中,选中某个快捷键行后按 Enter,再按下新按键——更改会保存到此 keymap 部分。参见自定义按键绑定。
notify
read_config_from
设为
false 可禁用某项导入。null 会被视为 true。
proxy (仅限用户)
配置 CLI 如何为自身发出的 HTTP/HTTPS 流量 (API 调用、更新、MCP 服务器等) 选择代理路由。这不会影响沙盒子进程的联网方式 (见下方的sandbox) 。
mode 字段用于选择代理策略:
示例——企业代理:
管理员也可以在适用于整台机器的系统配置文件中设置相同的
proxy 块。Enterprise 设置优先;如果两个文件中都配置了代理,将导致错误——如果你的组织负责管理此设置,请从你的用户配置中移除 proxy 部分。沙盒 (仅限用户)
为 沙盒 配置域级网络过滤。启用--sandbox 且已配置域过滤时,系统会在回环地址上启动一个受管网络代理,沙盒 会强制所有子进程的网络流量都经由该代理转发。
如需全面了解 沙盒 的工作方式——包括企业级强制执行机制,以及企业设置与用户设置如何交互——请参阅 沙盒 文档。
--sandbox 标志会在操作系统层面强制执行可写路径和 deny 规则。可写根目录根据已授予的 Write(...) 作用域以及工作区目录派生而来;除此之外的所有路径均可读,但被 Read(...) 拒绝规则隐藏的路径除外。在会话中途授予的 Write(...) 作用域会动态扩展 沙盒,使其对后续命令生效。
如果传入了
--sandbox,但 沙盒 初始化失败 (例如当前平台上没有可用的沙箱工具) ,CLI 会拒绝启动,而不是在无 沙盒 的情况下运行。这种“故障默认关闭”的行为可确保 --sandbox 的安全意图绝不会被悄然绕过。
域名模式语法:
示例:
仅在沙盒启用时 (
--sandbox) ,域过滤才会生效。不使用 --sandbox 时,会忽略沙盒相关部分。对于企业团队,管理员可以通过 团队设置 覆盖域名列表。企业允许列表以其配置为准 (会替换你本地的
allowed_domains) ,而企业拒绝列表则为叠加模式 (会与你本地的 denied_domains 合并) 。
