結論(即答): ループエンジニアリングとは
ループエンジニアリングとは、AIに指示を出す役を人から仕組みに移す設計です。
AIが仕事を始め、結果を検証し、足りなければ直してもう一周します。人はその輪の外から監督し、例外と最終判断だけを引き受けます。
設計の中身は大きく3つです。
- 何をきっかけに、何を指示するか
- 結果を誰が、何を基準に合否判定するか
- どこで止めるか
当社では、3つ目の止め方を先に決めています。止め方のないループは、ミスとAPI利用料を人の見ていないところで積み上げます。
誰が言い出したか(由来)
言い出したのは、AIでコードを書く現場の3人です。2026年6月上旬に相次いで発信しました。
| 日付 | 人物 | 発信 |
|---|---|---|
| 2026年6月2日 | Boris Cherny(Anthropic、Claude Code の開発責任者) | イベント「Acquired Unplugged」での対談。もう直接プロンプトは打たず、Claude に指示を出すループを書いていると話した |
| 2026年6月7日 | Peter Steinberger(開発者) | Xへの投稿。「コーディングエージェントにプロンプトを打つのはもうやめよう。エージェントに指示を出すループを設計すべきだ」 |
| 2026年6月7日 | Addy Osmani(Google のエンジニア) | ブログ記事「Loop Engineering」。言葉に定義を与え、6つの構成要素とリスクを整理 |
Cherny の発言は、主催した WorkOS が2026年6月2日付の公式ブログで要点を公開しています。Steinberger の投稿は6月7日(米国時間)です。Osmani のブログ記事は同じ6月7日付で、2人の発言を引用しています。
Osmani は次の2文で定義しています。「ループエンジニアリングとは、エージェントに指示を出す人としての自分を置き換えることだ。代わりに、その指示出しを担うシステムを設計する」。
ralph loop との関係
名前が付く前から、素朴なループは使われていました。
代表例が Geoffrey Huntley の「ralph」です。2025年7月14日のブログ記事で、同じ指示書を Claude Code に渡し続ける手法として紹介されました。中身はシェルの1行です。
while :; do cat PROMPT.md | claude-code ; done
ralph は「止めない」ことを前提に、状態をファイルとgitに残して回します。ループエンジニアリングは、そこに検証役と停止条件を足して、設計の対象にしたものです。当社の codex_loop も、この系統に停止装置を付けた形です。
普通の自動化(Cron)と何が違うか
違いは前の結果を見て次の手を変えるかどうかです。
Cronは決まった時刻に同じ処理を実行します。前回うまくいったかどうかで中身は変わりません。ループは結果を検証し、不合格なら原因を踏まえて次の指示を組み立て直します。
当社の社内ルールには「Cronで足りるものをループにしない」と書いています。仕事の種類ごとの型は次のとおりです。
| 仕事の種類 | 選ぶ型 |
|---|---|
| 毎日同じ成果物を出す(投稿・収集・レポート) | Cron+品質チェックの関門 |
| 正解のない制作物を磨く(台本・コピー・LP) | 別モデルが審査する改善ループ |
| 実装してテストを通す | 完了条件1文+機械検証のループ |
| 経営判断・戦略・要件定義 | ループにしない |
毎朝のニュース収集をループにしても、得るものはほとんどありません。止まらない仕組みが1つ増えるだけです。ループに向くのは、前の周の結果が次の周の中身を決める仕事です。
4段階の進化(プロンプト→コンテキスト→ハーネス→ループ)
ループは、これまでの3つの工夫を土台にした4段目です。
@IT や Findy Team+ などの解説記事は、おおむね次の4段階で説明しています。
- プロンプトエンジニアリング: 1回の頼み方を工夫する
- コンテキストエンジニアリング: 仕様や履歴など、判断材料の全体を整える
- ハーネスエンジニアリング: テスト・権限・承認の関門など、安全な作業場を作る
- ループエンジニアリング: 指示を出して動かし始める部分まで仕組みにする
前の段階を捨てるわけではありません。ループの中には、良いプロンプトも、整った判断材料も、安全な作業場も入っています。4段目だけを作っても、下の3段が弱ければ同じ失敗を速く繰り返すだけです。
それぞれの言葉が生まれた時期は近接しています。
コンテキストエンジニアリングは2025年6月、Shopify のCEOがXで提案して広まったとされます。ハーネスエンジニアリングは、HashiCorp の共同創業者が2026年2月のブログで名付けたとされます。
ループエンジニアリングは2026年6月です。約1年で4段目まで進みました。
ハーネスとの違い
ハーネスは「AIが作業する場の安全装置」、ループは「その場でAIを何度も動かす運転の仕組み」です。
ハーネスに入るのは、テスト、lint(書式の自動検査)、権限の制限、承認の関門、ログなどです。1回の作業を安全にする道具立てにあたります。
ループはそこに「いつ始めるか」「合否を誰が決めるか」「いつ止めるか」を足します。ハーネスのないループは、誰も気付かないままミスを重ねて周回します。
Human in the Loop から Human on the Loop へ
人の立ち位置は、工程の中から外側へ移ります。
- Human in the Loop: AIの各工程に人が入り、指示し、確認し、直す
- Human on the Loop: 普段の処理はAIが回し、人は外から監督する。例外、方向修正、最終判断だけを受け持つ
人をゼロにするわけではありません。人を置く場所と、見る頻度を決め直します。当社で人の承認を残している場面は、後の「当社のルール」の章で挙げます。
ループの6つの構成要素と当社での実物
Osmani は、ループを組む部品を6つに分けています。当社の実物を並べると次のとおりです。
| 構成要素 | 役割 | 当社の実物 |
|---|---|---|
| 自動実行(Automations) | 決まった時刻やイベントで起動する | macOS の定時実行(launchd)で約50本。クラウドの Routines は、2026年7月26日に定義が消える事故があり、その後使うのをやめた |
| ワークツリー(Worktrees) | 並列のAIが同じファイルを壊さないよう作業場を分ける | 未導入 |
| スキル(Skills) | 繰り返す手順を SKILL.md に固定する | 70本超。競作、週次リサーチ、日本語の校閲など |
| コネクタ(Connectors) | 外部サービスとつなぐ(MCP) | 検索順位データ、Google、Slack、社内の知識グラフなど |
| サブエージェント(Sub-agents) | 実行役と検証役を分ける | 調査・画面確認を別のAIに任せ、結論だけ受け取る |
| 記憶・状態(State) | 会話の外に進み具合を残す | 引き継ぎノート(HANDOVER)、記憶ファイル(MEMORY)、Obsidian の作業記録 |
ワークツリーは、同じリポジトリで複数のAIを同時に書かせるときに要ります。当社はAIに書かせる作業を1本ずつ順に回しているので、今は使っていません。
ループは周をまたぐと会話の中身を忘れます。そのため、状態をファイルに残す部品が欠かせません。前の周の「持ち越し」をファイルに書き出す決まりは、この忘却への対策です。
Claude Code で組む: /goal・/loop・hooks・Routines の使い分け
Claude Code には、ループを組む仕組みが4つ用意されています。次の周を何が始めるかで選びます。
| 仕組み | 次の周が始まるきっかけ | 止まる条件 | 動く場所 |
|---|---|---|---|
| /goal | 前のターンが終わったとき | 別の小型モデルが「達成」か「不可能」と判定したとき、または /goal clear | 開いている会話の中 |
| /loop | 決めた間隔が過ぎたとき(最短1分) | 手で止めるか、Claude が完了と判断したとき。定期のタスクは7日で自動削除 | 開いている会話の中 |
| hooks(Stop hook) | 前のターンが終わったとき | 自分で書いたスクリプトやプロンプトが決める | 設定ファイルの範囲の全会話 |
| Routines | 予定の時刻、API呼び出し、GitHub のイベント | 1回の実行ごとに終わる(最短間隔は1時間) | Anthropic のクラウド |
以下は公式ドキュメントで確認した仕様です。
- /goal: 完了条件を書くと、毎ターンの後に小型モデル(既定は Haiku)が条件を満たしたか判定します。条件は4,000字まで書けます。回数の上限を付けたいときは、条件に「20ターンで止める」のような一文を足します(公式)。
- /loop: 会話を開いている間だけ、同じ指示を一定間隔で繰り返します。1つの会話に置ける予定は50件までです。定期のタスクは作ってから7日で消えます。忘れたループが回り続けないための上限です(公式)。
- Routines: パソコンを閉じていてもクラウドで動きます。研究プレビュー(試験提供)の扱いで、1日に始められる実行回数に上限があります。Pro、Max、Team、Enterprise の各プランで使えます(公式)。
/goal は測れるゴールまで粘る仕組みです。/loop は会話中の見張り役です。Routines は、会話と関係なく定期で回します。
当社では hooks を多く使っています。
- 会話の終わりに、引き継ぎノートを自動で書き出す
- 会話の要約(圧縮)の前に、進み具合を保存する
- 危険なシェルコマンドを実行前に止める
- 3ファイル以上の変更は、コミット前に別モデルのレビューを通す
/loop に当たる運用は、会話の中で「3周回して」と頼む型として決めています(次の章の4つの型)。
/goal に当たるのは codex_loop です。週次リサーチは、Routines の定義が7月26日に消える事故を受けて、macOSの定時実行に移しました。
当社のルール: 止め方を先に決める(停止3点セット・検証役は別モデル・経営判断は回さない)
当社では止め方が決まっていないループを起動しない決まりにしています。
社内ルールでは、次の3つを「停止3点セット」と呼んでいます。
- 回数・時間の上限: 最大何周、または何分で打ち切るかを先に決める
- 差分ゼロ検出: 前の周と出力や差分が同じなら止める。同じエラーが3回続いた場合も止める
- 費用の上限: コール数や金額を記録し、超えそうなら止める
4つ目として、人の承認も停止条件に数えています。外部への送信、公開、課金の変更の前では、いったん止まって人に確認する決まりです。2つの審査モデルの判定が割れたときも、事業の顔になる制作物なら両方の意見を人に見せる運用にしました。
回数・時間の上限、差分ゼロ検出、費用の上限のうち1つでも欠けたものは、ループとは呼ばない扱いにしています。欠けたまま回すと、ミスも費用も上限なく増えるからです。
3点セットのほかに、次の決まりがあります。
- 完了条件は1文で機械的に判定できる形にする。 「いい感じに」は完了条件になりません。
- 検証役は実行役と別のモデルにする。 同じモデルが兼ねると、見逃しの癖まで同じになるからです。
- 「できました」という自己申告を信じない。 実際のファイル、URL、テスト結果で確かめます。
- 監視のない自動化を作らない。 失敗したら通知を出し、週1回の点検で動いているかを見ます。
- AIにログを丸ごと渡さない。 エラー、終了コード、差分だけを抜き出して渡します。
経営判断、戦略、要件定義はループにしません。回り始めると、出てきた答えをそのまま受け入れたくなるからです。
判断を仕組みに預けると、自分の意見を持たなくなる危険があります。判断は人がAIと話しながら行います。
社内でAIに「3周回して」と頼むときの型も決めています。
- 正解のない制作物を磨く: 競作改善型。最大10周
- 調査や原因究明を深める: 深掘り反復型。2周続けて新しい発見がなければ終わり
- テストやビルドのように合否がある: 修理検証型。修正3回で止めて報告
- 前の周から持ち越すものがない: ループにせず、並列で回す
計画を立てるのは1周目だけです。2周目以降の中身は、前の周で書き出した「持ち越し」が決めます。5周分のTODOを先に作って順に消すやり方は、分割した並列作業と変わりません。
業界で言われる課題と当社の対策
Osmani は、ループの課題を6つ挙げています。そのうち、当社の対策に対応づけられる4つを並べました。
| 課題 | 中身 | 当社の対策 |
|---|---|---|
| 検証の死角 | 無人のループは、無人でミスもする | 検証役を別モデルにする。自己申告を信じず、実物で確かめる |
| 理解の負債 | 仕組みが速く出荷するほど、人の理解が追いつかなくなる | 月1回の点検で「中身をまだ説明できるか」を確かめる |
| 認知的降伏 | 出てきたものを考えずに受け入れてしまう | 経営判断はループにしない。外部送信と公開の前は人が承認する |
| コスト増 | 周を重ねるほどトークン(AIの利用量)が増える | 回数と費用の上限。安いモデルを生成に使い、高いモデルは審査だけに使う |
残る2つは、複数のAIを束ねる手間(オーケストレーションの手間)と、意図の負債です。意図の負債は、何を狙った仕組みかが記録されず後から分からなくなる状態を指します。当社では、この2つに専用の対策はまだありません。
実際に回しているループ3つ(moa-loop / codex_loop / 週次リサーチ)の数字
3つとも、上限と停止条件を起動前に固定しています。
moa-loop は正解のない制作物を磨くループです。3つのモデル(Opus 5.5、Grok 4.6、DeepSeek)に同じ依頼を並行で出します。
できた案を匿名で相互に批評させ、2つのモデル(Fable 5.1 と GPT-5.6)が審査して改善を指示します。この2つは生成には加わりません。自分の案を自分で採点させないためです。
codex_loop は実装してテストを通すまでのループです。検証コマンドを指定しないと起動しません。
周ごとに作業フォルダの状態を記録し、前の周と同じなら止めます。オプションで、実装とは別のモデル(DeepSeek)に差分を判定させることもできます。
週次リサーチ は毎週日曜17時台に動くレポートの自動作成です。これは厳密にはループではありません。毎週同じ形の成果物を出す仕事なので、Cron+品質チェックの型を選びました。
| 項目 | moa-loop | codex_loop | 週次リサーチ |
|---|---|---|---|
| 回数の上限 | 最大10周(指定時も15周まで) | 既定5周、上限10周 | 週1回。1回の実行は2時間で打ち切り |
| 早く止める条件 | 前の周から実質的な改善がない | 検証に合格/状態が前の周と同じ | 二重起動を検知したら起動しない |
| 検証役 | 生成に加わらない2つのモデル | 検証コマンド+任意で別モデル | ビルド時の機械検査(1枚の文字数など) |
| 費用の上限 | 総60コール(到達した時点で停止) | 周回数と1周ごとの時間上限 | 実行時間の上限 |
moa-loopの1周は、生成3、相互批評3、審査2の最大8コールです。総コールの上限は60で、周回の上限は10周です。10周の前でも、60コールに達した時点で止まります。
当社の運用(2026年7〜9月)では、多くの依頼が2〜3周で収束しました。
従量課金の Grok と DeepSeek は1コール1円未満です。この2つの分は1周あたり数円です。Opus は定額のサブスクリプションの範囲内で動かしています。
週次リサーチには「失敗を知らせずに終わらない」決まりがあります。収集ゼロ、生成失敗、ビルド失敗、公開失敗のどれでも、その時点で失敗を通知します。この決まりは、取り込み処理が7日間止まっていた事故から生まれました。
一般的な分類との対応
解説記事で使われる分類に、当社のループを当てはめました。
- 4分類(Turn / Goal / Time / Proactive)は、起動と停止を誰が担うかで分けます。Turn は人の指示で動き、人の確認で止まる型です。Goal は、測れるゴールに届くまで回ります。Time は時刻で起動し、Proactive はイベントを受けてAIが自分で完了を判断する型です。Zenn の解説記事(2026年7月19日)は、これを Anthropic の分類として紹介しています。
- 2分類(定周期モニタリング型 / ゴール収束型)は、Findy Team+ の解説記事の分け方です。前者は一定間隔で状態を見に行き、後者は完了条件を満たしたら止まります。
| 当社のループ | 4分類 | 2分類 |
|---|---|---|
| moa-loop | Goal(人の依頼で始まる Turn との組み合わせ) | ゴール収束型 |
| codex_loop | Goal | ゴール収束型 |
| 週次リサーチ | Time | 定周期モニタリング型に近い(ただし中は一方通行) |
当社は Proactive を使っていません。AI自身が完了を決める型は、止め方が甘くなりやすいからです。イベントで起動する場合も、完了の判断は人か別の検証役に残しています。
失敗から学んだこと(事故4件と対策)
当社のルールの多くは、実際の事故の後で書き足したものです。
1. 並列実行と自動再起動が重なり、Macが落ちた(2026年4月) 音声の文字起こしをGPUで4本並列にしました。さらに、止まったら5分ごとに再起動する見張り役を付けていました。処理が重なってメモリを使い切り、Mac本体がクラッシュしました。
いまはGPUを使う処理を1本ずつ動かすのが既定です。見張り役の間隔は15分以上にしました。前のジョブが生きていたら新しく起動しない確認も入れています。
2. 完了を待つ処理が終わらなくなった(2026年5月) デプロイの完了を裏で定期確認する処理が、条件を満たせず回り続けました。4回タイムアウトしてから気付きました。
いまは確認方法を単純なHTTP取得と文字列検索に変えました。裏で起動した直後に、1回出力を確かめる手順も足しました。
3. 取り込み処理が7日間、誰にも気付かれず止まっていた(2026年6〜7月) 実行環境のPython を切り替えた影響で、メモの取り込みが毎回失敗していました。失敗を誰にも知らせない作りだったため、気付くまで7日かかりました。この件以降、自動化には失敗時の通知と、週1回の点検を付ける決まりにしました。
4. ブラウザを8本並列にして、操作不能になった(2026年9月) 画面確認用のブラウザを8本同時に動かしたところ、ロードアベレージ(1分平均)が67まで上がりました。メモリ不足を補うスワップ領域も、ほぼ満杯になりました。ブラウザを使う検証も、いまは1本ずつ順番に回しています。
社外ではPR(コード変更の提案)を自動修正するループの例が報告されています。報道では、修正の範囲が際限なく広がり、ほとんどのPRが却下されたとされています。
原因は「いい感じに直して」という曖昧な指示でした。当社の「完了条件は1文で機械的に判定できる形にする」は、この例を参考にしています。
うまくいった公開事例もあります。2026年8月25日の ZOZO の技術ブログ記事です。
記事名は「ループエンジニアリング実践:プロンプトチューニングをClaude Codeに任せてみた」です。分析、計画、改善、評価、振り返りを別々のサブエージェントに分けています。
止める条件は「目標の精度に届く」「最大10回」「3回続けて改善がごく小さい」の3つでした。作業期間は約3.5週間から約1週間に縮んだと報告しています。
一方で、試行は1回きりで再現性は未確認だとも書いています。プロンプトが膨らみ続ける点にも注意を促しています。
何から始めるか(小さく1本・型の選び方)
最初は完了条件を1文で書ける小さな仕事を1本だけ選びます。
候補を選ぶときは、次の順に確かめます。
- 毎回同じ仕事か: 同じならCronで十分です。ループにしません。
- 合否を機械で判定できるか: テスト、ビルド、文字数などです。判定できれば修理検証型から始めます。
- 正解のない制作物か: 別モデルに審査させる競作改善型にします。審査の基準を1文で書いてから始めます。
- 判断や戦略か: ループにしません。
型が決まったら、起動前に次の4つを書き出します。
- 完了条件を1文で書く
- 最大の周回数と時間を決める
- 前の周と同じ結果が出たら止めると決める
- 費用の上限をコール数か金額で決める
ここまで書ければ、最初のループは動かせます。外部への送信や公開、課金の変更を含む場合は、人の承認を挟む関門を残してください。
1か月動かしたら、実行回数、失敗の回数、上限に達した回数、かかった費用を見直します。当社では、仕組みの中身を自分で説明できるかも確かめています。説明できない仕組みは、止まったときに直せないからです。
非エンジニアでも作れるか
作れます。当社の代表は非エンジニアで、コードは読みません。
この記事で紹介したルールは、代表が自分で決めて、Claude Code と一緒に文章にしたものです。停止3点セットも、事故のたびに代表とAIで書き足してきました。
コードを書く部分は、AIに任せられます。人が決める必要があるのは、次の3つです。
- 何ができたら完了か
- どこで止めるか
- どこで人が確認するか
この3つは、業務を知っている人のほうが正確に決められます。
始めるときは、次の3段階で進めるのが安全です。
- 監視: AIは読むだけ。数字や状態を集めて、人に知らせる
- 半自動: AIが案を作り、人が承認してから実行する
- 自動: 機械で合否を判定できる部分だけ、人の承認を外す
1段目で1か月ほど回し、誤報や取りこぼしの数を見てから次へ進みます。当社でも、外部への送信と公開は今も2段目にとどめています。
よくある質問
Q. プロンプトエンジニアリングとの違いは? プロンプトエンジニアリングは、1回の頼み方を工夫する技術です。ループエンジニアリングは、その頼み事を「いつ出すか」「結果をどう判定するか」「いつ止めるか」まで仕組みにします。良いプロンプトは、ループの中で今も必要です。
Q. ハーネスエンジニアリングとの違いは? ハーネスは、AIが安全に作業するための場(テスト、権限、承認の関門など)です。ループは、その場でAIを繰り返し動かす運転の仕組みです。ハーネスが弱いままループを組むと、同じ失敗を速く繰り返します。
Q. Cron や GitHub Actions との違いは? Cron や GitHub Actions は、決まった時刻やイベントで同じ処理を動かします。ループは結果を検証し、不合格なら次の手を変えてもう一周します。Cron はループの「起動役」として、ループの中で使われることがあります。
Q. 向いているタスク、向いていないタスクは? 向いているのは、合否を機械で判定できる仕事(テストを通す、文字数に収める)です。別モデルに審査させられる制作物も向いています。向いていないのは、経営判断、戦略、要件定義のように正解を人が決める仕事です。毎回同じ処理なら、ループにせずCronで足ります。
Q. Claude Code 以外(Codex など)でもできますか? できます。OpenAI の Codex にも、ゴールまで作業を続ける /goal があります。当社の codex_loop は、Codex を外側のスクリプトから呼び、停止装置もそこに付けています。道具よりも、完了条件と停止条件の設計のほうが結果を左右します。
Q. Claude Code では何を準備すればよいですか? まず、完了条件を1文で書きます。次に、検証に使うコマンド(テストなど)を用意します。回数の上限も、条件の中に書き添えておきます。
Q. /goal と /loop の違いは? /goal はゴールを満たすまでターンを続け、小型モデルが達成を判定します。/loop は決めた間隔で同じ指示を繰り返し、7日で自動的に消えます。測れるゴールがあるなら /goal、状態を定期的に確かめたいなら /loop です。
Q. 費用はどれくらい増えますか? 周を重ねるほど、前の周の文脈が積み上がって入力が膨らみます。
OptiMax のAI情報記事(2026年6月11日)は、Unblocked 社の試算を紹介しています。単発の呼び出しと比べて、5ステップで約3.2倍、200ステップで100倍超です。当社の moa-loop では、従量課金の Grok と DeepSeek の分は1周あたり数円です。上限を先に決めれば、最大の損失額が事前に決まります。
Q. 非エンジニアでも作れますか? 作れます。当社の代表は非エンジニアで、ルールを自分で決め、AIと一緒に文章にして運用しています。人が決めるのは「完了条件」「止める場所」「人が確認する場所」の3つです。コードはAIに書かせられます。
Q. 暴走を防ぐ停止条件は? 当社は、回数・時間の上限、差分ゼロ検出、費用の上限の3つを最低条件にしています。加えて、外部への送信や公開の前には人の承認を挟みます。同じエラーが3回続いたときも止めます。
Q. Human in the Loop との違いは? Human in the Loop は、AIの各工程に人が入って確認する形です。ループエンジニアリングが目指すのは Human on the Loop です。人は外側から監督し、例外と最終判断を受け持ちます。当社では、仕事ごとに人を置く場所を選んでいます。
まとめ
ループエンジニアリングは、AIを回す仕組みと止める仕組みを一緒に設計する仕事です。
- AIへの指示出しを仕組みに移し、人は外側で監督と判断を担う
- 毎日同じ仕事はCronで足りる。ループは前の結果で次の手が変わる仕事に使う
- 回数・時間の上限、差分ゼロ検出、費用の上限の3つが揃うまで起動しない
- 検証役は実行役と別のモデルにし、自己申告を信じない
- 経営判断はループにしない。外部送信と公開の前は人が承認する
- Claude Code では、ゴールは /goal、見張りは /loop、定期実行は Routines で組む
- 失敗したら知らせる仕組みを最初から付ける
当社の事故4件は、どれも止まる条件か知らせる仕組みの欠けから起きました。回し方の工夫より先に、止め方を決めることをおすすめします。
社内でAIの自動化を設計したい、AI利用のルールを作りたいという場合は、当社の事例をもとにご相談に乗れます。検討の段階でもかまいません。 AIの自動化設計について相談する