跳转到主要内容
Devin CLI 使用 JSON 文件 (支持注释) 进行配置。本页介绍所有可用选项。

文件位置

在 Windows 上,用户配置文件路径为 %APPDATA%\devin\config.json (例如 C:\Users\<you>\AppData\Roaming\devin\config.json) ,而不是 ~\.config\devin\config.json

完整配置参考


选项参考

标记为 仅限用户 的选项只能在用户配置中设置 (~/.config/devin/config.json;Windows 上为 %APPDATA%\devin\config.json) 。项目配置中只有 permissionsmcpServersread_config_fromhooks 可用。

Agent (仅限用户)

theme_mode (仅限用户)

权限

完整文档请参阅权限

mcpServers

服务器名称到服务器配置的映射。支持本地命令 (stdio) 和远程 HTTP 服务器。请参阅 MCP Configuration

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 署名。

auto_update (仅限用户)

控制 macOS 和 Linux 上的后台自动更新。启用后,Devin CLI 运行期间会在后台下载并启用新版本,因此下次调用 devin 时会自动使用最新版本。当前正在运行的会话不受影响——current 符号链接的切换只会在下次启动时生效。 此更新机制可安全应对中断:文件系统的每个步骤都会先暂存到临时路径,再通过原子重命名切换到正式位置;同时,并发更新会通过文件锁按顺序执行。更新过程中即使退出,也不会导致安装损坏——下次启动时仍只会继续使用旧版本。 仅适用于自行管理的安装 (macOS/Linux 上通过 curl | bash 安装) 。与其他产品捆绑的安装 (例如 Windsurf) 会忽略此设置,并通过其宿主应用进行更新。

notify

控制 Agent 完成任务或需要 user 输入时的终端通知。CLI 会写入一个 BEL 字符 (触发终端铃声/可视铃声) 、一个 OSC 9 转义序列 (在 iTerm2 和兼容终端中触发系统通知) ,以及一个 OSC 777 序列 (在 rxvt-unicode 和其他终端中触发桌面通知) 。无法识别这些序列的终端会安全地忽略它们。

read_config_from

控制是否从其他 AI 工具的配置中导入: 设为 false 可禁用某项导入。null 会被视为 true

proxy (仅限用户)

配置 CLI 如何为自身发出的 HTTP/HTTPS 流量 (API 调用、更新、MCP 服务器等) 选择代理路由。这不会影响 sandbox 子进程的联网方式 (见下方的 sandbox) 。 mode 字段用于选择代理策略: 示例——企业代理:
示例——禁用代理:

沙盒 (仅限用户)

Sandbox 网络过滤目前还不稳定。如果你需要此功能,请联系你的账户代表,了解其稳定性时间表。
为 沙盒 配置域级网络过滤。启用 --sandbox 且已配置域过滤时,系统会在回环地址上启动一个受管网络代理,沙盒 会强制所有子进程的网络流量都经由该代理转发。
如需全面了解 沙盒 的工作方式——包括企业级强制执行机制,以及企业设置与用户设置如何交互——请参阅 沙盒 文档
--sandbox 标志会在操作系统层面强制执行当前生效的 Read 和 Write 权限作用域。可写根目录根据已授予的 Write(...) 作用域以及工作区目录派生而来;可读根目录则来自 Read(...) 作用域 (平台默认路径始终可读) 。在会话中途授予的作用域会动态扩展 沙盒,使其对后续命令生效。
如果传入了 --sandbox,但 沙盒 初始化失败 (例如当前平台上没有可用的沙箱工具) ,CLI 会拒绝启动,而不是在无 沙盒 的情况下运行。这种“故障默认关闭”的行为可确保 --sandbox 的安全意图绝不会被悄然绕过。
域名模式语法: 示例:
仅在sandbox启用时 (--sandbox) ,域过滤才会生效。不使用 --sandbox 时,会忽略沙盒相关部分。
对于企业团队,管理员可以通过 团队设置 覆盖域名列表。企业允许列表以其配置为准 (会替换你本地的 allowed_domains) ,而企业拒绝列表则为叠加模式 (会与你本地的 denied_domains 合并) 。

带注释的 JSON

配置文件支持 JavaScript 风格的注释: