How I build / Loop
ループ設計1 件ずつ指示するのをやめ、指示する側の自分を仕組みに置き換えるまで
この作品集にある 25 件は、1 行ずつ指示して作ったものではない。 「何を作るか」を指示する代わりに、指示を出し続ける仕組みのほうを作っている。 その考え方をループエンジニアリングと呼ぶ。
要点は 1 つだけ。速く回すことではなく、止まるべきときに止まる条件を先に決めること。 自走する仕組みで壊れるのは、たいてい「動かなかったから」ではなく「動きすぎて誰も気づかなかったから」だ。 以下は、その仕組みを自分がどう組んでいるかと、まだ組めていない部分の話。
何を設計する話なのか
AI の使い方は、設計する対象が 2 年で 4 段階ぶん上がった。 下の層が消えて上の層に乗り換わるのではなく、積み上がる。土台が弱いと上は必ず崩れる。
| 時期 | 呼び名 | 設計する対象 | 一言でいうと |
|---|---|---|---|
| 2023〜2024 | プロンプト | 1 回の指示文 | 何と言うか |
| 2025 | コンテキスト | AI に渡す情報一式 | 何を見せるか |
| 2026 初 | ハーネス | AI を取り囲む足場 | どんな装備で戦わせるか |
| 2026/06 | ループ | AI を回す周期 | 誰がいつ起動するか |
| 2026/07 | グラフ | ループ同士の配線 | どのループが誰に何を渡すか |
このページはループの層の話。1 つ下のハーネス層(権限・自動実行・専門役の装備)は ハーネス設計に、そこで使う手順書はスキル一覧に分けてある。
回す前に決める 4 つ
ループが成立する条件は 4 つあり、1 つでも欠けると自走は事故になる。 右列は、自分の環境でそれを何が担っているか。
| 条件 | 欠けるとどうなるか | 自分の場合 |
|---|---|---|
| ゴール定義 完了を一文で言える |
何をもって終わりか誰も判定できない | 着手前に成功条件を 1〜3 行で書く。2 回試して満たせなければ止めて判断を仰ぐ |
| 検証ゲート 機械的に合否が出る |
AI の自己申告を信じるしかなくなる | 作る役と検査役を分けている。検査役は読み取り専用で、直さず報告だけする |
| 停止条件 回数・時間・費用の上限 |
暴走してもトークンを焼き続ける | ここが未完成。回数の上限を機械で持たせていない(下の「足りていないところ」) |
| 状態の外部化 進捗を会話に溜めない |
毎回、文脈から導出し直す | 結論だけをファイルに蒸留する。会話に溜めるとセッションが切れた瞬間に消える |
停止条件は最も軽視されやすい。自走の消費は通常の作業の 5〜30 倍、最悪で 1000 倍に達しうるので、 本来は回数の上限・費用の上限・進んでいないことの検出・異常時の遮断を併用するのが定石になっている。
実際に効いている習慣
作る役と検査役を分ける
いちばん効いているのはこれで、いちばん地味でもある。同じ AI に「書かせて」「採点させる」と必ず甘くなるので、 別の指示・別の権限・敵対的な視点を与えた検査役を立てる。 直近の集計では、この 2 段構えを呼ぶ操作が 482 回(品質改善 297 回・バグ検出 185 回)で、 あらゆる操作の中で最も回数が多かった。意識してやっているのではなく、通らないと先へ進めない形にしてある。
権限は 3 段階で渡す
いきなり無人運転を目指さない。1 本通してから次の段に上げる。
-
L1 報告のみ 安定
分析と提案まで。変更は人が承認する。全件を見る。
-
L2 検証付き修正 安定
実装まで進み、まとまった単位で確認する。日常の開発はここ。
-
L3 無人実行 部分的
完全自動で、異常時だけ通知。定期実行は 12 プロジェクトで 21 本動いているが、全体としてはまだここに達していない。
1 体で足りるなら 1 体
並列化はいつでも得ではない。数回の操作で終わる作業は分業させない — 小さい仕事では、 分けたぶんの受け渡しでコストも時間も倍になる。判断は次の順で降りていく。
| 状況 | 選ぶもの |
|---|---|
| 数回の操作で終わる | 分けずに自分でやる |
| 独立した調べもの、結果だけ欲しい | 専門役を 1 体(足りるなら 1 体) |
| 単一の作業を完了条件まで繰り返す | 完了条件つきの自走 |
| 時間間隔で定期実行 | 定期ジョブ(クラウド側 / 手元) |
| 10 体以上 + 段取り確定 + 再現性が要る | ワークフローとして配線する |
| 同じファイルを並列で編集する | 作業場所を分けてから並べる |
この「10 体以上・段取り確定・再現性」という自前のしきい値は、 一般に言われている移行の判断軸とほぼ同じところに落ちていた。過剰に配線する方向へは寄っていない。
いま、どこまで自走しているか
設定ファイルが置いてあるかではなく、実行の痕跡で数えた。置いてあるだけのものは動いていないのと同じなので。
応答の間隔から言えるのは、セッション単位ではすでに人がループの外側に出ているということ。 1 操作ごとに承認する使い方はしておらず、起動したら結果を受け取るまで見ていない時間のほうが長い。 構造的に欠けているのは 在席していない時間に仕組みの側から始まること と、 機械的な停止条件 の 2 点だけになっている。
足りていないところ
良い面だけ書かないための欄。
-
順序が逆になっている 現在の露出
原則は「ループを固めてから、ループ同士を配線せよ」。ところが自分の環境は、 ループ側(停止条件)が未完成のまま配線の層を常用している。 成果が出ているので実害は表に出ていないが、延べ 1,198 体を回している以上、 停止条件が無いことは将来のリスクではなくいま抱えている露出にあたる。
-
在席なしでの起動が無い 構造の欠落
定期ジョブは動いているが、「人がいない時間にループ自身が仕事を選んで始める」ところまでは行っていない。 受け入れ条件つきの作業待ち行列と、最大 3 回で打ち切る仕組みを 1 本で作るのが次の一手。最初は報告のみから。
-
定期ジョブの死活監視が無い 運用の穴
動いている 21 本が止まっても気づけない。自走の仕組みは、失敗より「静かに止まること」のほうが危ない。
この評価自体で測り方を 2 回間違えた
自走の話で最も危ないのは、自分で作った測定を判定として扱うこと。この棚卸しでも実際に踏んだので、そのまま残す。
-
使用ログを根拠に「実績 0 回」と判定した
スキルの使用ログを見て「ワークフローは一度も使っていない」と結論した。 しかしそのログは特定の経路からの呼び出ししか記録しない種類のもので、母集団が違っていた。 実行の痕跡を数え直したら 86 回で、評価を上方修正することになった。 手元で作った測定は仮説であって判定ではない、を地で行った例。
-
まだ終わっていない出力を確定値として読んだ
裏で走っているコマンドの途中経過を読み、確定した数字として扱った。完了後に値は変わっていた (結論そのものは再検証で維持された)。
この 2 件があったので、いまは数字に「実測なのか仮説なのか」を明示し、 信じる前に「どういう条件ならこの測定を信用してよいか」を先に書く運用にしている。
参照した資料
概念の定義は一次解説 8 件を突き合わせて確認した。
- ループエンジニアリングとは? AI エージェントを自律で回す設計手法と 6 つの構成要素を解説(AI 総合研究所)
- グラフエンジニアリングとは? 主要フレームワークや Loop Engineering との違い、移行判断を解説(AI 総合研究所)
- Loop Engineering(ループエンジニアリング)とは(Qiita / y-morimatsu)
- Loop Engineering とは|「プロンプトの次」のループ設計を実務者が解説(Claude Code for Business)
- Graph vs Loop: Which Should Your Agent Use?(AI Builder Club)
- Agent Harness Engineering vs. Loop Engineering vs. Graph Engineering(Medium / Bijit Ghosh)
- 3 Years of Graph Engineering with LangGraph(LangChain)
- 「もうプロンプトは書かない」Claude Code 開発者が提唱するループエンジニアリング(AI 新聞)
実測の内訳: ワークフローの実行痕跡、コマンド実行履歴 409,849 行、スキル使用ログ 923 件、定期ジョブ 21 本、および提供元による独立集計(138 セッション・1,713 メッセージ)。
数字はいずれも 2026-08-01 時点。以降の変化は反映していない。
c:\work 作品紹介ギャラリー