主界面与会话

侧栏的组织方式,以及重命名、导出、分支、归档、回退这些会话操作各自动了什么。

侧栏

侧栏分两块。上面是一列固定的入口:新建对话、扩展(折叠组,里面是连接器 / 技能 / 插件 / 快捷命令 / 智能体)、频道、定时任务、记忆、好友(见好友协作)。下面是会话列表,分四段:

  • 置顶任务:你手动置顶的会话。
  • 频道:来自外部即时通讯的会话,见频道。
  • 项目:按工作目录归拢的项目,展开是该项目下的会话。为一个目录建项目,项目内的会话就围绕真实文件和命令展开;没挂项目的普通对话在下面那段单独排。工作区和每个好友的任务会话也各自成组放在这一段里。这些组可以用鼠标拖动排序,也可以按住 Alt 再按上下方向键调整,顺序会记住。
  • 最近任务:其余历史会话。

四段各自可以折叠,折叠状态会记住,下次打开还是那样;折叠着的段里有活动时会显示一个徽标,所以收起来也不会漏掉正在跑的东西。选中的那条如果标题太长放不下,会自动跑马灯滚动。

会话行上还会标状态,并且排序把「在等你」的排到前面,优先级是 等待输入 > 未读 > 正在跑 > 空闲:

  • 「需要输入」是一颗蓝色药丸——它在问你一件事(追问卡或需要你选择的问题)。点这颗药丸可以先把它静音一分钟,让你手头的活先做完。
  • 「等待批准」是一颗绿色 chip——有一张权限卡在那儿等你放行。
  • 侧栏工具栏里有一个活动视图开关,只看有动静的那些会话;配一个「跳到下一条需要处理的会话」的命令,可以一路按着往下走。
  • 会话是否「正在跑」只看它自己的回合:回合结束后,即使它派出去的后台子智能体还在工作,侧栏和输入框也不再显示运行中;子智能体的进度在概览面板里看。
  • 全局搜索(⌘/Ctrl+K)覆盖全部会话,包括折叠着的分段、分页没加载到的会话和好友会话。

会话操作

每个会话支持:重命名、置顶、导出、复制会话 ID、在新任务中继续(从当前会话分支出新会话,标记为「分支会话」)、报告问题、归档、删除。这些都在会话行右边那个 ⋯ 菜单里。已归档会话在「设置 → 已归档会话」中查看、搜索、取消归档或删除。

  • 分支是快照:建立分支的那一刻把原会话的记录复制一份,之后两条线各走各的,原会话后面新增的消息不会再流进分支。原会话正在跑时会先等这一轮结束(最多 20 秒)再分支,否则分支只拿到半截对话。也可以从某条消息处分支:从你发的消息分支,只带那条消息之前的内容;从助手回复分支,带到这条回复为止的全部对话。分支继承原会话的项目与工作目录,标题沿用原会话的标题。
  • 「回退」只回滚对话,不动文件。从某条消息回退,是把对话退回到那条消息发送之前:那条消息的文字填回你的输入框,之后的消息从上下文里移除,而磁盘上的文件保持原样——确认弹窗里就明写着这一点。「删除之后的内容」同样只动对话。
  • 想连文件一起撤,是另一个动作:回合改动区块上的撤销键,它专门恢复文件、不动对话。这一条依赖文件检查点,而检查点默认是关着的,界面上也没有这个开关(它是引擎配置里的 checkpointing,可以让 Klaus 帮你打开)。所以默认情况下「回退」压根不碰文件,而撤销文件也会告诉你没有可用检查点——它不是一个能把改坏的代码撤回来的撤销键,真要这么用得先把检查点开上。
  • 开着的时候,快照记在一个影子 git 仓库里(~/.klaus/checkpoints/<项目指纹>/):工作树指着你的项目,历史却落在影子仓库,所以你自己的 .git、分支、暂存区完全不被碰,项目本身也不需要是 git 仓库(只要机器上有 git)。恢复是破坏性的:已跟踪文件被改回去,未跟踪文件被清掉,快照之后的活儿一并没了。
  • 归档不是删除:会话从侧栏移到「设置 → 已归档会话」,可以随时取消归档,也可以从已归档的会话直接分支继续。归档要求这条会话当前没有在跑;要是它还挂着后台进程,确认弹窗会多提一句「此会话仍有 N 个后台进程处于活动状态」。
  • 没答的问题会回到输入框:Klaus 在任务中问你的问题,如果你切走了还没回答,重新进入这条会话时它会重新出现在输入框上方,不用往上翻找。有些问题是可选的澄清:Klaus 先按合理的假设继续干,你可以随时回答来纠偏,也可以「跳过」或「稍后再说」,任务不会因此停下。
  • 重启后正在跑的任务会自己接上:更新重启、崩溃、你自己退出再打开,Klaus 都记得哪些会话上次退出时还有一轮没跑完,启动后自动替你点继续,不用你一条条找回来。频道消息起的会话不在这个范围里。

多窗口与查找

  • 菜单「新建窗口」打开多个独立主窗口,每个窗口保留自己的草稿与面板布局,适合并行跟进多条任务。
  • 菜单「查找」(⌘/Ctrl+F)在当前窗口的内容里查找,覆盖聊天、文件、更改和浏览器页面,带匹配计数、大小写开关与「查找上一个 / 查找下一个」;回复流式输出时结果实时刷新。它与覆盖全部会话的全局搜索(⌘/Ctrl+K)是两回事。