偏好设置

外观、语言、通知、联网、运行时、沙箱这些偏好分散在哪几处,以及它们各自什么时候生效。

「你自己的偏好」分散在三处:侧栏底部的头像菜单(语言、主题与配色、字号)、「设置 → 偏好设置」(会话 / 应用 / 通知),以及按功能分开的几页(语音输入、联网、运行时、沙箱、记忆)。

  • 外观:主题分「跟随系统 / 浅色 / 深色」。配色(那套代码与语法高亮色板)浅色和深色各记一套,所以在浅色下换过的色板不会动到深色那套;浅色有 17 套、深色有 28 套,ayu、dracula、monokai、终端绿这些只有深色有。UI 字号 11–16(默认 14),代码字号 8–24(默认 12)。
  • 语言:界面和托盘立刻跟着变;传给引擎的「用哪种语言回答」是启动引擎时带过去的,所以正在跑的那一轮不会中途换语言。
  • 通知:桌面通知与提示音默认都开,分别对应「需要你输入 / 干完了」和「你不在时干完了」。
  • 后续消息行为:运行中发出去的消息默认「引导」(不打断模型,直接注入当前这一轮),也可以改成「排队」(等这一轮结束再发)。这只是默认值,每条消息在输入区还能单独选。
  • 语音输入:识别语言默认跟随系统,转写润色和语音学习默认都开。
  • 联网:搜索默认开、来源默认「模型自带」。关掉搜索不等于断网——你直接给网址它照样能抓。Brave 和自定义来源还要填 API Key / 接口地址,那两个字段只能你自己填。
  • 运行时:只留最大工具并发(默认 10)。主会话没有固定的模型轮数上限;子 Agent 和内部维护任务各自按任务类型设置限制。其余引擎数值不上设置面:对绝大多数人只有一个好值,就是引擎自己的默认值,而那个值会随引擎升级变化。真要调的走 ~/.klaus/settings.jsonengine 块。
  • 沙箱与边界:命令沙箱默认开、后端按系统自动选;额外可写 / 可读根目录、读取限制都在这一页。
  • 记忆:自动记录默认开(每轮结束把值得留的写进记忆)。

偏好存在两个地方。你平时不用关心,但它决定「什么时候生效」:

  • klaus.*feature:* 这些属于引擎配置,落在 ~/.klaus/config.toml。一个会话的配置是它启动那一刻的快照,所以改完之后已经开着的对话会在下一回合自动重建并带上新值,不用重开会话。
  • 外观、语言、通知这些属于客户端自己的存储,改完当场生效。
  • 留空不是关掉,是回到默认:那一行会被删掉,用的是引擎/客户端自带的默认值。所以数值和列表可以清空,开关必须明确写开或关。
  • 写错的值不会报错,只会被丢掉:存不下的值等于没设——那一行消失、悄悄回到默认,而写入本身还是「成功」。这就是让 Klaus 改偏好时它走「按名字改」那条路的原因(见下一节):先校验,再写。
  • 额外可写根目录是要么全算要么全不算:列表里只要有一条不是以 / 开头的绝对路径,整份列表都不会被保存。Windows 上这一行同样只认这种形式。

让 Klaus 改这些:直接说「字号调大一点」「配色换成 dracula」「关掉搜索」「把下载目录也设成可写」。它按名字改(themecodeThemeDarkuiFontSizewebSearch……),不用你记存储键名,它也会先把值校验一遍。其中两件事它会先问你再动手:关掉命令沙箱加额外可写目录——这两个是把保护让出去,得你亲口同意;定时任务里的那一轮没人在场,这两件事在那里会被直接拒绝。