未分類

【Claude Code②】大規模リファクタリングとCI/CD自動化|実践テクニック

【Claude Code深掘り②】大規模リファクタリングとCI/CD自動化:中上級者のための実践テクニック

この記事でわかること:Claude Codeを使って大規模なコードリファクタリングを安全に進める方法と、GitHub ActionsなどCI/CDパイプラインに組み込む実践的なテクニックを、コマンド例とともに徹底解説します。


目次

  1. はじめに:Claude Code②で扱う中上級テクニックとは
  2. 大規模リファクタリングの基本戦略
  3. 実践:段階的リファクタリングのワークフロー
  4. CI/CD自動化とClaude Codeの連携
  5. GitHub Actionsと組み合わせた実例
  6. コスト管理と上位プランへのアップグレード判断
  7. よくある失敗パターンと対策
  8. まとめと次回予告

1. はじめに:Claude Code②で扱う中上級テクニックとは

前回の記事(Claude Code深掘り①)では、インストールから基本操作まで丁寧に解説しました。②となる今回は、実際の開発現場で使える中上級テクニックにフォーカスします。

具体的には以下の2テーマです。

  • 大規模リファクタリング:数千〜数万行のコードベースを安全に改修する
  • CI/CD自動化:プルリクエストの自動レビューやテスト修正をパイプラインに組み込む

どちらも「手作業では時間がかかりすぎる」「見落としリスクが高い」という課題を、Claude Codeが大幅に解決してくれます。実際に私が試した手順をもとに、すぐ再現できる形でお伝えします。

利用前提:Claude Pro($20/月)以上のサブスクリプションが必要です。重負荷な作業が続く場合はMax 5x($100/月)も検討してください。料金は変動する可能性があります。最新価格は公式サイトでご確認ください。


2. 大規模リファクタリングの基本戦略

大規模リファクタリングをClaude Codeで行うとき、失敗するケースの多くは「いきなり全体を変えようとする」ことです。Claude Codeは優秀ですが、コンテキストウィンドウには限りがあります。戦略的に分割することが成功の鍵です。

3ステップ分割アプローチ

ステップ 内容 Claude Codeの役割
① 診断フェーズ 技術的負債・依存関係の可視化 コードベース全体を読み込み、問題箇所をリスト化
② 計画フェーズ 変更スコープの定義、テスト計画の作成 リファクタリング計画書・チェックリストを生成
③ 実行フェーズ モジュール単位で段階的に変更 コード変更・テスト修正を並行して実施

重要:各ステップの間に必ずコミットを挟み、ロールバックできる状態を保つことを強くおすすめします。

大規模リファクタリングの3ステップフロー図

プロンプト設計のコツ

Claude Codeは指示が曖昧だと過剰に変更しがちです。以下のように制約を明示するのがポイントです。

# 良い例
「src/api/ ディレクトリ内の関数名だけをsnake_caseからcamelCaseに変換してください。
ロジックは一切変更しないでください。変更ファイル一覧を最初に提示してください。」

# 悪い例
「コードをきれいにしてください」

制約を明示することで、Claude Codeは変更範囲を守りながら正確に動作します。


3. 実践:段階的リファクタリングのワークフロー

フェーズ①:診断

まずプロジェクトルートで次のコマンドを実行します。

claude "このプロジェクトの技術的負債を分析してください。
特に以下の観点でリストアップしてください:
1. 重複コード(DRY違反)
2. 長すぎる関数(50行超)
3. 循環的依存関係
結果はMarkdownテーブルで出力してください"

Claude Codeはコードベースを読み込み、問題箇所を一覧化します。出力例:

ファイル 問題 優先度
utils/helpers.js 重複関数3件
api/userController.js 関数が120行
models/order.jsmodels/user.js 循環依存

フェーズ②:計画書生成

claude "先ほどの分析結果をもとに、
2週間で完了できるリファクタリング計画書を作成してください。
各タスクにはテスト戦略も含めてください"

この計画書をそのままGitHub Issueに貼り付けることで、チームとの共有も簡単です。

Claude Codeが生成するリファクタリング計画書のサンプル

フェーズ③:モジュール単位の実行

# 特定ファイルに限定した変更
claude "src/utils/helpers.js の重複関数を統合してください。
変更前後のdiffを出力し、既存のテストが通ることを確認してください"

ポイント:一度に変更するファイルは3〜5個以内に絞ることで、Claude Codeのコンテキスト管理が安定します。

Claude Proのトークン制限について:重いリファクタリングを1日に大量に行うと、5時間ウィンドウの上限に達することがあります。その場合はMax 5x($100/月)へのアップグレードを検討してください。(価格は変動する可能性があります。最新情報は公式サイトでご確認ください)


4. CI/CD自動化とClaude Codeの連携

CI/CDパイプラインにClaude Codeを組み込むことで、人間がレビューしなくても初期チェックが自動化されます。特に以下のユースケースが実用的です。

主な自動化ユースケース

  1. PR自動レビュー:コードスタイル・バグリスク・セキュリティ問題の初期チェック
  2. テスト自動修正:CIで失敗したテストの修正案を自動生成
  3. ドキュメント自動更新:関数変更時にJSDocやREADMEを自動更新

前提となるClaude APIの設定

CI/CDでClaude Codeを動かすには、Anthropic APIキーが必要です。GitHubリポジトリのSecrets設定にANTHROPIC_API_KEYを登録しておきましょう。

注意:APIキーが環境変数ANTHROPIC_API_KEYに設定されている場合、Claude Codeはサブスクリプションではなくトークン課金で動作します。大量のCIジョブを流す場合はコスト管理が重要です。


5. GitHub Actionsと組み合わせた実例

実際にPRが作成されたときに自動でClaude Codeにレビューさせるワークフローです。

# .github/workflows/claude-review.yml
name: Claude Code PR Review

on:
  pull_request:
    types: [opened, synchronize]

jobs:
  claude-review:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Install Claude Code
        run: npm install -g @anthropic-ai/claude-code

      - name: Get changed files
        id: changed-files
        run: |
          echo "files=$(git diff --name-only origin/main HEAD | tr '\n' ' ')" >> $GITHUB_OUTPUT

      - name: Run Claude Code Review
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
        run: |
          claude --print "以下のファイルのコード変更をレビューしてください。
          バグリスク・セキュリティ問題・パフォーマンス問題を
          Markdownリスト形式で出力してください: ${{ steps.changed-files.outputs.files }}" \
          > review-result.md

      - name: Comment on PR
        uses: actions/github-script@v7
        with:
          script: |
            const fs = require('fs');
            const review = fs.readFileSync('review-result.md', 'utf8');
            github.rest.issues.createComment({
              issue_number: context.issue.number,
              owner: context.repo.owner,
              repo: context.repo.repo,
              body: `## 🤖 Claude Code 自動レビュー\n\n${review}`
            });

このワークフローを設定するだけで、PRのたびにClaude Codeが自動でコメントを投稿してくれます。

GitHub ActionsのPR自動レビュー画面例

テスト自動修正のワークフロー

CIでテストが失敗したとき、Claude Codeに修正案を生成させる例です。

      - name: Fix failing tests with Claude
        if: failure()
        env:
          ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
        run: |
          # テスト失敗ログを取得
          npm test 2>&1 | tail -50 > test-failures.txt

          # Claude Codeに修正案を依頼
          claude --print "$(cat test-failures.txt)

          このテスト失敗を修正するコードを提案してください。
          変更が必要なファイルと変更内容を明示してください" \
          > fix-suggestion.md

修正案がfix-suggestion.mdに出力されるので、開発者がそれを確認して適用できます。

💡 Claude Proでもこの自動化は動作しますが、CIを大量に回す場合はAPI従量課金の方がコスト効率が良いケースもあります。月の利用量を見ながら最適なプランを選びましょう。


6. コスト管理と上位プランへのアップグレード判断

Claude Codeをフル活用し始めると、プラン選択が重要になります。現在のプランと用途に応じた判断基準を整理しました。

プラン別活用シナリオ

プラン 月額 向いているユースケース
Claude Pro $20 個人開発・副業・1日2〜3時間程度の利用
Max 5x $100 毎日6時間以上・大規模リファクタリング多め
Max 20x $200 フルタイムAI支援開発・チームのメイン環境
API従量課金 使用量次第 CIジョブ・自動化スクリプト・バースト的利用

※価格は変動する可能性があります。最新の料金は公式サイトでご確認ください。

アップグレードのサインとして多いのは

  • 1日に複数回「使用量の上限に達しました」が表示される
  • 大規模リファクタリング中に応答が遅くなる・止まる
  • CI/CDで1日50件以上のジョブを走らせている

このような状況であればMax 5xへのアップグレードを検討してみてください。

関連記事AIコーディングアシスタント比較2026年7月:GitHub Copilot・Cursor・Claude Code


7. よくある失敗パターンと対策

❌ 失敗1:コンテキストが大きすぎて精度が落ちる

症状:大きなリポジトリで指示を出すと、関係ないファイルを変更される
対策--includeオプションや作業ディレクトリを明示的に指定する

# 対象を絞る
claude --include "src/api/**" "apiモジュールのエラーハンドリングを統一してください"

❌ 失敗2:テストなしで変更を進めてしまう

症状:リファクタリング後に本番で予期しないバグが発生
対策:Claudeへの指示に「変更前にテストを書く」を必ず含める

claude "関数Xをリファクタリングしてください。
まず変更前のテストを書き、テストが通ることを確認してから変更を加えてください"

❌ 失敗3:APIキー漏洩でコストが爆発する

症状:GitHub ActionsのログにANTHROPIC_API_KEYが露出
対策:必ずGitHub Secretsに登録し、ログ出力時にマスクされているか確認する

❌ 失敗4:プランを誤解してサブスクとAPIを二重課金

症状:Pro契約中なのにAPIキー設定でトークン課金が発生
対策:CI環境にANTHROPIC_API_KEY環境変数が設定されていないか確認する

📚 スキルをさらに深めるなら:UdemyのClaude Code実践コースでCI/CD連携の実例を動画で学べます。現在AIコーディング関連講座が充実しており、夏の集中学習に最適です。(Udemyを見てみる(PR))※価格・ラインナップは変動する場合があります


8. まとめと次回予告

今回の記事のポイントをまとめます。

大規模リファクタリング
– 3ステップ(診断→計画→実行)で分割し、コミットを挟みながら安全に進める
– プロンプトには変更範囲の制約を明示する
– 一度に変更するファイルは3〜5個以内に絞る

CI/CD自動化
– GitHub ActionsにAnthropicのAPIキーをSecrets登録することで実現
– PR自動レビュー・テスト自動修正の2つが特に実用的
– APIとサブスクリプションの二重課金に注意

コスト管理
– 個人〜副業レベルならClaude Pro($20/月)で十分なケースが多い
– 毎日6時間以上使うならMax 5x($100/月)が費用対効果高い

Claude Code②をマスターすることで、個人の開発速度がチーム規模に近づく感覚を得られます。ぜひ試してみてください。

🎯 Claude Proを今すぐ試す(7日間無料トライアル)(PR)
Claude Pro公式サイトで詳細を確認する
※価格は変動する可能性があります。最新情報は公式サイトでご確認ください。


次回予告:Claude Code深掘り③

7月22日公開予定:「Claude Code × GitHub Actions:PR自動レビューとテスト自動修正の実践」では、今回紹介したワークフローをさらに発展させ、実際の中規模プロジェクトで使えるテンプレートをまとめて紹介します。


よくある質問(FAQ)

Q1. Claude Codeは無料プランで使えますか?
A. 現在(2026年7月時点)、Claude Codeを使うにはPro($20/月)以上のサブスクリプション、またはAPIアクセスが必要です。無料プランでは利用できません。

Q2. リファクタリング中にClaude Codeが停止したらどうすればいいですか?
A. まず/costコマンドで使用量を確認してください。5時間ウィンドウの制限に達している場合はリセットを待つか、APIキー経由に切り替えることで継続できます。

Q3. GitHub Actionsで使う場合、コストはどう計算されますか?
A. CI環境にAPIキーが設定されている場合はトークン従量課金です。1回のPRレビューで消費するトークン量(入力コード量)次第ですが、中規模PRで数セント〜数十セント程度が目安です。

Q4. チームで使う場合はどのプランが良いですか?
A. Claude Codeを使うにはTeam Premiumシート($100/シート/月)が必要で、最低5シートからです。小チームならAPIキー共有での従量課金が現実的なケースも多いです。プラン詳細は公式サイトで最新情報をご確認ください。

Q5. Cursorと比べてClaude Codeはどう違いますか?
A. CursorはIDEとして完結するためGUI操作が得意、Claude CodeはCLIベースでCI/CDや既存ターミナルワークフローとの統合に優れています。③・④回で詳しく比較します。


関連記事


※本記事の情報は2026年7月時点のものです。AIツールの料金・機能は頻繁に変更されます。最新情報は各サービスの公式サイトでご確認ください。
※本記事にはアフィリエイトリンクが含まれています。