Claude Codeで実現する自律開発:ループエンジニアリングの実践と限界

AI・テクノロジー
STΛCKHUB ANALYSIS2026.07.22 14:00

AIを「使う」から「回す」へのパラダイムシフト

エンジニアの日常は、往々にして「終わりのないタスクの消化」と「コンテキストスイッチの連続」に支配されている。特に個人開発において、自分が書いたコードのメンテナンスや、細かな機能追加に追われ、本来やりたかったはずの創造的な設計が後回しになることは珍しくない。そんな中、AnthropicのClaude Codeを活用し、2時間おきに自律的な開発サイクルを回す「ループエンジニアリング」という手法が注目を集めている。これは単なる自動化ではない。人間がプロンプトを打ち続けるという「ループの中のボトルネック」から脱却し、AIがAI自身を駆動させる環境を設計するという、エンジニアの役割そのものの変革である。

今回紹介する実践例では、VS Code上でMarkdownをWYSIWYG編集するための拡張機能開発を題材に、Claude Codeを「/loop 2h /evolve」というコマンドで駆動させている。この手法の核心は、1サイクルを「機能1つ=1コミット」という極めて小さな単位に分割し、テスト・レビュー・ドキュメント更新までを完結させる点にある。なぜ2時間なのか。それはClaude Codeの利用制限という物理的な制約を逆手に取り、クレジットを平準化しつつ、AIの暴走リスクを最小限に抑えるための「ガードレール」として機能しているからだ。もしAIが同じエラーで2回連続して失敗すれば、即座に撤退してタスクをブロックする。この「撤退ルール」こそが、無人運転における最大の安全装置であり、深夜の障害対応や無限ループによるクレジット浪費を防ぐためのシニアエンジニアとしての知恵が詰まっている。

我々が直面する技術的課題は、AIが生成したコードの品質をどう担保するかという点に集約される。本プロジェクトでは、独自の「/local-review」というスキルを定義し、コミット前のワーキングツリーに対して客観的なレビューを挟むことで、テストコードだけでは検知できない論理的な不整合を排除している。これは、コードレビューを「人間がやるもの」という固定観念を捨て、AIによる多層的な検証プロセスを構築した好例と言えるだろう。AIを信頼するのではなく、AIが生成する成果物の「振る舞い」を信頼する。このスタンスこそが、現代のAIエージェント開発において最も重要なマインドセットであると私は考える。

人間が担うべき「手触り」と設計の境界線

ループエンジニアリングがどれほど進化しようとも、最終的な「プロダクトの魂」は人間にしか宿らない。今回のMarkdownエディタ開発において、AIはバックログの消化やテストの実行といった機械的な作業では驚異的なパフォーマンスを発揮した。しかし、見出しのハッシュ記号を薄く表示して視認性を高める工夫や、ダークモードにおける太字のコントラスト調整といった「デザインの手触り」の部分では、やはり人間の感性が不可欠であった。AIは「太字を太くする」ことはできるが、「なぜそれがユーザーにとって使いにくいのか」という文脈を完全に理解して言語化することは難しい。この「気づき」こそが、開発者としての付加価値であり、AIに奪われることのない聖域である。

また、本プロジェクトで採用された「ROADMAP.mdをAIの外部記憶として活用する」というアプローチは、非常に示唆に富んでいる。AIとの非同期コミュニケーションチャネルとしてバックログを機能させ、人間が気づいたバグをそこに書き込むだけで、次のサイクルでAIがそれを優先的に修正する。このサイクルは、まるで優秀なジュニアエンジニアをリモートで雇い、バックログを渡して自律的に動いてもらっているような感覚に近い。しかし、ここで重要なのは、人間側が「コードを一行も読まない」という極端な運用を選択している点だ。これは、AIの生成物を信頼しきっているわけではなく、gitによるバージョン管理と、機能単位でのコミットという「巻き戻し可能な構造」を前提としているからこそ成立する。

以下の表は、本プロジェクトにおけるAIと人間の役割分担を整理したものである。

役割 担当者 主なタスク
バックログ管理 人間 優先順位付け、不具合の言語化、ロードマップ定義
実装・テスト AI 機能実装、単体テスト、ドキュメント更新
コードレビュー AI/人間 AIによる自動レビュー、人間による動作確認
デザイン・UX 人間 視認性の調整、操作感の決定、ドッグフーディング

この分担において、人間が担うべきは「AIが迷わないためのコンテキスト提供」と「最終的な振る舞いの評価」である。AIにすべてを任せるのではなく、AIが最も効率的に動けるための「環境」と「制約」を設計すること。それこそが、これからのシニアエンジニアに求められる「ループエンジニアリング」の真髄ではないだろうか。

AI時代にエンジニアが問われる「設計力」の正体

ループエンジニアリングの実践を通じて浮き彫りになったのは、AIの能力不足ではなく、我々人間の「設計力」の欠如である。AIに自律的な開発をさせるためには、プロジェクトを極限までモジュール化し、テスト可能な状態に保ち、明確なガードレールを敷く必要がある。これは、従来の開発手法以上に高いレベルのアーキテクチャ設計能力を要求する。もし、あなたのプロジェクトがAIに任せられないのであれば、それはAIが未熟なのではなく、あなたのプロジェクトが「AIが理解できるほど整理されていない」という証左に他ならない。この事実は、多くのエンジニアにとって耳の痛い指摘かもしれないが、避けては通れない現実である。

今後、我々エンジニアは「コードを書く人」から「開発ループを設計する人」へとシフトしていく必要がある。明日から取るべき具体的な対策として、まずは自分の担当しているプロジェクトを「AIが自律的にテスト・修正できる最小単位」に分解することから始めてみてほしい。CI/CDパイプラインを整備し、テストカバレッジを向上させ、バックログをAIが解釈可能な形式で整理する。これらはすべて、AI時代における「エンジニアの基礎体力」となる。また、AIの生成物を盲信するのではなく、常に「振る舞い」を検証する仕組みを構築すること。git revertを恐れず、失敗を前提とした運用を設計することこそが、AIを使いこなすための唯一の処方箋である。

最後に、読者であるあなたに問いかけたい。AIが24時間休まずにコードを書き続け、あなたの代わりにバグを修正し、機能を拡張し続ける世界で、あなた自身の「エンジニアとしての存在意義」はどこにあるのか。AIが生成したコードの海の中で、あなたは「何が正しいのか」を判断する審美眼を持ち続けているだろうか。AIに仕事を奪われることを恐れるのではなく、AIという強力なレバレッジを使い、自分自身を「より高次の設計者」へと進化させる準備はできているか。技術は常に進化するが、その技術をどう使い、どのような価値を創造するかを決めるのは、いつの時代も人間である。この問いに対する答えを、あなた自身のコードと、あなたが設計するループの中に刻み込んでほしい。

Published at 14:00

コメント

タイトルとURLをコピーしました