cd ../
👾 DevOps自動化
Requires OpenClaw v2026.3+|GitHub + ArgoCD

OpenClawエージェントが全PRをレビュー、テスト実行、ステージングデプロイ

著者: u/SoloDevOpsMarch 05, 2026 234 comments

12のマイクロサービスを保守するソロ開発者として、PR1件あたりレビュー-テスト-デプロイで2時間。全パイプラインを自動化するOpenClawエージェントを構築し、朝の時間を取り戻しました。

ソロ開発者のボトルネック

各PRでコードレビュー、テストスイート実行、カバレッジ確認、Dockerイメージビルド、ステージングデプロイ、スモークテストが必要。12リポジトリで朝がすべて消費。

12
マイクロサービス数
2時間
PR当たり時間
15-20
週間PR数
30+時間
週間浪費時間

アーキテクチャ概要

OpenClawはHetzner CX32(4 vCPU、8GB RAM、€7.50/月)で稼働。GitHub webhookがPRイベントでエージェントをトリガー。Ollama + CodeLlama-13Bでコードレビュー、GitHub APIでPR操作、ArgoCDでGitOpsデプロイ。

┌──────────┐  webhook   ┌──────────────┐  API    ┌──────────┐
│  GitHub  │──────────►│  OpenClaw     │───────►│  GitHub  │
│  PRイベント│          │  エージェント  │        │  API     │
└──────────┘           └───┬──┬───┬───┘        └──────────┘
                           │  │   │
              ┌────────────┘  │   └────────────┐
              ▼               ▼                ▼
        ┌──────────┐   ┌──────────┐     ┌──────────┐
        │  Ollama  │   │  Docker  │     │  ArgoCD  │
        │ CodeLlama│   │  ビルド  │     │  デプロイ │
        └──────────┘   └──────────┘     └──────────┘

OpenClaw設定

IDENTITY.md
# IDENTITY.md — CI/CDエージェント

あなたはシニアDevOpsエンジニアおよびコードレビュアーです。
PR→ステージングパイプラインの自動化が役割です。

## コードレビュールール
1. チェック項目:未使用インポート、本番コードのconsole.log、
   ハードコードされたシークレット、SQLインジェクションパターン、
   エラーハンドリング欠落
2. テストカバレッジ80%以上を確認
3. package.json / go.modの依存関係変更をフラグ
4. 破壊的API変更をチェック

## 安全ルール  
- 自動マージ禁止。常に人間の承認を待つ。
- 本番デプロイ禁止。ステージングのみ。
- スモークテスト失敗時は自動ロールバック。
openclaw-trigger.yml
# .github/workflows/openclaw-trigger.yml
name: OpenClaw CI/CDトリガー
on:
  pull_request:
    types: [opened, synchronize, reopened]
jobs:
  notify-openclaw:
    runs-on: ubuntu-latest
    steps:
      - name: OpenClawエージェントトリガー
        run: |
          curl -X POST https://your-openclaw/webhook/github \
            -H "Authorization: Bearer ${{ secrets.OPENCLAW_TOKEN }}" \
            -d '{"event":"pull_request","pr_number":${{github.event.pull_request.number}}}'

The Pipeline

1. PR作成 → Webhook

GitHub webhookがPRオープン/同期時に発火。OpenClawがpayloadを受信、リポジトリを浅いクローン(diffのみ)、レビューをキューに追加。

$ git clone --depth=1 --branch=feature/auth-refactor \
    https://github.com/solo-dev/user-service.git
$ git diff main...feature/auth-refactor --stat
 3 files changed, 64 insertions(+), 18 deletions(-)

2. コードレビュー

CodeLlama-13BがIDENTITYルールに基づいてdiffを分析。セキュリティ問題、スタイル違反、ロジックエラーをチェック。行番号参照付きでPRに直接コメント。

レビュー PR #847 に投稿:

⚠️ 警告 [src/auth/handler.go:34]
  トークン検証のエラーチェック欠落。

✅ 合格: ハードコードされたシークレットなし
📊 カバレッジ: 84.2% → 86.1% (+1.9%)

3. CIパイプライン

レビュー投稿後、GitHub Actionsのステータスチェックを監視。全必須チェック通過まで待機。

PR #847 のCI監視中...
  ✅ lint          合格 (12秒)
  ✅ 単体テスト     合格 (1分34秒)
  ✅ 統合テスト     合格 (2分12秒)
  ✅ カバレッジ     86.1% (閾値: 80%) ✓
  ✅ @solo-dev が09:47 UTCに承認

4. Dockerビルド + プッシュ

承認後、マルチステージDockerイメージをビルドし、commit SHAでタグ付け、Harborレジストリにプッシュ。

$ docker build -t harbor.internal/user-service:a3f7b2c .
ビルド成功 a3f7b2c

$ docker push harbor.internal/user-service:a3f7b2c
プッシュ完了 8.3秒(レイヤーキャッシュヒット: 5/7)

5. ArgoCDデプロイ + スモークテスト

ArgoCDアプリケーションマニフェストを新イメージタグで更新、同期、ロールアウト待機。ステージングURLにスモークテスト実行。

$ argocd app set user-service --helm-set image.tag=a3f7b2c
$ argocd app sync user-service --prune
  ✅ Synced  Healthy

スモークテスト staging.internal/user-service:
  ✅ GET  /health    200 OK (12ms)
  ✅ POST /auth/login 200 OK (45ms)
  4/4 スモークテスト合格

60日後の成果

パイプラインが12マイクロサービスで60日間稼働した結果:

指標導入前導入後変化
PR→ステージング時間2時間8分↓ 93%
ステージング前バグ検出約3件/週約5件/週↑ 67%
週間DevOps工数30+時間3時間↓ 90%
デプロイ失敗2-3回/月0回↓ 100%
コードカバレッジ(平均)72%86%↑ 19%
「月$30のAPIコストでジュニアDevOpsエンジニアを雇ったようなもの。休暇を取らず、リンター実行を忘れない。」— ソロ開発者

コスト内訳

項目月額備考
サーバー (Hetzner CX32)€7.504 vCPU, 8GB RAM
Ollama + CodeLlama-13B$0セルフホスト
Harborレジストリ$0セルフホスト
ArgoCD$0オープンソース
GitHub API$0無料枠
合計約$8/月vs $2,500/月のDevOps契約

年間節約:1,400+時間のDevOps時間を機能開発に再配分。初年度ROI:約37,000%。

セキュリティガードレール

エージェントは絶対に自動マージしない — 常に人間の承認が必要
エージェントは絶対に本番デプロイしない — ステージングのみ
スモークテスト失敗で自動ロールバック
GitHubトークンは特定リポジトリのみにスコープ
全webhookペイロードをHMAC署名で検証
レート制限:最大5並列パイプライン

⚠️ エージェントはステージングへの書き込み権限のみ。本番デプロイには2人承認の別プロセスが必要。

よくある質問

Q1. なぜGPT-4ではなくセルフホストCodeLlama?

理由は2つ:プライバシー(コードがサーバーから出ない)とコスト。週15-20 PR×500行でGPT-4 APIは月$200-400。CodeLlama-13Bはローカル無料でコードレビューに十分。

Q2. モノリポに対応?

対応。IDENTITY.mdにパスベースルーティングを設定し、変更ファイルからテスト/デプロイ対象サービスを自動検出。

Q3. CIが不安定な場合は?

失敗したCIチェックを1回リトライ。2回失敗したら不安定テストを注記するコメントを投稿し開発者にタグ。

Q4. GitLabで使える?

同じコンセプト — webhookとAPIをGitLab版に差し替えるだけ。IDENTITYルールはそのまま。コミュニティがGitLab設定をr/OpenClawで共有済み。

得られた教訓

CodeLlamaはパターンマッチングに優れる

SQLインジェクション、null未チェック、依存関係競合の検出が得意。ビジネスロジックレビューは苦手 — それは人間の目が必要。

浅いクローンが時間を節約

全リポジトリクローンは遅い(30秒+)。diffのみの浅いクローンで2-3秒に短縮。

インクリメンタルDockerビルドは必須

初回ビルドは3-4分。適切なレイヤーキャッシュで後続は20-30秒。これだけで日45分節約。

エージェントを盲目的に信用しない

最初の週、テストが未カバーの競合状態を含むPRを承認。現在は重要パスは必ず人間レビュー。