agent-manager

文档 · 审查模式

审查模式

本页由英文版翻译而来。两者不一致时,以英文版为准。

在会话上按 ctrl+r,整个屏幕交给它的仓库,并使用一套独立的键位:左侧是改动的文件和 +/- 计数,右侧是完整文件,带语法高亮,改动的行有底色标出,每处修改都能在完整上下文中阅读。智能体继续编辑时它会随之刷新,esc 带你回到列表中原来的位置。

图 3ctrl+r · 审查模式
审查界面动画演示:并排滚动查看一个改动过的 Go 文件,布局切换为统一视图,打开下一个文件,然后把一条行评论发回给智能体,智能体随即开始处理。

评论会发回给智能体

c 在任意行写一条评论,d 删除一条。评论会一直留在审查界面,直到你发送它们。C 把所有评论合并成一条提示词,请你确认后投递到智能体的面板中,于是智能体开始处理你的评论,而你看着 diff 随之更新。

评论和已审查文件的标记在退出后依然保留。C 把当前草稿作为一轮带编号的评论发送,每一条都保留自己的 id。智能体用 review_comment,或在 shell 中用 agent-manager review-comment 把某条标记为已处理。在已发送的评论上,d 将其标记为已处理或未处理。所在行已经不存在的评论会被标记为过时。

按键

按键操作
↑↓ / j k滚动文件。ctrl+d 和 ctrl+u 移动半页,g 和 G 跳到首尾。
J / K下一个、上一个文件。tab 和 shift+tab 作用相同。
n / N在改动之间跳转。
u在统一视图和并排视图之间切换,光标停留在同一源代码行。
s循环切换范围:未提交、对比目标、上一次提交、已暂存。
r当会话目录中有多个仓库时选择仓库。输入文字可过滤。
b从仓库的 worktree 中选择分支。
B选择“对比目标”范围所对比的目标。
space将文件标记为已审查。
f只显示代码文件,隐藏图片、编译产物和锁文件;再按一次重新显示。
c / d写入或删除草稿。在已发送的评论上,将其标记为已处理或未处理。
C把当前草稿作为一轮带编号的评论发送。Enter 或 y 确认。
o / F3在编辑器中打开当前文件。
esc / q关闭审查。

标题栏中每个可修改的值都标有自己的按键,所以范围、布局、仓库和目标这几个标签一眼就能看出分别对应 s、u、r、B。

图 4并排视图
并排视图下的审查界面,改动的行在完整文件中带底色显示。

它会打开哪个仓库

会话常常从一个本身不是 git 仓库的父目录启动。以 ~/company 为例,里面有 api/ 和 web/。按下 ctrl+r,审查会向下查找三层子目录,跳过依赖和构建目录,打开有未提交改动的仓库。如果所有仓库都是干净的,就打开最近有提交的那个。按 r 并输入文字可以选择另一个。

列表底栏会提醒你告诉智能体 "set review mode"。智能体调用 review 工具,或在其会话内的 shell 中运行子命令,下一次审查就会在那里打开:

Terminal
agent-manager review-repo /path/to/repo
agent-manager review-base main

该路径会被检查是否位于 git 仓库内,并解析到仓库根目录,所以这个声明是确定的事实而不是猜测。之后审查按固定顺序确定目标:

Worktree 无论链接的 worktree 位于磁盘何处都能被发现,所以一次声明就同时指定了仓库和要审查的分支。保存的基准 ref 如果无法解析,会在审查中显示为错误,B 打开选择器来设置或清除它。