配置窗格
zerocode 的 Config 面板用于配置正在运行的 ZeroClaw。每个设置项都有类型化的控件、验证以及关于其作用的内联说明,且大多数设置无需重启守护进程即可实时生效。可从任意 zerocode 会话中打开它,并在其中编辑设置,而无需手动编辑配置文件。
设置仍会持久化到你的配置中,文档描述了相关字段,以便你能清楚看到某个控件具体写入了什么内容。请将这些描述理解为持久化后的结果,而不是要你用编辑器打开文件的指示。手动编辑是针对无头主机和脚本化配置的备用方案,文档会在这些场景中明确指出这一点。
键绑定修饰键
键绑定使用规范的修饰键名称:control 表示字面意义上的 Control,primary 在 macOS 上表示 Command,在其他平台上表示 Control,而 super 表示字面意义上的 Super/Command。例如,control+c、primary+r 和 alt+shift+up 是可移植的持久化值。较旧的 ctrl+... 值会在配置加载时迁移一次,并重写为对应的规范拼写。
为什么用窗格而不是文件
- 验证。 控件会在格式错误的值到达守护进程之前将其拒绝,因此拼写错误不会导致配置进入无法加载的状态。
- 可发现性。 每个设置都附带内联说明,因此你无需对照配置参考即可了解某个字段的作用。
- 实时应用。 大多数设置在下一帧生效,无需重启。
- 基于注册表的列表。 提供程序、通道、模型和主题选项均来自后端注册表,因此你看到的选项正是此版本所支持的选项。
本地 UI 设置(zerocode-config.toml)
某些设置描述的是 zerocode 本身 如何绘制其窗格,而不是守护进程如何运行。这些设置位于 zerocode 自己的文件 <config-dir>/zerocode-config.toml> 中,并可从 zerocode 的 Config 窗格进行编辑。
TodoWrite 跟踪器就是其中之一。它只是一个仅用于显示的功能:守护进程只会发出计划更新,而通过 ACP,客户端完全控制格式,因此它归 zerocode 所有:
[todotracker]
enabled = true # 主开关;为 false 时跟踪器永不渲染
enabled_at_start = false # 启动时可见,在第一个计划到达之前
location = "right" # "bottom"、"left" 或 "right"
width = 32 # 侧面板目标列宽(左/右)
max_height = 5 # 底部条最大高度(行数)
每次会话边界都会重新读取值,因此在 Config 窗格中所做的编辑会应用于你下次启动、重启或切换到的会话,无需重启 zerocode。
环境覆盖
任何字段都可以在单次运行中通过 ZEROCODE_ 变量进行覆盖。变量名由此前缀后接小写配置路径组成,其中 . 写作 __:
ZEROCODE_todotracker__enabled=false zerocode
ZEROCODE_todotracker__location=底部 zerocode
这些覆盖项仅在进程生命周期内有效:它们只影响正在运行的实例,永远不会写回 zerocode-config.toml。在 Config 窗格中保存无关字段,不会将环境变量注入的值写入文件。
从由守护进程拥有的 [todotracker] 升级
在此设置迁移之前,[todotracker] 是 守护进程的 config.toml 中的一个节。如果你曾在那里设置过,请将这些值复制过来:
- 打开你的守护进程
config.toml,并记下[todotracker]中的值。 - 将相同的代码块放入
<config-dir>/zerocode-config.toml>(如上所示),或在 Config → Todo tracker 中进行设置。 - 从守护进程
config.toml中删除[todotracker]部分。
现有的 ZEROCLAW_todotracker__* 环境变量在升级前不需要移除:守护进程会接受并忽略这五个已识别字段(enabled、enabled_at_start、location、width、max_height),因此之前正常工作的部署仍可启动。它们不再有任何作用,因此请将它们改为上面的 ZEROCODE_ 写法。