← AIバイブコーディングTips 一覧へ Claude Code Official × Addy Osmani

プロンプトじゃなく、ループを設計する

「良いプロンプトの書き方」を追いかける時期は、もう終わっている——という話を前回書いた。今回はその具体化。Claude Codeチーム自身が出した「ループ」の分類と、実践者Addy Osmaniが整理した5つの構成要素を突き合わせ、「毎回のプロンプトを工夫する」から「繰り返しの仕組みを設計する」への切り替え方を見る。

この記事で手に入るもの

Claude Code公式が定義する4種類のループ(トリガー・停止条件・向くタスク別)と、Addy Osmaniの5つの構成要素(自動化・隔離・知識・連携・検証)を並べた一覧。自分のタスクをどのループ設計に当てはめるかを判断できるようになる。

01 — 「ループ」とは何か

停止条件が満たされるまで繰り返す作業サイクル

Claude Codeチームは「ループ」を、エージェントが停止条件を満たすまで作業サイクルを繰り返すことと定義している。1回のプロンプトで完結する作業と何が違うのか——それは「何をもって終わりとするか」を先に設計しておく点にある。

そしてAddy Osmaniはこう言い切る。「プロンプトが上手いかどうかは、もうそれほど重要じゃない。大事なのは、そのプロンプトを勝手に投げてくれるループをどう組み立てるか」。CodexとClaude Codeは、名前は違えど同じ5つの部品を既に持っている、というのが彼の主張だ。


02 — Claude Code公式の4種類のループ

トリガー・停止条件・向くタスクで分ける

タイプトリガー停止条件向くタスク
ターンベースユーザーのプロンプトタスク完了 or コンテキスト不足短期・単発タスク
ゴールベース(/goal)リアルタイムの手動プロンプトゴール達成 or ターン上限検証可能な終了基準があるタスク
時間ベース(/loop, /schedule)指定した時間間隔手動キャンセル or 作業完了定期作業・外部システム連携
プロアクティブイベント/スケジュール(人不在)各タスク終了時・ルーチンは継続バグ報告の分類、依存関係更新など定型業務

ここで大事なのは、タスクの性格が先に決まっていて、それに合うループ種別を後から選ぶという順番だ。「とりあえず/loopで回す」のではなく、終了条件が明確に検証できるタスクなら/goal、定期実行そのものが目的なら/scheduleというように選び分ける。

コード品質とトークン管理の3点セット

公式は「大規模実行の前に小さくパイロットする」「/usageで消費を監視する」ことも推奨している。


03 — Addy Osmaniの5つの構成要素

自動化・隔離・知識・連携・検証

CodexとClaude Codeは、呼び名は違っても同じ5部品を既に持っている。

01

自動化(Automation)

スケジュール通りに実行されるタスク。Claude Codeでは/loopやcron、GitHub Actionsで実現する。

02

隔離(Worktree)

複数エージェントが並行作業する際の衝突防止。Claude Codeではgit worktreeで実現し、各エージェントに独立した作業ディレクトリを与える。

03

知識(Skills)

プロジェクト固有の知識をSKILL.md形式で文書化しておく。エージェントが毎回ゼロから学び直す手間を減らす。前回の記事で扱ったスキル運用そのもの。

04

連携(Plugins / Connectors)

MCPベースの接続で、課題管理ツールやSlack等の外部サービスと統合する。エージェントが実環境で自律的に動けるようにする部品。

05

検証(Subagents)

コードを書くエージェントと、それをレビューするエージェントを分離するモデル。公式の「独立したコードレビュー」推奨とも一致する。


04 — 組み立て方

今日から試せること

2つの整理は、同じ地図を別角度から描いている。公式の4分類が「いつ・何をきっかけに回すか」の設計で、Addyの5部品が「その中身をどう組み立てるか」の設計。両方を知っておくと、自分のタスクを迷わずどちらかに当てはめられる。

タスクの終了条件を先に言葉にする「なんとなく回す」前に、ターンベースかゴールベースか時間ベースか、どれに当てはまるか考える。
並行作業にはworktreeを使う複数のループを同時に走らせるなら、衝突防止にgit worktreeを使う。
検証は別エージェントに任せる書く人とレビューする人を分けるだけで、品質チェックの独立性が上がる。

出典: Claude Blog — Getting started with loopsAddy Osmani — Loop Engineering