【Claude Code深掘り②】大規模リファクタリングとCI/CD自動化:中上級者のための実践テクニック
この記事でわかること:Claude Codeを使って大規模なコードリファクタリングを安全に進める方法と、GitHub ActionsなどCI/CDパイプラインに組み込む実践的なテクニックを、コマンド例とともに徹底解説します。
目次
- はじめに:Claude Code②で扱う中上級テクニックとは
- 大規模リファクタリングの基本戦略
- 実践:段階的リファクタリングのワークフロー
- CI/CD自動化とClaude Codeの連携
- GitHub Actionsと組み合わせた実例
- コスト管理と上位プランへのアップグレード判断
- よくある失敗パターンと対策
- まとめと次回予告
1. はじめに:Claude Code②で扱う中上級テクニックとは
前回の記事(Claude Code深掘り①)では、インストールから基本操作まで丁寧に解説しました。②となる今回は、実際の開発現場で使える中上級テクニックにフォーカスします。
具体的には以下の2テーマです。
- 大規模リファクタリング:数千〜数万行のコードベースを安全に改修する
- CI/CD自動化:プルリクエストの自動レビューやテスト修正をパイプラインに組み込む
どちらも「手作業では時間がかかりすぎる」「見落としリスクが高い」という課題を、Claude Codeが大幅に解決してくれます。実際に私が試した手順をもとに、すぐ再現できる形でお伝えします。
利用前提:Claude Pro($20/月)以上のサブスクリプションが必要です。重負荷な作業が続く場合はMax 5x($100/月)も検討してください。料金は変動する可能性があります。最新価格は公式サイトでご確認ください。
2. 大規模リファクタリングの基本戦略
大規模リファクタリングをClaude Codeで行うとき、失敗するケースの多くは「いきなり全体を変えようとする」ことです。Claude Codeは優秀ですが、コンテキストウィンドウには限りがあります。戦略的に分割することが成功の鍵です。
3ステップ分割アプローチ
| ステップ | 内容 | Claude Codeの役割 |
|---|---|---|
| ① 診断フェーズ | 技術的負債・依存関係の可視化 | コードベース全体を読み込み、問題箇所をリスト化 |
| ② 計画フェーズ | 変更スコープの定義、テスト計画の作成 | リファクタリング計画書・チェックリストを生成 |
| ③ 実行フェーズ | モジュール単位で段階的に変更 | コード変更・テスト修正を並行して実施 |
重要:各ステップの間に必ずコミットを挟み、ロールバックできる状態を保つことを強くおすすめします。
プロンプト設計のコツ
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.js ↔ models/user.js |
循環依存 | 高 |
フェーズ②:計画書生成
claude "先ほどの分析結果をもとに、
2週間で完了できるリファクタリング計画書を作成してください。
各タスクにはテスト戦略も含めてください"
この計画書をそのままGitHub Issueに貼り付けることで、チームとの共有も簡単です。
フェーズ③:モジュール単位の実行
# 特定ファイルに限定した変更
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を組み込むことで、人間がレビューしなくても初期チェックが自動化されます。特に以下のユースケースが実用的です。
主な自動化ユースケース
- PR自動レビュー:コードスタイル・バグリスク・セキュリティ問題の初期チェック
- テスト自動修正:CIで失敗したテストの修正案を自動生成
- ドキュメント自動更新:関数変更時に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が自動でコメントを投稿してくれます。
テスト自動修正のワークフロー
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や既存ターミナルワークフローとの統合に優れています。③・④回で詳しく比較します。
関連記事
- 【Claude Code深掘り①】全機能解説:インストールから基本操作・できること完全ガイド2026
- AIコーディングアシスタント比較2026年7月:GitHub Copilot・Cursor・Claude Code
- AI×フリーランスエンジニアで月30万円:Claude Code・Cursorで生産性を3倍にした方法
※本記事の情報は2026年7月時点のものです。AIツールの料金・機能は頻繁に変更されます。最新情報は各サービスの公式サイトでご確認ください。
※本記事にはアフィリエイトリンクが含まれています。