「テストが全部通るまで、勝手に直し続けておいて」——そんな指示が、Claude Codeでは1行のコマンドになった。それが2026年に加わった/goal(ゴール)コマンドだ。完了条件を渡すと、Claudeは毎ターンごとに「まだ達成していないか?」を自分で確認しながら、条件を満たすまで作業を続ける。
これまでは1ターンごとに人が「続けて」と促す必要があった。/goalはその手間を消す。いわば、作業の「終わりの定義」を先に渡しておく仕組みだ。仕組みと、効かせるコツを見ていこう(利用にはv2.1.139以降が必要)。
/goalは何をするコマンドか
/goalに続けて満たしたい条件を書くと、その瞬間から作業が始まる。ポイントは、各ターンが終わるたびに別の小さな高速モデル(初期設定ではHaiku)が「条件を満たしたか?」を判定すること。満たしていなければClaudeは自動で次のターンに入り、満たせば目標は自動で消える。作業中は「◎ /goal active」という表示で経過が分かる。1つのセッションで有効な目標は1つだ。
図: /goalのループ。判定役と作業役が別なので、身内の甘い自己採点になりにくい。
/loopとの違いは「何で次を始めるか」
セッションを回し続ける方法はいくつかある。時間の間隔で再実行する/loopに対し、/goalは条件が満たされたら止まる。似た仕組みに「Stopフック」もあるが、こちらは設定ファイルに書いて全セッションに効かせる常設の仕掛けだ。/goalはその場かぎりの手軽版、と捉えるとよい。「何が次のターンの引き金になるか」で選び分けるのがポイントになる。
効く条件の書き方と、知っておく死角
コツは「Claudeの出力だけで証明できる、測れる終わり」を書くこと。たとえば「npm testが0で終了する」「git statusがクリーン」のように、結果が会話の中に現れる条件がよい。判定役は自分でコマンドを実行したりファイルを読んだりはせず、Claudeが会話に出した内容だけで採点する——これが最大の死角だ。証拠が画面に出ていなければ、いつまでも「未達」と見なされうる。条件は4,000文字まで書け、「or 20ターンで停止」のように上限を添えて暴走を防ぐのが実務的だ。
利用には作業フォルダの信頼設定(trust)とフック機能が必要で、フックを無効化していると使えない。裏を返せば、/goalはフックの仕組みの上に建てられた「合意済みの自動化」だということでもある。筆者の見立てでは、この機能の本質は自動化そのものより「終わりを言語化させる」点にある。ふわっとした指示では判定役が困る。条件を書く行為が、そのまま仕事の解像度を上げてくれる。使い方の一次情報は公式ドキュメントが詳しい。バイブコーディングで任せる範囲を広げたい人ほど相性がいい。
「終わりの定義」を渡す時代へ
/goalが示すのは、AIへの指示が「やること」から「終わっている状態」へと重心を移しつつある、という変化だ。次にClaude Codeでまとまった作業を頼むときは、いきなり手を動かさせる前に、一度だけ問うてみてほしい——「これは、何がどうなったら“完了”なのか?」。その一文を渡せるかどうかが、これからのAIとの仕事のうまさを分ける。
出典: Claude Code公式ドキュメント「Keep Claude working toward a goal」。2026年7月14日時点。





