hunk - Review-first terminal diff viewer for agentic coders
📄 Summarized by Claude Sonnet 4.6
hunk - Review-first terminal diff viewer for agentic coders
2026年3月24日(v0.6.1リリース)
どんなもの?
hunkは、AIエージェントが生成したコード変更セットをレビューするために設計された、ターミナル上で動作するTUI(Text User Interface)のdiffビューアーOSSツール。npm経由でインストール可能(npm i -g hunkdiff)で、Node.js 18以上・macOS/Linuxで動作する。
OpenTUIとPierre diffsライブラリを基盤として構築されている。
主要機能は以下の通り:
サイドバーナビゲーション付きのマルチファイルレビュー
コードの隣にインラインで表示されるAIエージェントのアノテーション
Split/Stack両対応のレスポンシブ自動レイアウト
ファイル変更またはGit差分を自動リロードするwatchモード
キーボード・マウス・ページャー・Git difftool対応
先行研究と比べてどこがすごい?
既存ツール(lumen、difftastic、delta、diff-so-fancy、diff)との比較において、hunkが唯一提供する機能が2つある。
インラインAIエージェントアノテーション:AIエージェントがコード変更の各行にコメントを残せる機能は他ツールに存在しない
レスポンシブ自動Split/Stackレイアウト:ウィンドウサイズに応じてレイアウトを自動切替する機能も同様に唯一
一方で、difftasticが持つ構造的diffing(AST差分)はhunkが未対応であり、万能ではない点は留意が必要。
技術や手法のキモはどこ?
エージェント連携の仕組みが核心技術:
ローカルループバックデーモン方式:TUI起動時にローカルデーモンへ登録し、hunk session ... コマンド経由でリモートコントロールを実現
hunk session コマンド群によりエージェントがライブウィンドウを操作可能(ナビゲーション・リロード・コメントの追加削除)
スキルファイル(skills/hunk-review/SKILL.md)をClaude・Codex等のコーディングエージェントに読み込ませることで、エージェント自身がhunkの操作方法を学習できる
--agent-contextフラグによるJSONサイドカーファイルからのエージェントコメント読み込みも対応
設定ファイル(~/.config/hunk/config.toml)でテーマ(graphite / midnight / paper / ember)・レイアウトモード等を永続化可能。
どうやって有効だと検証した?
本リポジトリはOSSツールであり、学術的な評価論文は存在しない。
有効性の根拠となる要素:
機能比較表による他ツールとの定量的比較(9項目の機能マトリクス)
examples/ディレクトリに実行可能なデモdiffを収録
GitHub Actions CI環境での継続的テスト
v0.6.1まで7リリースの実績(スター148件、フォーク5件)
議論はある?
現時点での制限・未対応事項:
構造的diffing(ASTベース差分)は未実装(difftasticが優位)
Windowsは非対応(macOS・Linuxのみ)
エージェント連携にはスキルファイルの手動読み込みが必要であり、セットアップに一定の手間が生じる
ローカルデーモン経由のリモートコントロールはhunk mcp serveによるMCPサーバーとの使い分けが必要で、設定の複雑さが課題となりうる
#agentic_coding
#diff_viewer
#TUI
#code_review
#developer_tools