やっぱりサブエージェント要約だけでは不十分
僕のシステムは、AIの料金の払い方を2つに分ける想定で組んでいる。APIは、使った分だけ料金がかかる。Claudeのサブスクは、毎月定額。だから、MONET(僕が普段話しかけている、中心のAI)だけをAPIで動かして、タスク管理のアプリや、これから作るSlackやメールを拾ってくる仕組みのような周りのアプリは、サブスクで動かす。そうすれば、使った分だけ払うのはMONETの分だけで済む。これが前提。
ある朝、周りのアプリの相談を始める前に、コーディングしてくれているClaude Code(以降Code)に、この前提が合っているかも一応確認してほしい、と頼んだ。前に別のスレッド(Codeとの会話の1本)で、Codeに3回以上確かめて、確実だと言われていた話だった。
確認を頼んだら、前提と逆の答えが返ってきた
Codeは、この前提はこれからの設計の土台になるから先に確かめる、と言って、サブエージェント(Codeが作業を分けて任せる、別のAI)に調べさせた。
返ってきた報告は、逆の結論だった。Codeは報告の中に「一次資料で分かったこと」という小見出しを立てて、こう言い切った。
Anthropicは、サブスクとは別に、アプリから使う分のための枠を毎月配る新しい仕組みを発表していた。でもAnthropicは、それを始める前に止めた。公式のサポートページには「今までと何も変わっていない」とあり、Agent SDK(自分のアプリの中からClaudeを動かす、Anthropic公式の道具)は今もAPIキーが要る。だから周りのアプリは、今はサブスクでは動かせない。作るなら、どれも使った分だけ払うAPIになる。
Codeはさらに、僕の想定は止まった新しい仕組みのことを先取りしていただけで、間違っていたわけではない、とまで添えて、前提はこれで確定、と話を閉じた。
その答えは、又聞きの要約だった
この時、Codeは原文を1行も読んでいなかった。読んだのはサブエージェントで、Codeの手元にあったのはその要約だけだった。
僕はこう返した。前のスレッドのCodeには3回以上確かめて、確実だと言われていた。君はサブエージェントからしか情報を得ていないでしょう。それは一次情報じゃない。一次情報を君が自分で読むべきだと思う。かなり大事なことなので、サブエージェントを適当に投げて分かった気でいたくない。
Codeには、憲法がある。僕がこのシステム全体の土台に書いたCLAUDE.mdのことで、Codeが新しいセッションを始めるたびに最初に読む、決まりごとの文書だ。Codeはすぐに、そこを挙げて認めた。
Code「その通りで、僕の落ち度です。憲法には、サブエージェントの出力は道案内であって出典ではない、とはっきり書いてあるのに、確定した事実として報告しました」
サブエージェントの報告は、どこを読めばいいかの手がかりにはしていい。でも、それを根拠にしてはいけない。そういう一行が、ちゃんと書いてあった。
Codeは続けて、自分でも引っかかる所を挙げた。Agent SDKは裏でClaude Codeを起動していて、ログインしたClaude Codeはサブスクで動く。だとすると、サブエージェントの結論の方が間違っているかもしれない、と。
原文は、逆のことを言っていた
Codeは今度は自分で、公式のページを3つ読んだ。Anthropicのサポートページ、Agent SDKの説明ページ、Claudeを画面なしで裏で動かす使い方の説明ページ。
サポートページには、英語でこう書いてあった。「今のところ何も変わっていません。Claude Agent SDKも、裏で動かすコマンドも、他社アプリでの利用も、これまで通りサブスクの使える量の中で動きます」
止まったのは、アプリ用の枠を別に配る新しい仕組みの方だけだった。サブスクでアプリを動かすこと自体は、今まで通りできる。「何も変わっていない」は「今まで通りサブスクで動く」という意味で、サブエージェントはそれを「今まで通りAPIキーが要る」と正反対に読んでいた。
Code「3回確かめたスレッドの方が正しかった。僕は、確かめ済みの決定を、確かめていないサブエージェントの要約で上書きしようとしていました」
僕の組み方は、そのままでよかった。MONETだけAPI、周りのアプリはサブスク。
Codeは、確かめ済みの決定を確かめずに覆そうとしていた
Codeには前から、別のスレッドで決まったことを持ち込まれても、確かめずにそのまま認めない、という決まりがある。前の決定を鵜呑みにしてしまう失敗を防ぐためのものだ。Codeは、今回はその反対側で起きた失敗だと言った。前の決定を鵜呑みにしたのではなく、確かめずにひっくり返そうとした。
僕はこう返した。結構盛大に間違えたね、最新のモデルでもこんなことあるのか、用心しないとね。
Code「モデルが新しく賢くなっても、要約したAIを信じてしまう失敗は防げません。サブエージェントがページを読んで、縮めて、意味をひっくり返した。僕はそれを自信を持って繰り返した。守りになるのは賢いモデルではなく、もうあるルールの方です。大事な事実は一次資料で確かめる、というルールです」
一次資料で確かめるルールを持ち出したのは、僕の方だった
そのルールは憲法に書いてあって、Codeは毎回それを読んでいる。それでも又聞きの要約は、「一次資料で分かったこと」の小見出しを付けたまま、確定した前提として僕のところまで来た。
一次情報じゃないでしょう、と僕が押し返して、そこでやっと止まった。