は AI の提案を、もうほとんど検討していません。良かれと思って出てくる新機能も、親切な改善案も、丁寧な代替案も。AI は却下を覚えないので、断った提案は次のセッションでまた出てきます。それで開発が雑になったかというと、なっていません。このシリーズは、その状態を仕組み一つずつで作っていく連載です。
各回の終盤には「検証手順」という節があります。先に読む必要はありません。置いた仕組みがなぜ要るのかを、自分の目で確かめたくなったときに戻ってください。
症状から対処法を学ぶ
各回は、うまくいかない症状から始まります。その対処法には、関連する AI の性質や仕様と、なぜその対処が適切かの解説が付いています。
先に、なぜその対処が適切かを覚える必要はありません。仕組みを一つ置けば、対処はできます。
AI の性質や仕様を覚えても、組み合わせ次第で、AI は間違えることがあります。通常の設計開発では気付きにくい、複数の性質や仕様が絡む落とし穴を、症状から順に学べます。
まず、心当たりを確かめる
まず一つだけ、思い出してみてください。
直近のセッションで、AI の提案を断った箇所です。
その提案は、何度目でしたか。
まだ AI と一緒に開発していないなら、断った箇所が思い出せなくて当然です。ここから先は、その回数が人間の側にだけ積み上がる話を順に見ていきます。
初めてではなかったはずです。同じ機能、同じ改善、同じ「ついでにこうしませんか」。前にあなたが断ったのに、また来る。断る。次のセッションで、また来る。
断るのは、いつも人間だけ
AI は、断られたことを覚えていません。忘れているのでもありません。覚える・忘れるという話に、そもそもなっていないからです。次のセッションの AI は、同じコードベースを見て、同じ抜け穴に気づいて、同じ提案をします。あなたにとっては「二度目」ですが、AI にとっては毎回が一度目です。
Claude Code のドキュメントは、セッションはそのたびにまっさらなコンテキストで始まると書き、知識をセッションの向こうへ運ぶ仕組みを 2 つ挙げています。人が書く指示ファイルと、AI が自分で書くメモリです。会話の中で断っただけの却下は、そのどちらにも入りません。断ったという事実は、そのセッションと一緒に終わります。
同じ提案が来るのは、AI が毎回同じ出力を返すからではありません。Claude API のリファレンスは、temperature を 0.0 にしても結果は完全には決定的にならないと書いています。二度目に来るのは同じ文ではなく、同じ種類の提案です。同じコードベースを同じモデルが見れば、言い回しは変わっても、行き着く先は集まります。
提案の側が尽きないことにも、理由があります。Claude Code の best practices は、レビューをさせるときの注意として、隙間を探せと頼まれたレビュアーは、仕事が健全でも、たいてい何かを報告すると書いています。頼まれたのがそれだからです。コードベースを見て改善点を出すのも同じ仕事で、探せば何かは見つかります。
そして提案を出すコストは、AI 側にはほぼありません。判断のコストは、人間の側にだけ積み上がります。断るたびに理由を思い出し、前と同じ結論に至り、同じ説明をします。
外に置くと効くのは、書いたファイルが毎セッション読み込まれるからです。Claude Code のドキュメントは、指示ファイルを削るときに何を残すかも書いています。モデルがコードベースから導ける内容を削り、落とし穴と、理由と、ツールの既定と違う慣習を残す、としています。却下はこの理由の側で、コードベースを読んでも導けません。残す側だと公式が書いているものを、は会話の中で捨てていました。
ただし、外に置いたものも、足すほど薄まるのは同じです。却下の一覧は指示ファイルと同じ注意の予算を食うので、200 行未満を目安にという同じページの注意が、そのまま当たります。この手が成り立つのは、書く側の種類が増え続けないときだけです。
理解したことは一文にできます。
AI は却下を覚えない。提案のコストはゼロで、判断のコストは人間だけが払う。だから却下は、一度で書き切って外に置く。
前の連載の、続きです
前作「読まない技術」の結論は「ルールは読まれたときだけ効く。自動テストや hook は読まれなくても落ちる」でした。守ってほしいことを指示ファイルに書くのをやめて、破られたら落ちる自動テストに置き換える——第 6 回がその実装です。
ただし、あの回は自分で線を引いていました。自動テストに翻訳できるのはプログラムが真偽を決められるルールだけで、「この機能はあえて作らない」のような判断・方針は翻訳できないので、読ませる側に残します、と。
このシリーズは、その残した側が主題です。やることは前作と同じ、ルールから仕組みへ。扱うものが一つ上がるだけです。
- 前作: AI の出力を、読まなくて済む形にした
- 今作: 人間の判断を、二度しなくて済む形にする
前作とは、逆のことを言います
前作の第 2 回では、こう書きました。AI がメモリを保存するたび、以後の全セッションが読む量は増える。1 回の保存は、そのあと毎回払い続けるコストになる、と。
今回は反対です。1 回の却下は、そのあと毎回、払わずに済むようになります。
違うのは、増え方です。気づきは無限に出てきます。断る内容は、そうではありません。の手元では 17 件で止まっています。
17 件は、17 回断った結果です
この連載は「やらないことリストを作りましょう」という話ではありません。
の手元にある 17 件は、一件ずつ断って、一件ずつ書いたものを、後から一枚に集めたものです。先回りして考えた禁止は 1 件もありません。今日置くのは、二度目に断った 1 件だけでいい。前作と同じで、失敗する前に置いた仕組みは、たいてい馴染みません。
舞台も前作と同じ、typingtube という、YouTube の音楽動画でタイピング練習ができる Web サービスです。個人で運営していて、本番で動いています。
シリーズの構成
- 第 1 回 提案を検討しない技術
- 第 2 回 禁止を書かない技術
- 第 3 回 禁止ルールを作らない技術
- 第 4 回 サブエージェントの入力だけは、確かめろ
- 第 5 回 自動テストを書かない技術
- 第 6 回 AIの確認依頼を断る技術
- 第 7 回 AIの話を聞かない技術
- 第 8 回 ルールを整理しない技術
- 最終回 選択肢を選ばない技術
最終回で、8 つがどうつながって一つの流れになるかをまとめます。
次回は一番手前の話から。は、AI の提案を検討していません。それでも、良い提案を取り逃したことはありません。
連載「AIの意見を聞かない技術」
- → 次回: 第 1 回 提案を検討しない技術