AI コーディングエージェントは、ほとんどのチームが検証できるよりも速くコードを生成します。エージェントと CI の間にバリデーションステップがなければ、あらゆる問題はプッシュ後に初めて検出され、フィードバックはエージェントがコンテキストを失ってからずっと後に届きます。エージェントが作業中に一貫したフィードバックを受け取ることで、小さな失敗はローカルで修正され、CI は本番環境へのコードの移行に集中できるようになります。
このチュートリアルでは、Chunk サイドカーをセットアップし、初めてのマイクロビルドを実行します。マイクロビルドとは、エージェントが一時停止するたびに自動的に実行されるスコープ付きバリデーションで、CI と同じ環境で数秒でテストし、その場で修正する機会をエージェントに与えます。いくつかのターミナルコマンドを実行するだけで、エージェントに軽量なバリデーションループを組み込み、AI が生成したすべてのコミットをより高い信頼性で提出できるようになります。
前提条件
- macOS、WSL、または Homebrew がインストールされた Linux
- Claude Code(または任意の AI コーディングエージェント)
- CircleCI アカウント(無料プランを含む)とパーソナル API トークン
💡 注意: 必要な認証情報はパーソナル API トークンのみです。Chunk は VCS 接続やプロジェクトのインポート設定を必要としないため、CircleCI に新規登録してすぐにマイクロビルドを実行できます。
セットアップ
まず、Homebrew を使って Chunk CLI をインストールします:
brew install CircleCI-Public/circleci/chunk
次に、React デモリポジトリをクローンしてディレクトリに移動します:
git clone https://github.com/CircleCI-Public/circleci-demo-javascript-react-app
cd circleci-demo-javascript-react-app
CircleCI のパーソナル API トークンで Chunk を認証します(CLI がトークンの入力を求め、ローカルに保存します):
chunk auth set circleci
続いて、プロジェクトディレクトリで Chunk を初期化します:
chunk init
このコマンドにより、Chunk がプロジェクトをスキャンします。デモは Jest を使用した npm プロジェクトのため、Chunk はバリデーション対象のコマンドとして npm test を自動検出します。
また、Claude Code に小さなフックがインストールされ、エージェントがレスポンスを完了するたびにそのバリデーションが自動的に実行されるようになります。
意図的に失敗させる
バリデーションループの動作を確認するために、意図的にコードを壊してみましょう。src/App.js を開き、render() メソッドの先頭に意図的なエラーを追加します:
throw new Error('intentional failure for demo');
これにより、テストスイートがクリーンなスタックトレースとともにクラッシュします。
マイクロビルドを実行する
Claude Code で以下のように入力します:
validate on the sidecar
ここからは chunk-sidecar スキルが処理を引き継ぎます。初回実行時には、使用する CircleCI 組織を選択するよう求められます(組織 ID は app.circleci.com → Organization Settings → Overview で確認できます)。Chunk はテストを microVM 上でリモート実行し、失敗をインターセプトしてエラーログを Claude に返します。
エージェントはスタックトレースを読み取り、src/App.js を開いて throw を削除してテストの失敗を修正し、再同期して再バリデーションを実行します:
1つのプロンプトから、エージェントが同期、インストール、テスト、修正、再バリデーションのサイクル全体をオーケストレーションします。
バリデーションループの内部
マイクロビルドサイクルで何が行われたか、詳しく見てみましょう。
-
chunk initがpackage.jsonから npm と Jest のスタックを検出し、npm testをバリデーションゲートとして登録しました。追加されたファイルは.chunk/config.jsonと.claude/settings.jsonのみです。 -
CircleCI アカウント上でセキュアな Linux microVM が約1秒で起動しました。Node.js のインストールは初回のみ発生するコストで、約13秒かかります。
chunk sidecar snapshot create --name node-reactを実行すると、その状態を再利用可能なイメージとして保存し、以降のマイクロビルドからインストールステップを省略できます。 -
chunk sidecar syncにより、ステージングされていない編集を含むワーキングツリーがサイドカー上の/workspace/circleci-demo-javascript-react-appにコピーされました。git のコミット、プッシュ、プルリクエストは不要です。リモートのツリーはオンデマンドでローカルと同期されます。Jest のテストが失敗すると、失敗の出力がエージェントのコンテキストに返されました。エージェントはローカルで
src/App.jsを編集し、再同期して再バリデーションを実行しました。フル CI の実行は必要ありません。
実際のプロジェクトで Chunk サイドカーを試す
約5分で、Chunk は新規インストールからエージェント駆動のバリデーションループまでを構築しました。コードの記述とリモートビルドの待機を行き来する代わりに、高速な反復作業をエージェントのすぐそばで実行できます。
マイクロビルドは無料プランを含むすべての CircleCI プランで利用できます。アカウントを作成して Chunk CLI をインストールし、自分のプロジェクトで chunk init を実行して、日々の開発ループにどれだけ簡単に統合できるかを確かめてみてください。