persiyanov/herdr-reviewr

A code review + file viewer sidebar for herdr. Comment on a diff and send back to agent. Inspect diffs, files, and a PR state.

herdr‑reviewr – herdr のためのターミナルベースのコードレビュー用パネル

何ができるか

  • herdr AIアシスタントのターミナルUI用プラグインで、エージェントが作成したファイルのライブ差分を表示します。変更内容をスクロールして、行または範囲にコメントを追加し、ターミナルから離れることなくエージェントにコメントを送信できます。
  • チャットウィンドウの隣の分割パネルとして動作するか、スタンドアロンのターミナルアプリとして動作します。

主な機能

  • 4種類の差分スコープ – 未コミット変更、全ブランチ、エージェントの前回の「ターン」、または任意のコミットセットを表示できます。
  • 行単位のコメント – 行選択(v)、コメント入力(c)、編集/削除(e/d)、すべてのコメントをエージェントに送信(s)。
  • ナビゲーター – ファジィファイル検索、ライブgrep(fffツール経由)、Markdownもレンダリング可能なファイルビューア。
  • PRタブ – GitHub、GitLab、Azure DevOpsの現在のプルリクエスト/マージリクエストの読み取り専用表示(それぞれのCLIツールが必要)。
  • テーマとUI – 18種類のダーク/ライトパレットを内蔵、--themeまたはTOML設定ファイルでカスタマイズ可能。
  • カスタムキーバインディング – すべての操作を再割り当て可能。デフォルトはREADMEに記載されています。

インストール方法

  1. herdrがインストール済みの場合(≥ 0.7.5):
    herdr plugin install persiyanov/herdr-reviewr
    herdr plugin action invoke open --plugin persiyanov.reviewr
    
  2. スタンドアロン版(herdr不要):リリースページから事前ビルド済みバイナリをダウンロードし、リポジトリに対して実行します:
    herdr-reviewr ~/my/project
    
    (UIは動作しますが、「送信」や「last-turn」スコープはherdrが必要です。)

設定

  • CLIフラグ:--poll <ms>--base <ref>--theme <name>--wrap on|off
  • 永続的なTOMLファイル:~/.config/herdr/plugins/config/persiyanov.reviewr/config.toml に、themedefault_scope、ナビゲーターの位置、エディタコマンド、カスタムキーバインディングなどのデフォルト値を設定可能。
  • .gitignoreを尊重。大きなファイル(> 2 MiB または 50k行)は差分から除外されます。

制限事項

  • 真彩色ターミナルとUnicodeボックス描画文字が必要。256色ターミナルにはフォールバックなし。
  • macOSまたはLinuxのみ対応。Windowsはサポート対象外。
  • クリップボード統合には pbcopywl-copyxclipxsel が必要。
  • コメントは現在のセッション内でのみメモリ上に存在。パネルを閉じると未送信のコメントは失われます。
  • 「送信」はherdrワークスペースにエージェントが存在する場合にのみ動作します。
  • PRビューは読み取り専用で、各スレッドのコメントは最大100行まで。

今後の計画

  • コメントの構造化JSONエクスポート。
  • サイドバイサイドの分割ビュー。
  • OSCによる自動ライト/ダークテーマ検出。
  • さらに多くのテーマ(例:kanagawa、everforest)とOSC-52クリップボードサポート。

ライセンス

  • コードはMITライセンス。
  • 構文強調表示のアセットは syntect および two-face にそれぞれライセンスが適用されています。

herdr‑reviewr は、herdrターミナルUI内でAIコードエージェントを使用する開発者向けの実用的なツールです。コンソールから離れることなく、キーボード中心の方法で生成されたコードを集中してレビュー・コメントできます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • Dispatch
  • Dispatch