Skip to content

Kiro CLI Diff 工具配置用于替换默认 inline diff。当 Kiro 提议修改文件时,你可以通过 chat.diffTool 使用 delta、difftastic、icdiff、VS Code、Meld 等外部工具,获得语法高亮、并排视图或结构化 diff 体验。

Kiro CLI Diff 工具:用 delta、difftastic 或 GUI 查看改动

Kiro CLI 在提出文件修改时,会用内置 diff 展示改动。如果你更习惯 Git 生态里的 delta、结构化 diff 工具 difftastic,或者 VS Code、Meld 这类 GUI 工具,可以把 Kiro 的 diff 输出交给外部工具处理。

这对 AI 编程尤其重要:不要只看“任务完成”,而要看清楚 agent 改了什么、为什么这样改。

配置 diffTool

通过 chat.diffTool 设置外部 diff 工具:

bash
kiro-cli settings chat.diffTool <tool-name>

例如使用 delta

bash
kiro-cli settings chat.diffTool delta

恢复内置 diff:

bash
kiro-cli settings -d chat.diffTool

终端 diff 工具

如果你希望留在终端里审查改动,可以选这些工具:

ToolConfig value适合场景
deltadelta想要语法高亮、行号和 Git 风格输出
difftasticdifft需要语言感知的结构化 diff,减少格式噪音
icdifficdiff快速查看彩色并排 diff
diff-so-fancydiff-so-fancy想要更干净的人类可读输出
colordiffcolordiff简单彩色 diff
diff-highlightdiff-highlightGit 自带的词级高亮
ydiffydiff并排视图 + 词级高亮
batbat语法高亮和 Git 集成

difftastic 更适合代码结构变化;delta 更适合日常 Git diff 习惯。

GUI diff 工具

如果你更喜欢单独窗口审查变更,可以配置 GUI 工具:

ToolConfig value
VS Codecode
VSCodiumcodium
Meldmeld
KDiff3kdiff3
FileMerge(macOS)opendiff
Vimvimdiffvim
Neovimnvim

GUI diff 适合大改动或需要并排查看上下文的场景。终端 diff 则更适合快速确认小改动。

自定义参数

可以把工具参数写进引号里:

bash
kiro-cli settings chat.diffTool "delta --side-by-side"

这样 Kiro 会用带参数的命令调用外部工具。注意参数是否被当前 shell 正确解析,路径有空格时也要加引号。

未列出的工具也能用吗

可以。配置某个工具后,Kiro 会尝试两种方式:

  1. 把 unified diff 通过 stdin 传给工具。
  2. 用两个临时文件路径作为参数调用工具。

如果两种方式都失败,Kiro 会回退到内置 inline diff。

排障方法

如果看到 Couldn't find the diff tool,通常是工具未安装或不在 PATH 中。先确认命令可访问:

bash
which delta

如果没有返回路径,需要先安装工具。例如安装 delta

bash
# macOS
brew install git-delta

# Ubuntu/Debian
sudo apt install git-delta

Windows 用户需要确认工具命令能在当前终端环境中直接运行。

常见问题

Q: Kiro CLI 默认 diff 不够好怎么办?

A: 用 kiro-cli settings chat.diffTool <tool> 配置外部工具,例如 deltadifftasticcode

Q: Kiro CLI 支持 GUI diff 吗?

A: 支持。可以配置 VS Code、Meld、KDiff3、FileMerge 等 GUI 工具。

Q: 外部 diff 工具找不到怎么办?

A: 先用 which <tool> 检查是否在 PATH 中;如果没有,安装工具或修正终端环境变量。