≪ Today I learned.
RSS購読
    公開日
    更新日
    タグ
    AI
    著者
    ダーシノ

    OpenCodeReview + さくらのAI Engineでコードレビューを自動化する

    OpenCodeReviewは、Alibabaが公開しているAIレビューツールだ。

    ※中国系企業のため、企業によっては情報セキュリティポリシーにより利用できない場合があるので、その点は各自判断してほしい。私の場合は、 オープンソースとして実装内容を確認できること、利用するLLMプロバイダーを選択できることから許容できるリスク水準と判断し利用した。

    LLM Providerを自由に選択できるため、無料枠で利用できるさくらのAI Engineを使う。

    なお、さくらのAI Engineのアクセストークン取得方法は、Claude Code + さくらのAI EngineではじめるAgentic Codingを参照してほしい。

    インストールと環境設定

    OpenCodeReviewをnpmでglobalにインストールする。他にもGitHubからソースコードをダウンロードして自前でビルドすることもできる。インストールが終わるとocrコマンドが使えるようになる。

    $ npm install -g @alibaba-group/open-code-review

    環境設定を行う際、対話式のコマンドが推奨されているが、その中にさくらのAI Engineは選択肢として表示されないため、直接設定ファイルを作成する。

    $ cd ~
    
    # .opencodereviewディレクトリを作成する
    $ mkdir .opencodereview
    $ cd .opencodereview
    
    # config.jsonを作成する
    touch config.json
    vim config.json

    執筆時点(2026年6月)で、Messages APIをサポートしているモデルはpreview/Kimi-K2.6のみのため、設定ファイルは以下のようにする。

    {
      "llm": {
        "url": "https://api.ai.sakura.ad.jp/v1/messages",
        "auth_token": "<API_KEY>",
        "model": "preview/Kimi-K2.6"
      }
    }

    設定が終わったらAPIの疎通確認を行う。

    $ ocr llm test
    Source: OCR config file
    URL:    https://api.ai.sakura.ad.jp/v1/messages
    Model:  preview/Kimi-K2.6

    OpenCodeReviewで自動レビューする

    ocr reviewコマンドを実行することで、自動的にレビューしてくれる。オプションはいろいろあるが、PullRequestを出す前のセルフレビューとして使いたかったので、--from(マージ先ブランチ)と--to(作業を行っているfeatureブランチ)を指定して実行する。

    なお、CLIで実行するため、出力結果が多いとターミナルのスクロールバックバッファを超えてしまう場合があるので、ファイルに出力するなり、後続のAI AgentのCLIツールにパイプするなりして、出力結果を活用するのが良い。

    試しに実行した環境では、diff +657 -99程度の変更に対して、私の環境では12〜13分ほどかかり、8つ指摘があった。

    $ cd  /path/to/your/repository
    
    $ ocr review --from main --to feat/your-branch > review.txt
    
    [ocr] Summary: 22 file(s) reviewed, 8 comment(s), ~694695 token(s) used (input: ~587763, output: ~106932), 11m14s elapsed
    
    ─── src/sample/index.ts:97-97 ───
    ...
    
    -       if (input !== undefined) {
    +       if (input) {

    今回のレビューでは694,695トークン消費したため、従量課金で使うには注意が必要だ。

    preview/Kimi-K2.6の利用量グラフ。入力トークン数が591,006、出力トークン数が115,300

    レビュー結果をAI Agentで修正する

    出力されたレビュー結果を、Claude CodeやGitHub Copilot Agentに渡すことで、自動的に修正してくれる。

    ただし、リポジトリの環境設定をすべて読み込んでレビューするわけではないため、Linterルールやコーディングガイドラインを無視した指摘がある。そのため、修正箇所は1件ずつ目視で確認し、コミットするかどうかの判断が必要になる。

    追記: 2026-06-18

    実際業務でも使おうとしてみたのだが、いかんせん実行時間が長い上にリポジトリの環境設定を読み込んでくれないため不必要な指摘が多く、現状ではあまり実用的ではなかった。高性能なコーディング特化型のAIモデルを活用できる環境であれば、有効に使えるだろう。

    結果、私の環境ではgit/ghコマンドとGitHub Copilot CLIを使ったコードレビューが使いやすかった。

    # PullRequestの差分をレビューする場合
    $ gh pr diff > git.diff
    
    # コミット前に差分をレビューする場合
    $ git diff > git.diff
    
    
    # GitHub Copilot CLIでレビューと修正を行う
    $ copilot -i "git.diffはgit diffの結果です。変更箇所をレビューし、必要に応じて修正してください。"