【ITニュース解説】From Rules to Router: Teaching AI Your Language, Not Laws. Why teaching AI your personal router beats writing rules - from tr...
2025年10月05日に「Dev.to」が公開したITニュース「From Rules to Router: Teaching AI Your Language, Not Laws. Why teaching AI your personal router beats writing rules - from tr...」について初心者にもわかりやすく解説しています。
ITニュース概要
AIに厳格なルールを与える代わりに、人間の自然な言葉の「意図」を具体的な行動へ翻訳する「ルーター」の導入が有効だ。これによりAIは状況変化にも対応し、開発者の求めるアウトプットをより正確に生成できるようになる。AIとの協業を深める新手法である。
ITニュース解説
システム開発の現場でAI(人工知能)を活用する機会が増えているが、AIに具体的な指示を出す際に「ルール」を設定するのではなく、「ルーター」という考え方を導入することで、AIとの協業が飛躍的に効率的になるという新しいアプローチが提案されている。この概念は、システムエンジニアを目指す初心者にとっても、AIとの効果的な付き合い方を理解する上で非常に重要だ。
AIに作業を依頼する際、私たちはしばしば「常にこのフォーマットでコードを記述してほしい」「このパターンは絶対に使わないでほしい」といった具体的な「ルール」を細かく設定しがちだった。しかし、プロジェクトの要件が変わったり、新しいコードベースに移行したりすると、せっかく設定したルールが途端に通用しなくなり、すべて見直す必要が生じるという問題があった。ルールは特定の状況下では有効だが、文脈の変化に弱く、脆いのだ。
そこで提唱されているのが「ルーター」という概念だ。これは、AIが「ルール」を直接覚えるのではなく、私たちが普段使う自然な言葉や意図を、AIが理解し実行できる具体的な「アクション」へと翻訳する層と考えると分かりやすい。私たちが「もっときれいにして」と言った時に、AIはそれを「コメントをすべて削除し、一行に一つのロジックを記述し、varではなくconstやletを使い、console.logを消す」といった具体的な手順に自動的に変換するイメージだ。つまり、私たちはAIに「法律」を教えるのではなく、「言語」を教えるのだ。
このルーターの考え方は、私たちが人間と話すのと同じ感覚でAIに指示を出せるようにするものだ。私たちが「ちょっと考えてみて」と言うとき、それは「コードを書き始める前にアルゴリズムを計画してほしい」という意図かもしれない。「この雰囲気を確認して」と言うのは、「既存のコードパターンを調べて、チームの文化に沿った形にしてほしい」という意味合いを持つだろう。AIにこれらの人間的な表現の「翻訳」の仕方を教えてあげるのがルーターの役割だ。
具体的なルーターの例を見てみよう。
「make it clean」という指示は、「JSDoc以外のコメントを全て削除する」「if文などのロジックは一行にまとめる」「var宣言を使わずconstやletを使う」「console.logを削除する」といった、明確なステップに翻訳される。
「check the culture」という指示では、「直近20件のGitコミットログを調べて、命名規則(キャメルケースかスネークケースかなど)を確認する」「非同期処理にasync/awaitが使われているか.then()が使われているかを調べる」「既存のエラーハンドリングのスタイルを模倣する」といった、チームの開発文化を学習し、それに合わせた行動を促す。
「what's going wrong?」という指示は、単にエラーを修正するだけでなく、「なぜこの方法を取っているのかを根本的に問い直す」「第三の選択肢がないか検討する」といった、より深い考察をAIに促す。例えば、「RESTかGraphQLか迷っている」という状況でAIが「なぜどちらかを選ぶ必要があるのか?PostgreSQLのJSONBカラムを使えば、SQLの信頼性とJSONの柔軟性を両立できる」といった、既存の二択に囚われない解決策を提案できるようになる。これは、AIがただ与えられた選択肢の中から選ぶだけでなく、自ら最適な「C」という選択肢を見つけ出す「コバヤシマル効果」と称される現象だ。
「make it fast」という指示では、「ループ処理をmap()に置き換える」「Redisキャッシュ層を追加する」「計算処理をSQL側に移す」といった、具体的なパフォーマンス改善策を実行する。
なぜルーターが「ルール」よりも優れているのだろうか。 第一に、ルーターは「文脈に依存しない(Context Agnostic)」という特性を持つ。ルールは文脈が変わると破綻してしまうが、ルーターは私たちの意図を翻訳するため、どのような状況であっても柔軟に対応できる。 第二に、「人間中心(Human-Centric)」であること。私たちは自分の思考パターンで物事を考えるが、ルーターはその思考パターンをAIが理解できるパターンに変換してくれる。 第三に、「進化的(Evolutionary)」であること。新しい開発パターンが見つかればルーターに新しい翻訳を追加すればよく、古いパターンが使われなくなれば簡単に更新できる。
実際の運用では、例えば.claude/output-styles/router.mdのようなファイルに、私たちの言葉とそれに対応するAIのアクションを記述する。
「commit this」というフレーズに対しては、「1. git statusを実行する」「2. git diff --cachedで変更を確認する」「3. 自分が変更していないファイルをコミット対象から除外する」「4. コミットメッセージのフォーマットをfeat(scope): concrete changeに準拠させ、変更内容を箇条書きで記述する」といった、具体的なGit操作のステップが定義される。
「simplify this」という指示には、「単一の場所でしか使われていない抽象化を解除する」「3行未満の関数はインライン化する」「使われていないインポート文を削除する」「似たような関数を結合する」といった、具体的なコードリファクタリングの手順が設定される。
このように、ルーターは漠然とした指示ではなく、特定の言葉が具体的な、かつ測定可能なアクションを呼び起こすように設計されている。これは、「Git」という一言でバージョン管理システム全体が連想されるように、一つの言葉が広範な知識や行動のドメインをトリガーする「Popular Lexicon Pattern」をAIにも適用するものだ。
ルーターを導入する前と後では、AIとのコミュニケーションに劇的な変化が生まれる。
ルーターがなかった頃は、「ログイン機能を修正して」とAIに依頼しても、AIは入力検証やエラーハンドリングを追加すると言い出し、チームのコーディング規約である「Result型」を使うことまで辿り着くのに何度もやり取りが必要だったり、最終的に人間が自分で修正することになったりした。
しかし、ルーター導入後は「check the culture and fix login」と指示するだけで、AIはGitログを調べて認証関連のコードから「Result<User, AuthError>」のようなパターンを学習し、既存のコミットから正確なエラーハンドリングをコピーし、チームの命名規則(例:authenticateUserではなくloginUser)に合わせてコードを生成するようになる。その結果、経験豊富な開発者が書いたかのような質の高いコードが一度で得られるようになるのだ。
このアプローチの根本にあるのは、「AIに規則や法律を教えるのではなく、AIに私たちの言語を教える」という哲学だ。新しい国に移住した人が法律を丸暗記するのではなく、その国の言葉を学ぶように、私たちはAIに私たちの思考、意図、文化を伝えるための「翻訳プロトコル」を構築する。 これにより、AIとの対話は、具体的なルールを逐一指示する煩雑さから解放され、より自然で直感的なものへと進化する。将来的には、すべての開発者がそれぞれの「パーソナルルーター」を持ち、AIが個人の認知パターンを理解し、「私が好きなようにこれを直して」というような自然な表現でAIを操作できるようになるかもしれない。
このルーターの概念は、コード開発だけでなく、より広範な領域に応用できる可能性を秘めている。自分自身の思考やニーズを明確に理解し、それをAIが実行できる具体的な形に翻訳する能力は、コード、人生の意思決定、そしてAIとのあらゆるインタラクションにおいて、より良い結果を得るための普遍的な鍵となるだろう。