言語を切り替える
テーマを切り替える

プログラマー向け AI ツール実践:OpenClaw + Claude Code で 24 時間バグ自動修正

決済コールバックのタイムアウトといったバグは、発見からマージまで平均 4.5 時間かかります。内訳は、発見 2 時間、特定 30 分、修正 30 分、テスト 20 分、PR 提出 10 分。しかし修正内容は決まっていることが多く、指数バックオフの追加、例外キャッチ、ログ記録などです。いわゆる「既知の問題タイプ」で、毎回人手で対応する価値は薄い。

OpenClaw + Claude Code のハイブリッドワークフローなら、この課題に向き合えます。OpenClaw が 24 時間 Sentry を監視し、バグを検知して自動でタスクを割り当てます。Claude Code はブランチ作成、コード修正、テスト実行、PR 提出までを担当します。3 ヶ月の本番運用では 127 件を捕捉し、89 件(70%)を自動修復、72 件(57%)をマージしました。処理時間は 4.5 時間から 15 分へ短縮しています。

本記事では、このハイブリッドワークフローのアーキテクチャ、設定手順、実測効果を共有します。机上の空論ではなく、3 ヶ月間本番で回したデータに基づいています。

低コストな「ロブスター飼育」ガイド:ArkClaw で AI エージェントを身近に

話題の OpenClaw(ロブスター)は便利ですが、設定の難しさに二の足を踏んでいませんか?ByteDance 傘下の Volcengine(火山エンジン)の ArkClaw なら、導入ハードルを一気に下げられます。サーバーや Token の設定は不要。ワンクリックで 24 時間オンライン、ブラウザ操作・スクリプト実行・カレンダー管理ができる AI アシスタントが手に入ります。

月額 9.9 元、招待コード ZLKUK54M(登録はこちら)なら 8.9 元。エンジニアなら Coding Plan Pro で実質無料で使えます。

OpenClaw vs Claude Code——競合ではなく補完

よく聞かれます。OpenClaw と Claude Code、結局どちらを使えばいいのか。

率直に言うと、競合関係ではありません。役割がまったく異なり、組み合わせてこそ真価が出ます。

OpenClaw は 24/7 待機する「パーソナル AI エージェント」です。バックグラウンド常駐で webhook を受け、各種データソースを監視し、寝ている間も動き続けます。公式は “persistent personal AI” と呼びます。複雑なコード記述は苦手ですが、事象を「見張り」、適切なアクションを起動して専門ツールを調整するのは得意です。

Claude Code は専門の「AI プログラマー」です。サーバー監視の設計は任せられませんが、コードを読み、バグを直し、ロジックをリファクタリングするのは得意分野です。コードベースを深く理解し、どこをどう直せば安全かを判断できます。

一方が「見る」、もう一方が「やる」。この補完関係が核心です。

OpenClaw Directory には “Sentry → Auto-Debug → Open PR” というレシピがあり、まさにこの用途向けです。流れは次のとおりです。

  1. Sentry がエラーを検知し webhook を発火
  2. OpenClaw がアラートを受信し、スタックを分析
  3. OpenClaw がサブエージェントを起動し Claude Code で修正
  4. Claude Code が修正コードを生成しテストを実行
  5. テスト通過後、GitHub PR を自動作成

プロセス全体が自動化され、人間の介入は不要です。Substack では “overnight code review with no human in the loop until the PR is ready”——夜中にバグ、朝には PR を確認するだけ——という体験が共有されています。

アーキテクチャ設計——ハイブリッドワークフローの中核

このワークフローを理解するには、OpenClaw の「サブエージェント」機構が鍵です。

OpenClaw は「オーケストレーター」に近い存在です。webhook、定期タスク、メッセージ通知などのイベントを監視し、実処理はサブエージェントへ委任します。サブエージェントは特定タスク向けに一時生成される AI インスタンスです。

たとえば、OpenClaw がプロジェクトマネージャー、Claude Code がプログラマーです。Sentry アラートという要件を受け取り、分析してプログラマー(サブエージェント)に割り当て、完了報告を受け取ります。

全体構成は次のとおりです。

┌─────────────────────────────────────────────────────────────┐
│                         外部システム                          │
│  ┌──────────┐  ┌──────────┐  ┌─────────────────────────┐   │
│  │  Sentry  │  │  GitHub  │  │  Slack/Discord/Telegram │   │
│  └────┬─────┘  └────▲─────┘  └──────────▲──────────────┘   │
└───────┼─────────────┼───────────────────┼──────────────────┘
        │             │                   │
        │ webhook     │ create PR         │ notify
        │             │                   │
┌───────▼─────────────┴───────────────────┴──────────────────┐
│                      OpenClaw Gateway                        │
│  ┌──────────────────────────────────────────────────────┐  │
│  │           OpenClaw メインエージェント(監視者)          │  │
│  │  • 24 時間 Sentry webhook を監視                      │  │
│  │  • エラータイプと深刻度を分析                          │  │
│  │  • 判断:自動修正 / 人間介入 / 無視                    │  │
│  └─────────────────────┬────────────────────────────────┘  │
│                        │ spawn                             │
│                        ▼                                   │
│  ┌──────────────────────────────────────────────────────┐  │
│  │         Claude Code サブエージェント(実行者)          │  │
│  │  • 最新コードを取得                                    │  │
│  │  • バグの根本原因を分析                                │  │
│  │  • 修正コードを作成                                    │  │
│  │  • テストで検証                                        │  │
│  │  • ブランチをプッシュして PR 作成                      │  │
│  └──────────────────────────────────────────────────────┘  │
└────────────────────────────────────────────────────────────┘

重要なのは、OpenClaw は直接コードを書き換えないことです。「判断」と「調整」に徹し、コード変更は Claude Code サブエージェントへ任せます。安全性(OpenClaw 側の権限管理)と品質(Claude Code の専門性)を両立できます。

データの流れ:

  1. Sentry webhook → OpenClaw(エラーイベント、スタック、環境データ)
  2. OpenClaw → Claude Code サブエージェント(修正指示、コンテキスト)
  3. Claude Code サブエージェント → GitHub(修正コード、PR 説明)
  4. GitHub → OpenClaw(PR 状態、CI 結果)
  5. OpenClaw → Slack(人間へレビュー通知)

OpenClaw の状態管理も要です。「受信済み」「分析中」「修正中」「レビュー待ち」「マージ済み」を記録でき、途中で止まっても再開できます。

実践設定——監視から PR 自動提出まで

概念は以上。具体的な設定に入ります。

ステップ 1:Sentry の webhook 設定

Sentry にログインし、Project Settings → Integrations → Webhooks で OpenClaw の webhook URL を追加します。

https://your-openclaw-gateway.com/hooks/sentry?sessionKey=bug-fix-pipeline

Alert Rules で、error count が 5 分間に 5 回超えたら webhook を発火するルールを作成します。

ステップ 2:OpenClaw 監視エージェントの設定

Sentry イベント用の専用 agent を作成します。設定例:

name: sentry-bug-monitor
hooks:
  sentry:
    path: /hooks/sentry
    defaultSessionKey: bug-fix-pipeline

steps:
  - id: parse-error
    command: json.parse stdin
    description: "Sentry のエラーデータをパース"

  - id: classify
    command: llm-task "エラータイプと深刻度を分析"
    args:
      error: $parse-error.stacktrace
      message: $parse-error.message
    schema: error-classification.json

  - id: decision
    command: state.set "action" $classify.recommended_action

  - id: auto-fix
    command: subagent.spawn
    args:
      type: claude-code
      task: "バグ修復: ${parse-error.title}"
      context: $parse-error
      repo: $parse-error.project.repo
    condition: $classify.severity == "medium" && $classify.auto_fixable == true

  - id: notify-human
    command: slack.send "#alerts"
    args:
      message: "深刻なエラー。人間の介入が必要: ${parse-error.url}"
    condition: $classify.severity == "critical"

ポイント:

  • classify で LLM が自動修復の可否を判断
  • decision で深刻度に応じて分岐(中程度かつ auto_fixable → Claude Code、critical → 人間通知)
  • subagent.spawn で type: claude-code のサブエージェントを起動

ステップ 3:Claude Code サブエージェント

サブエージェントは具体的なコード修正を担当します。OpenClaw からスタック、関連ファイル、環境情報を渡します。

ワークフロー例:

# 1. 最新コードを取得
git clone $REPO_URL /tmp/fix-workspace
cd /tmp/fix-workspace

# 2. 修正ブランチを作成
git checkout -b auto-fix/$ERROR_ID

# 3. 問題分析(Claude Code)
claude-code --context $ERROR_CONTEXT --prompt "このバグの根本原因を分析してください"

# 4. 修正を記述
claude-code --prompt "修正コードを書いてください。テストを含めてください"

# 5. テスト実行
npm test

# 6. コミットとプッシュ
git add .
git commit -m "fix: auto-fix for $ERROR_TITLE [skip ci]"
git push origin auto-fix/$ERROR_ID

# 7. PR 作成
gh pr create --title "Auto-fix: $ERROR_TITLE" --body "..."

Claude Code の価値は「コード理解」にあります。スタックだけを見て盲目的に直すのではなく、関連ファイルを読んで業務ロジックを把握し、エラー伝播経路から真因を特定し、プロジェクトのスタイルに合わせた修正と単体テストを生成します。

ステップ 4:GitHub PR の自動化

PR 作成後、OpenClaw は GitHub webhook を監視し続けます。

- id: watch-pr
  command: github.watch-pr $auto-fix.pr_number

- id: ci-status
  command: poll "github.checks $auto-fix.pr_number"
  until: $ci-status.completed == true
  timeout: 30m

- id: notify-review
  command: slack.send "#dev"
  args:
    message: |
      自動修復 PR の準備完了: ${auto-fix.pr_url}
      CI ステータス: ${ci-status.conclusion}
      レビューとマージをお願いします

Slack に PR リンクと CI 結果が届きます。コードを確認して問題なければマージするだけ。手動で pull、修正、テストする必要はありません。

応用テクニック——ワークフローをさらに賢く

基本が動いたら、次の機能を足せます。

バグの優先度分け

すべてのバグが自動修復の対象ではありません。classify にルールエンジンを足しました。

  • P0(Critical):システムダウン、データ損失 → 即時に人間へ通知
  • P1(High):コア機能障害 → 通知 + 自動修復試行(人間確認後にコミット)
  • P2(Medium):非コア機能の異常 → 完全自動修復
  • P3(Low):エッジケース、改善提案 → backlog に記録し週次で処理

人間の承認チェックポイント

技術的には正しくても、ビジネス上問題がある修正もあります。approval ステップを追加しました。

- id: propose-fix
  command: claude-code.generate-fix

- id: human-approval
  command: slack.interactive
  args:
    message: "AI が以下の修正を提案しています。コミットを承認しますか?"
    buttons: ["承認", "拒否", "修正が必要"]
  timeout: 4h

- id: submit-if-approved
  command: github.create-pr
  condition: $human-approval.choice == "承認"

機密操作では AI が独断で動きません。

失敗時の再試行とエスカレーション

Claude Code も毎回成功するとは限りません。テスト失敗時は自動再試行できます。

- id: fix-attempt
  loop: 3
  sub-lobster: claude-code-fix
  break-on: $fix-attempt.tests_passed

- id: escalate-if-failed
  command: slack.send "#dev-escalation"
  condition: !$fix-attempt.tests_passed

3 回失敗したら人間へエスカレーションします。

マルチリポジトリ対応

十数のマイクロサービスがあり、リポジトリはそれぞれ独立しています。OpenClaw に複数プロジェクトのマッピングを設定できます。

projects:
  payment-service:
    repo: github.com/acme/payment
    sentry_project: payment-api
    auto_fix: true

  user-service:
    repo: github.com/acme/users
    sentry_project: user-api
    auto_fix: false  # 当面は自動修正オフ

1 つの OpenClaw インスタンスで複数プロジェクトを扱えます。

効果評価と注意点

127
捕捉バグ総数
70
自動修復成功率(%)
61
テスト通過率(%)
57
人間マージ率(%)
15
平均処理時間(分)

3 ヶ月運用のデータ:

  • 捕捉バグ:127 件
  • 自動修復成功:89 件(70%)
  • 修正後テスト通過:78 件(61%)
  • 人間レビュー後マージ:72 件(57%)

約 6 割のバグは手を動かさず、朝に PR を確認してマージするだけで済みます。

時間短縮も顕著です。以前は発見(平均 2 時間)→ 特定(30 分)→ 修正(30 分)→ テスト(20 分)→ PR(10 分)で合計 4.5 時間。今は発見(リアルタイム)→ AI 修正(10 分)→ 人間レビュー(5 分)の 15 分 です。

一方で限界もあります。

向いているシーン

  • 既知パターンの反復バグ(ヌル参照、境界条件、API タイムアウト)
  • スタックが明確なランタイムエラー
  • 構造が明確でテストカバレッジが十分なコードベース

向かないシーン

  • アーキテクチャ設計(人間の意思決定が必要)
  • 複数システムにまたがる複雑なバグ
  • テストのないレガシーコード(AI 修正後もマージしづらい)

リスク管理

  • AI に本番の直接書き込み権限を与えない
  • すべての自動修正は PR 経由で通常レビューへ
  • 監査ログを保持し、AI が何を変えたか追跡可能にする
  • 修正品質を定期レビューし、プロンプトを調整する

まとめ

OpenClaw + Claude Code の本質は、「監視」と「修復」を自動化することです。OpenClaw は 24 時間の監視、Claude Code はコード記述。組み合わせれば「疲れないジュニアプログラマー」——作業は任せつつ、最終判断は人間が握る。

価値はプログラマーの置き換えではなく、反復作業の排除です。人間の知恵が本当に要る場所に集中できます。

オンコールや反復バグに悩むなら、まず特定エラータイプの自動修正から試し、徐々に範囲を広げてください。

将来の開発フローは「人間が決める + AI が実行する」が主流になるでしょう。早く慣れて、早く帰りましょう。

OpenClaw + Claude Code 自動バグ修正の完全設定ガイド

ゼロから OpenClaw の 24 時間監視と Claude Code 自動修正のハイブリッドワークフローを構築する

⏱️ 目安時間: 2 時間

  1. 1

    ステップ1: 環境準備:OpenClaw のインストールと設定

    OpenClaw のインストール:
    • openclaw/openclaw リポジトリをクローン
    • 公式ドキュメントに従いインストールと初期化を完了
    • Gateway サービスを設定し、外部からの webhook を受信できるようにする
    • 検証:curl http://localhost:8787/health が 200 を返すこと

    専用 Session の作成:
    • openclaw session create bug-fix-pipeline
    • session key を記録し、後続の設定で使用
    • 管理しやすいよう固定の session key を推奨
  2. 2

    ステップ2: Sentry webhook の連携設定

    Sentry プロジェクト設定:
    • Project Settings → Integrations → Webhooks
    • URL: https://your-gateway.com/hooks/sentry?sessionKey=bug-fix-pipeline を追加
    • トリガーイベント:issue.created, issue.resolved

    アラートルールの作成:
    • Alerts → Create Alert Rule
    • 条件:When issue is created, and event count is greater than 5 in 5 minutes
    • アクション:Send a notification via Webhook
    • テスト:手動でエラーを発生させ、OpenClaw が webhook を受信できるか確認
  3. 3

    ステップ3: OpenClaw 監視エージェントの設定

    エージェント設定の作成:
    • ~/.openclaw/agents/ 配下に sentry-monitor.yaml を作成
    • hooks.sentry で webhook を受信
    • classify ステップでエラータイプを分析
    • 条件分岐:auto_fixable はサブエージェント、critical は人間へ通知

    重要な設定項目:
    • defaultSessionKey: bug-fix-pipeline
    • classify schema: error_type, severity, auto_fixable フィールドを定義
    • subagent.spawn: type を claude-code に指定し、エラーコンテキスト全体を渡す
  4. 4

    ステップ4: Claude Code サブエージェントの設定

    サブエージェントのワークフロー:
    • OpenClaw から渡されたコンテキスト(スタック、コード位置、環境情報)を受信
    • 一時ワークスペースにコードリポジトリを自動取得
    • auto-fix/ で始まる修正ブランチを作成
    • Claude Code で分析し修正を生成

    Claude Code プロンプトの最適化:
    • 「このエラーの根本原因を分析し、具体的なコード行を特定してください」
    • 「既存のコーディングスタイルを維持して修正コードを書いてください」
    • 「この修正用の単体テストを作成してください」
    • 「テストを実行し、修正が有効か確認してください」

    GitHub 連携:
    • gh CLI または GitHub API token を設定
    • ブランチをプッシュして PR を自動作成
    • PR タイトル形式:「Auto-fix: [エラーの簡潔な説明]」
  5. 5

    ステップ5: 通知とレビュープロセスの設定

    Slack/Discord 通知:
    • 自動修正の通知を受ける #auto-fix チャンネルを作成
    • メッセージテンプレート 3 種:修正成功、レビュー必要、修正失敗
    • インタラクティブボタン:承認/拒否/PR を見る

    人間レビューのチェックポイント:
    • 決済・ユーザーデータなど sensitive 操作には approval を追加
    • 4 時間のタイムアウトを設定し、期限切れは上長へエスカレーション
    • 承認後は自動マージ、拒否時はモデル改善のため理由を記録

    監視とログ:
    • 自動修正の成功率を定期的にレビュー
    • classify ロジック改善のため失敗事例を収集
    • 処理時間とマージ率を追跡する metrics を設定
  6. 6

    ステップ6: テストと最適化

    段階的ロールアウト:
    • 1 週目:監視のみで classify の精度を観察
    • 2 週目:リスクの低いヌル参照・境界条件の自動修正を開放
    • 3 週目:自動修正の対象範囲を徐々に拡大

    継続的な最適化:
    • 毎週、自動修正 PR の品質をレビュー
    • classify プロンプトを調整し auto_fixable 判定精度を向上
    • 失敗事例に基づき Claude Code の修正戦略を更新
    • フィードバックループ:人間が修正したパターンを AI モデルへ還元

FAQ

OpenClaw と Claude Code の役割分担は?
役割分担は明確です。

• OpenClaw:「見る」「調整する」——24 時間監視、webhook 受信、エラー分析、ルーティング判断、サブエージェント起動、人間への通知。コードは直接変更しません。

• Claude Code:「実行する」——コード分析、バグ特定、修正記述、テスト実行、PR 提出。実際のコード実行者です。

この分担により、安全性(OpenClaw の権限制御)と専門性(Claude Code のプログラミング能力)を両立できます。
AI によるバグ自動修正は危険では?
リスク管理はこのシステムの中核設計です。

• 本番環境への書き込み権限なし:AI は PR 作成のみで、main ブランチへ直接 push できません
• 人間レビュー必須:すべての修正は PR レビューを経て、少なくとも 1 人の承認が必要
• レベル別処理:深刻なバグは自動修正せず、人間へ通知のみ
• 監査ログ:AI の操作をすべて記録し、追跡と切り分けが容易
• 段階的導入:まず監視・観察、次に低リスク修正、最後に範囲を拡大

本質的に AI は反復作業を担う「ジュニアプログラマー」であり、重要な判断は人間が握ります。
この構成のコストは?
主なコスト:

• OpenClaw:セルフホスト。主な費用はサーバー(約 $10〜50/月)
• Claude Code:Anthropic API のトークン従量課金
• Sentry:イベント量に応じた課金

効果:
• 反復バグ処理時間を実測 70% 削減
• 時給 $50 以上のエンジニアなら、月 20 時間以上の削減は $1000 超の価値
• オンコールの負担軽減という生活の質向上も大きい

小規模チーム(3〜5 人)が月 50 件以上のバグを処理する場合、約 30 件を自動処理できれば、通常 3〜6 ヶ月で投資回収できます。
どんなバグが自動修正に向いている?
向いているバグ:

• 既知パターン:ヌル参照、配列範囲外、型エラー、API タイムアウト
• 明確なスタック:具体的なコード行とコールチェーンが特定できる
• 修正パターンが固定:try-catch 追加、境界チェック追加など
• テストで検証可能:修正の有効性を確認できる

向かないバグ:

• アーキテクチャ設計:単純修正ではなくリファクタリングが必要
• クロスシステム:複数サービスの調整が必要
• 複雑なビジネスロジック:業務コンテキストの理解が必要
• レガシーコード:テストがなく、AI 修正後もマージしづらい

まずはヌル参照のような最もシンプルなものから始め、経験を積むことをおすすめします。
Claude Code サブエージェントはどう呼び出される?
呼び出しの流れ:

1. OpenClaw が Sentry webhook を受信し、修正が必要と判断
2. subagent.spawn を実行し type: claude-code を指定
3. エラースタック、関連コード、環境情報などのコンテキストを渡す
4. Claude Code サブエージェントが起動し、指定リポジトリをロード
5. 分析・修正・テスト・PR 提出を実行
6. 完了後、OpenClaw メインエージェントへ結果を報告

技術詳細:
• 隔離環境(コンテナや一時ディレクトリ)で実行
• タイムアウトあり(デフォルト 30 分)
• 再試行可能(失敗時に再派生)
• カスタムプロンプトで修正戦略を指示可能
従来の CI/CD 自動化との違いは?
根本的な違い:

従来の CI/CD:
• ルールベース:事前定義の lint、format、test
• 受動トリガー:コードコミット後に実行
• 固定フロー:すべてのコミットに同じチェック

OpenClaw + Claude Code:
• AI 主導:理解と推論に基づく(固定ルールではない)
• 能動監視:24 時間本番を監視し、問題発見時に自ら修正
• 動的判断:エラータイプとコンテキストで処理を決定
• コード生成:チェックだけでなく修正コードも書ける

組み合わせ:
• OpenClaw が問題を発見し修正を生成
• 従来 CI/CD が修正品質を検証
• PR レビュー・マージ後に通常のデプロイへ

「自動チェック」から「自動修復」への進化と言えます。

4分で読めます · 公開日: 2026年2月27日 · 更新日: 2026年6月8日

関連記事

コメント

GitHubアカウントでログインしてコメントできます